Команды

Передача команды

Команды передаются в массиве items сообщения ANSWER_TO_USER. Пример команд в массиве items:

{
    "items": [
        {
            "command": {
                "type": "action",
                "action": {
                    "type": "text",
                    "deep_link": "Текст"
                }
            }
        },
        {
            "command": {
                "type": "close_app"
            }
        }
    ]
}

Описание полей:

Поле Описание

type

Обязательное

string

Тип команды. Возможные значения см. ниже

action

object

Передается только в командах типа action.

Содержит любое из доступных действий

permissions

array of strings

Передается только в командах типа request_permissions.

Содержит список разрешений, которые требуется запросить у пользователя. Доступные значения:

  • geo — запрос на получение геолокации;
  • read_contacts — запрос на получение доступа к списку контактов;
  • record_audio — запрос на запись аудио;
  • push — запрос на отправку push-уведомлений.

smart_app_data

object

Передается только в командах типа smart_app_data.

Валидный JSON-объект с произвольными данными для смартапа

payment_invoice

object

Передается только в командах типа payment_invoice.

Содержит поле invoice_id, в котором в виде строки передается идентификатор инвойса

Типы команд


Действия

action — команда, внутри которой можно указать любое из действий.


Пример:

{
  "command": {
    "type": "action",
    "action": {
      "type": "text",
      "text": "текст"
      }
  }
}

Персональные данные

request_permissions — запрос разрешений на получение и обработку данных пользователя.


Пример:

{
  "command": {
    "type": "request_permissions",
    "permissions": [
      "geo",
      "read_contacts",
      "record_audio",
      "push"
    ]
  }
}

Данные для Canvas App

smart_app_data — команда для передачи данных в Canvas App.


Пример:

{
  "command": {
    "type": "smart_app_data",
    "smart_app_data": {
      "param1": "value1",
      "param2": "value2"
    }
  }
}

Закрытие смартапа

close_app — закрытие смартапа.


Пример:

{
  "command": {
    "type": "close_app"
  }
}

Получение инвойса

payment_invoice — команда для получения инвойса платежа.


Пример:

{
  "command": {
    "type": "payment_invoice",
    "payment_invoice": {
      "invoice_id": "id платежа",
    }
  }
}

Отсутствие ответа

do_nothing — команда, которая используется, если на запрос отвечать не надо. При этом с экрана будут удалены все подсказки, добавленные в предыдущем ответе.


Пример:

{
  "command": {
    "type": "do_nothing"
  }
}

Заметили ошибку?

Выделите текст и нажмите Ctrl + Enter, чтобы сообщить нам о ней