openapi: 3.1.0 info: title: Runway Characters Avatars Lip Sync API description: The Runway Characters API enables developers to build real-time conversational avatars powered by GWM-1, Runway's General World Model. Characters are fully custom conversational video agents that can be created from a single image with no fine-tuning required, supporting photorealistic or animated styles, human or non-human appearances. The API manages avatars, real-time sessions via WebRTC, and knowledge documents that avatars can reference during conversations. Sessions have a maximum duration of 5 minutes. version: '2024-11-06' contact: name: Runway Support url: https://support.runwayml.com/ termsOfService: https://runwayml.com/terms-of-use servers: - url: https://api.dev.runwayml.com/v1 description: Production Server security: - bearerAuth: [] tags: - name: Lip Sync description: Create generative videos where a selected face speaks lines from audio clips or AI-generated voices, supporting 28+ languages. paths: /lip_sync: post: operationId: createLipSync summary: Create lip sync generation task description: Starts a new asynchronous task to create a generative video where a selected face speaks lines from audio clips or AI-generated voices. Supports 28+ languages using the eleven_multilingual_v2 model. Returns a task ID that can be polled for completion. tags: - Lip Sync parameters: - $ref: '#/components/parameters/RunwayVersion' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/LipSyncRequest' responses: '200': description: Task created successfully content: application/json: schema: $ref: '#/components/schemas/TaskCreatedResponse' '400': description: Bad request - invalid parameters content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized - invalid or missing API key content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit exceeded content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' components: parameters: RunwayVersion: name: X-Runway-Version in: header required: true description: API version identifier. Must be set to the exact value 2024-11-06. schema: type: string enum: - '2024-11-06' schemas: TaskCreatedResponse: type: object properties: id: type: string format: uuid description: The unique identifier for the created task. Use this ID to poll the task status endpoint. LipSyncRequest: type: object required: - model - input - audio properties: model: type: string description: The model to use for lip sync generation. enum: - gen4 - gen4_turbo input: type: string description: An HTTPS URL or runway:// URI pointing to the input image or video containing the face to animate. audio: type: string description: An HTTPS URL or runway:// URI pointing to the audio file to sync with the face. Supports 28+ languages via eleven_multilingual_v2. ErrorResponse: type: object properties: error: type: string description: A human-readable error message describing what went wrong. code: type: string description: A machine-readable error code identifying the type of error. securitySchemes: bearerAuth: type: http scheme: bearer description: API key passed via the HTTP Authorization header using the Bearer scheme. Obtain your API key from the Runway Developer Portal at https://dev.runwayml.com/. externalDocs: description: Runway Characters Documentation url: https://docs.dev.runwayml.com/characters/