Skip to content
← Public packages

@kentcdodds/linkedin

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

src/create-image-post.ts

17 lines · 837 B · TypeScript
import { createImagePost } from './client.ts'
import { parseCreateImagePostInput } from './create-media-post-input.ts'

/**
 * Create or dry-run a personal-profile LinkedIn image post.
 * Maps text/`imageUrn` aliases (`commentary`/`asset`); rejects unknown keys.
 * @param params.imageUrn - Uploaded image URN from `register-image-upload`.
 * @returns Dry-run preview or published post metadata when `confirm: true`.
 * @example
 * import createImagePost from 'kody:@kentcdodds/linkedin/create-image-post'
 * const result = await createImagePost({ text: 'Photo post', imageUrn: 'urn:li:image:...', dryRun: true })
 * // => { dryRun: true, body: { ... } }
 */
export default async function createImagePostEntrypoint(params: Record<string, unknown> = {}) {
	const input = parseCreateImagePostInput(params)
	return createImagePost(input)
}