What's my plan?
All Suites Growth, Professional, Enterprise, or Enterprise Plus
Note: Action builder is currently in an early access program (EAP). You can sign up for the EAP here.

Action builder provides an easy way to integrate Zendesk with external systems through action flows. This is accomplished by connecting to external systems and adding steps specific to those connected systems to your action flow. The steps associated with external systems are referred to collectively as external steps.

By connecting to these external systems, admins can automate workflows, improve collaboration, and maintain a seamless experience across multiple platforms. For example, you can define action flows that create a Jira issue based on a Zendesk ticket or create a Jira issue and then notify a Slack channel and update a Zendesk ticket with a link to the Jira issue.

Additionally, while many steps for the supported external systems have been pre-defined, admins can also create actions to define other external system tasks you want to include in your action flows.

This article contains the following topics:
  • Connecting to an external system
  • Understanding what external steps are available
Related article:
  • Creating action flows (EAP)

Best practices for connecting to external systems

When connecting to external systems for use in action flows, the following best practices are recommended:
  • All external steps performed by an action flow are attributed to the user who connected the external system. Therefore, it is a best practice to use a dedicated service account rather than personal credentials when connecting to each external system.
  • All integrations request access to necessary scopes. However, it's important that you review and validate the scopes before authorizing the connection to the external system.
  • When managing credentials for API key-based tools, such as OpenAI, it's best to store keys in a secure vault or credential manager.

Connecting to an external system

Before you can include external steps in your action flows, you must connect to the external systems you intend to integrate with. Action flows support connections to the following external systems:
  • Confluence
  • Google Sheets
  • Jira
  • Microsoft Excel
  • OpenAI
  • Salesforce
  • Shopify
  • Slack
To connect to an external system
  1. In Admin Center, click Apps and integrations in the sidebar, then select Actions > Action flows.
  2. Create or edit an action flow.
  3. Open the step sidebar.
  4. Under External steps, click the external system you want to connect to.
  5. Click Connect.
  6. Follow the external system's prompts to authenticate and complete the connection.
    Note: All external steps performed by an action flow are attributed to the user who connected the external system. Therefore, it is a best practice to use a dedicated service account rather than personal credentials when connecting to each external system.

    Note the following details about authenticating with the external systems:

    • Confluence: Use Atlassian to authenticate the account.
    • Google Sheets: Use Google to authenticate the account. You'll log into a Google Workspace or Gmail account, and admin approval might be required in managed environments.
    • Jira: When connecting to Atlassian Confluence, you must use the Atlassian sign-in system to authenticate the account.
    • Microsoft Excel: Use Microsoft to authenticate the account. Depending on your organization's policies, you might need to authorize device or app access.
      Note: To ensure the connection is successful, you must have a Microsoft tennant admin add the connector first.
    • OpenAI: Use an API key to authenticate the account. The connection isn't confirmed until you test or use an action flow with OpenAI steps.
    • Salesforce: Use Salesforce to authenticate the account.
    • Shopify: Use the Shopify OAuth system to authenticate the account.
    • Slack: Use Slack to authenticate the account. To complete authentication, you must invite the Zendesk connector app:
      /invite @Zendesk Connector

    After you've connected to the system, you'll see an indicator that it's connected and details about the instance you're connected to, as well as the steps available for the connected system.

Understanding what external steps are available

Each supported system has unique steps available for use within your action flows. An action flow can include multiple external steps across the supported systems. For more information about specific steps and examples of how you might use them, see:
  • Using Confluence steps
  • Using Google Sheets steps
  • Using Jira steps
  • Using Microsoft Excel steps
  • Using OpenAI steps
  • Using Salesforce steps
  • Using Shopify steps
  • Using Slack steps
Note: If you don't see an external system listed that you want to use, you can create actions to define other external system tasks you want to include in your action flows. These are exposed in Action Builder as action steps rather than external steps.

Using Confluence steps

Confluence steps can be used to create, update, and add comments to Confluence pages.

