#chatbase
#chatbase
Вопрос:
Я использую https://chatbase.com/api/messages Chatbase API для отправки нескольких сообщений в Chatbase. Документация показывает, что в ответе будут указаны ошибки и успехи для отдельных сообщений, отправленных в запросе.
Как я должен определить, какое сообщение не удалось из 3 сообщений, которые я предоставил в запросе, если в ответе указана ошибка для одного сообщения?
Тело запроса JSON для отправки нескольких сообщений
{
"messages": [
{
"api_key": "<API KEY>",
"type": "agent",
"user_id": "User_1",
"time_stamp": 1542895834,
"platform": "XXX",
"message": "Test 1",
"not_handled": false,
"version": "1.0",
"session_id": "session-User_1"
},
{
"api_key": "<API KEY>",
"type": "agent",
"user_id": "User_1",
"time_stamp": 1542895834,
"platform": "XXX",
"message": "Test 2",
"not_handled": false,
"version": "1.0",
"session_id": "session-User_1"
},
{
"api_key": "<API KEY>",
"type": "agent",
"user_id": "User_1",
"time_stamp": 1542895834,
"platform": "XXX",
"message": "Test 3",
"not_handled": false,
"version": "1.0",
"session_id": "session-User_1"
}
]
}
Тело ответа JSON
{
"all_succeeded": false,
"responses": [
{
"error": "Error fetching parameter 'type': Invalid conversation type [dfg]",
"status": "error"
},
{
"message_id": 139429278,
"status": "success"
},
{
"error": "Error fetching parameter 'time_stamp': Received a time (1921-02-09 09:49:26) which was too small. Please send a time within the past day for metrics to appear in the dashboards, or omit the time_stamp field for the time to automatically be set to now.",
"status": "error"
}
],
"status": 200
}
Ответ №1:
Порядок сообщений об ошибках будет соответствовать порядку отправленных вами сообщений. В данном случае это были первое и третье сообщения. Я также заметил, что вы не используете миллисекунды unix в своих временных метках. Сообщения должны находиться на расстоянии не менее одной миллисекунды друг от друга, чтобы правильно отсортировать их в отчетах Chatbase.