Translation Management API (2024.11-experimental)

Download OpenAPI specification:Download

Translation Project API

Allows user to manage Translation Project such as creating new translation project, adding jobs, updating projects, adding content in all or subset of project's jobs.

createTranslationProject

Using this API, user can create new translation project and add content in all or subset of project's jobs.

Summary of the steps executed on call of this API

  • API will create a New translation project. TIF path given in "tifConfig" parameter will be used to configure the Translation-Method, Translation-Connector and Category of newly created project. If TIF is not configured in the given path, then highest priority global config will be fetched. Following are the order of priority:
    • /conf/global
    • /apps
    • /libs
  • API will create individual jobs for all target languages given in "destinationLanguage" parameter.
  • (Conditional Execution) API will execute this step if "translateContent" parameter is not null. Content's path provided in "translateContent.sourcePath" parameter, will be added in project's job. If value of "translateContent" parameter is null then, jobs created will remain in DRAFT stage no further steps will be performed.
  • (Conditional Execution) API will Start Translation of all Jobs if 3rd step is successful and "automaticStartTranslation" parameter is true.
SecuritybearerAuth
Request
header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
x-request-priority
string
Default: medium
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
title
required
string

Title of the new project.

description
string

Description of the new project.

tifConfig
required
string

Translation-Method, Translation-Connector and Category will be picked from TIF path provided in this parameter. If cloud config is not configured in the given path, then highest priority global config will be fetched.

useSitesConfig
boolean
Default: true

Flag for to use TIF's site configuration to get the Translation-Method, Translation-Connector and Category.

sourceLanguage
required
string

Language Code of source.

destinationLanguage
required
Array of strings

Array of target Language Code.

object (translateContent)
automaticApproveEnable
boolean
Default: true

Flag for auto Approval of Translation Jobs.

automaticPromoteLaunchEnable
boolean
Default: true

Flag for auto promote of launches after translation job approval.

automaticDeleteLaunchEnable
boolean
Default: true

Flag for auto delete of launches after promote.

automaticStartTranslation
boolean
Default: false

Flag for auto start of translation.

Responses
202

ACCEPTED - on successful acknowledgement of request.

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

post/projects
Request samples
application/json
{
  • "title": "Translation Project",
  • "tifConfig": "/conf/global",
  • "useSitesConfig": false,
  • "sourceLanguage": "en",
  • "destinationLanguage": [
    ],
  • "translateContent": {
    },
  • "automaticApproveEnable": true,
  • "automaticPromoteLaunchEnable": true,
  • "automaticDeleteLaunchEnable": false,
  • "automaticStartTranslation": true
}
Response samples
application/json
{
  • "asyncJobId": "asyncJobId",
  • "userId": "userId",
  • "status": "PROCESSING",
  • "operation": "Project Creation",
  • "submittedAt": 1669800608790,
  • "startedAt": 1669800608999,
  • "asyncResultItem": [
    ]
}

getTranslationProject

To retrieve a JSON representation of Translation Project.

SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Responses
200

OK

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

500

Internal server error

get/projects/{projectId}
Request samples
Response samples
application/json
{
  • "id": "translation_project",
  • "title": "Translation Project",
  • "description": "Translation Project",
  • "tifConfig": "/conf/global",
  • "sourceLanguage": "en",
  • "destinationLanguage": [
    ],
  • "status": "Active",
  • "translationMethod": "MACHINE_TRANSLATION",
  • "translationProvider": "microsoft",
  • "automaticApproveEnable": true,
  • "automaticPromoteLaunchEnable": true,
  • "automaticDeleteLaunchEnable": false,
  • "createdAt": 1666068134296,
  • "createdBy": "admin",
  • "lastModifiedAt": 1666068134420,
  • "lastModifiedBy": "admin",
  • "translationJob": [
    ]
}

updateTranslationProject

Using this API, user can update the translation project properties

  • User can add or remove language code from destination language list.
  • TIF path will be used to update the Translation-Method, Translation-Connector and Category.
SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
title
required
string

Title of the project.

description
string

Description of the project.

tifConfig
required
string

Translation-Method, Translation-Connector and Category will be picked from TIF path provided in this parameter. If cloud config is not configured in the given path, then highest priority global config will be fetched.

useSitesConfig
boolean
Default: true

Flag for to use TIF's site configuration to get the Translation-Method, Translation-Connector and Category.

sourceLanguage
required
string

Language Code of source.

destinationLanguage
required
Array of strings