The following steps are available:
  • Create page: Creates a new Confluence page with the specified title and text-based content.
      Variables
    Inputs space_id, title, value
    Output Full metadata
  • Update page: Updates an existing Confluence page with specified text-based changes.
      Variables
    Inputs space_id, title, value
    Output Full metadata
  • Create footer comment: Adds a comment to an existing Confluence page.
      Variables
    Inputs page_id, value
    Output id, status
  • Search for a page: Search for a Confluence page by its title.
      Variables
    Inputs title
    Output id, title

Using Google Sheets steps

Google Sheets steps can be used to create spreadsheets and add data to a sheet created within the action flow, such as an AI-generated ticket summary, which can then be shared with other users.

The following steps are available:
  • Create spreadsheet: Creates a spreadsheet.
      Variables
    Inputs spreadsheet_title
    Output spreadsheet_id, sheet_title,
  • Create a new sheet: Adds a sheet to a spreadsheet. Includes the option to specify column headings and an initial row of data.
      Variables
    Inputs spreadsheet_id, sheet_title
    Output spreadsheet_id, sheet_title
  • Append row: Adds a row to a sheet previously created within the action flow.
      Variables
    Inputs spreadsheet_id, sheet_title, values
    Output spreadsheet_id, sheet_title, values

Using Jira steps

Jira steps can be used to automatically create and update Jira issues based on tickets. For example, you could automatically create Jira issues for bugs reported in Zendesk tickets, check a Jira issue's status before closing a Zendesk ticket, update Jira issue assignment based on ticket assignment, or move a Jira issue from one status to another when a ticket is being worked.

The following steps are available:
  • Create issue: Creates a new issue in the connected Jira project.
      Variables
    Inputs project_id, summary, issue_type_id, assignee_id, priority_id, description, labels
    Output id, key, self
  • Get issue: Retrieves details about an issue.
      Variables
    Inputs issue_id or issue_key
    Output Full issue metadata
  • Edit issue: Update a Jira issue's details, including summary, assignee, and description.
      Variables
    Inputs project_id, summary, issue_type_id, assignee_id, priority_id, description, labels
    Output id, key, self
  • Transition issue: Changes a Jira issue's workflow status. For example, "In progress" when work begins.
      Variables
    Inputs issue_id or issue_key, transition_id
    Output none

Using Microsoft Excel steps

Microsoft Excel steps can be used to create and update Excel workbooks and worksheets as well as reading data from them.

The following steps are available:
  • Create workbook: Creates a new Excel workbook with a specified name.
      Variables
    Inputs workbook_name
    Output created_date_time, http_status_code, last_modified_date_time, web_url, workbook_id, workbook_name
  • Create worksheet: Creates a new worksheet within an existing workbook.
      Variables
    Inputs workbook_id, worksheet_name
    Output http_status_code, id, name, position, visibility
  • Add row to sheet: Appends a new row to an existing worksheet.
      Variables
    Inputs workbook_id, sheet_name, values
    Output address, cell_count, column_count, column_hidden, column_index, http_status_code, row_count, row_hidden, row_index, values
  • Fetch row data: Retrieves the values in a specific row based on a row index.
      Variables
    Inputs spreadsheet_id, row_index
    Output row_data
  • Update row: Updates the values in a specific row based on a row index.
      Variables
    Inputs spreadsheet_id, header_row
    Output address, cell_count, column_count, column_hidden, column_index, http_status_code, row_count, row_hidden, row_index, values

Using OpenAI steps

The OpenAI steps in action flows make it possible for you to provide things such as AI-generated summaries of long tickets to agents, identify negative emotional tones in tickets so they can be routed to specialized teams, extract keywords that can be used as ticket tags, and use tailored AI models to analyze customer messages.

GPT 5.0 is supported for all of the OpenAI steps. This enhances automation capabilities by providing better contextual understanding and more natural responses.

