# Tạo phiếu ghi cho một chiến dịch đang chạy

*Bài toán:* Khách hàng mua hàng rồi hủy đơn trên website. \
Cần thực hiện tạo phiếu ghi gọi ra cho những khách hàng đó với bộ câu hỏi khảo sát? \
Phiếu ghi sẽ nằm trong chiến dịch "Khảo sát lý do hủy đơn?"\
Dữ liệu đơn hàng và số điện thoại của khách hàng được tự động đẩy từ CRM sang qua API

**Các thành phần cần chuẩn bị.**

### 1. Tạo kịch bản khảo sát khách hàng hủy đơn.

Sử dụng giao diện Caresoft. Chuyên viên tạo 1 kịch bản và ghi nhớ lại ID của kịch bản để sử dụng cho bước sau. Ở hình minh họa `script_id =506`

<div><figure><img src="/files/MTpGhLAGeVCTtIWGCfF0" alt=""><figcaption><p>Tạo 1 kịch bản gọi ra</p></figcaption></figure> <figure><img src="/files/fwSQx7lg2ShMnoy0VjJX" alt=""><figcaption><p>Trên giao diện quản lý kịch bản lưu giữ ID của kịch bản vừa tạo </p></figcaption></figure></div>

### &#x20;2. Tạo chiến dịch (Sử dụng giao diện caresoft)&#x20;

Sử dụng giao diện Caresoft chuyên viên được cấp quyền tạo 1 chiến dịch có tên "Khảo sát khách hàng hủy đơn" và ghi nhớ lại ID của chiến dịch để sử dụng ở bước kế tiếp. Ở hình minh họa biến `campaign_id = 387`

<div><figure><img src="/files/MxJTOH15OsX7klJLWe0t" alt=""><figcaption><p>Tạo mới 1 chiến dịch</p></figcaption></figure> <figure><img src="/files/q2TnE8aEK0QDukiGlFYm" alt=""><figcaption><p>Ghi nhớ ID của chiến dịch tạo ra</p></figcaption></figure></div>

### 3. Tạo hành động chiến dịch (Sử dụng API)&#x20;

Sử dụng Api này để tạo hành động gọi ra cho chiến dịch trên. Sau đó lưu lại action\_id làm kết quả cho bước tiếp theo. Trong bước này sẽ cần `campaign_id` và `script_id` ở các bước 1 và 2 để thực hiện tạo hành động chiến dịch.

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

Mẫu request. Như trường hợp này  lưu lại biến `action_id =14897`

{% tabs %}
{% tab title="Request" %}

```json
{
    "action": {
        "description": "Khách gọi ngày 30-4-2023",
        "script_id": 506
    }
}
```

{% endtab %}

{% tab title="Response" %}

```json
{
    "code": "ok",
    "action": {
        "updated_at": "2023-04-04 16:47:41",
        "description": "Khách gọi ngày 30-4-2023",
        "action_id": 14897,
        "created_at": "2023-04-04 16:47:41",
        "campaign_id": 387,
        "script_id": 506
    }
} 
```

{% endtab %}
{% endtabs %}

## Tạo hành động mẫu sử dụng gọi ra&#x20;

<mark style="color:orange;">`PUT`</mark> `{{domain}}/api/v1/campaigns/{{campaign_id}}/action`

Tạo hành động gọi ra cho chiến dịch mới&#x20;

#### Headers

