> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sia.vision/llms.txt
> Use this file to discover all available pages before exploring further.

# Generate one speaking-video candidate

> character_video_generate: permissions and generated input/output contracts.

`character_video_generate` · Gateway release **0.8.3**

Submit one speaking-video candidate from the approved Character reference, billed to this account without a per-job quote prompt. This route uses provider-native audio and does not use the chosen ElevenLabs voice. Returns a durable jobId; provider acceptance is not a retained video or review approval. Poll/recover the same operation, never automatically submit another. Only when the user explicitly requests one fresh attempt despite an unresolved original, supply replaceUncertainJobId with that original MCP job ID and use one new operationId. This preserves the original unknown outcome and reservation; it is not a refund or automatic retry.

Required scopes: `account:read`, `studio:generate`. Changes saved state or requests work; review the operation’s effects.

Availability depends on runtime configuration and the permissions granted to this connection. Use live MCP discovery as the authority.

## Input

```json theme={null}
{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "storyworldId": {
      "type": "string",
      "pattern": "^[a-fA-F0-9]{24}$",
      "description": "ID of an accessible saved Storyworld returned by discovery. Keep this destination fixed for the operation."
    },
    "characterId": {
      "type": "string",
      "pattern": "^[a-fA-F0-9]{24}$",
      "description": "ID of the exact saved Character to reuse; do not create a new identity for an outfit or accessory."
    },
    "operationId": {
      "type": "string",
      "pattern": "^[a-zA-Z0-9-]{16,64}$",
      "description": "Persist a client-generated UUID before this mutation. Repeat identical inputs and this same ID after interruption; a new ID is a new request."
    },
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 250
    },
    "imageAssetId": {
      "type": "string",
      "pattern": "^[a-fA-F0-9]{24}$"
    },
    "replaceUncertainJobId": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    }
  },
  "required": [
    "storyworldId",
    "characterId",
    "operationId",
    "text"
  ]
}
```

## Declared output

This is the declared success schema. Error results and binary media blocks are separate MCP protocol results.

```json theme={null}
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string",
      "const": "1"
    },
    "jobId": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "status": {
      "type": "string"
    }
  },
  "required": [
    "schemaVersion",
    "jobId",
    "status"
  ],
  "additionalProperties": {}
}
```

[All tools](https://docs.sia.vision/mcp-reference.md) · [Permissions](https://docs.sia.vision/authentication.md) · [Media and recovery](https://docs.sia.vision/media-and-recovery.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.