You can get all the messages from any chat by its id. To find a specific chat by the value of its attributes, use Search for chats method.
➡️ Request
URL | https://api.helpcrunch.com/v1/chats/<chat_id>/messages |
Method | GET |
Headers | Authorization: Bearer <your_api_key> |
<chat_id> is the identifier for the chat as given by HelpCrunch. It is required for this method and looks like a combination of numbers, for example 1568834.
Read more about authorization header here.
✅ Successful Response
If your request has succeeded, you'll get a 200 OK success status code together with the following response body.
{
"data": [
{
"id": 542335,
"agent": {
"id": 542335,
"name": "string",
"email": "string",
"role": "string"
},
"type": "tech",
"text": "string",
"read": true,
"createdAt": "1603885746",
"updatedAt": "1603885746",
"edited": true,
"broadcastType": "trigger",
"chat": 542335,
"from": "agent"
}
],
"total": 543
}
All messages are sorted by createdAt date in a descending order, meaning that the last message from the chat will be the first one in the response.
You can get details on every Message Object field in the Message model article.
How to get all messages
By default, this method returns the last 100 messages from the chat. To get a different set of messages, you should use the offset and limit parameters in the query string of the GET request.
To page through all the available messages, first, use the total attribute of the JSON response to get the overall number of messages.
Then send subsequent requests with increasing offsets and a fixed limit until you get all the data.
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
...
The overall requests limit is 120 per minute
🛑 Error Responses
You may get one of the following error status codes and responses. More info on the errors is available here.
400 Bad Request
{
"errors": [
{
"code": "invalid_request",
"message": "Invalid request"
},
{
"code": "customer",
"message": "This value should be of type numeric."
},
{
"code": "filter[0].field",
"message": "This value should not be blank."
}
]
}
401 Unauthorized
{
"errors": [
{
"code": "invalid_request",
"message": "Invalid request"
},
{
"code": "unauthorized",
"message": "Unauthorized"
}
]
}
429 Too Many Requests
{
"errors": [
{
"code": "invalid_request",
"message": "Invalid request"
},
{
"code": "too_many_requests",
"message": "Too many requests"
}
]
}
If you have any questions regarding the REST API, feel free to chat us any time.
👩💻 Happy Coding! 👨💻