| Name | Type   | Description                                                           |
| ---- | ------ | --------------------------------------------------------------------- |
| \*\* | String | [Thông tin xác thực chung ](/thong-tin-chung.md#phuong-thuc-xac-thuc) |

#### Request Body

| Name                                                | Type        | Description            |
| --------------------------------------------------- | ----------- | ---------------------- |
| action<mark style="color:red;">\*</mark>            | Object      |                        |
| action.script\_id<mark style="color:red;">\*</mark> | Int         | Id của kịch bản gọi ra |
| action.description                                  | String(100) | Tên mô tả hành động    |

{% tabs %}
{% tab title="200: OK Thành công" %}
{% tabs %}
{% tab title="Kết quả thành công" %}

```json
{
    "code": "ok",
    "action": {
        "updated_at": "2023-04-04 16:47:41",
        "description": "Khách gọi ngày 30-4-2023",
        "action_id": 14897,
        "created_at": "2023-04-04 16:47:41",
        "campaign_id": 387,
        "script_id": 506
    }
}
```

{% endtab %}
{% endtabs %}

{% endtab %}
{% endtabs %}

### 4. Tạo phiếu ghi

Chuẩn bị dữ liệu và gửi request theo mẫu dưới đây, với các biến `campaign_id`, `action_id` từ các bước trên  để thay vào.&#x20;

**Gọi vào api tạo ticket**&#x20;

## Tạo mới phiếu ghi&#x20;

<mark style="color:green;">`POST`</mark> `{{domain}}/api/v1/tickets`

Hàm tạo mới phiếu ghi và giao phiếu cho 1 chuyên viên cụ thể. Xem thêm về api [Phiếu ghi](/danh-muc/restful-api-cua-caresoft/phieu-ghi.md)

#### Headers

| Name                                   | Type   | Description                                                           |
| -------------------------------------- | ------ | --------------------------------------------------------------------- |
| \*\*<mark style="color:red;">\*</mark> | String | [Thông tin xác thực chung ](/thong-tin-chung.md#phuong-thuc-xac-thuc) |

#### Request Body

| Name                                     | Type   | Description                      |
| ---------------------------------------- | ------ | -------------------------------- |
| \*\*\*<mark style="color:red;">\*</mark> | String | Theo object json mô tả phía dưới |

Mẫu body json tạo phiếu ghi cho chiến dịch đang chạy&#x20;

{% tabs %}
{% tab title="Mẫu body JSON gửi đi" %}

```json
{
    "ticket": {
        "phone": "0900000001",
        "username": "Nguyễn Văn Nam",
        "assignee_id": 29370874,
        "ticket_subject": "Khảo sát khách hàng hủy đơn #11222",
        "ticket_comment": "Khách hủy đơn mua 5 iphone",
        "is_public": 0,
        "campaign_id": 387,
        "campaign_action_id": "14897"
    }
}
```

{% endtab %}

{% tab title="Mô tả biến" %}

<table><thead><tr><th width="210">Trường</th><th>Ý nghia</th></tr></thead><tbody><tr><td>assignee_id</td><td>ID của chuyên viên nhận phiếu (Xem trong <a data-mention href="/pages/KndrvIHCqqLmrBVmqUWh">/pages/KndrvIHCqqLmrBVmqUWh</a>)</td></tr><tr><td>campaign_id</td><td>ID chiến dịch ở bước 2</td></tr><tr><td>campaign_action_id</td><td>ID  hành động ở bước 3</td></tr><tr><td>username</td><td>Họ tên của khách hàng trên CRM</td></tr><tr><td>ticket_subject</td><td>Tên phiếu ghi có nội dung gợi nhớ đến đơn hàng khách hủy</td></tr><tr><td>ticket_comment</td><td>Nội dung ghi chú cho chuyên viên. Có thể gửi vào mô tả chi tiết đơn hàng (Hàng gì, giá trị, số lượng, nơi mua ...) để chuyên viên có thông tin gợi nhớ cho khách hàng.</td></tr><tr><td>phone</td><td>Số điện thoại của khách hàng.</td></tr></tbody></table>
{% endtab %}
{% endtabs %}

<figure><img src="/files/eKx1KxbpLWexDyQt4ZBr" alt=""><figcaption><p>Mô phỏng postman </p></figcaption></figure>

## 5. Kết quả&#x20;

Phiếu ghi được tạo với kịch bản của chiến dịch.

<figure><img src="/files/3QOEWCFzktovOEfrp2fm" alt=""><figcaption></figcaption></figure>

Dựa trên case này khách hàng có thể áp dụng vào nhiều trường hợp tương tự trong môi trường làm việc thực tế.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.caresoft.vn/danh-muc/case-study/tao-phieu-ghi-cho-mot-chien-dich-dang-chay.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
