Runway provider summary
Video-only provider. Bifrost exposes OpenAI-style /v1/videos endpoints and normalizes task statuses.
Generation modes (auto-detected)
- Text-to-video:
promptonly - Image-to-video:
prompt+input_reference - Video-to-video:
prompt+video_uri(gen4_aleph only)
Bifrost statuses: queued → in_progress → completed / failed. Runway native: PENDING, THROTTLED, RUNNING, SUCCEEDED, FAILED, CANCELLED.
| Property | Details |
|---|---|
| Description | Async video generation (text, image, video inputs). |
| Provider route on Bifrost | runway/<model> |
| Authentication | API key (RUNWAY_API_KEY) |
| Bifrost endpoints | POST /v1/videos, GET /v1/videos/{id}, GET /v1/videos/{id}/content, DELETE /v1/videos/{id} |
Configuration
Add Runway API keys via provider configuration. See Configuration in Bifrost docs.
curl --location 'http://localhost:8080/api/providers' \
--header 'Content-Type: application/json' \
--data '{
"provider": "runway",
"keys": [
{
"name": "runway-key-1",
"value": "env.RUNWAY_API_KEY",
"models": ["*"],
"weight": 1.0
}
]
}'Supported operations
See Supported operations in Bifrost docs.
| Operation | Supported | Upstream endpoint | |
|---|---|---|---|
| Video Generation | Yes | — | /v1/text_to_video, /v1/image_to_video, /v1/video_to_video |
| Video Retrieve | Yes | — | /v1/tasks/{task_id} |
| Video Download | Yes | — | via Retrieve + URL download |
| Video Delete | Yes | — | /v1/tasks/{task_id} (cancel) |
| Video List | No | — | - |
| Video Remix | No | — | - |
API reference
1) Video Generation
POST /v1/videos. See Video Generation in Bifrost docs.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| model | string | Yes | Runway model |
| prompt | string | Yes | Text description of the video |
| input_reference | string | No | Input image for image-to-video |
| seconds | string | No | Duration in seconds (default: "2") |
| size | string | No | Resolution WxH (e.g. 1280x720); converted to W:H ratio |
| seed | int | No | Gen models only |
| audio | bool | No | Enable audio generation (Veo models only) |
| video_uri | string | No | Source video URL for video-to-video (gen4_aleph only) |
Extra params
| Key | Type | Notes |
|---|---|---|
| references | array | Video reference objects [{uri, tag}] for video-to-video |
| content_moderation | object | Content moderation config |
| reference_images | array | Reference image objects for style/asset guidance |
curl -X POST http://localhost:8080/v1/videos \
-H "Content-Type: application/json" \
-d '{
"model": "runway/gen4_turbo",
"prompt": "A cinematic drone shot over mountains at golden hour",
"seconds": "5",
"size": "1280x720"
}'2) Retrieve, Download, Delete
Poll until status: completed, then download MP4 bytes. DELETE cancels a running task.
| Operation | Endpoint | Notes |
|---|---|---|
| Get status | GET /v1/videos/{id} | Poll until completed |
| Download content | GET /v1/videos/{id}/content | Raw video bytes (MP4) |
| Cancel/Delete | DELETE /v1/videos/{id} | Cancels running task |
# Poll status curl http://localhost:8080/v1/videos/TASK_ID # Download MP4 curl http://localhost:8080/v1/videos/TASK_ID/content -o output.mp4 # Cancel task curl -X DELETE http://localhost:8080/v1/videos/TASK_ID
Unsupported features
| Feature | Reason |
|---|---|
| Video list | Not offered by Runway API via Bifrost |
| Video remix | Not offered by Runway API via Bifrost |