Skip to content

Add Split-Test Action

Tool name: add-automation-split-test-action

Adds an automation split-test action that distributes arriving contacts across branches. Arms are configured in settings.splitTest; get-automation reports per arm the contacts it got and the conversions (contacts given its goal tag), get-automation-email-statistics the sends, opens and clicks of email arms. Requires an unscheduled, inactive automation and its current revision from get-automation; dryRun previews without saving. Place it with afterActionId and branch (next after a regular action, yes/no after a decision).

Input schema

automationIdinteger, >= 1required
revisionstring^[a-f0-9]{64}$required
afterActionIdinteger, >= 1required
branchstringrequired
Enum:"next""yes""no"
settingsobjectrequired
dryRunboolean
Default:false
accountIdnull or integer, >= 1
Default:null
Input example
{ "automationId": 1, "revision": "string", "afterActionId": 1, "branch": "next", "settings": { "splitTest": { "revision": "string", "durationSeconds": 1, "variants": [ { "kind": "email", "entityId": 1, "weight": 1, "goalTagId": 1 }, { "kind": "email", "entityId": 1, "weight": 1, "goalTagId": 1 } ] }, "name": "string", "color": "" }, "dryRun": false, "accountId": null }

Output schema

automationIdintegerrequired
namestringrequired
revisionstringrequired
statusstringrequired
editorUrlstringrequired
graphobjectrequired
findingsArray of objectsrequired
editablebooleanrequired
dryRunbooleanrequired
settingsArray of any or objectrequired
splitTestsArray of objectsrequired
Output example
{ "automationId": 0, "name": "string", "revision": "string", "status": "string", "editorUrl": "string", "graph": { "start": 0, "goals": [ 0 ], "states": [ {} ] }, "findings": [ { "actionId": 0, "code": "string", "message": "string", "warning": true, "variantId": 0 } ], "editable": true, "dryRun": true, "settings": {}, "splitTests": [ {} ] }