Runway · Schema
Runway Avatar
Represents an avatar persona in the Runway Characters system. Avatars are persistent conversational video agents with defined appearance, voice, and personality, created from a single reference image.
Video GenerationImage GenerationArtificial IntelligenceMachine LearningGenerative AIAvatarsCharactersWebRTCCreative Tools
Properties
| Name | Type | Description |
|---|---|---|
| id | string | The unique identifier for the avatar. |
| name | string | A human-readable name for the avatar persona. |
| referenceImage | string | The HTTPS URL of the reference image used for the avatar's appearance. Any visual style works, from photorealistic humans to animated mascots. |
| personality | string | Instructions defining the avatar's personality, behavior, and conversational style. |
| voice | object | Voice configuration for the avatar. |
| openingMessage | string | An optional opening message that the avatar speaks when a session starts. |
| documentIds | array | List of knowledge document IDs attached to the avatar, providing additional context during conversations. |
| createdAt | string | The ISO 8601 timestamp when the avatar was created. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://api.dev.runwayml.com/schemas/runway/avatar.json",
"title": "Runway Avatar",
"description": "Represents an avatar persona in the Runway Characters system. Avatars are persistent conversational video agents with defined appearance, voice, and personality, created from a single reference image.",
"type": "object",
"required": ["id", "name"],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique identifier for the avatar."
},
"name": {
"type": "string",
"description": "A human-readable name for the avatar persona.",
"minLength": 1
},
"referenceImage": {
"type": "string",
"format": "uri",
"description": "The HTTPS URL of the reference image used for the avatar's appearance. Any visual style works, from photorealistic humans to animated mascots."
},
"personality": {
"type": "string",
"description": "Instructions defining the avatar's personality, behavior, and conversational style."
},
"voice": {
"$ref": "#/$defs/VoiceConfig",
"description": "Voice configuration for the avatar."
},
"openingMessage": {
"type": "string",
"description": "An optional opening message that the avatar speaks when a session starts."
},
"documentIds": {
"type": "array",
"description": "List of knowledge document IDs attached to the avatar, providing additional context during conversations.",
"maxItems": 50,
"items": {
"type": "string",
"format": "uuid"
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "The ISO 8601 timestamp when the avatar was created."
}
},
"$defs": {
"VoiceConfig": {
"type": "object",
"description": "Configuration for the avatar's voice, specifying the voice provider and preset.",
"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."
}
}
},
"RealtimeSession": {
"type": "object",
"description": "A live WebRTC session connecting a user to an avatar for real-time conversational interaction. Sessions have a maximum duration of 5 minutes.",
"required": ["id", "status"],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique identifier of the session."
},
"status": {
"type": "string",
"description": "The current status of the session.",
"enum": ["PENDING", "READY", "ACTIVE", "ENDED"]
},
"model": {
"type": "string",
"description": "The model type used for the session.",
"enum": ["gwm1_avatars"]
},
"serverUrl": {
"type": "string",
"format": "uri",
"description": "The WebRTC server URL to connect to."
},
"token": {
"type": "string",
"description": "The one-time authentication token for the WebRTC connection."
},
"roomName": {
"type": "string",
"description": "The name of the WebRTC room to join."
},
"maxSessionDurationSeconds": {
"type": "integer",
"description": "Maximum session duration in seconds.",
"maximum": 300
}
}
},
"Document": {
"type": "object",
"description": "A domain-specific knowledge document that avatars can reference during conversations to provide accurate, contextual responses.",
"required": ["id", "name"],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique identifier of the document."
},
"name": {
"type": "string",
"description": "A human-readable name for the knowledge document."
},
"content": {
"type": "string",
"description": "The text content of the knowledge document. Each avatar supports up to 50,000 tokens of knowledge across all attached documents."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "The ISO 8601 timestamp when the document was uploaded."
}
}
},
"PresetAvatar": {
"type": "string",
"description": "Available preset avatar identifiers for quick session creation without custom avatar setup.",
"enum": [
"game-character",
"music-superstar",
"game-character-man",
"cat-character",
"influencer",
"tennis-coach",
"human-resource",
"fashion-designer",
"cooking-teacher"
]
}
}
}