API keys and the REST API
On this page
Create keys in Settings → Developers (owners and admins). Give the key a name and choose its Access: Read only (like a Viewer), Read & write videos (like a Member) or Admin. The key is shown once; store it somewhere safe. The key list shows each key’s access, when it was last used, and Revoke.

Each key shows when it was last used. Revoke stops it at once: anything using it stops working immediately.
Send the key as a bearer token:
curl https://api.pellio.io/v1/videos
-H "Authorization: Bearer pk_…"
Uploading
Uploading takes three steps: create the upload, send the file, then tell Pellio it’s complete.
- Create the upload. The response has the video and an
uploadobject with aurl,method(PUT) andheaders. The URL is valid for 6 hours.curl https://api.pellio.io/v1/videos/uploads -H "Authorization: Bearer pk_…" -H "Content-Type: application/json" -d '{"title":"Onboarding","filename":"onboarding.mp4","size":48213377,"type":"video/mp4"}' - Send the file to
upload.urlwithPUTand the given headers. It goes straight to storage. - Call
POST /v1/videos/{id}/complete. Processing starts then; without this step, it never does. Avideo.readywebhook tells you when it’s done.
Files must be video or audio, up to 20 GB. For large files, use a resumable upload in 16 MB parts: POST /v1/videos/{id}/multipart, then /multipart/resume to see which parts arrived, and /multipart/complete.
To import from a link instead, POST /v1/videos/import with the file’s URL.
Reference
Every endpoint, with request and response schemas and an interactive console, is in the API reference. The OpenAPI document is at https://api.pellio.io/v1/openapi.json.
Rate limits
Each key can make 600 requests a minute, and 30 imports a minute. A 429 response means slow down and retry.
Was this article helpful?
Related articles
- WebhooksGet notified when videos are created, ready, failed or deleted, and when leads come in.
- Player APIControl the player and listen for its events, with postMessage or the web component.
- AI assistants (MCP)Connect Claude, ChatGPT, Cursor or Claude Code to Pellio with its MCP server.
- WordPress pluginA fast, private video player for any WordPress site, and Pellio hosting when you connect an account.