API REFERENCE
Simplify and translate content into 24 output languages.
The synchronous endpoint accepts source text, an output locale, and one of two modes. It detects the source language automatically and returns a ready-to-use result in the selected output language.
{
"text": "Complex source content in the selected language.",
"locale": "en",
"mode": "simple-language"
}SDK and cURL examples available
Endpoint
POST /api/v2/translate
Create one Plain Language or Easy Language result and return it in the same HTTP response.
Required headers
| Header | Value | Purpose |
|---|---|---|
| Authorization | Bearer <API_KEY> | Authenticates the project with the current HTTP Bearer scheme |
| Content-Type | application/json | Declares the request body format |
| Accept | application/json | Requests a JSON response |
| Idempotency-Key | Required for jobs and batches only | Keeps repeated asynchronous submissions from creating duplicate work |
Request body
No other content setting is part of the public request schema.
| Field | Type | Required | Allowed value | Description |
|---|---|---|---|---|
| text | string | Yes | 1 to 10,000 Unicode characters | Source content in the selected locale |
| locale | string | Yes | One of 24 supported two-letter codes | Output language. The source language is detected automatically. |
| mode | string | Yes | simple-language, easy-language | Simplification mode |
{
"text": "Applicants must provide the required documentation before the deadline.",
"locale": "en",
"mode": "easy-language"
}Response body
The response must not contain retired request settings or a separate quality-information array.
| Field | Type | Description |
|---|---|---|
| requestId | string | Unique identifier for support and logs |
| locale | string | Selected output locale |
| mode | string | Selected simplification mode |
| output | string | Finished result in the selected output locale |
| usage.inputCharacters | integer | Characters counted for this request, or 0 for a cache hit |
| usage.cacheHit | boolean | Whether the result came from the 30-day cache |
{
"requestId": "req_sync_002",
"locale": "en",
"mode": "easy-language",
"output": "You need to send documents.\nSend the documents before the deadline.",
"usage": {
"inputCharacters": 78,
"cacheHit": false
}
}Validation behavior
- Missing text: reject with a documented field error.
- Empty text: reject with a documented field error.
- Unsupported locale: reject; never silently substitute another locale.
- Unsupported mode: reject; never choose a mode automatically.
- Unknown retired field: reject with a migration-focused error or handle only through an explicitly versioned compatibility layer.
- Source text may use a different language from locale. Simple8 detects the source language automatically and writes the result in the selected output locale.