Этот метод позволяет получать диалоги сайта. Мы используем этот метод на странице "Диалоги".
GET https://api.carrotquest.io/apps/{id}/conversations
Параметры аутентификации.
Параметры пагинации. Пагинация по времени последнего обновления диалога
(поле last_update).
Параметр id_as_string.
Параметры, включающие опциональные поля объекта Conversation.
Поля part_last, important_part_last, reply_last, user включены по умолчанию.
| Параметр | Тип | Описание |
|---|---|---|
closed |
Optional[boolean] | Если фильтр указан, то вернет только открытые (false) или только закрытые (true) диалоги. Если нет - вернет все. |
answered |
Optional[boolean] | Если фильтр указан, то вернет только диалоги, в которых последним написал админ (true) или пользователь (false). Если нет - вернет все. |
delayed |
Optional[boolean] | Если фильтр указан, то вернет только отложенные (true) или только неотложенные (false) диалоги. Если нет - вернет все. |
assigned |
Optional[ID / 0] |
Укажите ID администратора, чтобы получить диалоги, назначенные только ему. Если фильтр не указан, возвращаются диалоги любого администратора. Чтобы получить неразобраные диалоги, необходимо отправить 0 и include_not_assigned отправить true. |
tags |
Optional[Array[str]] | Фильтр по тегам дилогов. Если указан, то будут возвращены диалоги, которым присвоены все эти теги. Если нет - вернет все. |
channel |
Optional[ID / 0] |
Фильтр по каналу. Укажите ID канала, чтобы получить диалоги из определенного канала. Если не указан - вернет диалоги из всех каналов. Если указан 0 - вернет диалоги без канала. |
assistant_type |
Optional[строка] | Если фильтр указан, вернуть только диалоги, которыми в данный момент управляет ассистент. Типы ассистентов: dialogflow, yandex_ai, lead_bot, routing_bot, facebook_bot, telegram_bot, widget_bot. |
include_no_tags |
Optional[boolean] | По умолчанию: false. Укажите true, получить диалоги без тегов. Работает только если не используется параметр tags. |
include_not_assigned |
Optional[boolean] | По умолчанию: false. Укажите true, чтобы к ответу добавились неразобранные диалоги (никому не назначенные диалоги) |
Сортировка диалогов перед пагинацией осуществляется по убыванию по дате последнего обновления (реплики) в диалоге.
Если не указан assistant_type, то диалоги, в которых не было реплик пользователя не попадут в выборку. Выборка будет содержать диалоги, которыми не управляет ассистент.
Если assistant_type указан, то фильтры delayed, answered, assigned, tags, channel игнорируются.
Поле data будет содержать массив объектов Conversation.
Поле meta будет содержать новые параметры пагинации.
Пример:
{
"meta": {
"status": 200,
"next_after": 1454408108.30303
},
"data": [
{
"id": 9334799,
"created": 1454392168,
"user": {
"id": 23939391,
"user_id": "28231",
"presence": "idle",
"props": {
"$name": "Maks",
"$email": "maks@my-site.com",
...
}
},
"channel": {
"avatar": "",
"droppable": true,
"id": 5,
"name": "Тестовый канал",
"not_assigned_count": 0,
"not_read_count": 0,
"read_permission": null,
"type": "manual"
},
"read": true,
"replied": true,
"clicked": false,
"unsubscribed": false,
"closed": false,
"message": null,
"type": "popup_chat",
"reply_type": "text",
"part_last": {
"id": 10481096,
"created": 1454412399,
"conversation": 9334799,
"body": "Hello! How are u?",
"read": true,
"type": "reply_admin",
"sent_via": "app_desktop",
"from": {
"id": 24463,
"name": "Dima",
"avatar": "https://files.carrotquest.io/avatars/1446021235578-be57yp6v.jpg",
"type": "admin"
}
},
"parts_count": 22,
"assignee": {
"id": 24463,
"name": "Dima",
"avatar": "https://files.carrotquest.io/avatars/1446021235578-be57yp6v.jpg",
"type": "admin"
},
"unread_parts_count": 0,
"last_admin": {
"id": 24463,
"name": "Dima",
"avatar": "https://files.carrotquest.io/avatars/1446021235578-be57yp6v.jpg",
"type": "admin"
},
"last_update": 1454412399,
"tags": []
},
...
]
}
curl -X GET -H "Authorization: Token XXX" "https://api.carrotquest.io/apps/$self_app/conversations"