The following steps are available:
  • Analyze sentiment: Detects the emotional tone.
      Variables
    Inputs model, text
    Output sentiment
  • Summarize text: Condenses large quantities of text into a brief summary.
      Variables
    Inputs model, text
    Output summary
  • Extract keywords: Identifies main topics or entities. These can then be used as tags for tickets.
      Variables
    Inputs model, text
    Output keywords
  • Send prompt: A custom prompt and response from the OpenAI API.
    For example, a prompt might be:
    Analyze this ticket and categorize it into one of the following: Billing, Technical Issue, Feature Request, Bug Report, General Inquiry.
    Ticket:[description]
    where [description] is replaced with a value by clicking Add variable.

      Variables
    Inputs model, text
    Output content

Using Salesforce steps

The Salesforce steps make it possible to automate many of the actions an agent might take as they work tickets. For example, you can use the Salesforce steps in action flows to automatically create new leads or other Salesforce objects when a user contacts you, automatically add notes to a Salesforce record after a customer interaction, clean up duplicated data, look up Salesforce contact data prior to sending a Slack message or creating a Jira issue, automatically convert highly rated leads identified by AI scoring models, and more.

The Salesforce steps in action flows can be used with the following Salesforce objects: leads, contacts, accounts, opportunities, cases, and campaigns. The following steps are available for each of these objects:
  • Create record: Adds a new record to an object.
      Variables
    Inputs name, phone, description
    Output id
  • Update record: Changes field values for an existing record.
      Variables
    Inputs name, phone, description
    Output id
  • Delete record: Removes a lead or case from Salesforce.
      Variables
    Inputs object_id
    Output none
  • Find record: Searches for a record based on identifying information, such as an email address or ID. The inputs and output vary by object.
      Variables
    Inputs
    • Accounts: name, phone, description
    • Leads: first_name, last_name, email
    • Contacts: first_name, last_name, email
    • Opportunities: name
    • Cases: case_number
    • Campaigns: name
    Output
    • Accounts: id, name
    • Leads: Full lead metadata
    • Contacts: Full contact metadata
    • Opportunities: Pipeline metadata
    • Cases: Case metadata
    • Campaigns: id, name, status
  • Convert lead to opportunity: Transforms a lead into an opportunity.
      Variables
    Inputs lead_id, account_id
    Output opportunity_id

Using Shopify steps

Shopify steps in action flows make it possible to automatically populate customer information and order details when handling tickets, cancel tickets, and issue refunds without leaving Zendesk.

The following steps are available:
  • Search order: Retrieves details of a Shopify order using an email address, order ID, or order date.
      Variables
    Inputs query
    Output orders
  • Cancel order: Cancels the order in Shopify. Includes options to issue a refund, restock items, and notify the customer.
      Variables
    Inputs order_id, reason, refund
    Output none
  • Create refund: Initiates a full refund process in Shopify. You can choose whether to notify customers.
      Variables
    Inputs order_id, notify_customer, notes
    Output amount, id

Using Slack steps

Slack steps can be used in action flows to streamline communication and make sure users know about other things being performed by action flows. For example, you can send messages to channels and individual users alerting them of new tickets or Jira issue assignments, post AI-generated summaries of tickets into a Slack thread, escalate direct messages to public channels for broader visibility, add reactions to automatically acknowledge messages, or extract message details for analysis and reply with AI-generated content.

The following steps are available:
  • Post message to channel: Send a message to a public or private channel.
      Variables
    Inputs channel, message
    Output channel, ts, ok
  • Send direct message: Send a message to a specific user.
    Note: Although Slack supports DMs with up to 9 other individuals, this step only supports sending a direct message to a single individual.
      Variables
    Inputs email, message
    Output Full message data
  • Reply to message thread: Post a reply to a message in a thread. This step can create a thread or reply within an existing thread.
      Variables
    Inputs email, message
    Output None
  • Fetch thread messages: Retrieves all messages in a thread.
      Variables
    Inputs channel, thread_ts, reply_ts
    Output messages
  • Add reaction: Adds a specified emoji reaction to a message.
      Variables
    Inputs channel, name, timestamp
    Output success
  • Fetch message: Retrieves message content and metadata.
      Variables
    Inputs channel, timestamp
    Output text, user
  • Find user: Retrieves a Slack user so that they can be used later in the action flow.
      Variables
    Inputs user_id
    Output display_name, email, real_name, user_id
Powered by Zendesk