Runway Upscale API

Upscale a video to higher resolution.

OpenAPI Specification

runwayml-upscale-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Runway Character Performance Upscale API
  description: 'The Runway (RunwayML) developer API for generative AI media. All generation is asynchronous: a POST to a generation endpoint creates a task and returns a task id, which the client polls on GET /tasks/{id} until the task reaches SUCCEEDED or FAILED. Every request must include an Authorization Bearer API secret and a dated X-Runway-Version header (for example 2024-11-06). Usage is billed in credits (roughly $0.01 per credit) against a developer organization. This description was authored by API Evangelist from Runway''s public documentation and is not an official Runway artifact; verify shapes against docs.dev.runwayml.com.'
  version: '2024-11-06'
  contact:
    name: Runway
    url: https://docs.dev.runwayml.com
servers:
- url: https://api.dev.runwayml.com/v1
  description: Runway developer API
security:
- bearerAuth: []
tags:
- name: Upscale
  description: Upscale a video to higher resolution.
paths:
  /video_upscale:
    post:
      operationId: videoUpscale
      tags:
      - Upscale
      summary: Create a video-upscale task
      description: Upscale a generated or uploaded video to a higher resolution. Billed per output frame. Returns a task id to poll.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VideoUpscaleInput'
      responses:
        '200':
          description: The created task.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaskCreated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  schemas:
    TaskCreated:
      type: object
      properties:
        id:
          type: string
          description: The task id to poll on GET /tasks/{id}.
    VideoUpscaleInput:
      type: object
      required:
      - videoUri
      - model
      properties:
        model:
          type: string
          enum:
          - upscale_v1
          example: upscale_v1
        videoUri:
          type: string
          description: URL or data URI of the source video to upscale.
  responses:
    RateLimited:
      description: Too many requests - the account rate or concurrency limit was exceeded.
    Unauthorized:
      description: Missing or invalid API secret.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API secret created in the Runway developer portal (dev.runwayml.com), passed as Authorization Bearer YOUR_API_SECRET. Requests must also send a dated X-Runway-Version header.