# DevX Voice Translation

> DevX Voice Translation is a paid API for AI agents from voice.madebydevx.com, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-30).

Translates text between 100 languages using the M2M100 model, with pay-per-call USDC micropayments and no account required.

## Facts

- Endpoint: POST https://voice.madebydevx.com/v1/translation?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/devx-voice-translation-15d8c4fd
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ptLD24n2tJ5JxOd1Y19iP

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 devx-voice-translation-15d8c4fd -d '<json body>'
```

Example prompt: Translate this text into German for me: 'Good morning, how are you?' — detect the source language automatically and use the M2M100 model via DevX Voice, paying with USDC on Base.

## When to prefer this

Choose this endpoint when you need pay-per-call machine translation with no account, no API key, and no subscription — ideal for AI agents that translate sporadically and want to pay per use in USDC on Base. It supports 100 languages and up to 5000 characters per request. Prefer it over SaaS translation APIs (DeepL, Google Translate) when you want crypto-native micropayment billing, or over general LLM translation when you want predictable per-call pricing and a dedicated translation model.

## Known failure modes

- Text exceeds 5000 character limit — request rejected before charge
- Unsupported target_lang value — validation error returned, no charge
- Source text is empty or missing — 400 error, not billed
- Network or model inference failure on Cloudflare — 5xx, not billed
- Invalid idempotency key format — rejected with schema validation error
- Payment failure (insufficient USDC balance) — translation not executed

## How this service works

Pay-per-call speech-to-text, text-to-speech, translation and OCR for AI agents. x402 v2, USDC on Base, no account or API key. Price is computed from the input (audio minutes, characters, images) and returned in the 402 quote; failures are never charged. Runs on Cloudflare Workers AI open models (Whisper large-v3-turbo, MeloTTS, M2M100, Gemma 4).

## Output

Returns a JSON object containing the translated text, the source and target language codes, the model used (m2m100-1.2b), the character count, a billed_units count, an operation_id UUID, and payment confirmation details including transaction hash, network, and amount paid in USDC.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "q": {
   "type": "string"
  },
  "text": {
   "type": "string",
   "maxLength": 5000,
   "minLength": 1,
   "description": "Text to translate (alias q)"
  },
  "source": {
   "type": "string"
  },
  "target": {
   "type": "string"
  },
  "requestKey": {
   "type": "string",
   "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{7,127}$",
   "maxLength": 128,
   "minLength": 8,
   "description": "Optional idempotency key: the same payer + requestKey + input within 7 days returns the stored result without a second charge."
  },
  "source_lang": {
   "type": "string",
   "description": "Source language ISO 639-1 or \"auto\" (default; alias source)"
  },
  "target_lang": {
   "enum": [
    "af",
    "am",
    "ar",
    "ast",
    "az",
    "ba",
    "be",
    "bg",
    "bn",
    "br",
    "bs",
    "ca",
    "ceb",
    "cs",
    "cy",
    "da",
    "de",
    "el",
    "en",
    "es",
    "et",
    "fa",
    "ff",
    "fi",
    "fr",
    "fy",
    "ga",
    "gd",
    "gl",
    "gu",
    "ha",
    "he",
    "hi",
    "hr",
    "ht",
    "hu",
    "hy",
    "id",
    "ig",
    "ilo",
    "is",
    "it",
    "ja",
    "jv",
    "ka",
    "kk",
    "km",
    "kn",
    "ko",
    "lb",
    "lg",
    "ln",
    "lo",
    "lt",
    "lv",
    "mg",
    "mk",
    "ml",
    "mn",
    "mr",
    "ms",
    "my",
    "ne",
    "nl",
    "no",
    "ns",
    "oc",
    "or",
    "pa",
    "pl",
    "ps",
    "pt",
    "ro",
    "ru",
    "sd",
    "si",
    "sk",
    "sl",
    "so",
    "sq",
    "sr",
    "ss",
    "su",
    "sv",
    "sw",
    "ta",
    "th",
    "tl",
    "tn",
    "tr",
    "uk",
    "ur",
    "uz",
    "vi",
    "wo",
    "xh",
    "yi",
    "yo",
    "zh",
    "zu"
   ],
   "type": "string",
   "description": "Target language, ISO 639-1 (alias target)"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "result": {
   "model": "m2m100-1.2b",
   "characters": 26,
   "source_lang": "en",
   "target_lang": "de",
   "billed_units": 1,
   "translated_text": "Guten Morgen, wie geht es Ihnen?",
   "detected_language": null
  },
  "status": "paid",
  "payment": {
   "status": "paid",
   "network": "eip155:8453",
   "tx_hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
   "amount_raw": "1000"
  },
  "operation_id": "9b3e7a12-4c5d-4e6f-8a9b-0c1d2e3f4a5b"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/devx-voice-translation-15d8c4fd/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from voice.madebydevx.com](https://www.zero.xyz/host/voice.madebydevx.com/llms.txt)
