Skip to content
← Public packages

@kentcdodds/linkedin

Headless helpers for LinkedIn identity, requests, and guarded posting using the saved linkedin OAuth integration.

src/request-default.ts

27 lines · 908 B · TypeScript
import { request } from './request.ts'
import {
	requireRecord,
	requireStringField,
	type LinkedInRequestInput,
} from './types.ts'

/**
 * Call a LinkedIn API endpoint on `api.linkedin.com` using the saved OAuth token
 * (default `./request` action). Use for unwrapped REST paths; named helpers remain
 * on the `request` namespace.
 *
 * @param params.path - Relative API path such as `/v2/userinfo`.
 * @returns Parsed JSON body and response metadata.
 *
 * @example
 * import request from 'kody:@kentcdodds/linkedin/request'
 * const result = await request({ path: '/v2/userinfo' })
 * // => { status: 200, data: { sub: '...', ... } }
 */
export default async function requestDefault(
	params: Partial<LinkedInRequestInput> & Record<string, unknown> = {},
) {
	const input = requireRecord(params, 'request')
	requireStringField(input, 'path', 'request')
	return request(input as LinkedInRequestInput)
}