There is no SDK to install yet. The API’s OpenAPI document gives you a typed client in the language you use, and a Postman collection lets you try every call by hand.

Which document

Both list the same operations. Download the first:
A client typed for one build still works with projects on another: the API validates config against the project’s own build. Regenerate after a build changes the fields you use.

TypeScript

Types only, for use with fetch through openapi-fetch:
--default-non-nullable false matters: without it, every config field that has a default becomes required in the types.

Python

Method names come from the operations: createProject / create_project, listFiles / list_files, startUpload / start_upload, and so on; the API reference lists them all.

What a generated client does not do for you

  • Tokens. It sends the token you give it. Create one with your key pair and replace it when a call answers 401; see Authentication.
  • Upload bytes. The part PUTs go to S3’s presigned URLs, not to the API: send them with any HTTP client, as in Upload through the API.
  • Downloads. A download call answers a presigned URL; fetch it without the Authorization header.
File names with slashes need nothing special: both generators encode a path parameter as one segment (season 2/episode 01.mp4 becomes season%202%2Fepisode%2001.mp4).

Postman

VOD Express API — Postman collection

Every call of the API reference, grouped as in it, with example bodies, for this site’s base URLs.
  1. In Postman, Import the downloaded file.
  2. In the collection’s Variables, set apiKey and apiSecret to your key pair.
  3. Send Create token: it stores the token in token, which every other request sends.
  4. Create a project, Create a webhook and Start an upload store the ids they answer (projectId, webhookId, uploadId, uploadKey) for the requests that follow. Set fileName yourself, with a / written as %2F: Postman does not encode path variables.
  5. Idempotency-Key is listed, switched off, on Create a project. Switched on, it sends a new UUID every time; put a fixed value in it to see a repeat answered without a second project.
baseUrl names the environment; see Environments.