Create Translation Job for a Site
/sites/management/api/v1/sites/{id}/translate
Exports site translations and creates a new translation job for a site. Only languages that are in the localization policy for the site's channel can be specified. The source language of the translation job will be the site's default language. A translation job cannot be created for a site that does not have a default language. Translation jobs created for a site must have unique names.
Introduced in release 19.4.3.
Authorization
Site translation jobs can be created by any user that has at least a contributor role in both the site and its repository. To initiate the export process the user must be shared with the site and have one of the following sharing roles:
- Owner
- Manager
- Contributor
Monitor Create Translation Job
When the request to create a new site translation job has been accepted, then the progress of the request can be monitored by reading the job status resource that is provided in the response Location
header.
For more information, see Get the Progress of a Site Related Job.
Downloading Translations
Once the site translations are exported, details about the translation ZIP file that was created can be read. The response will contain a download
link that can be used to stream the file data.
For more information, see Get the Details of the Translation File for a Translation Job.
Importing Translations
To import translations, add translations to the ZIP file and upload the file to a personal folder. The translations can then be imported.
For more information, see Import Site Translations.
Asynchronous Processing
This operation only supports asynchronous processing. A Prefer
header with the value of respond-async
must be included in the request. An accepted response will include a Location
header, which provides the location of a status resource that can be polled to obtain information about the asynchronous processing.
For more information about reading the status see Get the Progress of a Site Related Job.
Path Alternative Identifiers
The default identifier for a Site resource is the Site Identifier. The Site resource supports alternative identifiers.
nameSite Name
Instead of the site identifier, the site name can be used to uniquely identify a site in the resource path. The default resource path parameter for a site is the site identifier, but when working with sites the human-readable site name is sometimes easier.
http://api.example.com/sites/management/api/v1/sites/name:MyNewProduct/translate
Introduced in release 19.4.1.
Successful Response Examples
This operation responds with the following success (2xx) responses. For a full list of response HTTP status codes and example bodies, consult the Response section of this operation.
202Accepted - Translate a Site into French and German
Create a translation job for French and German. All site content and targeted assets will be included in the translation job.
Request
POST https://api.example.com/sites/management/api/v1/sites/{id}/translate
Request Body
{ "name": "AcmeProductLaunch_FrenchGerman_Translations", "type": "complete", "targetLanguages": [ "fr", "de" ] }
202Accepted - Translate Site Content into Spanish
Create a translation job for Spanish for just the site content. Targeted assets will not be included in the translation job.
Request
POST https://api.example.com/sites/management/api/v1/sites/{id}/translate
Request Body
{ "name": "AcmeProductLaunch_SpanishContent_Translations", "type": "content", "targetLanguages": [ "es" ] }
Client Error Response Examples
This operation responds with the following client error (4xx) responses, with exception details in the response body or reported through the asynchronous job. For a full list of response HTTP status codes and example bodies, consult the Response section of this operation.
400Bad Request - Invalid Target Language
The target languages must be in the localization policy.
Error Code
OCE-CAAS-001015
Resolution - Change the Target Languages
Change the targeted languages to be the one or more of the languages in the localization policy.
Where This Error Can be Returned
- This error can be returned in the response body.
- This error will not be returned in the asynchronous job status.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
invalidLanguages | Invalid languages. |
localizationPolicy | Localization policy. |
For detailed information about this exception detail type, consult the InvalidTargetLanguagesExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Invalid Target Language", "status": "400", "detail": "The target languages must be in the localization policy.", "o:errorCode": "OCE-CAAS-001015", "invalidLanguages": [ "en-US" ], "localizationPolicy": { "id": "7D77CB6653BC1FF8E0530100007F6630" } }
Introduced in release 19.4.3.
403Forbidden - Site Operation Forbidden
Your sharing role within the site does not allow you to perform the operation.
Error Code
OCE-SITEMGMT-009026
Resolution - Change the Sharing Role
Change the sharing role given to the authenticated user to the required role or higher.
Resolution - Change the Application Role
Ensure the user has a Standard User or Enterprise User Application Role.
Where This Error Can be Returned
- This error can be returned in the response body.
- This error will not be returned in the asynchronous job status.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
site | Site on which the operation is being performed. |
For detailed information about this exception detail type, consult the SiteOperationForbiddenExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Site Operation Forbidden", "status": "403", "detail": "You do have a sharing role in this site, but your role does not allow you to use this operation.", "o:errorCode": "OCE-SITEMGMT-009026", "site": { "id": "FCA9C0E5CDCB549A19FFB85987A2352778961003B8A0" } }
Introduced in release 19.1.5.
403Forbidden - Repository Operation Forbidden
Your sharing role within the repository does not allow you to perform the operation. The authenticated user or client application is allowed to read the repository resource, but the sharing role the user has been given in the repository does not allow the operation to be performed.
Error Code
OCE-CAAS-001012
Resolution - Change the Sharing Role
Change the sharing role given to the authenticated user or client application to the required role or higher.
Where This Error Can be Returned
- This error can be returned in the response body.
- This error will not be returned in the asynchronous job status.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
repository | Site on which the operation is being performed. |
For detailed information about this exception detail type, consult the RepositoryOperationForbiddenExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Repository Operation Forbidden", "status": "403", "detail": "You do have a sharing role in this repository, but your role does not allow you to use this operation.", "o:errorCode": "OCE-CAAS-001012", "repository": { "id": "F81629473A3DB8B2A28669F19E68209BBAD3340745B0" } }
Introduced in release 19.4.3.
403Forbidden - Storage Limit Reached
Storage transfer limit has been reached. Billing limits have been set on the amount of storage available by the system administrator.
Error Code
OCE-SITEMGMT-009098
Resolution - Increase Storage Limit
Get a system administrator to increase the storage limit.
Where This Error Can be Returned
- This error will never be returned in the response body.
- This error can be returned in the asynchronous job status.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
used | Storage used, in GB. |
limit | Storage limit, in GB. |
For detailed information about this exception detail type, consult the StorageLimitReachedExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Storage Limit Reached", "status": "403", "detail": "Storage limit has been reached.", "o:errorCode": "OCE-SITEMGMT-009098", "used": 1.23456789, "limit": 1.23456789 }
Introduced in release 20.3.1.
404Not Found - Site Not Found
The site does not exist or has been deleted, or the authenticated user or client application does not have access to the site.
Error Code
OCE-SITEMGMT-009003
Resolution - Check Identifier
Check that the site identifier is valid.
Resolution - Check Membership
Check that the authenticated user is a member of the site or a site administrator.
Where This Error Can be Returned
- This error can be returned in the response body.
- This error will not be returned in the asynchronous job status.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
site | Site that does not exist or is not visible to the authenticated user. |
For detailed information about this exception detail type, consult the SiteNotFoundExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Site Not Found", "status": "404", "detail": "Site does not exist or has been deleted, or the authenticated user or client application does not have access to the site.", "o:errorCode": "OCE-SITEMGMT-009003", "site": { "id": "FCA9C0E5CDCB549A19FFB85987A2352778961003B8A0" } }
409Conflict - Site Deleted
The operation cannot be performed on a soft deleted site. This error can only occur when the includeDeleted
query parameter is set to true
.
Error Code
OCE-SITEMGMT-009059
Resolution - Restore Site
Restore the site and then try the operation again.
Where This Error Can be Returned
- This error can be returned in the response body.
- This error will not be returned in the asynchronous job status.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
site | Site that is soft deleted, if the site identifier has been provided. |
For detailed information about this exception detail type, consult the SiteDeletedExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Site Deleted", "status": "409", "detail": "The operation cannot be performed as the site has been soft deleted.", "o:errorCode": "OCE-SITEMGMT-009059", "site": { "id": "FCA9C0E5CDCB549A19FFB85987A2352778961003B8A0" } }
Introduced in release 19.4.1.
409Conflict - Missing Site Default Language
The site must have a default to perform this operation.
Error Code
OCE-SITEMGMT-001008
Where This Error Can be Returned
- This error can be returned in the response body.
- This error will not be returned in the asynchronous job status.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Missing Site Default Language", "status": "409", "detail": "Default language for the site is missing.", "o:errorCode": "OCE-SITEMGMT-001008" }
Introduced in release 19.4.1.
409Conflict - Missing Site Localization Policy
The site must have a localization policy to perform this operation.
Error Code
OCE-SITEMGMT-009074
Where This Error Can be Returned
- This error can be returned in the response body.
- This error will not be returned in the asynchronous job status.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Missing Site Localization Policy", "status": "409", "detail": "Localization policy for site is missing.", "o:errorCode": "OCE-SITEMGMT-009074" }
Introduced in release 19.4.1.
409Conflict - Translation Job Already Exists
A translation job with the same name already exists.
Error Code
OCE-CAAS-001013
Resolution - Edit the Translation Job Name
Edit the translation job name in the request so that it does not clash with an existing translation job.
Where This Error Can be Returned
- This error will never be returned in the response body.
- This error can be returned in the asynchronous job status.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
name | Duplicate name. |
For detailed information about this exception detail type, consult the TranslationJobAlreadyExistsExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Translation Job Already Exists", "status": "409", "detail": "Translation job with name '{name}' already exists.", "o:errorCode": "OCE-CAAS-001013", "name": "Oracle Content and Experience" }
Introduced in release 19.4.3.
409Conflict - Site Asset Translation Not Supported
Translation of site assets is not supported for the site.
Error Code
OCE-SITEMGMT-009082
Resolution - Change Translation Type
Change the type
parameter value to content
.
Where This Error Can be Returned
- This error will never be returned in the response body.
- This error can be returned in the asynchronous job status.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Site Asset Translation Not Supported", "status": "409", "detail": "Translation of site assets is not supported for the site.", "o:errorCode": "OCE-SITEMGMT-009082" }
Introduced in release 19.4.3.
Request
- application/json
-
id: string
Immutable identifier for the site.
-
includeDeleted(optional): boolean
Resources that have been marked for deletion can be read, modified, and support extended operations as long this query parameter is set to
true
. When theincludeDeleted
query parameter is not sent then the response to read, modification, and extended operations will be identical to that which would be returned if the resource was permanently deleted.
-
Prefer(optional): string
Request asynchronous processing of the request using a
respond-async
header value.
Details about the site translation job to create.
object
-
name:
string
Name to give the translation job.
Introduced in release 19.4.3. -
targetLanguages:
array targetLanguages
Target languages.
Introduced in release 19.4.3. -
type:
string
Translation type.
Valid values are:
-
complete
- Complete site including content and all targeted assets will be translated -
content
- Only site content will be translated -
assets
- Only assets targeted to the site's publishing channel will be translated
-
{
"name":"AcmeProductLaunch_FrenchGerman_Translations",
"type":"complete",
"targetLanguages":[
"fr",
"de"
]
}
array
Target languages.
Introduced in release 19.4.3.Response
202 Response
400 Response
-
allOf
InvalidTargetLanguagesExceptionDetail
Introduced in release 19.4.3.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
InvalidTargetLanguagesExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
invalidLanguages(optional):
array invalidLanguages
Invalid languages.
Introduced in release 19.4.3. -
localizationPolicy(optional):
string
Localization policy.
Introduced in release 19.4.3.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
array
Invalid languages.
Introduced in release 19.4.3.{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Invalid Target Language",
"status":"400",
"detail":"The target languages must be in the localization policy.",
"o:errorCode":"OCE-CAAS-001015",
"invalidLanguages":[
"en-US"
],
"localizationPolicy":{
"id":"7D77CB6653BC1FF8E0530100007F6630"
}
}
401 Response
403 Response
-
allOf
SiteOperationForbiddenExceptionDetail
Introduced in release 19.1.5.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
SiteOperationForbiddenExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
site(optional):
string
Site on which the operation is being performed.
Introduced in release 19.1.5.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Site Operation Forbidden",
"status":"403",
"detail":"You do have a sharing role in this site, but your role does not allow you to use this operation.",
"o:errorCode":"OCE-SITEMGMT-009026",
"site":{
"id":"FCA9C0E5CDCB549A19FFB85987A2352778961003B8A0"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Repository Operation Forbidden",
"status":"403",
"detail":"You do have a sharing role in this repository, but your role does not allow you to use this operation.",
"o:errorCode":"OCE-CAAS-001012",
"repository":{
"id":"F81629473A3DB8B2A28669F19E68209BBAD3340745B0"
}
}
404 Response
-
Cache-Control: string
Directives for caching mechanisms.
-
Content-Length: string
Size of the response body.
-
Content-Type: string
Content type of the response.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
SiteNotFoundExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
site(optional):
string
Site that does not exist or is not visible to the authenticated user.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Site Not Found",
"status":"404",
"detail":"Site does not exist or has been deleted, or the authenticated user or client application does not have access to the site.",
"o:errorCode":"OCE-SITEMGMT-009003",
"site":{
"id":"FCA9C0E5CDCB549A19FFB85987A2352778961003B8A0"
}
}
409 Response
-
allOf
SiteDeletedExceptionDetail
Introduced in release 19.4.1.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
SiteDeletedExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
site(optional):
string
Site that is soft deleted, if the site identifier has been provided.
Introduced in release 19.4.1.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Site Deleted",
"status":"409",
"detail":"The operation cannot be performed as the site has been soft deleted.",
"o:errorCode":"OCE-SITEMGMT-009059",
"site":{
"id":"FCA9C0E5CDCB549A19FFB85987A2352778961003B8A0"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Missing Site Default Language",
"status":"409",
"detail":"Default language for the site is missing.",
"o:errorCode":"OCE-SITEMGMT-001008"
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Missing Site Localization Policy",
"status":"409",
"detail":"Localization policy for site is missing.",
"o:errorCode":"OCE-SITEMGMT-009074"
}