# ForgeMesh Voice TTS Base

> ForgeMesh Voice TTS Base is a paid API for AI agents from voice.forgemesh.io, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-13).

Converts text to speech audio using configurable voices, personas, and 31 languages, returning a 44.1kHz WAV file via pay-per-call API.

## Facts

- Endpoint: POST https://voice.forgemesh.io/v1/tts/base
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 2
- Tags: x402
- Canonical page: https://www.zero.xyz/c/forgemesh-voice-tts-base-f1d0b13d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_g4nPlcXTws7yX8BsDaRxY

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 forgemesh-voice-tts-base-f1d0b13d -d '<json body>'
```

Example prompt: Read this passage aloud using the Storyteller persona voice in English at a slightly slow speed of 0.85: 'Once upon a time in a land far away, there lived a brave young inventor who changed the world.'

## When to prefer this

Choose this endpoint when you need a pay-per-call TTS API with no subscription, support for 31 languages, named persona voices (Storyteller, Narrator, etc.), and OpenAI-compatible request shaping. Ideal for AI agents needing on-demand voice output billed in USDC microtransactions.

## Known failure modes

- Text exceeds 2000 character limit — request rejected or truncated
- Unsupported language code — returns error for invalid ISO lang
- Invalid voice ID — unrecognized M/F codes or persona names return an error
- Speed or steps outside Pro-tier range — may fall back to default or return validation error
- Payment failure via x402 — call blocked if USDC payment is not completed
- Rate limiting — too many requests in short succession may be throttled

## How this service works

Text-to-speech synthesis in 1 of 10 standard voices (5 male M1-M5, 5 female F1-F5) across 31 languages, up to 500 characters, returned as inline WAV audio. Use it to: give an agent a spoken reply, read an alert aloud, narrate a short UI prompt, add voice to a chatbot response, speak a confirmation message. Cheapest tier. USDC on Base via x402, no API key, no signup.

## Output

A 44.1kHz 16-bit mono WAV audio file containing the synthesized speech, returned as audio/wav content, ready to play or embed in apps, videos, or other media.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "lang": {
   "enum": [
    "en",
    "ko",
    "ja",
    "ar",
    "bg",
    "cs",
    "da",
    "de",
    "el",
    "es",
    "et",
    "fi",
    "fr",
    "hi",
    "hr",
    "hu",
    "id",
    "it",
    "lt",
    "lv",
    "nl",
    "pl",
    "pt",
    "ro",
    "ru",
    "sk",
    "sl",
    "sv",
    "tr",
    "uk",
    "vi"
   ],
   "type": "string",
   "description": "Language code; 31 languages supported"
  },
  "text": {
   "type": "string",
   "maxLength": 2000,
   "minLength": 1,
   "description": "Text to synthesize into speech, max 2000 characters. Use non-long routes for 1-500 chars and -long routes for 501-2000 chars."
  },
  "voice": {
   "enum": [
    "M1",
    "M2",
    "M3",
    "M4",
    "M5",
    "F1",
    "F2",
    "F3",
    "F4",
    "F5"
   ],
   "type": "string",
   "description": "Standard voice: M1-M5 or F1-F5"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "description": "44.1kHz 16-bit mono WAV speech audio returned inline",
  "content_type": "audio/wav"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/forgemesh-voice-tts-base-f1d0b13d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from voice.forgemesh.io](https://www.zero.xyz/host/voice.forgemesh.io/llms.txt)
