API Overview¶
Base URL¶
Authentication¶
All requests require a Bearer token:
Endpoints¶
| Method | Path | Description |
|---|---|---|
POST |
/api/v1/reels/analyze |
Submit a Reel URL for analysis |
GET |
/api/v1/reels/:id |
Get analysis result by ID |
Request flow¶
Processing is asynchronous:
POST /api/v1/reels/analyze → { id: 42, status: "pending" }
↓
(5–90 seconds processing)
↓
GET /api/v1/reels/42 → { status: "done", result: {...} }
Status values:
| Status | Meaning |
|---|---|
pending |
Job accepted, not started yet |
processing |
Downloading video and calling Gemini AI |
done |
Analysis complete — result is populated |
error |
Processing failed — error contains the reason |
Rate limits¶
| Limit | Value |
|---|---|
| Requests per minute | 10 |
| Concurrent jobs | 3 |
| Max video duration | 90 seconds |
Exceeding limits returns 429 Too Many Requests.
Response format¶
All responses are JSON. Successful responses return the resource directly.
Errors return { "error": "message" }.
OpenAPI spec¶
The machine-readable OpenAPI 3.0 spec is available at:
Interactive Swagger UI: