Формат запроса
При каждом обращении к навыку Яндекс Диалоги отправляют POST-запрос на Backend, указанный при публикации.
{
"meta": {
"locale": "ru-RU",
"timezone": "Europe/Moscow",
"client_id": "ru.yandex.searchplugin/7.16 (none none; android 4.4.2)",
"interfaces": {
"screen": {},
"account_linking": {},
"audio_player": {}
}
},
"request": {
"type": "...",
},
"session": {
"message_id": 0,
"session_id": "2eac4854-fce721f3-b845abba-20d60",
"skill_id": "3ad36498-f5rd-4079-a14b-788652932056",
"user_id": "47C73714B580ED2469056E71081159529FFC676A4E5B059D629A819E857DC2F8",
"user": {
"user_id": "6C91DA5198D1758C6A9F63A7C5CDDF09359F683B13A18A151FBF4C8B092BB0C2",
"access_token": "AgAAAAAB4vpbAAApoR1oaCd5yR6eiXSHqOGT8dT"
},
"application": {
"application_id": "47C73714B580ED2469056E71081159529FFC676A4E5B059D629A819E857DC2F8"
},
"new": true
},
"state": {
"session": {
"value": 10
},
"user": {
"value": 42
},
"application": {
"value": 37
}
},
"version": "1.0"
}
Содержимое тела запроса
Свойство | Описание |
---|---|
meta | object Информация об устройстве, с помощью которого пользователь разговаривает с Алисой. |
request | object Данные, полученные от пользователя. Содержимое зависит от типа ввода, указанного в поле |
session | object Данные о сессии. Сессия — это период относительно непрерывного взаимодействия пользователя с навыком. Сессия завершается, когда:
|
state | object Данные о сохраненном состоянии. |
version | string Версия протокола. Текущая версия — 1.0. |
Свойство | Описание |
---|---|
meta | object Информация об устройстве, с помощью которого пользователь разговаривает с Алисой. |
request | object Данные, полученные от пользователя. Содержимое зависит от типа ввода, указанного в поле |
session | object Данные о сессии. Сессия — это период относительно непрерывного взаимодействия пользователя с навыком. Сессия завершается, когда:
|
state | object Данные о сохраненном состоянии. |
version | string Версия протокола. Текущая версия — 1.0. |
meta
Информация об устройстве, с помощью которого пользователь разговаривает с Алисой.
Свойство | Описание |
---|---|
locale | string Язык в POSIX-формате, максимум 64 символа. |
timezone | string Название часового пояса, включая алиасы, максимум 64 символа. |
client_id | string Не рекомендуется к использованию. Интерфейсы, доступные на клиентском устройстве, перечислены в свойстве Идентификатор устройства и приложения, в котором идет разговор, максимум 1024 символа. |
interfaces | object Интерфейсы, доступные на устройстве пользователя. |
Свойство | Описание |
---|---|
locale | string Язык в POSIX-формате, максимум 64 символа. |
timezone | string Название часового пояса, включая алиасы, максимум 64 символа. |
client_id | string Не рекомендуется к использованию. Интерфейсы, доступные на клиентском устройстве, перечислены в свойстве Идентификатор устройства и приложения, в котором идет разговор, максимум 1024 символа. |
interfaces | object Интерфейсы, доступные на устройстве пользователя. |
meta.interfaces
Интерфейсы, доступные на устройстве пользователя.
Свойство | Описание |
---|---|
screen | object Пользователь может видеть ответ навыка на экране и открывать ссылки в браузере. |
account_linking | object У пользователя есть возможность запросить связку аккаунтов. |
audio_player | object На устройстве пользователя есть аудиоплеер. |
Свойство | Описание |
---|---|
screen | object Пользователь может видеть ответ навыка на экране и открывать ссылки в браузере. |
account_linking | object У пользователя есть возможность запросить связку аккаунтов. |
audio_player | object На устройстве пользователя есть аудиоплеер. |
request
Данные, полученные от пользователя.
Свойство | Описание |
---|---|
type | string Обязательное свойство. Тип ввода. Возможные значения:
|
Свойство | Описание |
---|---|
type | string Обязательное свойство. Тип ввода. Возможные значения:
|
session
Данные о сессии. Сессия — это период относительно непрерывного взаимодействия пользователя с навыком.
- пользователь запрашивает выход из навыка;
- навык явно завершает работу (
"end_session": true
); - от пользователя долго не поступает команд (тайм-аут зависит от поверхности, минимум несколько минут).
Свойство | Описание |
---|---|
session_id | string Уникальный идентификатор сессии, максимум 64 символа. |
message_id | number Идентификатор сообщения в рамках сессии, максимум 8 символов. Инкрементируется с каждым следующим запросом. |
skill_id | string Идентификатор вызываемого навыка, присвоенный при создании. Чтобы узнать идентификатор своего навыка, откройте его в консоли разработчика — идентификатор можно скопировать на вкладке Общие сведения, внизу страницы. |
user_id | string Свойство не поддерживается — вместо него следует использовать новое, полностью аналогичное свойство Идентификатор экземпляра приложения, в котором пользователь общается с Алисой, максимум 64 символа. Даже если пользователь вошел в один и тот же аккаунт в приложение Яндекс для Android и iOS, Яндекс Диалоги присвоят отдельный |
user | object Атрибуты пользователя Яндекса, который взаимодействует с навыком. Если пользователь не авторизован в приложении, свойства |
application | object Данные о приложении, с помощью которого пользователь взаимодействует с навыком. |
new | boolean Признак новой сессии. Возможные значения:
|
Свойство | Описание |
---|---|
session_id | string Уникальный идентификатор сессии, максимум 64 символа. |
message_id | number Идентификатор сообщения в рамках сессии, максимум 8 символов. Инкрементируется с каждым следующим запросом. |
skill_id | string Идентификатор вызываемого навыка, присвоенный при создании. Чтобы узнать идентификатор своего навыка, откройте его в консоли разработчика — идентификатор можно скопировать на вкладке Общие сведения, внизу страницы. |
user_id | string Свойство не поддерживается — вместо него следует использовать новое, полностью аналогичное свойство Идентификатор экземпляра приложения, в котором пользователь общается с Алисой, максимум 64 символа. Даже если пользователь вошел в один и тот же аккаунт в приложение Яндекс для Android и iOS, Яндекс Диалоги присвоят отдельный |
user | object Атрибуты пользователя Яндекса, который взаимодействует с навыком. Если пользователь не авторизован в приложении, свойства |
application | object Данные о приложении, с помощью которого пользователь взаимодействует с навыком. |
new | boolean Признак новой сессии. Возможные значения:
|
session.user
Атрибуты пользователя Яндекса, который взаимодействует с навыком. Если пользователь не авторизован в приложении, свойства user
в запросе не будет.
Свойство | Описание |
---|---|
user_id | string Идентификатор пользователя Яндекса, единый для всех приложений и устройств. Этот идентификатор уникален для пары «пользователь — навык»: в разных навыках значение свойства |
access_token | string Токен для OAuth-авторизации, который также передается в заголовке Это JSON-свойство можно использовать, например, при реализации навыка в Yandex Cloud Functions (Диалоги вызывают функции с параметром integration=raw,который не позволяет получать заголовки клиентского запроса). |
Свойство | Описание |
---|---|
user_id | string Идентификатор пользователя Яндекса, единый для всех приложений и устройств. Этот идентификатор уникален для пары «пользователь — навык»: в разных навыках значение свойства |
access_token | string Токен для OAuth-авторизации, который также передается в заголовке Это JSON-свойство можно использовать, например, при реализации навыка в Yandex Cloud Functions (Диалоги вызывают функции с параметром integration=raw,который не позволяет получать заголовки клиентского запроса). |
session.application
Данные о приложении, с помощью которого пользователь взаимодействует с навыком.
Свойство | Описание |
---|---|
application_id | string Идентификатор экземпляра приложения, в котором пользователь общается с Алисой, максимум 64 символа. Даже если пользователь вошел в один и тот же аккаунт в приложение Яндекс для Android и iOS, Яндекс Диалоги присвоят отдельный Этот идентификатор уникален для пары «приложение — навык»: в разных навыках значение свойства |
Свойство | Описание |
---|---|
application_id | string Идентификатор экземпляра приложения, в котором пользователь общается с Алисой, максимум 64 символа. Даже если пользователь вошел в один и тот же аккаунт в приложение Яндекс для Android и iOS, Яндекс Диалоги присвоят отдельный Этот идентификатор уникален для пары «приложение — навык»: в разных навыках значение свойства |
state
Данные о сохраненном состоянии.
Свойство | Описание |
---|---|
session | object Состояние навыка в контексте сессии. |
user | object Состояние навыка в контексте авторизованного пользователя. |
application | object Состояние навыка в контексте экземпляра приложения пользователя. |
Свойство | Описание |
---|---|
session | object Состояние навыка в контексте сессии. |
user | object Состояние навыка в контексте авторизованного пользователя. |
application | object Состояние навыка в контексте экземпляра приложения пользователя. |