Array of target Language Code.

automaticApproveEnable
boolean
Default: true

Flag for auto Approval of Translation Jobs.

automaticPromoteLaunchEnable
boolean
Default: true

Flag for auto promote of launches after translation job approval.

automaticDeleteLaunchEnable
boolean
Default: true

Flag for auto delete of launches after promote.

Responses
200

OK

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

put/projects/{projectId}
Request samples
application/json
{
  • "title": "Translation Project",
  • "tifConfig": "/conf/wknd",
  • "sourceLanguage": "en",
  • "destinationLanguage": [
    ],
  • "automaticApproveEnable": true,
  • "automaticPromoteLaunchEnable": true,
  • "automaticDeleteLaunchEnable": true
}
Response samples
application/json
{
  • "id": "translation_project",
  • "title": "Translation Project",
  • "description": "Translation Project",
  • "tifConfig": "/conf/global",
  • "sourceLanguage": "en",
  • "destinationLanguage": [
    ],
  • "status": "Active",
  • "translationMethod": "MACHINE_TRANSLATION",
  • "translationProvider": "microsoft",
  • "automaticApproveEnable": true,
  • "automaticPromoteLaunchEnable": true,
  • "automaticDeleteLaunchEnable": false,
  • "createdAt": 1666068134296,
  • "createdBy": "admin",
  • "lastModifiedAt": 1666068134420,
  • "lastModifiedBy": "admin",
  • "translationJob": [
    ]
}

deleteTranslationProject

Delete Translation Project.

SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Responses
200

OK

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

500

Internal server error

delete/projects/{projectId}
Request samples
Response samples
application/json
{
  • "type": "AEMT0000",
  • "message": "ERROR_TITLE",
  • "detail": "problem details.",
  • "instance": "Translation Projects or JobPods ID"
}

updateTranslationProjectContent

For addition or deletion of content from all jobpods of a specific project.

Following result can be achieved if you add content using this API.

  • Content will be processed for all target language of the project. API will add content in target language's job which are in DRAFT state. For a target language if no job exist which is in DRAFT state, then a new job will be created, and content will be added in that job.
  • Content addition can be masked for subset of destination Language using "languageMask" field. LanguageMask field must contain language code which are present in target language of the project.

Following result can be achieved if you delete content using this API.

  • API will remove the content from Jobs which are in DRAFT state.
  • Jobs which results in emplty content will not be deleted. It will remain in DRAFT state.
  • LanguageMask field can be used to mask the removal of content on subset of target Language’s job.
SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
x-request-priority
string
Default: medium
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
Any of:
required
object
automaticStartTranslation
boolean
Default: false

Flag to start translation after sucessful execution of Add operation.

Responses
202

ACCEPTED - on successful acknowledgement of request.

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

post/projects/{projectId}/content
Request samples
application/json
{
  • "add": {
    },
  • "automaticStartTranslation": false
}
Response samples
application/json
{
  • "asyncJobId": "asyncJobId",
  • "userId": "userId",
  • "status": "PROCESSING",
  • "operation": "Project Creation",
  • "submittedAt": 1669800608790,
  • "startedAt": 1669800608999,
  • "asyncResultItem": [
    ]
}

bulkTranslationJobExecution

Using this API, user can execute command on all translation job pods.

Any one of the following operations can be performed using this API:

  • START
  • COMPLETE
  • CANCEL
  • ARCHIVE.

User can use "languageMask" parameter to mask the execution of job on subset of project's target language instead of complete set.

SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
x-request-priority
string
Default: medium
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
command
string
Enum: "START" "COMPLETE" "CANCEL" "ARCHIVE"
languageMask
Array of strings

It can be used to mask the execution of job on subset of project's target language instead of complete set..

Responses
202

ACCEPTED - on successful acknowledgement of request.

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

post/projects/{projectId}/jobpods/command
Request samples
application/json
{
  • "command": "START"
}
Response samples
application/json
{
  • "asyncJobId": "asyncJobId",
  • "userId": "userId",
  • "status": "PROCESSING",
  • "operation": "Project Creation",
  • "submittedAt": 1669800608790,
  • "startedAt": 1669800608999,
  • "asyncResultItem": [
    ]
}

Translation Job API

Allows user can execute operations at Translation job pods level such as updating jobs status and adding content.

getTranslationJob

To retrieve a JSON representation of Translation Job Pods.

SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

jobpodId
required
string

Id of translation job

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Responses
200

OK

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

