Studio API · v1
Programmable video editing.
Upload a source file, receive a project ID, then poll status or use a completion webhook. The public reference documents the exact request and response contract.
# Upload a video and create a project
curl -X POST https://www.web2labs.com/api/v1/projects/upload \
-H "X-API-Key: w2l_REPLACE_ME" \
-F "[email protected]" \
-F 'configuration={"subtitle":true,"shorts":true}'
# -> { "data": { "projectId": "...", "pollUrl": "/api/v1/projects/.../status" } }
# Poll the returned status URL
curl https://www.web2labs.com/api/v1/projects/PROJECT_ID/status \
-H "X-API-Key: w2l_REPLACE_ME"API Key
Sign in to generate a key. Reading the docs and reference does not require an account.
Creator Credits
Sign in to view your Creator Credit balance. API and Studio usage spend the same balance.
Top up credits
Paid plans can buy the same non-expiring Creator Credit bundles used in Studio.Bundles are temporarily unavailable.
Credit contract
One spendable currency across Studio and API. Read the live detail from GET /api/v1/pricing.Core pricing rules
1 cr = 1 source min| Operation | Credits | Rate |
|---|---|---|
| Source video processing | 1 | 1 cr/source min |
| Drafts, uploads, and activation | Free | free |
| Webhook delivery | Free | free |
| Jobs refused before delivery | Free | fully refunded |
How a job flows
Async pipeline. Submit, walk away, get a webhook - or poll if you must.01
Upload
Send a multipart request with your source file
no charge02
Process
Studio runs the selected configuration asynchronously
metered03
Observe
Poll the status URL or receive your project webhook
async04
Deliver
Read results, then fetch authenticated download URLs
on completionReference
Full OpenAPIPOST
/api/v1/projects/uploadUpload a video and create a projectGET
/api/v1/projects/{id}/statusPoll project status and progressGET
/api/v1/projects/{id}/resultsList completed output assetsGET
/api/v1/projects/{id}/download/mainDownload the main outputGET
/api/v1/creditsRead the unified Creator Credit balanceGET
/api/v1/pricingRead the current pricing contractHTTP clients
The REST contract works with standard HTTP tools; no Web2Labs SDK is required.JS
Node.js fetchUse the built-in HTTP and multipart primitives
Node.js 18+ · no Web2Labs SDK requiredPY
PythonSend the same documented HTTP requests
pip install requestsSH
cURLPlain HTTP, copy-pasteable
No Web2Labs SDK required