Skip to content

Built for people who want to own their automations. Join the waitlist for an invite.

Package listing

@kody/linkedin

src/finalize-video-upload.ts

17 lines · 908 B · TypeScript
import { finalizeVideoUpload, requireRecord } from './client.ts'
import type { FinalizeVideoUploadInput } from './client.ts'

/**
 * Finalize a native LinkedIn video upload after all parts are uploaded.
 * @param params.video - Video URN from `register-video-upload`.
 * @param params.uploadedPartIds - Ordered ETag/part ids from each `upload-video-part`.
 * @returns Finalized video metadata when `confirm: true`.
 * @example
 * import finalizeVideoUpload from 'kody:@kody/linkedin/finalize-video-upload'
 * const result = await finalizeVideoUpload({ video: 'urn:li:video:...', uploadedPartIds: ['etag'], confirm: true })
 * // => { video: 'urn:li:video:...', ... }
 */
export default async function finalizeVideoUploadEntrypoint(params: Partial<FinalizeVideoUploadInput> & Record<string, unknown> = {}) {
  const input = requireRecord(params, 'finalize-video-upload')
  return finalizeVideoUpload(input)
}