Action bundles are groupings of pre-existing actions within the Orchestrator that reflect specific business process steps. They are designed to allow non-technical users, such as Localization Managers and Project Managers, to create workflows without requiring an in-depth understanding of the Phrase API stack.
Action bundles are configured like a standard action, requiring parameters for execution.
Since they contain multiple actions, action bundles consume more Orchestrator actions. This is indicated by a numeric value in the top-right hand corner of the action in the workflow editor.
Users can find and use existing action bundles in the contact the support team to request a new bundle). When searching for actions, enable the option to show action bundles first in the list. A bold blue icon indicates the difference between a regular action and a bundle.
tab of the editor, but cannot create new ones (Using an action bundle
To use an action bundle, follow these steps:
-
Drag a selected action bundle onto a workflow.
The action bundle appears in the workflow.
-
Click on the action bundle and select the parameters tab.
-
Click Edit parameters.
Required parameters for the action bundle are displayed.
-
Provide required parameters and click Save parameters.
Parameters are saved to the action bundle and displayed.
-
Click Edit parameters again if changes are required.
Description:
This action bundle is the equivalent of clicking into a translation field in the Strings editor and typing a translation into the field (overwriting anything that pre-existed).
Input parameters:
-
Project ID
The Strings project ID to get the locales of.
-
Locale ID
The Locale ID to identify the language version to be added.
-
Key ID
The Key ID to identify the key to edit.
-
Translated String
The string to add to the selected translation.
Output:
{ "projectId": "f6dfee6466384379606b6158a410cd46", "translation": { "content": "Highlights of Phrase NextMT", "created_at": "2024-11-21T15:13:46Z", "excluded": false, "id": "91ad609cbd7d57e17cbf24432ba3d661", "key": { "data_type": "string", "id": "c7e7924dbb16527eaa0d892a8f0fd0fd", "name": "key3", "plural": false, "tags": [ "35-2024", "upload-20240830_150155", "job-4C4F8EE9" ] }, "locale": { "code": "en-CA", "id": "086fe5acddd58c52a5f8b5d9ec4c5a21", "name": "en-ca" }, "placeholders": [], "plural_suffix": "", "state": "unverified", "unverified": true, "updated_at": "2024-11-21T15:18:09Z" } }
Input parameters:
-
Access token
For authentication.
-
Email template UID
-
list_of_job_uids
-
list
-
-
Project template UID
-
Project UID
An array including project ID(s) entered manually or referenced from the trigger.
Output:
{ "jobs": [ { "uid": "string" } ], "emailTemplate": { "id": "string" }, "cc": [ "string" ], "bcc": [ "string" ] }
Description:
This action bundle checks if all Strings job target locales are completed. If so, it returns true, if not it returns false.
Input parameters:
-
Access token
For authentication.
-
Project ID
For listing all job target locales from within a specific project.
-
Job ID
For listing all job target locales.
Output:
true OR false
Description:
This action bundle takes the project ID(s), and based on those and the output of listing repository syncs, identifies the repository syncs IDs the export is subsequently triggered for in a loop. The outcome of the action bundle is the list of repository syncs for which the export was triggered.
Input parameters:
-
Access token
For authentication.
-
Project IDs
An array including project ID(s) entered manually or referenced from the trigger.
-
Strings account ID
Strings ORG ID required for listing the repository syncs.
Output:
[ { "auto_import": false, "created_at": "2024-11-22T12:24:38Z", "id": "6315b3fd21d7735d0735f1d496b3832f", "status": "running", "type": "export" }, { "auto_import": false, "created_at": "2024-11-22T12:24:39Z", "id": "928298761a94a979e1eb6c01948b2041", "status": "running", "type": "export" } ]
Description:
This action bundle hides the paging need for List Locales API endpoint. It also adds the project ID to the payload to enable more robust looping.
Input parameters:
-
Project ID
The Strings project ID to get the locales of.
-
Strings access token
Output:
{ "locales": [ { "code": "en", "default": true, "id": "77e27f1d896629b0641063652572c038", "name": "en" }, { "code": "fr", "default": false, "id": "2e8fb31c39957bb557bb96c0228960bf", "name": "fr" } ], "projectId": "f6dfee6466384379606b6158a410cd46" }
Description:
This action bundle hides the paging need for List translations by locale API endpoint. It also adds the project ID to the payload to enable more robust looping.
Input parameters:
-
Project ID
The Strings project ID to get the translations of.
-
Locale ID
The Strings locale ID within the project to get the translations of.
-
q
The Strings query.
-
Sort
-
Strings access token
Output:
{ "projectId": "f6dfee6466384379606b6158a410cd46", "translations": [ { "content": "This is new translation - six", "created_at": "2024-11-21T14:34:06Z", "excluded": false, "id": "0dbb663df544008df7e47176f8ec0444", "key": { "data_type": "string", "id": "15798c1dcc05e2d955d2de1959778347", "name": "key1", "plural": false, "tags": [] }, "locale": { "code": "en-CA", "id": "086fe5acddd58c52a5f8b5d9ec4c5a21", "name": "en-ca" }, "placeholders": [], "plural_suffix": "", "state": "unverified", "unverified": true, "updated_at": "2024-11-21T14:55:48Z" } ] }
Input parameters:
-
Access token
For authentication.
-
Job UID
-
Project UID
-
Segment IDs
Output:
{ "jobs": [ { "uid": "string", "status": "ACCEPTED", "providers": [ { "type": "string", "id": "string", "uid": "string" } ], "targetLang": "string", "workflowLevel": 0, "workflowStep": { "name": "string", "id": "string", "uid": "string", "order": 0, "lqaEnabled": true }, "filename": "string", "dateDue": "2019-08-24T14:15:22Z", "dateCreated": "2019-08-24T14:15:22Z", "updateSourceDate": "2019-08-24T14:15:22Z", "imported": true, "jobAssignedEmailTemplate": {}, "notificationIntervalInMinutes": 0, "continuous": true, "sourceFileUid": "string" } ], "project": { "name": "string", "uid": "string" } }
Input parameters:
-
Access token
For authentication.
-
Job UID
-
Project UID
Output:
[ { "segmentId": "string", // Value from ."@id" "origin": "string", // Value from ."@m:trans-origin" "score": number, // Numeric value from ."@m:score" "length": number, // Length of the .source string "source": "string", // Value of .source "target": "string" // Value of .target }, ... ]
Input parameters:
-
Access token
For authentication.
-
Job UID
-
Project UID
-
warning types
Output:
{ "projectUid": "project123", "jobUid": "job456", "segmentIds": ["string"], "warnings": [ { "segmentId": "string", "warnings": [ { "id": "string", "ignored": true, "type": "string", "repetitionGroupId": "string" } ], "ignoredChecks": ["string"] } ] }