Scrollify provides a read-only REST API for listing and downloading your exports programmatically. The API uses Bearer token authentication via an API key you generate in your account settings.
All requests must include your API key as a Bearer token in the Authorization header.
Authorization: Bearer <your-api-key>
Generate a key in User settings → API Access. Each user has one active key at a time. Rotating generates a new key and invalidates the old one immediately.
https://scrollify.io
List all exports for the authenticated user. Returns the same shape as the in-app library.
{
"object": "list",
"data": [
{
"jobId": "01JXXXXXXXXXXXXXXXXXXXXXXX",
"url": "https://example.com/page",
"status": "ready",
"createdAt": "2026-06-17T10:00:00.000Z",
"outputs": [
{
"outputId": "01JXXXXXXXXXXXXXXXXXXXXXXX",
"format": "mp4",
"status": "ready",
"downloadUrl": "/api/v1/outputs/01JXXX.../download"
}
]
}
]
}
Get a single export by its jobId (ULID).
Same shape as a single element from the list above. Returns 404 if not found or not owned by the key holder.
Each output object includes a downloadUrl field when status is "ready". Append the base URL and request it with the same Authorization header — the server streams the file with a Content-Disposition: attachment header.
curl -H "Authorization: Bearer <key>" \
https://scrollify.io/api/v1/outputs/<outputId>/download \
-o my-export.mp4
Note: Download counts are tracked for each output. View counts are tracked when a share link is viewed.
| Endpoint | Limit | Window |
|---|---|---|
GET /api/v1/exports | 60 requests | 60 seconds |
GET /api/v1/exports/:jobId | 120 requests | 60 seconds |
GET /api/v1/outputs/:id/download | 72 requests | 60 seconds |
Exceeding a limit returns 429 Too Many Requests.
{ "error": "Human-readable error message" }
| Status | Meaning |
|---|---|
401 | Missing, invalid, or revoked API key |
404 | Export not found or not owned by key holder |
429 | Rate limit exceeded |
500 | Unexpected server error |