✔️ Validate Options
This API checks a Translate File request without running it. It applies the same feature and option checks as POST /translate, but it does not start a translation and does not charge credits.
📋 Basic Information
- Method:
POST - Path:
https://api.bluente.com/api/20250924/blu_translate/validate_options - Authentication: Required —
Authorization: Bearer $BLUENTE_API_KEY
📝 Request Parameters
Send exactly what you would send to Translate File: the same query string (engine, glossary, custom_glossary, bilingual, vertical_bilingual, scanned, …) and the same JSON body (id, from, to, …). The task id must come from Upload File, and the file must have finished processing (status SERVICE_PROCESSED).
💡 Example
curl -X POST "https://api.bluente.com/api/20250924/blu_translate/validate_options?engine=3&bilingual=1" \
-H "Authorization: Bearer $BLUENTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"id": 1,
"action": "start",
"from": "en",
"to": "zh"
}'or
fetch("https://api.bluente.com/api/20250924/blu_translate/validate_options?engine=3&bilingual=1", {
method: "POST",
headers: {
"Authorization": "Bearer $BLUENTE_API_KEY"
},
body: JSON.stringify({
id: 1,
action: "start",
from: "en",
to: "zh"
})
})✅ Success Response Example
{
"message": "success",
"code": 0,
"data": {
"valid": true
}
}❌ Error Response Example
When a feature is not enabled, doesn’t apply to the file, or conflicts with another selected feature, data explains why:
{
"message": "…",
"code": 41,
"data": {
"error_code": "FEATURE_NOT_ENABLED",
"feature_keys": ["translate_bilingual"],
"reason": "…",
"task_id": 1
}
}| Field | Type | Description |
|---|---|---|
code | int | 41 when error_code is FEATURE_NOT_ENABLED, otherwise 40 |
data.error_code | string | FEATURE_NOT_ENABLED, FEATURE_NOT_APPLICABLE or FEATURE_CONFLICT |
data.feature_keys | array | The features involved (see Get Capabilities) |
data.reason | string | Human-readable explanation (same as message) |
data.task_id | int | The task the failure applies to (may be omitted) |
Other problems, such as an option that InDesign (IDML) doesn’t support, return code: 40 with the reason in message and no data. An unknown task id returns code: 43. See Error Codes.
📌 Notes
- A successful result means the options are accepted. It does not check the credit balance — use Get Account for that — and it does not validate
from/tolanguage codes. - A successful result does not reserve anything. Call Translate File to start the translation.