Отримати повідомлення чату

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

Ви можете отримати всі повідомлення з будь-якого чату за його id. 

➡️ Запит

URL https://api.helpcrunch.com/v1/chats/<chat_id>/messages
Метод GET
Headers Authorization: Bearer <your_api_key>

chat_id – це ідентифікатор чату, наданий HelpCrunch. Він обов’язковий для цього методу і виглядає як комбінація чисел (наприклад, 1568834).

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

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

{
    "messages": [
        {
            "id": 9577571,
            "agent": null,
            "type": "message",
            "text": "Can you can a can as a canner can can a can?",
            "read": true,
            "createdAt": "1594139170.913",
            "updatedAt": "1594291329.303",
            "edited": false,
            "broadcastType": null,
            "chat": 5215261,
            "from": "customer"
        },
        {
            "id": 9577570,
            "agent": null,
            "type": "message",
            "text": "How much wood would a wodchuck chuck if a woodchuck could chuck wood?",
            "read": true,
            "createdAt": "1593888597.787",
            "updatedAt": "1593888609.369",
            "edited": false,
            "broadcastType": null,
            "chat": 5215261,
            "from": "customer"
        },
        {
            "id": 9577569,
            "agent": null,
            "type": "You know like this one",
            "text": "swerwer",
            "read": true,
            "createdAt": "1593888351.465",
            "updatedAt": "1593888360.057",
            "edited": false,
            "broadcastType": null,
            "chat": 5215261,
            "from": "customer"
        },
        {
            "id": 9577568,
            "agent": null,
            "type": "Do you know some tongue twisters?",
            "text": "sdfsdfsdf",
            "read": true,
            "createdAt": "1593887608.482",
            "updatedAt": "1593887614.872",
            "edited": false,
            "broadcastType": null,
            "chat": 5215261,
            "from": "customer"
        },
        {
            "id": 9577567,
            "agent": {
                "id": 4188,
                "name": "Frodo"
            },
            "type": "message",
            "text": "Hello, how can I help you?",
            "read": true,
            "createdAt": "1593887537.924",
            "updatedAt": "1593887595.272",
            "edited": false,
            "broadcastType": null,
            "chat": 5215261,
            "from": "agent"
        },
    ],
    "total": 5
}

Усі повідомлення сортуються за датою createdAt у порядку спадання, тобто останнє повідомлення з чату буде першим у відповіді.

Як отримати всі повідомлення

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

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

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

Потім надсилайте наступні запити зі зростаючими зміщеннями та фіксованим лімітом, доки не отримаєте всі дані.

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

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

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

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

400 Bad Request

{
    "errors": [
        {
            "code": "invalid_chat_value",
            "message": "Invalid chat ID"
        }
    ]
}

401 Unauthorized

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

404 Not Found

{
    "errors": [
        {
            "code": "chat_not_found",
            "message": "Chat is missing"
        }
    ]
}

404 Not Found

{
    "errors": [
        {
            "code": "messages_not_found",
            "message": "Messages are missing"
        }
    ]
}

429 Too Many Requests

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