Skip to main content

API overview

Programmatic uploads and batch jobs for Pro subscribers. Generate your API key in the hosted app under Dashboard → Settings → API access.

Keys start with s2yt_live_ and are shown once at creation.

Authentication

Send the key on every request:

Authorization: Bearer s2yt_live_your_key_here

Requirements:

  • Active Pro plan
  • YouTube channel connected (sign in with Google OAuth that includes YouTube scopes)

Rate limits

Default is 60 requests per minute per account. Approved rate-limit extensions raise that ceiling. Check live usage and request an extension in Settings → API access.

Video quota from your Pro plan still applies when creating jobs (monthly video allowance and max batch size).

Choosing a flow

  1. Upload each file with POST /api/v1/upload
  2. Create the job with POST /api/v1/jobs (JSON paths)

This avoids huge multipart bodies.

One-shot batch: small packs only

POST /api/v1/jobs/batch accepts one cover image and a few audio files in a single multipart request. Large bodies often fail with:

failed to parse body as FormData

Prefer two-step for albums or long tracklists. Pro max batch size is currently 5 audio files per job.

Multipart tips

  • Do not set Content-Type manually for multipart; the client must include the boundary
  • In Postman: Body → form-data; each audio field key must be exactly audio (type File)
  • If a file field shows a warning, re-select the file from disk

Discovery

GET /api/v1

Returns the endpoint list and requirements (no auth).

Next

See Endpoints for curl examples.