---
title: "POST /api/text_to_speech/submit/"
method: POST
path: "/api/text_to_speech/submit/"
tags: ["text_to_speech"]
---

# POST /api/text_to_speech/submit/

`POST /api/text_to_speech/submit/`

## Request

- The document declares no server URL.
- Auth: API key in header `X-API-ID` and API key in header `X-API-KEY`

## Request body

- TextToSpeechFlow
  - `id` string, uuid, required
  - `script` string, required: Text to be converted to speech
  - `accent` string, uuid, nullable: Accent to be used for the speech
  - `model` union: ElevenLabs model. Defaults to the voice's own model. * `v2` - V2 * `v3` - V3 * `v4` - V4 * `v4_turbo` - V4 Turbo
    - 'v2' | 'v3' | 'v4' | 'v4_turbo': * `v2` - V2 * `v3` - V3 * `v4` - V4 * `v4_turbo` - V4 Turbo
    - unknown
  - `webhook_url` string, uri, nullable: Webhook URL for status updates. Default is null.
  - `output` string, required: Output audio url
  - `media_job` string, nullable, required
  - `credits_used` number, required: Credits used in this API call
  - `duration` integer, required: Duration of the video in seconds
  - `is_hidden` boolean, required: Whether the job is hidden or not
  - `status` string, required
  - `failed_reason` string, required: Failed reason
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Response `200`

- TextToSpeechFlow
  - `id` string, uuid, required
  - `script` string, required: Text to be converted to speech
  - `accent` string, uuid, nullable: Accent to be used for the speech
  - `model` union: ElevenLabs model. Defaults to the voice's own model. * `v2` - V2 * `v3` - V3 * `v4` - V4 * `v4_turbo` - V4 Turbo
    - 'v2' | 'v3' | 'v4' | 'v4_turbo': * `v2` - V2 * `v3` - V3 * `v4` - V4 * `v4_turbo` - V4 Turbo
    - unknown
  - `webhook_url` string, uri, nullable: Webhook URL for status updates. Default is null.
  - `output` string, required: Output audio url
  - `media_job` string, nullable, required
  - `credits_used` number, required: Credits used in this API call
  - `duration` integer, required: Duration of the video in seconds
  - `is_hidden` boolean, required: Whether the job is hidden or not
  - `status` string, required
  - `failed_reason` string, required: Failed reason
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Changes

- **2026-11-03** `8423ba73b422`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/creatify/apis/creatify-ai-api/changes/api/text_to_speech/submit/post.md)

---

[API](https://skmtc.dev/creatify/apis/creatify-ai-api.md) - [All operations](https://skmtc.dev/creatify/apis/creatify-ai-api/llms.txt) - [OpenAPI document](https://skmtc.dev/creatify/apis/creatify-ai-api/revisions/8423ba73b422?raw)
