Get status for all translation jobs
Reference
Feature: Azure AI Translator → Document Translation
API Version: 2024-05-01
HTTP method: GET
Use the
get translations status
method to request a list and the status of all translation jobs submitted by the user (associated with the resource).$top
,$skip
, and$maxpagesize
query parameters can be used to specify the number of results to return and an offset for the collection.$top
indicates the total number of records to be returned across all pages.$skip
indicates the number of records to skip from the list of batches based on the sorting method specified. By default, records are sorted by descending start time.$maxpagesize
is the maximum items returned in a page.- If more items are requested via
$top
(or$top
isn't specified and there are more items to be returned),@nextLink
will contain the link to the next page. - The server honors the values specified by the client. However, clients must be prepared to handle responses that contain a different page size or contain a continuation token.
- When both
$top
and$skip
are included, the server will first apply$skip
and then$top
on the collection.
Note
If the server can't honor $top
and/or $skip
, the server must return an error to the client informing about it instead of just ignoring the query options. This reduces the risk of the client making assumptions about the data returned.
$orderBy
query parameter can be used to sort the returned list (ex:$orderBy=createdDateTimeUtc asc
or$orderBy=createdDateTimeUtc desc
).- The default sorting is descending by
createdDateTimeUtc
. Some query parameters can be used to filter the returned list (ex:status=Succeeded,Cancelled
) returns succeeded and canceled operations. - The
createdDateTimeUtcStart
andcreatedDateTimeUtcEnd
query parameters can be used combined or separately to specify a range of datetime to filter the returned list. - The supported filtering query parameters are (
status
,id
,createdDateTimeUtcStart
, andcreatedDateTimeUtcEnd
).
- The default sorting is descending by
Request URL
curl -i -X GET "{document-translation-endpoint}/translator/document/batches?api-version={date}"
Important
All API requests to the Document Translation feature require a custom domain endpoint that is located on your resource overview page in the Azure portal.
Request parameters
Request parameters passed on the query string are:
Query parameter | In | Required | Type | Description |
---|---|---|---|---|
$maxpagesize |
query | False | integer int32 | $maxpagesize is the maximum items returned in a page. If more items are requested via $top (or $top isn't specified and there are more items to be returned), @nextLink will contain the link to the next page. Clients MAY request server-driven paging with a specific page size by specifying a $maxpagesize preference. The server SHOULD honor this preference if the specified page size is smaller than the server's default page size. |
$orderBy |
query | False | array | The sorting query for the collection (ex: CreatedDateTimeUtc asc , CreatedDateTimeUtc desc ) |
$skip |
query | False | integer int32 | $skip indicates the number of records to skip from the list of records held by the server based on the sorting method specified. By default, we sort by descending start time. Clients MAY use $top and $skip query parameters to specify the number of results to return and an offset into the collection. When the client returns both $top and $skip , the server SHOULD first apply $skip and then $top on the collection.Note: If the server can't honor $top and/or $skip , the server MUST return an error to the client informing about it instead of just ignoring the query options. |
$top |
query | False | integer int32 | $top indicates the total number of records the user wants to be returned across all pages. Clients MAY use $top and $skip query parameters to specify the number of results to return and an offset into the collection. When the client returns both $top and $skip , the server SHOULD first apply $skip and then $top on the collection.Note: If the server can't honor $top and/or $skip , the server MUST return an error to the client informing about it instead of just ignoring the query options. |
createdDateTimeUtcEnd |
query | False | string date-time | The end datetime to get items before. |
createdDateTimeUtcStart |
query | False | string date-time | The start datetime to get items after. |
ids |
query | False | array | IDs to use in filtering. |
statuses |
query | False | array | Statuses to use in filtering. |
Request headers
Request headers are:
Headers | Description | Condition |
---|---|---|
Ocp-Apim-Subscription-Key | Your Translator service API key from the Azure portal. | Required |
Ocp-Apim-Subscription-Region | The region where your resource was created. | Required when using a regional (geographic) resource like China North. &bullet. |
Content-Type | The content type of the payload. The accepted value is application/json or charset=UTF-8. | Required |
Response status codes
The following are the possible HTTP status codes that a request returns.
Status Code | Description |
---|---|
200 | OK. Successful request and returns the status of the all the operations. HeadersRetry-After: integerETag: string |
400 | Bad Request. Invalid request. Check input parameters. |
401 | Unauthorized. Check your credentials. |
500 | Internal Server Error. |
Other Status Codes | • Too many requests • Server temporary unavailable |
Get translations status response
Successful get translations status response
The following information is returned in a successful response.
Name | Type | Description |
---|---|---|
@nextLink | string | Url for the next page. Null if no more pages available. |
value | TranslationStatus[] | TranslationStatus[] Array |
value.id | string | ID of the operation. |
value.createdDateTimeUtc | string | Operation created date time. |
value.lastActionDateTimeUtc | string | Date time in which the operation's status was updated. |
value.status | String | List of possible statuses for job or document: • Canceled • Cancelling • Failed • NotStarted • Running • Succeeded • ValidationFailed |
value.summary | StatusSummary[] | Summary containing the listed details. |
value.summary.total | integer | Count of total documents. |
value.summary.failed | integer | Count of documents failed. |
value.summary.success | integer | Count of documents successfully translated. |
value.summary.inProgress | integer | Count of documents in progress. |
value.summary.notYetStarted | integer | Count of documents not yet started processing. |
value.summary.cancelled | integer | Count of documents canceled. |
value.summary.totalCharacterCharged | integer | Total count of characters charged. |
Error response
Name | Type | Description |
---|---|---|
code | string | Enums containing high-level error codes. Possible values: • InternalServerError • InvalidArgument • InvalidRequest • RequestRateTooHigh • ResourceNotFound • ServiceUnavailable • Unauthorized |
message | string | Gets high-level error message. |
target | string | Gets the source of the error. For example, it would be documents or document id if there was an invalid document. |
innerError | InnerTranslationError | New Inner Error format that conforms to Azure AI services API Guidelines. This error message contains required properties ErrorCode, message, and optional properties target, details (key value pair), inner error (it can be nested). |
innerError.code | string | Gets code error string. |
innerError.message | string | Gets high-level error message. |
innerError.target | string | Gets the source of the error. For example, it would be documents or document id if there was an invalid document. |
Examples
Tip
You can use this method to retrieve the job id
parameter for the get-translation-status query string.
Example successful response
The following JSON object is an example of a successful response.
{
"value": [
{
"id": "36724748-f7a0-4db7-b7fd-f041ddc75033",
"createdDateTimeUtc": "2021-06-18T03:35:30.153374Z",
"lastActionDateTimeUtc": "2021-06-18T03:36:44.6155316Z",
"status": "Succeeded",
"summary": {
"total": 3,
"failed": 2,
"success": 1,
"inProgress": 0,
"notYetStarted": 0,
"cancelled": 0,
"totalCharacterCharged": 0
}
},
{
"id": "1c7399a7-6913-4f20-bb43-e2fe2ba1a67d",
"createdDateTimeUtc": "2021-05-24T17:57:43.8356624Z",
"lastActionDateTimeUtc": "2021-05-24T17:57:47.128391Z",
"status": "Failed",
"summary": {
"total": 1,
"failed": 1,
"success": 0,
"inProgress": 0,
"notYetStarted": 0,
"cancelled": 0,
"totalCharacterCharged": 0
}
},
{
"id": "daa2a646-4237-4f5f-9a48-d515c2d9af3c",
"createdDateTimeUtc": "2021-04-14T19:49:26.988272Z",
"lastActionDateTimeUtc": "2021-04-14T19:49:43.9818634Z",
"status": "Succeeded",
"summary": {
"total": 2,
"failed": 0,
"success": 2,
"inProgress": 0,
"notYetStarted": 0,
"cancelled": 0,
"totalCharacterCharged": 21899
}
}
],
""@nextLink": "https://chinanorth.cognitiveservices.azure.cn/translator/text/batch/v1.1/operations/727BF148-F327-47A0-9481-ABAE6362F11E/documents?`$top`=5&`$skip`=15"
}
Example error response
The following JSON object is an example of an error response. The schema for other error codes is the same.
Status code: 500
{
"error": {
"code": "InternalServerError",
"message": "Internal Server Error",
"target": "Operation",
"innerError": {
"code": "InternalServerError",
"message": "Unexpected internal server error has occurred"
}
}
}
Next steps
Follow our quickstart to learn more about using Document Translation and the client library.