API Directory › Integrate with REST / cURL
Integrate BetterVideo with REST / cURL
A working REST / cURL example that submits a video for enhancement, polls the job to completion, and returns the time-limited download link — against the live BetterVideo API.
🔒 Footage deleted on your schedule — with a certificate to prove it
# 1. Submit a video for enhancement
curl -s https://api.bettervideo.io/v1/jobs \
-H "Authorization: Bearer bv_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{"video_url":"https://example.com/clip.mp4","resolution":"1080p"}'
# -> {"id":"job_123","status":"queued", ...}
# 2. Poll the job until "status":"done"
curl -s https://api.bettervideo.io/v1/jobs/job_123 \
-H "Authorization: Bearer bv_live_your_key_here"
# 3. Fetch the time-limited download link
curl -s https://api.bettervideo.io/v1/jobs/job_123/result \
-H "Authorization: Bearer bv_live_your_key_here"
# -> {"download_url":"https://...","expires_in":3600}Plain HTTP — works from any shell. Base URL https://api.bettervideo.io/v1 · auth Authorization: Bearer bv_live_…. Grab a free sandbox key from the developer console.
What the code does
- Submit —
POST /v1/jobswith a publicvideo_urland aresolution(1080por4k). - Poll —
GET /v1/jobs/{id}untilstatusisdone(orerror). Prefer a signedwebhook_urlin production instead of polling. - Download —
GET /v1/jobs/{id}/resultreturns a time-limiteddownload_url.DELETE /v1/jobs/{id}removes it on demand.
Start building in REST / cURL
Free sandbox key, no card — build the whole integration before you spend anything.
Get your API key →