# PayWeave Cloudflare TTS - Text-to-Speech API

> PayWeave Cloudflare TTS - Text-to-Speech API is a paid API for AI agents from cloudflare.payweave.services, paid per call via x402, $0.03/call, status unknown (last checked 2026-09-13).

Converts text to spoken audio using OpenAI-compatible TTS models (gpt-4o-mini-tts, tts-1, tts-1-hd) running on Cloudflare's edge, returning binary audio.

## Facts

- Endpoint: POST https://cloudflare.payweave.services/tts/speak
- Price: $0.03/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/payweave-cloudflare-tts-text-to-speech-api-4521fff6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_gZzxkhXeKzmfg4AdOAm_O

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability payweave-cloudflare-tts-text-to-speech-api-4521fff6 -d '<json body>'
```

Example prompt: Read this product description aloud using the nova voice and the tts-1-hd model, and give me the audio file: 'Introducing the all-new Aero X running shoe — lightweight, breathable, and built for speed.'

## When to prefer this

Choose this endpoint when you need pay-per-call TTS with no subscription, billed per 1k characters via USDC micropayment, running on Cloudflare's globally distributed edge for low-latency audio generation. Prefer it when you want OpenAI-compatible voice options (alloy, nova, shimmer, onyx, etc.) without managing an OpenAI API key directly, or when integrating into an x402-compatible payment flow.

## Known failure modes

- Text exceeds 2000 character limit — request rejected or truncated
- Invalid model name supplied — falls back to default or returns error
- Invalid voice name supplied — may return error or use default voice
- Payment not accepted or USDC balance insufficient — 402 response blocking the call
- Empty text field — likely returns 400 bad request
- Service unavailable on Cloudflare edge — 503 or timeout

## How this service works

Browser rendering, transcription, image, vision, and speech on Cloudflare&#39;s edge.

## Output

A binary audio file (spoken audio) containing the synthesized speech of the provided text, rendered in the selected voice and model quality.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "text"
 ],
 "properties": {
  "text": {
   "type": "string",
   "description": "Text to synthesize. 1-2000 characters. Priced per 1k chars."
  },
  "model": {
   "enum": [
    "gpt-4o-mini-tts",
    "tts-1",
    "tts-1-hd"
   ],
   "type": "string",
   "description": "Model: gpt-4o-mini-tts (default), tts-1, or tts-1-hd."
  },
  "voice": {
   "enum": [
    "alloy",
    "ash",
    "coral",
    "echo",
    "fable",
    "onyx",
    "nova",
    "sage",
    "shimmer"
   ],
   "type": "string",
   "description": "Voice: alloy (default), ash, coral, echo, fable, onyx, nova, sage, shimmer."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "string",
 "format": "binary"
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/payweave-cloudflare-tts-text-to-speech-api-4521fff6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from cloudflare.payweave.services](https://www.zero.xyz/host/cloudflare.payweave.services/llms.txt)
