Create a job
curl -X POST https://api.clipfoundry.pl/v1/jobs \
-H "Authorization: Bearer cf_live_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: my-unique-key-123" \
-d '{
"script": "Honey never spoils. Archaeologists found edible jars...",
"style": "cinematic",
"voiceId": "el_brian",
"language": "en",
"durationMs": 13000
}'Response (201):
{ "jobId": "b1a2...", "status": "pending", "progress": 0,
"videoUrl": null, "tokensCharged": null, "createdAt": "..." }The call returns immediately — rendering is async. See Job parameters for every field and Track progress to follow it.
Billing: charged on success
Tokens are debited only when a job completes (status: done). On
POST /v1/jobs we check your balance and reject with insufficient_tokens if it
can't cover the job, but nothing is deducted until the render succeeds. Failed
or cancelled jobs cost nothing — there is no up-front hold and no refund step.
tokensCharged stays null until the job is done.