500

Internal server error

get/projects/{projectId}/jobpods/{jobpodId}
Request samples
Response samples
application/json
{
  • "id": "translationjob",
  • "title": "Translation Job [FR]",
  • "destinationLanguage": "fr",
  • "translationStatus": "APPROVED",
  • "contents": [
    ]
}

deleteTranslationJob

Delete Translation Job.

SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

jobpodId
required
string

Id of translation job

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Responses
200

OK

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

500

Internal server error

delete/projects/{projectId}/jobpods/{jobpodId}
Request samples
Response samples
application/json
{
  • "type": "AEMT0000",
  • "message": "ERROR_TITLE",
  • "detail": "problem details.",
  • "instance": "Translation Projects or JobPods ID"
}

updateTranslationJob

Using this API, user can execute command on translation job pods.

Any one of the following operations can be performed using this API:

  • START
  • COMPLETE
  • CANCEL
  • ARCHIVE.
SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

jobpodId
required
string

Id of translation job

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
command
string

Any one of following operations: START, COMPLETE, CANCEL and ARCHIVE.

Enum: "START" "COMPLETE" "CANCEL" "ARCHIVE"
Responses
202

ACCEPTED - on successful acknowledgement of request.

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

post/projects/{projectId}/jobpods/{jobpodId}/command
Request samples
application/json
{
  • "command": "START"
}
Response samples
application/json
{
  • "asyncJobId": "asyncJobId",
  • "userId": "userId",
  • "status": "PROCESSING",
  • "operation": "Project Creation",
  • "submittedAt": 1669800608790,
  • "startedAt": 1669800608999,
  • "asyncResultItem": [
    ]
}

updateContentOfTranslationJob

Using this API, user can add or remove contents of translation job.

  • Job should be in DRAFT state.
  • User will have the option to add the translation master content directly using "add.isUpdateTranslationMaster" parameter of request body.
SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

jobpodId
required
string

Id of translation job

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
x-request-priority
string
Default: medium
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
Any of:
required
object
automaticStartTranslation
boolean
Default: false

Flag to start translation after sucessful execution of Add operation.

Responses
202

ACCEPTED - on successful acknowledgement of request.

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

post/projects/{projectId}/jobpods/{jobpodId}/content
Request samples
application/json
{
  • "add": {
    },
  • "automaticStartTranslation": false,
  • "delete": {
    }
}
Response samples
application/json
{
  • "asyncJobId": "asyncJobId",
  • "userId": "userId",
  • "status": "PROCESSING",
  • "operation": "Project Creation",
  • "submittedAt": 1669800608790,
  • "startedAt": 1669800608999,
  • "asyncResultItem": [
    ]
}

acceptContentOfTranslationJob

Using this API, user can accept translated contents, pending for review of a job.

  • When the content comes back after translation and it remains in READY FOR REVIEW state if automatic approve content is disabled. User can ACCEPT the translation using this API.
SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

jobpodId
required
string

Id of translation job

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
x-request-priority
string
Default: medium
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
sourcePath
required
Array of strings

Contains array of content's(sites/assets) source path .

processAllReference
boolean
Default: true

Flag to process reference of content.

Responses
202

ACCEPTED - on successful acknowledgement of request.

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

post/projects/{projectId}/jobpods/{jobpodId}/content/accept
Request samples
application/json
{
  • "sourcePath": [
    ],
  • "processAllReference": true
}
Response samples
application/json
{
  • "asyncJobId": "asyncJobId",
  • "userId": "userId",
  • "status": "PROCESSING",
  • "operation": "Project Creation",
  • "submittedAt": 1669800608790,
  • "startedAt": 1669800608999,
  • "asyncResultItem": [
    ]
}

rejectContentOfTranslationJob

Using this API, user can reject translated contents, pending for review of a job.

  • When the content comes back after translation and it remains in READY FOR REVIEW state when automatic approve is disabled. You can REJECT the translation using this API.
SecuritybearerAuth
Request
path Parameters
projectId
required
string

Id of translation project

jobpodId
required
string

Id of translation job

header Parameters
Accept-Version
string
Default: v0.0.1
x-request-id
string
x-request-priority
string
Default: medium
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
sourcePath
required
Array of strings

Contains array of content(sites/assets) source path.

processAllReference
boolean
Default: true

Flag to process reference of content.

comment
string
Responses
202

ACCEPTED - on successful acknowledgement of request.

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

