{
  "openapi": "3.0.1",
  "info": {
    "title": "Text To Speech (NO API)",
    "description": "Convert text to natural speech in 43 curated voices across 8 languages. Clone any voice from a 15-second sample. Long text splits automatically. No API key, no subscription — pay only for what you convert.",
    "version": "0.0",
    "x-build-id": "B1ZJG9h1qoK2dom2G"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/dead00~text-to-speech-no-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-dead00-text-to-speech-no-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/dead00~text-to-speech-no-api/runs": {
      "post": {
        "operationId": "runs-sync-dead00-text-to-speech-no-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/dead00~text-to-speech-no-api/run-sync": {
      "post": {
        "operationId": "run-sync-dead00-text-to-speech-no-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "texts"
        ],
        "properties": {
          "texts": {
            "title": "Text to convert",
            "type": "array",
            "description": "One audio file is created per line. Long text is split automatically at sentence breaks, so you can paste a whole article without worrying about length. You can shape the delivery with inline tags placed anywhere in the sentence, for example: [whisper] come closer [excited] I found it! Useful tags include [pause], [emphasis], [laughing], [sigh], [angry], [sad], [shouting], [whisper] and [excited].",
            "items": {
              "type": "string"
            }
          },
          "voice": {
            "title": "Voice",
            "enum": [
              "802e3bc2b27e49c2995d23ef70e6ac89",
              "933563129e564b19a115bedd57b7406a",
              "b347db033a6549378b48d00acb0d06cd",
              "536d3a5e000945adb7038665781a4aca",
              "9a9cf47702da476aa4629e2506d4a857",
              "79d0bd3e4e5444b18f7b6d89b5927bf1",
              "bf322df2096a46f18c579d0baa36f41d",
              "e3cd384158934cc9a01029cd7d278634",
              "c2623f0c075b4492ac367989aee1576f",
              "c5f56a6cc2ec4fa8920cb4c5889a3fb7",
              "59e9dc1cb20c452584788a2690c80970",
              "d8a1340984ee4b63ad1ffae27a6a4339",
              "4c6a6762e4ac4bdebdb4fa8525d054a2",
              "722523118ee94709b661502c76b016b7",
              "3a8c604ba88044f4a6c9d356c9a45cdf",
              "b545c585f631496c914815291da4e893",
              "beb44e5fac1e4b33a15dfcdcc2a9421d",
              "f8dfe9c83081432386f143e2fe9767ef",
              "1936333080804be19655c6749b2ae7b2",
              "ef9c79b62ef34530bf452c0e50e3c260",
              "35199d5438854f5d9157c500479ab684",
              "3f45a7fd7a614655a61eb7027b955783",
              "bfed5c0810a347dbb62e8ccce7f59c48",
              "a335d470fff248e8890dce6550a2874b",
              "35929683c49c4ec0bf779dc07d22620b",
              "60a33602dacc4d899cb671b024e66d8c",
              "2a1036d645634680b3cc69aeeb60375b",
              "aa615eaff73f417e91cfbb4ea0e42df8",
              "23ca4a14992546a3a37c51863d34632f",
              "868377a7b08f4c0d9acf8c9f059571aa",
              "5161d41404314212af1254556477c17d",
              "0089dce5fefb4c6ba9b9f2f0debe1ddc",
              "46745543e52548238593a3962be77e3a",
              "690813f2df56491b82ee02a22d1c67fd",
              "a288bdc744da4ad194921adad6863175",
              "5567200c7d8341738f0892bbacd3be3c",
              "df1fa6d2ae194b3ebcbae60df48fde35",
              "f105557f5588463993a92c2dab364544",
              "5661bf8cb97740fcb10d2f756abf7779",
              "05bf47f4aad948e1a7167a56e1d21c22",
              "14f1000b77d547eeb5f03b474dd29e0f",
              "21b77f5a415a41ceab055b43fcd2c348",
              "dd43b30d04d9446a94ebe41f301229b5"
            ],
            "type": "string",
            "description": "Choose the voice used for every line above.",
            "default": "802e3bc2b27e49c2995d23ef70e6ac89"
          },
          "audioFormat": {
            "title": "Output format",
            "enum": [
              "mp3",
              "wav",
              "opus"
            ],
            "type": "string",
            "description": "File format for the generated audio.",
            "default": "mp3"
          },
          "referenceAudioUrl": {
            "title": "Clone a voice from an audio sample (optional)",
            "type": "string",
            "description": "Paste a direct link to a 10-30 second recording and the output will imitate that speaker instead of the voice chosen above. The link must download the file directly (for example a raw GitHub or S3 link, or a Dropbox link ending in ?dl=1) - a page that opens a player will not work. Only use recordings you have permission to clone."
          },
          "referenceText": {
            "title": "What is said in that sample (optional)",
            "type": "string",
            "description": "Type out the exact words spoken in the sample above, word for word. This is optional, but it noticeably improves how closely the clone matches, because the words can be lined up against the audio."
          },
          "requestTimeoutSecs": {
            "title": "Request timeout (seconds)",
            "minimum": 10,
            "maximum": 1800,
            "type": "integer",
            "description": "How long to wait for each audio file before giving up on it. Raise this if you are converting very long pieces of text in a single line.",
            "default": 300
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}