Features
AI Translation
Lezu can translate one string, many strings, or entire imports into multiple target languages.
Translate One String
POST /v1/translate/text
Authorization: ApiKey lez_...
Content-Type: application/json
{
"sourceLocale": "en",
"targetLocale": "nl",
"text": "Welcome back"
}
Translate Many Strings
{
"sourceLocale": "en",
"targetLocale": "nl",
"items": [
{
"id": "home.title",
"text": "Welcome back"
},
{
"id": "billing.upgrade",
"text": "Upgrade plan"
}
]
}
Translate Into Many Languages
{
"sourceLocale": "en",
"targetLocales": ["nl", "fr", "de"],
"items": [{ "id": "home.title", "text": "Welcome back" }]
}
Estimate Usage First
POST /v1/translate/estimate
Authorization: ApiKey lez_...
Content-Type: application/json
Use estimates before large translation work so users can understand the expected translation units.
Translation Jobs
For larger work, create a job and poll it:
POST /v1/translate/jobs
GET /v1/translate/jobs/:jobId
GET /v1/translate/jobs/:jobId/result
POST /v1/translate/jobs/:jobId/cancel
Jobs are useful for larger imports, multi-language translations, and automated workflows where you do not want a single request to block.
Relevant Endpoints
| Method | Endpoint | Scope |
|---|---|---|
POST |
/v1/translate/text |
translate:write |
POST |
/v1/translate/bulk |
translate:write |
POST |
/v1/translate/multilingual |
translate:write |
POST |
/v1/translate/estimate |
translate:read |
POST |
/v1/translate/jobs |
translate:write |
GET |
/v1/translate/jobs/:jobId |
translate:read |
GET |
/v1/translate/jobs/:jobId/result |
translate:read |
POST |
/v1/translate/jobs/:jobId/cancel |
translate:write |