Docs/APIs/Translator

Translator

Translate text

OperationalCredits 40 per callp50 681msText ProcessingStar

Overview

A translation API for apps, support desks and content pipelines. Translator converts text between languages with neural machine translation and detects the source language when you leave it out. Set format to html to translate web content: tags, attributes and entities stay intact and only the text between them is translated. Each response names both languages in English, says whether the source was detected, and counts the characters translated.

Live Test Translator API →

Endpoint

One host, one path per API. The block below shows this call in four languages; every one of them is the same HTTP request. Making requests covers the timeouts, retries and parameter rules that apply to all of them. The SDKs wrap the same call in a typed client.

POSThttps://api.apiverve.com/v1/translator
curl -X POST https://api.apiverve.com/v1/translator \
  -H "x-api-key: your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
  "text": "I'm so excited that tomorrow is going to be sunny! Can't wait!",
  "source": "en",
  "target": "es"
}'

Replace your_api_key_here with the key from your dashboard. When the inputs arrive as a list rather than one at a time, batch requests run up to 200 of them through this same API in a single call.

Authentication

Send your key in the x-api-key header. That is the only auth step — there is no token exchange and no per-endpoint scope to configure. Authentication covers creating, rotating and revoking keys.

401 is the only auth verdict

A 401 means the key is missing, invalid or expired. A 403 means the key is valid but not permitted here — blocked by a key restriction or an IP allow-list. Running out of credits is a 429.

Parameters

Sent as JSON in the request body. Premium parameters are accepted on every plan but only take effect on plans that include them.

ParameterTypeDescription
textRequiredstringThe text to translate
length 0–50000
targetRequiredstringThe language code to translate the text to (e.g., fr, es, de)
length 0–10
sourceOptionalstringThe language code of the text to translate (e.g., en). If left blank, language will be auto-detected
formatOptionalstringtext (default) or html. With html, markup and entities are kept and only the text between tags is translated
default text

Response

Every API returns the same three top-level keys, so one response handler covers your whole integration: status, error and data. Only data changes shape. Response format covers the envelope, the other output formats and how premium fields are withheld.

Sample response
{
  "status": "ok",
  "error": null,
  "data": {
    "sourceLang": "en",
    "targetLang": "es",
    "translatedText": "¡Estoy tan emocionada de que mañana vaya a hacer sol! ¡Qué ganas tengo!",
    "sourceLangName": "English",
    "targetLangName": "Spanish",
    "sourceDetected": false,
    "format": "text",
    "characterCount": 62
  }
}

Response fields

Paths are relative to data. Premium fields are absent rather than zeroed on plans that do not include them, so check for presence instead of comparing to 0.

FieldTypeExampleDescription
sourceLangstring"en"The detected or specified source language code
targetLangstring"es"The target language code for translation output
translatedTextstring"¡Estoy tan emocionada de que mañana vaya a hacer sol! ¡Qué ganas tengo!"The translated text in the target language
sourceLangNamestring"English"English name of the source language (e.g. English); null for an unrecognised code
targetLangNamestring"Spanish"English name of the target language (e.g. Spanish); null for an unrecognised code
sourceDetectedbooleanfalseTrue when the source language was auto-detected rather than sent
formatstring"text"Whether the text was translated as plain text or html
characterCountnumber62Number of characters in the submitted text

Errors

Read the HTTP status first, then error for the specific reason. The body names the parameter that has to change. Error handling covers the full status list and which of them are worth retrying.

StatusMeaningWhat to do
400Input was rejectedRead error; it names the parameter.
401Key missing or invalidCheck the header name and the key value.
403Key valid, but not permittedA key restriction or IP allow-list; see key scoping.
429Rate limited, or out of creditsRead error to tell them apart; see rate limits.

Start from a template

A working app built on this API, ready to deploy with your own key. Vercel asks for the key when you deploy; the code is on GitHub to change first.

Use cases

Live Agent Chat Translation
When international customers message support in their native language, agents translate incoming tickets to draft localized replies without switching software.
Catalog Description Localization
Translate marketplace product titles and item descriptions into target consumer languages before launching digital storefronts in new overseas territories.
App Store Review Translation
Product teams convert foreign-language app store reviews into English using automatic language detection to monitor bug reports across regional markets.
Internal Employee Announcement Translation
To keep distributed staff updated, internal communicators render company-wide policy updates into multiple recipient languages for regional email distributions.

Other ways to use Translator

Set up Translator on APIVerve, or reach the same source a different way. Your APIVerve account and credits work on all of them — one key, one balance.

Give it to an AI agentConnect over MCP and your agent calls it as a native tool — Claude, Cursor, ChatGPT.VerveKit →Reference →
Google Sheets or ExcelA =VERVE() formula fills a column — no script, no export, recalculates in place.VerveSheets →Reference →

More in Text Processing:

Was this page helpful?