post/projects/{projectId}/jobpods/{jobpodId}/content/reject
Request samples
application/json
{
  • "sourcePath": [
    ],
  • "processAllReference": true
}
Response samples
application/json
{
  • "asyncJobId": "asyncJobId",
  • "userId": "userId",
  • "status": "PROCESSING",
  • "operation": "Project Creation",
  • "submittedAt": 1669800608790,
  • "startedAt": 1669800608999,
  • "asyncResultItem": [
    ]
}

Sync Language Copy API

Allows users to execute Sync Language Copy process - by creating new sync process instance and updating the status of instance.

initiateSyncLanguageCopyProcess

It allows users to Sync Language Copy by creating new sync process instance. User can get the status of the process using “Get Sync LC Process Status” API.

SecuritybearerAuth
Request
header Parameters
X-Adobe-Accept-Unsupported-API
required
integer
Value: 1
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
sourcePath
required
string

Source content's(sites/assets) Path.

destinationLanguage
required
Array of strings

Array of target Language Code.

title
string

Title for the process instance.

Responses
201

Created.

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

post/languagecopy/sync
Request samples
application/json
{
  • "sourcePath": "/content/dam/wknd/en/magazine",
  • "destinationLanguage": [
    ],
  • "title": "titleForTheProcess"
}
Response samples
application/json
{
  • "id": "string",
  • "title": "string",
  • "status": "RUNNING",
  • "startedAt": 0,
  • "endedAt": 0,
  • "message": "string"
}

getSyncLanguageCopyProcessStatus

Get Sync LC Process Status

SecuritybearerAuth
Request
path Parameters
id
required
string

ID shared in response message of initiateSyncLanguageCopyProcess call.

header Parameters
X-Adobe-Accept-Unsupported-API
required
integer
Value: 1
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Responses
200

Ok

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

500

Internal server error

get/languagecopy/sync/{id}
Request samples
Response samples
application/json
{
  • "id": "string",
  • "title": "string",
  • "status": "RUNNING",
  • "startedAt": 0,
  • "endedAt": 0,
  • "message": "string"
}

updateSyncLanguageCopyProcess

Either SUSPEND or ABORT operation can be performed using this API. Sync process should be in RUNNING state in order to execute this API successfully.

SecuritybearerAuth
Request
path Parameters
id
required
string

ID shared in response message of initiateSyncLanguageCopyProcess API call.

header Parameters
X-Adobe-Accept-Unsupported-API
required
integer
Value: 1
Accept-Version
string
Default: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Request Body schema: application/json
operation
required
string

Any one of following operations: SUSPEND or ABORT.

Enum: "SUSPEND" "ABORT"
Responses
200

Ok

400

Bad request.

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

412

Pre condition failed

500

Internal server error

put/languagecopy/sync/{id}
Request samples
application/json
{
  • "operation": "SUSPEND"
}
Response samples
application/json
{
  • "id": "string",
  • "title": "string",
  • "status": "RUNNING",
  • "startedAt": 0,
  • "endedAt": 0,
  • "message": "string"
}

Async Execution Status

Allows user to retrieve status of requests executed in asynchronous mode.

getAsyncBatchProcessStatus

Some API requests support an asynchronous invocation mode. User can use this API to get the async execution status. Response will include links to resources affected by the operation.

SecuritybearerAuth
Request
path Parameters
asyncExecutionId
required
string

Id of async execution

header Parameters
Accept-Version
required
string
Example: v0.0.1
x-request-id
string
X-Adobe-Accept-Experimental
required
integer
Value: 1
Responses
200

Ok

303

See other

401

Authorization information is missing or invalid.

403

Forbidden, request was not authorized

404

Resource was not Found.

500

Internal server error

get/async/execution/status/{asyncExecutionId}
Request samples
Response samples
application/json
{
  • "asyncJobId": "asyncJobId",
  • "userId": "userId",
  • "status": "PROCESSING",
  • "operation": "Project Creation",
  • "submittedAt": 1669800608790,
  • "startedAt": 1669800608999,
  • "asyncResultItem": [
    ]
}

Translation Events

A number of events are emitted for translation job creation and state updates. For more details about how these events can be handled, please head over to the Adobe I/O Events Documentation linked below.

AEM translation job created eventWebhook

Event triggered when a translation job is created in AEM.

Request
Request Body schema: application/json
id
required
string non-empty

