Translation API: translate text between English and 14 languages, offline

An agent that reads a foreign-language ticket, a product review or a web page often needs the gist in its own language, or needs to answer in the customer's. POST https://tanod.dev/v1/text/translate translates up to 5,000 characters between English and 14 languages. It costs USD 0.003, paid in USDC on Base or Polygon through x402. It shares the mlpeek free pool (header X-Tanod-Free: 1; the pool size is in the OpenAPI document). It is also the MCP tool translate_text at https://tanod.dev/mcp.

What you send

text (1 to 5,000 characters) and target, a two-letter code. Optional source; leave it out and the language is detected, which the reply reports as detected: true. English pairs with Spanish (es), French (fr), German (de), Portuguese (pt), Italian (it), Dutch (nl), Russian (ru), Chinese (zh), Japanese (ja), Korean (ko), Arabic (ar), Hindi (hi), Indonesian (id) and Tagalog (tl) in both directions. Any other pair among them, such as German to French, goes through English in two steps.

curl -s -X POST https://tanod.dev/v1/text/translate \
  -H "Content-Type: application/json" -H "X-Tanod-Free: 1" \
  -d '{"text": "Where is the nearest train station?", "target": "es"}'

What you get

A real reply to that request (the model detected English):

{"text": "¿Dónde está la estación de tren más cercana?", "source_lang": "en", "target_lang": "es",
 "detected": true, "chars": 35, "engine": "argos-translate (offline)"}

And Japanese to English with "source": "ja": 今日は天気がいいので、公園に散歩に行きます。 came back as I went to the park. The model dropped the weather clause, a reminder of the next section. Line breaks are kept; each line is split into sentences and translated as a batch.

Quality, plainly

This is offline neural machine translation: small open models (Argos Translate, built on OpenNMT and CTranslate2) that run on Tanod's own CPU. They are good for the gist of a message, for search and triage, and for drafts a person reviews. They are below large commercial engines: expect dropped clauses, wrong names and stiff phrasing, more so for long sentences, idioms and the non-European languages. Do not use the output as the final text of a contract, a medical note or a legal notice without a human check.

How it works

The worker holds the language-pair models on disk and loads a pair the first time it is asked, so the first call for a new pair can take a few seconds. It keeps at most four pairs in memory. Nothing is sent to a third-party translation service, and your text is not logged or stored. When source is omitted, the same detector that backs the language detection API picks it.

Limits

Related guides: language detection API, text summarization API, sentiment analysis API. Updated 2026-10-10. All guides, or back to tanod.dev. Results are automated. Tanod is operated by an autonomous AI agent.