Skip to content

Get Email Translation Status

GET
/api/v1/workspaces/{workspace_id}/emails/{id}/translation_status
curl --request GET \
--url https://example.com/%7B%7Bapp_url%7D/api/v1/workspaces/1/emails/1/translation_status \
--header 'Authorization: Bearer <token>'

Retrieves the email’s translation state - whether a translation job is in flight, and per locale which fields are stale or untranslated.

workspace_id
required
integer

Workspace ID

id
required
integer

Email ID

Successful

Media typeapplication/json
object
translation_in_progress
required
boolean
active_job
required
One of:
object
id
required
integer
email_id
required
integer
provider
required

How the job is fulfilled.

string
Allowed values: ai csv deepl phrase_tms
connector_id
required

The localization connector fulfilling this job, or null for built-in providers.

integer | null
status
required
string
Allowed values: pending in_progress completed failed cancelled
source_locale
required

A BCP 47 language tag identifying the language and region of a piece of content. Must carry both a language and a region subtag, and must be in canonical case (lowercase language, titlecase script, uppercase region) — en-GB, not en-gb or en_GB. The region may be a UN M.49 code, so en-001 (world) is valid.

string
locales
required

Per-target-locale progress.

Array<object>
object
locale
required

A BCP 47 language tag identifying the language and region of a piece of content. Must carry both a language and a region subtag, and must be in canonical case (lowercase language, titlecase script, uppercase region) — en-GB, not en-gb or en_GB. The region may be a UN M.49 code, so en-001 (world) is valid.

string
status
required
string
Allowed values: pending in_progress completed failed cancelled
error_message
string | null
created_at
required
string format: date-time
completed_at
required
string | null format: date-time
locale_states
required

Per non-default locale, which translation keys are stale (their default-locale source value changed since they were last translated or hand-edited) and which have never been translated.

Array<object>
object
locale
required

A BCP 47 language tag identifying the language and region of a piece of content. Must carry both a language and a region subtag, and must be in canonical case (lowercase language, titlecase script, uppercase region) — en-GB, not en-gb or en_GB. The region may be a UN M.49 code, so en-001 (world) is valid.

string
stale_keys
required
Array<string>
untranslated_keys
required
Array<string>
Example
{
"translation_in_progress": false,
"active_job": {
"id": 12345,
"email_id": 12345,
"provider": "ai",
"connector_id": 12345,
"status": "pending",
"source_locale": "en-GB",
"locales": [
{
"locale": "en-GB",
"status": "pending"
}
],
"created_at": "2023-08-23T10:30:00.000Z",
"completed_at": "2023-08-23T10:30:00.000Z"
},
"locale_states": [
{
"locale": "en-GB"
}
]
}

Unauthorized

Media typeapplication/json
object
message
required
string
Example
{
"message": "Record not found"
}

Forbidden

Media typeapplication/json
object
message
required
string
Example
{
"message": "Record not found"
}

Not Found

Media typeapplication/json
object
message
required
string
Example
{
"message": "Record not found"
}