Video APIs
Overview
Video generation is asynchronous. Use this lifecycle:- Submit a job (
POST /v1/videos) - Poll status (
GET /v1/videos/{id}) - Download output (
GET /v1/videos/{id}/content)
Base URL
https://api.sciforium.com/v1
Authentication
Include your API token in the headers:Authorization: Bearer <TOKEN>x-api-key: <TOKEN>
Supported Endpoints
| Method | Path | Purpose |
|---|---|---|
POST | /videos | Create a video job |
GET | /videos/{id} | Get video job status |
GET | /videos/{id}/content | Download video content (MP4) |
GET | /videos | List video jobs |
DELETE | /videos/{id} | Delete a video job |
1) Create Video Job
Method:POSTEndpoint:
https://api.sciforium.com/v1/videosContent-Type:
multipart/form-dataSuccess Status:
201 Created
Request fields
| Field | Type | Required | Description |
|---|---|---|---|
prompt | string | Yes | Prompt text (1..32000 chars). |
model | string | Yes | Video model ID. |
seconds | string | No | Duration in seconds: 2, 4, 8, 12. Default: 4. |
size | string | No | One of 720x1280, 1280x720, 1024x1792, 1792x1024, 640x480, 480x640. Default: 720x1280. |
input_reference | file | No | Optional reference image for image-to-video flows. |
Example cURL (text-to-video)
2. Check the Status: GET /v1/videos/
Since you don’t know exactly when the video will be finished, you “poll” this endpoint (requesting it every 5–10 seconds) or wait for a Webhook notification if you have one configured.The Response
The status field is the most important part of this response.| Status | Meaning |
|---|---|
| queued | Waiting for available compute. |
| in_progress | The model is currently rendering frames. |
| completed | The video is ready for download. |
| failed | Something went wrong (check the error field). |