---
title: "Synthesize"
method: POST
path: "/v1/speech"
---

# Synthesize

`POST /v1/speech`

## Query parameters

- `stream` boolean

## Request body

- BodySynthesizeV1SpeechPost
  - `text` string, required
  - `voice` 'sade' | 'segun' | 'femi' | 'funmi' | 'amina' | 'aliyu' | 'hasan' | 'zainab' | 'ngozi' | 'amara' | 'ebuka' | 'obinna' | 'lucy' | 'lina' | 'john' | 'jude' | 'henry' | 'kani' | 'hana' | 'selam' | 'tena' | 'tesfaye', required
  - `language` 'yo' | 'en' | 'ha' | 'ig' | 'am', required

## Response `200`

Successful Response

## Other responses

- `422` — Validation Error

## Changes

- **2025-06-17** `d71f3e71d5b7` — 1 breaking, 20 info
  - the request property `voice` became required
  - added the new optional `query` request parameter `stream`
  - added the new `aliyu` enum value to the request property `voice`
  - added the new `am` enum value to the request property `language`
  - …17 more
- **2024-10-07** `530069da7d55` — 1 breaking, 1 warning, 1 info
  - removed the media type `application/json` for the response with the status `200`
  - deleted the `query` request parameter `stream`
  - added the media type `audio/wav` for the response with the status `200`
- **2024-10-07** `44bf59bcade3` — 1 breaking, 1 info
  - removed the media type `audio/wav` for the response with the status `200`
  - added the media type `application/json` for the response with the status `200`
- **2024-10-07** `04c6e17471d2` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/spi-tch/apis/spitch-api-2/changes/v1/speech/post.md)

---

[API](https://skmtc.dev/spi-tch/apis/spitch-api-2.md) · [All operations](https://skmtc.dev/spi-tch/apis/spitch-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/spi-tch/spitch-api-2/revisions/d71f3e71d5b7/schema)
