Built-in actions are predefined requests for common tasks in a ZIS flow. For example, you can use a built-in action to load settings from a ZIS config or transform data using jq. You can use a built-in action in an action state without defining the action as a separate resource in the ZIS bundle.

LoadConfig

Loads settings from a ZIS config. For more information, refer to Loading a config in a ZIS flow.

Action name

zis:common:action:LoadConfig

Parameters

ParameterTypeMandatoryDescription
scopestringtrueScope of the config to load

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

Makes a partial update to a ZIS config. The action only changes settings you specify. For more information, refer to Updating a config in a ZIS flow.

Action name

zis:common:action:PatchConfig

Parameters

ParameterTypeMandatoryDescription
scopestringtrueScope of the config to update
configobjecttrueSettings for the config, provided as arbitrary key-value pairs

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 one or more ZIS links. For more information, refer to Loading ZIS links .

Action name

zis:common:action:LoadLinks

Parameters

ParameterTypeMandatoryDescription
link_typestringtrueType of links to load
left_object_namestringOne or both of left_object_name or right_object_name is requiredLeft object of the links to load
right_object_namestringOne or both of left_object_name or right_object_name is requiredRight object of the links to load
page_sizeintegerfalseMaximum number of links returned per page. Defaults to 20. Can't exceed 100. See cursor pagination
page_after_cursorstringfalseLink id used to paginate to the next page of results. See cursor pagination
page_before_cursorstringfalseLink id used to paginate to the previous page of results. See cursor pagination

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"    }  ],  "meta": {    "after": "string",    "before": "string",    "has_more": true  }}

Creates a new ZIS link. For more information, see Creating a ZIS link .

Action name

zis:common:action:CreateLink

Parameters

ParameterTypeMandatoryDescription
link_typestringtrueRelationship between the objects. Multiple links can share the same link type
left_objectobjecttrueLeft object for the link
left_object.namestringtrueData in the left object you want to link. Supports name attributes. Must be 3–150 characters. Can contain numbers, letters, and the following characters: :, /, _, -, and .
left_object.metadataobjectfalseContains arbitrary metadata for the left object
right_objectobjecttrueRight object for the link
right_object.namestringtrueData in the right object you want to link. Supports name attributes. Must be 3–150 characters. Can contain numbers, letters, and the following characters: :, /, _, -, and .
right_object.metadataobjectfalseContains arbitrary metadata for the right object

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": {                "orgName.$": "$.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 ZIS link from the ZIS Links Service. For more information, refer to Deleting a ZIS link .

Action name

zis:common:action:DeleteLink

Parameters

ParameterTypeMandatoryDescription
link_typestringtrueType of link to delete
left_object_namestringtrueLeft object of the link to delete
right_object_namestringtrueRight object of the link to delete

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.

Makes a partial update to a ZIS link. For more information, refer to Updating a ZIS link .

Action name

zis:common:action:PatchLink

Parameters

ParameterTypeMandatoryDescription
link_typestringtrueType of link to update
left_object_namestringtrueLeft object of the link to update
left_objectobjectOne or both of left_object or right_object is requiredContains updated values for the left object
left_object.namestringIf left_object is provided, this parameter is requiredData for the left object. Supports name attributes. Must be 3–150 characters. Can contain numbers, letters, and the following characters: :, /, _, -, and .
left_object.metadataobjectfalseContains arbitrary metadata for the left object
right_object_namestringfalseRight object of the link to update
right_objectobjectOne or both of left_object or right_object is requiredContains updated values for the right object
right_object.namestringIf right_object is provided, this parameter is requiredData for the right object. Supports name attributes. Must be 3–150 characters. Can contain numbers, letters, and the following characters: :, /, _, -, and .
right_object.metadataobjectfalseContains arbitrary metadata for the right object

Action example

"PatchLink": {    "Type": "Action",    "ActionName": "zis:common:action: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. For example jq expressions and limitations, refer to the jq cheat sheet.

Tip: You can sometimes use a Pass state to avoid passing large JSON objects, such as the $ object, to a Transform action. This can help the action run more efficiently. See Adding data to a reference path in the Pass state documentation.

Action name

zis:common:transform:Jq

Parameters

ParameterTypeMandatoryDescription
exprstringtruejq expression
datastringtrueReference path to input data for the jq expression

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"}