ym88659208ym87991671
salutebot-chatapi | Документация для разработчиков

SaluteBot Chat API (1.0)

Скачать OpenAPI-спецификацию:Скачать

Rest API для интеграции чат-ботов на инструментах Code и Graph в сторонние приложения.

Аутентификация

basicAuth

Security Scheme Type HTTP
HTTP Authorization Scheme basic

Chat API

Rest API для интеграции чат-ботов на инструментах Code и Graph в сторонние приложения.

Упрощенная отправка сообщения боту

get/chatapi/bot/{token}

Упрощенный метод для отправки запроса клиента или события в чат-приложении.

Авторизация
PATH-ПАРАМЕТРЫ
token
required
string

Токен канала Chat API.

QUERY-ПАРАМЕТРЫ
clientId
required
string

Идентификатор клиента.

query
string

Текст запроса клиента.

event
string

Название события.

auth
string

Токен дополнительной аутентификации.

Ответы

Пример ответа

Content type
application/json
Example
{
  • "token": "string",
  • "clientId": "string",
  • "questionId": "ffa0420e-f70b-4e5b-99a0-434bff860467",
  • "data": null,
  • "timestamp": "2020-04-01T12:30:00.000"
}

Отправка сообщения боту

post/chatapi/bot/{token}

Отправка запроса клиента или события в чат-приложении.

Авторизация
PATH-ПАРАМЕТРЫ
token
required
string

Токен канала Chat API.

Схема запроса: application/json
One of
query
required
string

Текст запроса клиента.

clientId
required
string

Идентификатор клиента.

object (ClientInfo)

Информация о клиенте для передачи в операторский чат.

questionId
string <uuid>

Идентификатор запроса.

data
ObjectNode

Произвольный объект для передачи дополнительных данных в сценарий. Данные доступны в сценарии в поле $request.data.

rawRequest
ObjectNode

Произвольный объект для передачи исходного запроса к чат-приложению.

timestamp
string^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}$

Время отправки запроса по часовому поясу UTC.

cid
string

Идентификатор соединения.

auth
string

Токен дополнительной аутентификации.

Ответы

Пример запроса

Content type
application/json
Example
{
  • "query": "string",
  • "clientId": "string",
  • "clientInfo": {},
  • "questionId": "ffa0420e-f70b-4e5b-99a0-434bff860467",
  • "data": null,
  • "rawRequest": null,
  • "timestamp": "2020-04-01T12:30:00.000",
  • "cid": "string",
  • "auth": "string"
}

Пример ответа

Content type
application/json
Example
{
  • "token": "string",
  • "clientId": "string",
  • "questionId": "ffa0420e-f70b-4e5b-99a0-434bff860467",
  • "data": null,
  • "timestamp": "2020-04-01T12:30:00.000"
}

Асихронная отправка сообщения боту

post/chatapi/bot/{token}/async

Отправка запроса клиента или события в чат-приложении. В отличие от POST /chatapi/bot/{token} в ответ на запрос придет только идентификатор запроса, а сообщение бота будет отправлено на вебхук, указанный в настройках канала Chat API.

Авторизация
PATH-ПАРАМЕТРЫ
token
required
string

Токен канала Chat API.

Схема запроса: application/json
One of
query
required
string

Текст запроса клиента.

clientId
required
string

Идентификатор клиента.

object (ClientInfo)

Информация о клиенте для передачи в операторский чат.

questionId
string <uuid>

Идентификатор запроса.

data
ObjectNode

Произвольный объект для передачи дополнительных данных в сценарий. Данные доступны в сценарии в поле $request.data.

rawRequest
ObjectNode

Произвольный объект для передачи исходного запроса к чат-приложению.

timestamp
string^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}$

Время отправки запроса по часовому поясу UTC.

cid
string

Идентификатор соединения.

auth
string

Токен дополнительной аутентификации.

Ответы

Пример запроса

Content type
application/json
Example
{
  • "query": "string",
  • "clientId": "string",
  • "clientInfo": {},
  • "questionId": "ffa0420e-f70b-4e5b-99a0-434bff860467",
  • "data": null,
  • "rawRequest": null,
  • "timestamp": "2020-04-01T12:30:00.000",
  • "cid": "string",
  • "auth": "string"
}

Пример ответа

Content type
application/json
{
  • "questionId": "ffa0420e-f70b-4e5b-99a0-434bff860467"
}

Получение асинхронных событий

get/chatapi/bot/{token}/events

Получение асинхронных событий от сервера.

Авторизация
PATH-ПАРАМЕТРЫ
token
required
string

Токен канала Chat API.

QUERY-ПАРАМЕТРЫ
clientId
required
string

Идентификатор клиента.

all
boolean
Default: false

Нужно ли выводить все события или только ответы от оператора.

cid
string

Идентификатор соединения.

ts
string^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}$
Example: ts=2020-04-01T12:30:00.000

Время, начиная с которого нужно фильтровать события. Формат: Unix-время или строка.

Ответы

Пример ответа

Content type
application/json
{
  • "hasMore": false,
  • "events": [
    ]
}

Получение истории чата

get/chatapi/bot/{token}/client/{clientId}/history

Получение истории переписки бота с клиентом.

Авторизация
PATH-ПАРАМЕТРЫ
token
required
string

Токен канала Chat API.

clientId
required
string

Идентификатор клиента.

QUERY-ПАРАМЕТРЫ
dateFrom
integer <int64>

Unix-время в миллисекундах, начиная с которого нужно загружать историю.

dateTo
integer <int64>

Unix-время в миллисекундах, вплоть до которого нужно загружать историю.

pageSize
integer <int32>
Default: 10

Число сообщений на странице.

pageNum
integer <int32>
Default: 0

Номер страницы.

auth
string

Токен дополнительной аутентификации.

Ответы

Пример ответа

Content type
application/json
{
  • "pageSize": 0,
  • "pageNumber": 0,
  • "total": 0,
  • "messages": [
    ]
}

Загрузка состояния чата

get/chatapi/bot/{token}/client/{clientId}/state

Загрузка ранее сохраненного состояния чат-приложения.

Авторизация
PATH-ПАРАМЕТРЫ
token
required
string

Токен канала Chat API.

clientId
required
string

Идентификатор клиента.

Ответы

Пример ответа

Content type
application/json
"string"

Сохранение состояния чата

post/chatapi/bot/{token}/client/{clientId}/state

Сохранение состояния чат-приложения.

Авторизация
PATH-ПАРАМЕТРЫ
token
required
string

Токен канала Chat API.

clientId
required
string

Идентификатор клиента.

Схема запроса: application/json
string

Объект, описывающий состояние чат-приложения.

Ответы

Пример запроса

Content type
application/json
"string"
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.