Developer API
Programmatic access to Varibly. Create projects, upload assets, generate ad creatives, and export them — all over a small REST surface designed to be easy for agents to drive.
Quick start
- Sign in to Varibly and go to Settings → API Keys.
- Create a key with the scopes you need. The full key is shown once — copy it now.
- Set
VARIBLY_API_KEY=vb_live_…in your environment. - Hit
GET /api/v1/meto confirm it works.
curl -H "Authorization: Bearer $VARIBLY_API_KEY" https://api.varibly.com/api/v1/me
Base URL
https://api.varibly.com — every public endpoint sits under /api/v1/.
Auth
Bearer API key on every request. Keys live in your account; revoking takes effect immediately. Treat them like passwords. Full scope table and rate-limit details are below; the OpenAPI spec is the canonical machine-readable reference.
Response shape
// success
{ "data": { ... } }
// error
{ "error": { "code": "invalid_request", "message": "..." } }Scopes
| Scope | Lets the key… |
|---|---|
projects:read | List, get projects; poll generation status |
projects:write | Create, update, delete projects |
creatives:read | List/get creatives |
creatives:write | Update overrides, delete, toggle favorite |
assets:read | List/get assets |
assets:write | Create (signed upload), update, delete |
generate:write | Start generation jobs (uses credits) |
export:write | Render images/videos, fetch downloads |
credits:read | Balance + transaction history |
Async jobs
Generation and export endpoints return 202 Accepted with a job_id. Poll the corresponding status endpoint until status === "complete". Don't poll faster than every 2–3 seconds — generation jobs typically take 30–90 seconds end-to-end.
Rate limits
60 requests/minute per key by default (sliding window). Every response includes X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset. On 429, honor Retry-After.
Reference
- Interactive Swagger UI — try requests with your key
- OpenAPI 3.1 JSON — load into Postman, code generators, or your agent