# Send HTTP Request

**Send HTTP Request** คือแอ็กชันที่ให้คุณเชื่อมต่อ Zaapi เข้ากับแอปหรือบริการภายนอกใด ๆ ที่รองรับ **webhook** หรือ **API** เป็นวิธีอัตโนมัติที่ทรงพลังเพื่อให้เกิดการทำงานนอก Zaapi — เช่น ส่งข้อมูลไปยัง Slack, Google Sheets หรือระบบภายในของคุณ — เมื่อมีเหตุการณ์เกิดขึ้นใน Flow

เมื่อใช้งานแอ็กชันนี้ Zaapi จะส่งคำขอ (request) ไปยัง URL ที่กำหนด พร้อมแนบข้อมูลที่คุณเลือก (เช่น ชื่อลูกค้า เนื้อหาข้อความ ลิงก์ไปยังแชท) จากนั้นแอปปลายทางสามารถใช้ข้อมูลนั้นเพื่อทริกเกอร์เวิร์กโฟลว์ของตนได้

ตัวอย่างที่ทำได้ด้วย Send HTTP Request:

* แจ้งเตือนทีมใน Slack เมื่อได้รับข้อความร้องเรียน
* ส่งลีดใหม่เข้า CRM หรือ Google Sheet
* ทริกเกอร์เวิร์กโฟลว์ในเครื่องมืออื่น เมื่อมีลูกค้ากรอกแบบสำรวจเสร็จ

### วิธีการ (HTTP Methods) ที่รองรับ

เลือกใช้วิธีตามที่การเชื่อมต่อของคุณต้องการ:

* **POST** – ส่งข้อมูลไปยังบริการปลายทาง (พบบ่อยที่สุด)
* **GET** – ดึงข้อมูลจากบริการปลายทาง
* **PUT / PATCH** – อัปเดตข้อมูลในระบบอื่น
* **DELETE** – ลบข้อมูลในระบบอื่น

### Body และ Headers

คุณสามารถแนบข้อมูลในคำขอได้ โดยใส่เป็น **key–value** ใน **Body** (รูปแบบ **JSON** หรือ **Table**)\
หากแอปปลายทางต้องใช้ **headers** เฉพาะ เช่น `Content-Type: application/json` หรือโทเค็นยืนยันตัวตน ให้เพิ่มได้ในส่วน **Add headers**

***

### ตัวอย่างการใช้งาน — แจ้งเตือนข้อความร้องเรียนใน Slack

หากทีมซัพพอร์ตของคุณใช้ Slack เพื่อติดตามประเด็นเร่งด่วน คุณสามารถส่งการแจ้งเตือน Slack อัตโนมัติทุกครั้งที่ลูกค้าส่งข้อความร้องเรียนใน Zaapi ช่วยให้ทีมตอบสนองได้รวดเร็วและตามไปจัดการในแชทได้ทันที

เราจะแสดงขั้นตอนดังนี้:

1. ตรวจจับข้อความที่เกี่ยวข้องกับ “ร้องเรียน” ใน Zaapi
2. ส่งการแจ้งเตือนไปยัง Slack ให้ทีมทราบ
3. แนบลิงก์เพื่อให้ทีมคลิกเข้าไปยังบทสนทนาได้โดยตรง

#### ขั้นตอนที่ 1: สร้าง Slack Workflow ที่รับ Webhook

ก่อนอื่นต้องมีเวิร์กโฟลว์ใน Slack ที่สามารถรับข้อมูลจาก Zaapi ผ่าน webhook ได้

1. เข้า **Workflow Builder** ใน Slack workspace ของคุณ
2. คลิก **Create workflow** → ตั้งชื่อ เช่น “Complaint Alert”
3. เลือก **From a webhook** เป็นตัวทริกเกอร์
4. Slack จะสร้าง **Webhook URL** ให้ — คัดลอกไว้ (จะนำไปวางใน Zaapi ภายหลัง)

