Skip to main content

Overview

Runway ML provides video generation via an asynchronous task-based API. Bifrost maps the unified video schema to Runway’s task API and polls until completion.

Supported Operations

OperationSupportedEndpoint
Video Generation/v1/text_to_video, /v1/image_to_video, /v1/video_to_video
Video Retrieve/v1/tasks/{task_id}
Video Downloadvia Retrieve + URL download
Video Delete/v1/tasks/{task_id} (cancel)
Video List-
Video Remix-

1. Video Generation

Generate (POST /v1/videos)

Request Parameters
ParameterTypeRequiredNotes
modelstringRunway model
promptstringText description of the video
input_referencestringInput image for image-to-video
secondsstringDuration in seconds (default: "2")
sizestringResolution as WxH (e.g., 1280x720; default: 1280x720) - converted to W:H ratio
seedintGen models only
audioboolEnable audio generation. Veo models only
video_uristringSource video URL for video-to-video. gen4_aleph only
Extra Params
KeyTypeNotes
referencesarrayVideo reference objects [{"uri": "...", "tag": "..."}] for video-to-video
content_moderationobjectContent moderation config
reference_imagesarrayReference image objects for style/asset guidance
Generation Modes (auto-detected from inputs)
  • Text-to-video: prompt only
  • Image-to-video: prompt + input_reference
  • Video-to-video: prompt + video_uri - gen4_aleph only
Response: BifrostVideoGenerationResponse with id, status, videos[] Bifrost statuses (normalized): queuedin_progresscompleted / failed These values are the normalized view returned by Bifrost’s API. Runway’s native statuses are: PENDING, THROTTLED, RUNNING, SUCCEEDED, FAILED, CANCELLED.

Retrieve / Download / Delete

OperationEndpointNotes
Get statusGET /v1/videos/{id}Poll until status: completed
Download contentGET /v1/videos/{id}/contentReturns raw video bytes (MP4)
Cancel/DeleteDELETE /v1/videos/{id}Cancels the running task

Setup & Configuration

Configure Runway as a provider.
Runway ML provider dashboard
  1. Navigate to Models > Model Providers. Look for Runway ML under Configured Providers. If it is missing, click on Add New Provider and select Runway ML.
  2. Click Add Key or edit an existing key.
  3. Set a name for your key.
  4. Paste your API key directly or use an environment variable (for example, env.RUNWAY_API_KEY).
  5. Set Allowed Models to All Models (default) or the specific model allowlist you want this key to serve.
  6. Save the provider configuration.