openapi: 3.1.0 info: title: Runway Characters Avatars 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: Avatars description: Create and manage persistent avatar personas with defined appearance, voice, and personality. Avatars can be created from a single reference image in any visual style. paths: /avatars: post: operationId: createAvatar summary: Create a new avatar description: Creates a new persistent avatar persona with a defined appearance, voice, and personality. The avatar is created from a single reference image and can be used across multiple sessions. Supports photorealistic or animated styles, human or non-human appearances. tags: - Avatars parameters: - $ref: '#/components/parameters/RunwayVersion' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateAvatarRequest' responses: '200': description: Avatar created successfully content: application/json: schema: $ref: '#/components/schemas/Avatar' '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' components: schemas: Avatar: type: object properties: id: type: string format: uuid description: The unique identifier of the created avatar. name: type: string description: The name of the avatar. createdAt: type: string format: date-time description: The timestamp when the avatar was created. CreateAvatarRequest: type: object required: - name - referenceImage - personality - voice properties: name: type: string description: A human-readable name for the avatar persona. referenceImage: type: string description: An HTTPS URL pointing to the reference image to use for the avatar's appearance. Any visual style works, from photorealistic humans to animated mascots to stylized brand characters. format: uri personality: type: string description: Instructions defining the avatar's personality, behavior, and conversational style. For example, 'You are a helpful customer support agent. Be friendly and concise.' voice: type: object description: Voice configuration for the avatar including the voice type and preset identifier. required: - type - presetId properties: type: type: string description: The voice provider type. enum: - runway-live-preset presetId: type: string description: The identifier of the voice preset to use for the avatar. openingMessage: type: string description: An optional opening message that the avatar will speak when a session starts. documentIds: type: array description: An optional list of knowledge document IDs to attach to the avatar, providing additional context during conversations. Maximum of 50 documents. maxItems: 50 items: type: string format: uuid 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. 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' 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/