The following links show the documentation and some examples illustrating the flow of translation project management.
Public OpenAPI Documentation for TAPI
Open Public DocsInternal OpenAPI Documentation for TAPI (requires key)
Create a translation project with callback URL that will be called when project completes:
curl -X POST "http://tapi.brainbow.solutions/api/v1/translation-projects" \
-H "X-API-Key: public-client-key" \
-F "file=@sample.xlf" \
-F "method=testing" \
-F "client=client-0001" \
-F "callbackUrl=http://callback.host/callback?ourRef=123456" \
-F "use_embedded_tag_validation=true"
{
"project_id": 123,
"status_name": "Pending",
"method": "testing",
"client_code": "client-0001",
"callback_url": "http://callback.host/callback?ourRef=123456",
"due_date": "2024-10-01T12:00:00Z",
"created_at": "2024-09-30T12:00:00Z",
"updated_at": "2024-09-30T12:00:00Z",
"deleted_at": null,
"word_count": 2000,
"use_embedded_tag_validation": false,
"source_languages": ["fr"],
"target_languages": ["it"],
"progress": 0
}
Callback payload sent when a project completes:
POST http://callback.host/callback?ourRef=123456
Content-Type: application/json
{
"project_id": 123,
"status_name": "Completed",
"method": "testing",
"client_code": "client-0001",
"word_count": 2000,
"use_embedded_tag_validation": false,
"source_languages": ["fr"],
"target_languages": ["it"],
}
Callback payload sent when a project fails:
POST http://callback.host/callback?ourRef=123456
Content-Type: application/json
{
"project_id": 123,
"status_name": "Failed",
"status_reason": "[Translation] ApiError: Unsupported language: zz",
"method": "basic",
"client_code": "client-0001",
"word_count": 2000,
"use_embedded_tag_validation": true,
"source_languages": ["fr"],
"target_languages": ["zz"],
}
Check the status of a translation project (if not using callback or callback fails):
curl -X GET "http://tapi.brainbow.solutions/api/v1/translation-projects/123/status" \
-H "X-API-Key: public-client-key"
{
"status_name": "In Progress",
"progress": 42
}
{
"status_name": "Completed",
"progress": 100
}
Fetch the translated data for a translation project:
curl -X GET "http://tapi.brainbow.solutions/api/v1/translation-projects/123/target" \
-H "X-API-Key: public-client-key" \
-OJ