> For the complete documentation index, see [llms.txt](https://help.zaapi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.zaapi.com/flow-builder/action-nodes/send-http-request.md).

# Send HTTP Request

The **Send HTTP Request** action lets you connect Zaapi with any external app or service that supports webhooks or APIs.\
It’s a powerful way to automate actions outside Zaapi — like sending data to Slack, Google Sheets, or your internal systems — whenever something happens in a Flow.

With this action, Zaapi sends a **request** to a specified **URL**, passing along any information you choose (like a customer’s name, message content, or chat link).\
The receiving app can then use that data to trigger its own workflow.

For example, you can use the Send HTTP Request action to:

* Notify your team in Slack when a complaint message is received
* Send new leads to a CRM or Google Sheet
* Trigger a workflow in another tool when a customer completes a survey

### Supported methods

You can choose from the following HTTP methods depending on what your integration needs:

* **POST** – Send data to another service (most common)
* **GET** – Retrieve data from another service
* **PUT / PATCH** – Update data in another system
* **DELETE** – Remove data from another system

### Body and headers

You can include data in your request by adding key-value pairs in the **Body** (as JSON or Table format).\
If the receiving app requires specific headers — like `Content-Type: application/json` or authentication tokens — you can add those under **Add headers**.

***

### Example Use Cases - Alert Complaints in Slack

If your support team uses Slack to stay on top of urgent issues, you can automatically send a Slack notification whenever a customer sends a complaint message in Zaapi. This helps your team act quickly and follow up directly from the chat.

In this guide, we’ll show you how to:

* Detect complaint-related messages in Zaapi
* Send a Slack notification to alert your team
* Include a link so the team can jump straight into the chat

***

#### Step 1: Create a Slack Workflow with a Webhook

First, you’ll need to create a **Slack workflow** that can receive information from Zaapi through a webhook.

1. Go to your Slack workspace and open the **Workflow Builder**.
2. Click **Create workflow** → name it something like “Complaint Alert.”
3. Choose **From a webhook** as the trigger.
4. Slack will generate a **Webhook URL** — copy it (you will paste this into Zaapi later).
   1. ![](/files/bdNqYv5si1urZsYjYmew)
5. Under **Data variables**, set up two variables:
   * `name` (customer name)
   * `url` (Zaapi conversation link)

Your example HTTP body should look like this:

```json
{
  "name": "Example Name",
  "url": "https://app.zaapi.com/conversations/example"
}
```

***

#### Step 2: Add a Message to Post in Slack

Next, define what Slack should do when it receives the webhook.

1. Add a step to **Send a message to a channel**.
2. Choose the Slack channel (e.g. `#support-alerts`).
3. Write your alert message. Ensure you use the same variables that you set in the previous step (i.e {name} and {url}). For example:

   ```
   {name} has sent a complaint. Please take action.
   ```
4. Add a button so your team can go straight to the conversation:
   * Label: **Go to conversation**
   * Behaviour: **Open link**
   * URL: `{url}`

This will create a message in Slack like:

> **John Doe** has sent a complaint. Please take action.\
> \[Go to conversation]

<figure><img src="/files/YG3v2iF6zGqyMEbKlgle" alt=""><figcaption></figcaption></figure>

***

#### Step 3: Build the Flow in Zaapi

Now let’s create the automation inside Zaapi.

1. Go to **Flow Builder** in your Zaapi workspace.
2. Create a new Flow and name it something like “Complaint Alert to Slack.”
3. Add the following blocks:

   **① Message received**\
   Trigger: When a customer sends you a new message.\
   Channels: Select the chat channels you want to monitor.

   **② Message content**\
   Add a condition to check if the message contains complaint-related keywords.\
   Example: `Contains one of: complaint, refund, issue, not happy, angry`.

   **③ Send HTTP request**\
   Method: **POST**\
   URL: Paste your Slack webhook URL.\
   Headers: You can leave this empty\
   Body (Table):\
   \- name: select the <mark style="background-color:yellow;">{Full Name}</mark> variable\
   \- url: select the <mark style="background-color:yellow;">{Conversation URL}</mark> variable

<figure><img src="/files/4EMvZtZerBQbY4DlJVMy" alt=""><figcaption></figcaption></figure>

```json
{
  "name": "{{ Full Name }}",
  "url": "{{ Conversation URL }}"
}
```

That’s it!\
Whenever a message containing one of your complaint keywords is received, Zaapi will automatically send a POST request to Slack — triggering the workflow and sending the alert
