Actions are wrappers for making an API request. Zendesk Integration Services (ZIS) provides some built-in actions to perform common tasks such as loading configuration settings for an integration and transforming data. They can be referenced in a ZIS Flow without having to be defined as a separate resource in your ZIS Bundle, as opposed to custom actions.

LoadConfig

Loads the configuration settings for an integration. See the ZIS Configs API docs.

Action name

zis:common:action:LoadConfig

Parameters

Parameter Type Description Required
scope string Name of the scope the configuration belongs to Yes

Note: The scope parameter accepts an asterisk (*) as a wildcard to match multiple scopes. However, this action only returns the first configuration found.

Example action

"LoadConfig": {    "Type": "Action",    "ActionName": "zis:common:action:LoadConfig",    "Parameters": {        "scope.$": "my-integration:{{$.accountId}}/name"    },    "ResultPath": "$.config_result",    "Next": "NextState"}

Response

{  "config": {    "key": "value"  }}

PatchConfig

Updates the configuration settings for an integration in the ZIS Configurations Service. It merges changes with the existing configuration.

Action name

zis:common:action:PatchConfig

Parameters

Parameter Type Description Required
scope string Scope of the configuration Yes
config object The new config attributes Yes

Example action

"PatchConfigExample": {    "Type": "Action",    "ActionName": "zis:common:action:PatchConfig",    "Parameters": {        "scope.$": "my-integration:{{$.accountId}}/name",        "config": {            "name": {                "firstname.$": "$.firstname",                "lastname.$": "$.lastname"            }        }    },    "Next": "NextState"}

Response

No response from this action.

Loads links which are associations between two objects such as ticket ID to a Slack thread. Providing the link_type, you can search the left object, right object name, or both. For more information, see Understanding ZIS Links.

Action name

zis:common:action:LoadLinks

Parameters

Parameter Type Description Required
link_type string LinkType of the link to load Yes
left_object_name string LeftObject of the link to load One or both of left_object_name or right_object_name is required
right_object_name string RightObject of the link to load One or both of left_object_name or right_object_name is required

Note: At least one of the left or right object names is required.

Example action

"LoadLinks": {    "Type": "Action",    "ActionName": "zis:common:action:LoadLinks",    "Parameters": {        "link_type": "account_to_organization_link",        "left_object_name.$": "$.accountId"    },    "ResultPath": "$.link_results",    "Next": "NextState"}

Response

{  "count": 0,  "links": [    {      "left_object": {        "metadata": {},        "name": "string",        "name_attrs": {}      },      "link_type": "string",      "right_object": {        "metadata": {},        "name": "string",        "name_attrs": {}      },      "uuid": "string"    }  ]}

Creates a new link in the ZIS Links Service.

Action name

zis:common:action:CreateLink

Parameters

Parameter Type Description Required
link_type string LinkType of the link to load Yes
left_object object The link’s LeftObject to create. name is a required child key Yes
right_object object The link’s RightObject to create. name is a required child key Yes

Note: The left and right object should be specified as shown below:

{  "left_object": {    "name.$": "channel:{{$.input.message.channel_id}}/message:{{$.input.message.message_id}}"  }}

If you specify the left and right name parameters using key-value pairs separated by slashes (/), those key-value pairs are created as name attributes (name_attrs) that are easily referenced in flows using their JSON paths. Example:

"name_attrs": { "channel": 999, "message": 12345 }

Example action

"CreateLink": {    "Type": "Action",    "ActionName": "zis:common:action:CreateLink",    "Parameters": {        "link_type": "account_to_organization_link",        "left_object": {            "name.$": "$.accountId"        },        "right_object": {            "name.$": "$.organizationId",            "metadata": {                "name.$": "$.organizationName"            }        }    },    "Next": "NextState"}

Response

{  "link": {    "account_id": 0,    "integration": "string",    "left_object": {      "metadata": {},      "name": "string",      "name_attrs": {}    },    "link_type": "string",    "right_object": {      "metadata": {},      "name": "string",      "name_attrs": {}    },    "uuid": "string"  }}

Removes a link from the ZIS Links Service.

Action name

zis:common:action:DeleteLink

Parameters

Parameter Type Description Required
link_type string LinkType of the link to load Yes
left_object_name string LeftObject of the link to load Yes
right_object_name string RightObject of the link to load Yes

Example action

"DeleteLink": {    "Type": "Action",    "ActionName": "zis:common:action:DeleteLink",    "Parameters": {        "link_type": "account_to_organization_link",        "left_object_name.$":  "$.accountId",        "right_object_name.$": "$.organizationId"    },    "Next": "NextState"}

Response

No response from this action.

Updates an existing link in ZIS Links with new values.

Action name

zis:common:action:PatchLink

Parameters

Parameter Type Description Required
link_type string LinkType of the link to load Yes
left_object_name string The target link’s LeftObject to update Yes
right_object_name string The target link’s RightObject to update Yes
left_object object The updated value for left_object One or both of left_object or right_object is required
right_object object The updated value for right_object One or both of left_object or right_object is required

Action example

"PatchLink": {    "Type": "Action",    "ActionName": "PatchLink",    "Parameters": {        "link_type": "account_to_organization_link",        "left_object_name.$":  "$.accountId",        "right_object_name.$": "$.organizationId",        "left_object": {            "name.$": "$.accountId"        },        "right_object": {            "name.$": "$.organizationId",            "metadata": {                "name.$": "$.organizationName"            }        }    },    "Next": "NextState"}

Response

{  "link": {    "account_id": 0,    "integration": "string",    "left_object": {      "metadata": {},      "name": "string",      "name_attrs": {}    },    "link_type": "string",    "right_object": {      "metadata": {},      "name": "string",      "name_attrs": {}    },    "uuid": "string"  }}

Transform

Performs a JQ transform on the input data and passes the output to the next state.

Action name

zis:common:transform:Jq

Parameters

Parameter Type Description Required
expr string JQ expression Yes
data string input data to perform transform on Yes

Example action

"TransformTicketIdToString": {    "Type": "Action",    "ActionName": "zis:common:transform:Jq",    "Parameters": {        "expr": ".ticket_event.ticket.id | tostring",        "data.$": "$.input"    },    "ResultPath": "$.transformed.ticket.id",    "Next": "NextState"}