GET /v1/messages
Арнаның хабарламалар тарихын беттеу және контакт бойынша сүзу арқылы алу.
URL
GET https://api.wazzabee.com/api-gateway/v1/messages?channelId=...&chatId=...&limit=50&offset=0
Тақырыптар (headers)
Authorization: Bearer СІЗДІҢ_API_КІЛТІҢІЗ
Сұраныс параметрлері (query string)
| Параметр | Түрі | Міндетті | Әдепкі мәні | Сипаттамасы |
|---|---|---|---|---|
channelId | string (UUID) | ✅ Иә | - | Арна ID-і. Оны GET /v1/channels арқылы алуға болады |
chatId | string | Жоқ | - | Контакт бойынша сүзгі: телефон нөмірі немесе chat_id. Көрсетілмесе, арнаның барлық хабарламалары қайтарылады |
limit | integer | Жоқ | 50 | Бір беттегі хабарламалар саны. Ең көбі: 200 |
offset | integer | Жоқ | 0 | Беттеуге арналған ығысу (қанша хабарламаны өткізіп жіберу керек) |
campaignId | string | Жоқ | - | Тек осы белгісі бар кампания хабарламалары (жіберу кезіндегі campaignId) |
Сұраныс мысалдары
Арнаның барлық хабарламалары (соңғы 50)
curl -X GET "https://api.wazzabee.com/api-gateway/v1/messages?channelId=550e8400-e29b-41d4-a716-446655440000" \
-H "Authorization: Bearer СІЗДІҢ_API_КІЛТІҢІЗ"
Нақты контактінің хабарламалары
curl -X GET "https://api.wazzabee.com/api-gateway/v1/messages?channelId=550e8400-e29b-41d4-a716-446655440000&chatId=77001234567" \
-H "Authorization: Bearer СІЗДІҢ_API_КІЛТІҢІЗ"
Беттеу: 20 хабарламадан тұратын екінші бет
curl -X GET "https://api.wazzabee.com/api-gateway/v1/messages?channelId=550e8400-e29b-41d4-a716-446655440000&limit=20&offset=20" \
-H "Authorization: Bearer СІЗДІҢ_API_КІЛТІҢІЗ"
Сәтті жауап (200 OK)
{
"success": true,
"messages": [
{
"id": "msg-uuid-1",
"conversationId": "conv-uuid-1",
"contactId": "contact-uuid-1",
"direction": "incoming",
"type": "text",
"text": "Сәлеметсіз бе, тапсырыс қашан дайын болады?",
"mediaUrl": null,
"createdAt": "2026-03-12T10:30:00.000Z"
},
{
"id": "msg-uuid-2",
"conversationId": "conv-uuid-1",
"contactId": "contact-uuid-1",
"direction": "outgoing",
"type": "text",
"text": "Қайырлы күн! Тапсырыс ертең дайын болады.",
"mediaUrl": null,
"createdAt": "2026-03-12T10:31:00.000Z"
}
],
"total": 156,
"limit": 50,
"offset": 0
}
Жауап өрістерінің сипаттамасы
| Өріс | Түрі | Сипаттамасы |
|---|---|---|
messages | array | Жаңадан ескіге қарай сұрыпталған хабарламалар массиві |
messages[].id | string (UUID) | Хабарламаның бірегей ID-і |
messages[].conversationId | string (UUID) | Хабарлама тиесілі диалогтың ID-і |
messages[].contactId | string (UUID) | Контакт ID-і |
messages[].direction | string | incoming: кіріс, outgoing: шығыс |
messages[].type | string | Хабарлама түрі: text, image, video, document, audio |
messages[].text | string | null | Хабарлама мәтіні (мәтінсіз медиа үшін null) |
messages[].mediaUrl | string | null | Медиафайлдың URL-і (мәтіндік хабарламалар үшін null) |
messages[].createdAt | string (ISO 8601) | Хабарламаның жасалған күні мен уақыты |
messages[].queueId | string | null | Тек шығыс хабарламаларда: жіберуге берілген жауаптағы queueId |
messages[].campaignId | string | null | Тек шығыс хабарламаларда: кампания белгісі |
messages[].status | string | Тек шығыс хабарламаларда: pending, sent, delivered, read, failed |
messages[].sentAt, deliveredAt, readAt | string | null | Тек шығыс хабарламаларда: жіберілген, жеткізілген және оқылған уақыты |
messages[].error | object | null | Тек жеткізілмеген хабарламаларда: {"code": 131026, "description": "..."} |
total | integer | Хабарламалардың жалпы саны (беттеу үшін) |
limit | integer | Бір беттегі ағымдағы шектеу |
offset | integer | Ағымдағы ығысу |
Беттеу
Хабарламалар жаңадан ескіге қарай сұрыпталады (createdAt DESC бойынша). Беттер бойынша өту үшін offset және limit параметрлерін пайдаланыңыз.
💡 Беттеу мысалы:
- 1-бет:
?limit=20&offset=0 - 2-бет:
?limit=20&offset=20 - 3-бет:
?limit=20&offset=40 - Тағы беттер бар-жоғын білу үшін
totalмәнін тексеріңіз
chatId бойынша сүзу
chatId көрсетілсе, API контактіні телефон нөмірі немесе external_id бойынша іздейді де, тек соның хабарламаларын қайтарады. Мұндай chatId бар контакт табылмаса, бос массив қайтарылады (бұл қате емес).
Ықтимал қателер
| Код | Қате | Себебі |
|---|---|---|
400 | channelId параметрі міндетті | Query string ішінде channelId көрсетілмеген |
403 | Арна бұл интеграцияға байланыстырылмаған | Арна осы API кілті үшін рұқсат етілгендердің қатарында жоқ |
404 | Арна табылмады немесе қолжетімділік жоқ | Арна жоқ немесе басқа пайдаланушыға тиесілі |