An identifier for the event. When used in combination with the source property, it allows for each instance of an event to be uniquely identified. That is to say, the combination of the source + id properties will be unique for each distinct event. If a duplicate event is re-sent (e.g. due to a network error) it may have the same id and should be treated as a duplicate.

source
required
string <uri> non-empty ^acct:aem(-cmstg)?-p\d+-e\d+@adobe\.com$

An instance of the acct URI scheme that uniquely identifies the producer of this event, of the format acct:aem-p<programId>-e<environmentId>@adobe.com.

specversion
required
string >= 3 characters

The version of the CloudEvents specification which the event uses. AEM events use the CloudEvents spec version 1.0.2, hence this value will be 1.0.

Value: "1.0"
type
required
string >= 4 characters ^aem\.*$

The type for the event. This will identify the AEM solution that has dispatched the event and may also include the type of entity and the activity that occurred.

Value: "aem.core.translation.job.created"
datacontenttype
required
string non-empty

The format of the data in the event. This will always be application/json for AEM events.

Value: "application/json"
dataschema
string <uri>

An optional attribute, which may point to a JSON schema document that covers the data object.

time
required
string <date-time> non-empty

A timestamp of when the event occurred.

required
object

The event payload.

Responses
200

AEM translation job created event data is received successfully

Request samples
application/json
{
  • "specversion": 1,
  • "type": "aem.core.translation.job.created",
  • "source": "acct:aem-p56789-e12345@adobe.com",
  • "id": "7c1104e5-4cd7-47d6-a50f-2568c480f2e9",
  • "time": "2018-04-05T17:31:00Z",
  • "datacontenttype": "application/json",
  • "data": {
    }
}

AEM Translation job updated eventWebhook

Event triggered when a translation job is updated in AEM.

Request
Request Body schema: application/json
id
required
string non-empty

An identifier for the event. When used in combination with the source property, it allows for each instance of an event to be uniquely identified. That is to say, the combination of the source + id properties will be unique for each distinct event. If a duplicate event is re-sent (e.g. due to a network error) it may have the same id and should be treated as a duplicate.

source
required
string <uri> non-empty ^acct:aem(-cmstg)?-p\d+-e\d+@adobe\.com$

An instance of the acct URI scheme that uniquely identifies the producer of this event, of the format acct:aem-p<programId>-e<environmentId>@adobe.com.

specversion
required
string >= 3 characters

The version of the CloudEvents specification which the event uses. AEM events use the CloudEvents spec version 1.0.2, hence this value will be 1.0.

Value: "1.0"
type
required
string >= 4 characters ^aem\.*$

The type for the event. This will identify the AEM solution that has dispatched the event and may also include the type of entity and the activity that occurred.

Value: "aem.core.translation.job.updated"
datacontenttype
required
string non-empty

The format of the data in the event. This will always be application/json for AEM events.

Value: "application/json"
dataschema
string <uri>

An optional attribute, which may point to a JSON schema document that covers the data object.

time
required
string <date-time> non-empty

A timestamp of when the event occurred.

required
object

The event payload.

Responses
200

AEM translation job update event data is received successfully

Request samples
application/json
{
  • "specversion": 1,
  • "type": "aem.core.translation.job.updated",
  • "source": "acct:aem-p56789-e12345@adobe.com",
  • "id": "7c1104e5-4cd7-47d6-a50f-2568c480f2e9",
  • "time": "2018-04-05T17:31:00Z",
  • "datacontenttype": "application/json",
  • "data": {
    }
}

AEM translation job content update start eventWebhook

Event triggered when a content update is started in translation job.

Request
Request Body schema: application/json
id
required
string non-empty

An identifier for the event. When used in combination with the source property, it allows for each instance of an event to be uniquely identified. That is to say, the combination of the source + id properties will be unique for each distinct event. If a duplicate event is re-sent (e.g. due to a network error) it may have the same id and should be treated as a duplicate.

source
required
string <uri> non-empty ^acct:aem(-cmstg)?-p\d+-e\d+@adobe\.com$

An instance of the acct URI scheme that uniquely identifies the producer of this event, of the format acct:aem-p<programId>-e<environmentId>@adobe.com.

specversion
required
string >= 3 characters

The version of the CloudEvents specification which the event uses. AEM events use the CloudEvents spec version 1.0.2, hence this value will be 1.0.

Value: "1.0"
type
required
string >= 4 characters ^aem\.*$

The type for the event. This will identify the AEM solution that has dispatched the event and may also include the type of entity and the activity that occurred.

Value: "aem.core.translation.job.content.update.started"
datacontenttype
required
string non-empty