<p align="center"><img src="https://help.zaapi.com/~gitbook/image?url=https%3A%2F%2F3192879026-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FLCz35HGsZaSVs8jhhqnk%252Fuploads%252FgDjR2qBJROrDPwcuFjlL%252FScreenshot%25202568-10-27%2520at%252015.58.13.png%3Falt%3Dmedia%26token%3D395568ef-57f4-4215-a2bc-9f8a3ec5570a&#x26;width=300&#x26;dpr=4&#x26;quality=100&#x26;sign=b035e0d3&#x26;sv=2" alt=""></p>

ภายใต้ **Data variables** สร้างตัวแปร 2 ตัว:

* `name` (ชื่อลูกค้า)
* `url` (ลิงก์บทสนทนาใน Zaapi)

**ตัวอย่าง HTTP body**:

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

***

#### ขั้นตอนที่ 2: ตั้งค่าข้อความที่จะโพสต์ใน Slack

กำหนดว่า Slack ควรทำอะไรเมื่อได้รับ webhook

1. เพิ่มขั้นตอน **Send a message to a channel**
2. เลือกช่องทาง เช่น `#support-alerts`
3. เขียนข้อความแจ้งเตือน โดยใช้งานตัวแปรที่ตั้งไว้เมื่อครู่ (`{name}` และ `{url}`) ตัวอย่าง:

```
{name} has sent a complaint. Please take action.
```

4. เพิ่มปุ่มเพื่อให้ทีมกดเข้าไปยังบทสนทนาได้ทันที:
   * **Label:** Go to conversation
   * **Behaviour:** Open link
   * **URL:** `{url}`

ตัวอย่างข้อความใน Slack:

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

<p align="center"><img src="https://help.zaapi.com/~gitbook/image?url=https%3A%2F%2F3192879026-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FLCz35HGsZaSVs8jhhqnk%252Fuploads%252F8RFOQWddOHy8fDzZehoa%252FScreenshot%25202568-10-27%2520at%252015.58.47.png%3Falt%3Dmedia%26token%3Db7bf8f48-5e4a-47c2-9a5b-a9a6fc74200b&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=308b74&#x26;sv=2" alt=""></p>

***

#### ขั้นตอนที่ 3: สร้าง Flow ใน Zaapi

ต่อไปมาสร้างออโตเมชันใน Zaapi

1. ไปที่ **Flow Builder** ในเวิร์กสเปซของคุณ
2. สร้าง Flow ใหม่ ตั้งชื่อ เช่น “Complaint Alert to Slack”
3. เพิ่มบล็อคดังต่อไปนี้:

**① Message received**

* Trigger: เมื่อมีลูกค้าส่งข้อความใหม่
* Channels: เลือกช่องทางแชทที่ต้องการตรวจจับ

**② Message content**

* เพิ่มเงื่อนไขเพื่อตรวจสอบคำหลักที่สื่อถึง “ร้องเรียน”
* ตัวอย่าง: **Contains one of:** `complaint`, `refund`, `issue`, `not happy`, `angry`

**③ Send HTTP request**

* **Method:** `POST`
* **URL:** วาง Slack Webhook URL ที่คัดลอกไว้
* **Headers:** ว่างไว้ได้ (หรือกำหนดตามที่ Slack กำหนด หากจำเป็น)
* **Body (Table):**
  * `name`: เลือกตัวแปร `{Full Name}`
  * `url`: เลือกตัวแปร `{Conversation URL}`

<p align="center"><img src="https://help.zaapi.com/~gitbook/image?url=https%3A%2F%2F3192879026-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FLCz35HGsZaSVs8jhhqnk%252Fuploads%252FjwSm2qFXKacjCR6y8E3J%252FScreenshot%25202568-10-27%2520at%252015.24.20.png%3Falt%3Dmedia%26token%3Dee623db4-0d51-41d4-a0fc-d3af44444737&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=df9f974a&#x26;sv=2" alt=""></p>

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

เมื่อใดก็ตามที่มีข้อความซึ่งตรงกับคำหลักร้องเรียนเข้ามา Zaapi จะส่งคำขอ `POST` ไปยัง Slack โดยอัตโนมัติ เพื่อเริ่มการทำงานของโฟลว์และแจ้งเตือนทีมของคุณทันที
