> ## Content Index
> Fetch the complete content index at: https://internalnote.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# Zendesk Flow Builder API Call
- URL: https://internalnote.com/zendesk-flow-builder-api-call/
- Published: 2022-05-22T14:44:00.000Z
- Updated: 2025-08-01T12:06:41.000Z
- Description: Zendesk announced the ability to add an API call step to their Messaging Flow Builder. This allows you to get external data and show it your users. So what's possible? Let's build a quick mockup and find out!
- Author: Thomas Verschoren
- Tags: AI Agents

Zendesk announced the ability to add an API call step to their Messaging Flow Builder. This allows you to get external data and show it your users. So what's possible? Let's build a quick mockup and find out!

Zendesk just announced the ability to add an API call step to their Flow Builder. This allows you to *get, post, update or delete* data on a remote server or API as a step in the Bot flow.

As usual, their [documentation](https://support.zendesk.com/hc/en-us/articles/4572971586586?ref=internalnote.com) is very clear, but lacks some real world examples or detailed steps.

# Concept

We have a Support widget on our website. We notice that customers often contact us with questions regarding the status of our systems.

So instead of pointing them to an external status page, we'll let the bot get the current system status, and hopefully return an "All good, we're online". Or if not, we let them know we're offline with a link to more information.

You can test this flow via the Widget below.

# Setup

For this example we'll use [GitHub Status API](https://www.githubstatus.com/api?ref=internalnote.com). It has a Summary endpoint we can use to retrieve the current status of GitHub:

## Endpoint

`GET curl https://www.githubstatus.com/api/v2/status.json`

## Response

```json
{
  "page":{
    "id":"kctbh9vrtdwd",
    "name":"GitHub",
    "url":"https://www.githubstatus.com",
    "updated_at": "2022-05-30T10:27:36Z"
  },
  "status": {
    "description": "Partial System Outage",
    "indicator": "major"
  }
}

```

# So how do we set this up?

First we go to our Flow Builder setup and setup some boilerplate.We've created a Bot flow that basically asks the customer if they need to know the current status, or need help.

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder__0012_Screenshot-2022-05-30-at-12.38.41--1-.jpg)

## Make an API call

Next we add a step underneath the "*Are all your systems online?*" question, and choose an API step.

Enter the following and press *Make API Call*

- Subject: Get System Status
- Description: This retrieves the status of the GitHub systems.
- Request Method: GET
- Endpoint URL: [https://www.githubstatus.com/api/v2/status.json](https://www.githubstatus.com/api/v2/status.json?ref=internalnote.com)

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_apicall_1-1.jpeg)

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_apicall_2.jpeg)

If all goes well the system returns a valid response and a list of variables returned.

For our example, we're only interested in the *status > description* value. Go to this entry via the dropdown and click *Save*. Choose *system\_status* as the variable name.

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_apicall_3-1.jpeg)

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_apicall_4-1.jpeg)

We've now:

1. Retrieved the current status from GitHub
2. Saved the status description as a variable for later reuse.

Each time your customers open the widget and select "Get System Status", the Bot will pull in the current status and save it for reuse.

## Showing the status

What's left is showing that status to the customer.

- Under the *Success option* select the "*\[This will be the API step\]*" *m*essage and edit the text to say "*Our current status is:* "
- Click the "*Select Variable*" button and choose the recently created *system\_status* option.
- The text should now say "*Our current status is: {{system\_status}}*"
- Similarly, under the *Fail* option, add a text block that handles the scenario where we can't retrieve the status.

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_success_1.jpeg)

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_success_2.jpeg)

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_fail.jpeg)

# The result

You can test out the flow by going to [support.internalnote.com](https://support.internalnote.com/?ref=internalnote.com).

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_result_1.jpeg)

![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/01/flowbuilder_result_2.jpeg)

# Improvements we'd like to see

- The ability to retrieve an array, and use those as values in an options list.Example: list items in a customers' order, and have them select the item before going forward
- Ask for the name of the currently JWT authenticated user and use that to personalise replies

## Ask For Details

This article was written before Zendesk enabled *Ask for Details* in Flow Builder. See this other article if you want to find out about more complex API calls

[Flow Builder - Ask for detailsThe new Ask For Details option in Flow Builder allows you to pull in contextual information via API into your Zendesk Chat Bot.![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/size/w256h256/format/png/2023/01/internalnote_green-copy.svg)Internal NoteThomas Verschoren![](https://storage.ghost.io/c/ca/c0/cac0c82b-bc4d-4404-9eb4-9cc75e8d045e/content/images/2023/02/Apple-TV-4K-Copy-31@1x-1.jpg)](https://internalnote.com/flow-builder-ask-for-details/)