Translations
The Translations endpoints of the Kenso API.
Translate plain text into one language
/v1/translationstranslations.createNeeds the multilingual_outreach feature on your workspace. Until it is on, calls answer 404.
text (required, at most 8,000 characters) is plain text; the result keeps its line breaks, names, links, numbers and {placeholders}. targetLanguage is a two-letter ISO 639-1 code, such as en. messageId is optional: an email msg_ id of the workspace caches the result on that message, so the next call for the same language answers from it with no model call; another workspace's email is 404; a LinkedIn msg_ id is accepted and not cached. Answers { text, sourceLanguage }, where sourceLanguage is the input's ISO 639-1 code or und. A failed model call is 503 "Couldn't translate". Requires inbox view and Ask. Each call takes one unit of the workspace's aiTranslations quota (20 a minute, 500 a day): past it, 429 quota_exceeded with Retry-After.
Parameters
400 workspace_required).Request body
application/json, optional.
en.msg_ id of the message the text comes from. An email message caches the result on itself, so the next call for the same language is answered from it; a LinkedIn message is accepted and not cached.Response 200
data is a TranslationModel.
und when the model named none.curl -X POST "https://api.ken.so/v1/translations" \
-H "Authorization: Bearer $KEN_API_KEY" \
-H "Ken-Version: 2026-11-02" \
-H "X-Ken-Workspace-Id: $KEN_WORKSPACE_ID" \
-H "Content-Type: application/json" \
-d '{
"text": "string",
"targetLanguage": "string",
"messageId": "msg_ZW1haWw6NDAyMjg0LjJAZXhhbXBsZS5jb20"
}'{
"success": true,
"data": {
"text": "string",
"sourceLanguage": "string"
}
}