4.2.1.1. Подписаться на события

Краткие сведения

Типы запросов

POST 

Описание

Выставление адреса webhook

Название

SetHook

URL

/v1/hook/

Описание

Метод устанавливает webhook для получения событий.

Запрос к серверу

Поле

Тип

Описание

Поле

Тип

Описание

type

String

Тип подписки:

  • bot - на события для чат бота для указанной линии поддержки (обязателен id)

  • line - все события по линии(ям) поддержки

url

String

URL WebHook. На этот адрес будут прилетать все события POST-запросами.

id

UUID?

ID объекта, на который осуществляется подписка:

  • ID линии поддержки

если type == line и не указан id, то подписка производится на все линии, к которым имеется доступ

back_auth

Struct?

Структура, задающая данные для обратной аутентификации

type

String

Тип авторизации:

login

String?

Логин (при type = basic)

password

String?

Пароль (при type = basic)

token

String?

Токен (при type = bearer)

Проверить активны ли подписки можно методом https://1c-connect.atlassian.net/wiki/spaces/PUBLIC/pages/2156429313

Пример

Выставление адреса webhook для бота

POST /v1/hook/ HTTP/1.1 Host: push.1c-connect.com accept: application/json authorization: Basic dGVzdDp0ZXN0 Content-Type: application/json Content-Length: 111 { "id": "b7ae5029-b9a7-4e55-8179-37b05a5865ae", "type": "bot", "url": "https://push.example.com/connect/hook/"}

Curl

curl -X POST "https://push.1c-connect.com/v1/hook/" \ -H "accept: application/json" \ -H "Content-Type: application/json" \ -u test:test \ -d "{ \"id\": \"b7ae5029-b9a7-4e55-8179-37b05a5865ae\", \"type\": \"bot\", \"url\": \"https://push.example.com/connect/hook/\"}"

 

Выставление адреса webhook для бота с обратной аутентификацией с типом basic

POST /v1/hook/ HTTP/1.1 Host: push.1c-connect.com accept: application/json authorization: Basic dGVzdDp0ZXN0 Content-Type: application/json Content-Length: 111 { "id": "b7ae5029-b9a7-4e55-8179-37b05a5865ae", "type": "bot", "url": "https://push.example.com/connect/hook/", "back_auth": { "type":"basic", "login":"Login", "password":"Password" } }

Curl

Ответ сервера

Нет тела

Ошибки

Код

Описание

Код

Описание

400

Запрос содержит ошибку

401

Пользователь не авторизован

403

Недостаточно прав