Отримати всі чати

Отримайте список усіх чатів або певної кількості чатів
Написано Микола
Оновлено 2 місяці тому

Ви можете отримати всі ваші чати або якусь кількість чатів за допомогою цього методу. 

➡️ Запит

URL https://api.helpcrunch.com/v1/chats?sort=chats.closedAt&order=asc
Метод GET
Headers Authorization: Bearer <your_api_key>

Параметри сортування

Щоб відсортувати чати в порядку спадання, використовуйте параметр order=desc у рядку запиту. Для сортування у порядку зростання використовуйте order=asc.

Параметр сортування Опис
chats.createdAt за датою створення чату
chats.lastCustomerMessageAt за датою останнього повідомлення від клієнта
chats.lastMessageAt за датою останнього повідомлення від оператора або клієнта
chats.closedAt за датою закриття чатів

✅ Відповідь на успішний запит

Якщо ваш запит пройшов успішно, ви отримаєте код статусу успішного виконання 200 OK разом із наведеним нижче тілом відповіді.

{
    "data": [
        {
            "id": 5217453,
            "closedBy": null,
            "lastCustomerMessageAt": 1593108626,
            "status": "on hold",
            "notes": null,
            "closedAt": null,
            "rating": null,
            "createdAt": 1593108596,
            "lastMessageAt": 1593151172,
            "snoozedUntil": null,
            "lastMessageText": "Hi Mateus. My name is Lisa.\nI have an offer for you. Can we hop on a quick call this week?",
            "lastMessageId": 7758491,
            "lastCommunicatedAgentId": 6691,
            "agents": [],
            "customer": {
                "id": 9740824,
                "name": "mateus",
                "email": "mateus@example.com",
                "userId": null
            },
            "assignee": {
                "id": 6691,
                "name": "Lisa Rodes",
                "email": "lisa.rodes@company.com",
                "role": "admin"
            },
            "department": null
        },
        {
            "id": 5215634,
            "closedBy": null,
            "lastCustomerMessageAt": 1593105452,
            "status": "on hold",
            "notes": null,
            "closedAt": null,
            "rating": null,
            "createdAt": 1593105452,
            "lastMessageAt": 1593117649,
            "snoozedUntil": null,
            "lastMessageText": "Correct. The number of items is not limited. The total amount is calculated for all the items added to the cart",
            "lastMessageId": 9576638,
            "lastCommunicatedAgentId": 6699,
            "agents": [],
            "customer": {
                "id": 8740805,
                "name": "Sonya",
                "email": "sonya@company.com",
                "userId": null
            },
            "assignee": {
                "id": 6698,
                "name": "Kurt Maslow",
                "email": "kurt.maslow@company.com",
                "role": "admin"
            },
            "department": null
        },
        {
            "id": 5215633,
            "closedBy": null,
            "lastCustomerMessageAt": 1593105192,
            "status": "on hold",
            "notes": null,
            "closedAt": null,
            "rating": null,
            "createdAt": 1593105192,
            "lastMessageAt": 1593154217,
            "snoozedUntil": null,
            "lastMessageText": "Hi Caroline. My name is Ana. How can I help?",
            "lastMessageId": 9576700,
            "lastCommunicatedAgentId": 6699,
            "agents": [],
            "customer": {
                "id": 7831713,
                "name": "Caroline",
                "email": "caroline45@somemail.com",
                "userId": null
            },
            "assignee": {
                "id": 6699,
                "name": "Kurt Maslow",
                "email": "kurt.maslow@company.com",
                "role": "admin"
            },
            "department": null
        }
    ],
    "meta": {
        "total": 23905
    }
}

Як отримати всі чати

За замовчуванням цей метод повертає лише перші 100 чатів. Щоб отримати інший набір чатів, слід використовувати параметри offset і limit у рядку запиту запиту GET.

Ліміт за замовчуванням становить 100 і він не може бути більшим за це. Зміщення за умовчанням - 0.

Щоб переглянути всі доступні чати, спершу скористайтеся розділом meta відповіді JSON, щоб отримати загальну кількість чатів.

Ви можете запитати .../chats/total щоб отримати лише загальну кількість чатів. Потім надсилайте наступні запити зі зростаючими зміщеннями та фіксованим лімітом, доки не отримаєте всі дані.

https://api.helpcrunch.com/chats?offset=100&limit=100
https://api.helpcrunch.com/chats?offset=200&limit=100
https://api.helpcrunch.com/chats?offset=300&limit=100
...

Загальний ліміт запитів становить 120 запитів за хвилину.

🛑 Відповіді з помилками

Ви можете отримати один із наведених нижче кодів статусу помилки та відповіді.

400 Bad Request

{
    "errors": [
        {
            "code": "validation_error",
            "message": "limit value is invalid"
        },
        {
            "code": "validation_error",
            "message": "sort value is invalid"
        },
        {
            "code": "validation_error",
            "message": "order value is invalid"
        }
    ]
}

401 Unauthorized

{
    "errors": [
        {
            "code": "invalid_token",
            "message": "Invalid token"
        }
    ]
}

429 Too Many Requests

{
    "errors": [
        {
            "code": "too_many_requests",
            "message": "You have exceeded your requests limit"
        }
    ]
}
Чи була наша стаття корисною?