The format of the data in the event. This will always be application/json for AEM events.

Value: "application/json"
dataschema
string <uri>

An optional attribute, which may point to a JSON schema document that covers the data object.

time
required
string <date-time> non-empty

A timestamp of when the event occurred.

required
object

The event payload.

Responses
200

AEM translation job content update start event data is received successfully

Request samples
application/json
{
  • "specversion": 1,
  • "type": "aem.core.translation.job.content.update.started",
  • "source": "acct:aem-p56789-e12345@adobe.com",
  • "id": "7c1104e5-4cd7-47d6-a50f-2568c480f2e9",
  • "time": "2018-04-05T17:31:00Z",
  • "datacontenttype": "application/json",
  • "data": {
    }
}

AEM translation job content update complete eventWebhook

Event triggered when a content update is completed in translation job.

Request
Request Body schema: application/json
id
required
string non-empty

An identifier for the event. When used in combination with the source property, it allows for each instance of an event to be uniquely identified. That is to say, the combination of the source + id properties will be unique for each distinct event. If a duplicate event is re-sent (e.g. due to a network error) it may have the same id and should be treated as a duplicate.

source
required
string <uri> non-empty ^acct:aem(-cmstg)?-p\d+-e\d+@adobe\.com$

An instance of the acct URI scheme that uniquely identifies the producer of this event, of the format acct:aem-p<programId>-e<environmentId>@adobe.com.

specversion
required
string >= 3 characters

The version of the CloudEvents specification which the event uses. AEM events use the CloudEvents spec version 1.0.2, hence this value will be 1.0.

Value: "1.0"
type
required
string >= 4 characters ^aem\.*$

The type for the event. This will identify the AEM solution that has dispatched the event and may also include the type of entity and the activity that occurred.

Value: "aem.core.translation.job.content.update.completed"
datacontenttype
required
string non-empty

The format of the data in the event. This will always be application/json for AEM events.

Value: "application/json"
dataschema
string <uri>

An optional attribute, which may point to a JSON schema document that covers the data object.

time
required
string <date-time> non-empty

A timestamp of when the event occurred.

required
object

The event payload.

Responses
200

AEM translation job content update complete event data is received successfully

Request samples
application/json
{
  • "specversion": 1,
  • "type": "aem.core.translation.job.content.update.completed",
  • "source": "acct:aem-p56789-e12345@adobe.com",
  • "id": "7c1104e5-4cd7-47d6-a50f-2568c480f2e9",
  • "time": "2018-04-05T17:31:00Z",
  • "datacontenttype": "application/json",
  • "data": {
    }
}

AEM translation Rest API execution eventWebhook

Event triggered on translation rest API execution.

Request
Request Body schema: application/json
id
required
string non-empty

An identifier for the event. When used in combination with the source property, it allows for each instance of an event to be uniquely identified. That is to say, the combination of the source + id properties will be unique for each distinct event. If a duplicate event is re-sent (e.g. due to a network error) it may have the same id and should be treated as a duplicate.

source
required
string <uri> non-empty ^acct:aem(-cmstg)?-p\d+-e\d+@adobe\.com$

An instance of the acct URI scheme that uniquely identifies the producer of this event, of the format acct:aem-p<programId>-e<environmentId>@adobe.com.

specversion
required
string >= 3 characters

The version of the CloudEvents specification which the event uses. AEM events use the CloudEvents spec version 1.0.2, hence this value will be 1.0.

Value: "1.0"
type
required
string >= 4 characters ^aem\.*$

The type for the event. This will identify the AEM solution that has dispatched the event and may also include the type of entity and the activity that occurred.

Value: "aem.core.translation.rest.api.execution"
datacontenttype
required
string non-empty

The format of the data in the event. This will always be application/json for AEM events.

Value: "application/json"
dataschema
string <uri>

An optional attribute, which may point to a JSON schema document that covers the data object.

time
required
string <date-time> non-empty

A timestamp of when the event occurred.

required
object

The event payload.

Responses
200

Translation Rest API execution event data is received successfully

Request samples
application/json
{
  • "specversion": 1,
  • "type": "aem.core.translation.rest.api.execution",
  • "source": "acct:aem-p56789-e12345@adobe.com",
  • "id": "7c1104e5-4cd7-47d6-a50f-2568c480f2e9",
  • "time": "2018-04-05T17:31:00Z",
  • "datacontenttype": "application/json",
  • "data": {
    }
}