Войти

Вебхуки

Методы группы «MAX: вебхуки». Справа — пример запроса и ответа для каждого.

Список вебхуков

GET/v1/max/webhooks/
0 единицс тарифа «API.Max Рост»

Все вебхуки организации ключа: адрес, каналы, включён ли, сколько доставок ждут, последняя успешная доставка и последняя ошибка. Секретов подписи в ответе нет. С тарифа «API.Max Рост», 0 единиц.

Поля ответа

ПолеТипОписание
resultsсписокВебхуки организации ключа
results[].idчислоНомер вебхука — в адресах /v1/max/webhooks/{id}/ и в событиях
results[].urlстрокаАдрес, на который приходят события (https://)
results[].is_activeда / нетВключён ли вебхук
results[].disabled_reasonстрокаПочему выключен: failing — сутки без успешной доставки, client — выключен вами, staff — сотрудником datool.ru; пусто — включён
results[].channelsсписокНомера подписанных каналов MAX
results[].pendingчислоДоставок ждут отправки
results[].created_atдата и времяКогда вебхук создан (ISO 8601, по Москве)
results[].last_success_atдата и время или nullПоследняя успешная доставка
results[].failing_sinceдата и время или nullС какого момента нет успешных доставок; null — всё хорошо
results[].last_errorстрокаПоследняя ошибка доставки коротко

Ошибки

КодcodeКогда
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredВебхуки открыты с тарифа «API.Max Рост».
429rate_limited / throttledСлишком часто — больше запросов в секунду, чем по тарифу; сколько ждать — в заголовке Retry-After.

Создать вебхук

POST/v1/max/webhooks/
0 единицс тарифа «API.Max Рост», ключ «чтение и запись»

Новый вебхук: события post.created о новых постах этих каналов будут приходить POST-запросом на адрес. Секрет подписи — в ответе, показывается один раз.

Тело запроса

JSON с заголовком Content-Type: application/json.

ПолеТипОписание
urlстрокаАдрес https://, на который приходят события
channelsсписокНомера открытых каналов MAX в datool.ru (поле id в каталоге)

Поля ответа

ПолеТипОписание
idчислоНомер вебхука — в адресах /v1/max/webhooks/{id}/ и в событиях
urlстрокаАдрес, на который приходят события (https://)
is_activeда / нетВключён ли вебхук
disabled_reasonстрокаПочему выключен: failing — сутки без успешной доставки, client — выключен вами, staff — сотрудником datool.ru; пусто — включён
channelsсписокНомера подписанных каналов MAX
pendingчислоДоставок ждут отправки
created_atдата и времяКогда вебхук создан (ISO 8601, по Москве)
last_success_atдата и время или nullПоследняя успешная доставка
failing_sinceдата и время или nullС какого момента нет успешных доставок; null — всё хорошо
last_errorстрокаПоследняя ошибка доставки коротко
secretстрокаСекрет подписи X-Datool-Signature. Показывается один раз — сохраните его

Ошибки

КодcodeКогда
400ошибки полейНеверный параметр или поле тела: ошибка приходит у имени поля, например {"channels": ["Номера каналов через запятую."]}.
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredВебхуки открыты с тарифа «API.Max Рост».
403read_only_keyКлюч без отметки «чтение и запись».
403manager_requiredКлюч участника: менять вебхуки может владелец или администратор.
403limit_reachedВебхуков уже столько, сколько разрешает тариф.
429rate_limited / throttledСлишком часто — больше запросов в секунду, чем по тарифу; сколько ждать — в заголовке Retry-After.
503timeoutЗапрос к базе не уложился в 5 секунд — повторите позже или сузьте выборку.

Вебхук

GET/v1/max/webhooks/{id}/
0 единицс тарифа «API.Max Рост»

Один вебхук организации: каналы, состояние, сколько доставок ждут отправки, последняя успешная доставка и ошибка. Вебхук другой организации — 404.

Параметры

Имя параметраГдеОписание
id обязателен
число
путьНомер вебхука

Поля ответа

ПолеТипОписание
idчислоНомер вебхука — в адресах /v1/max/webhooks/{id}/ и в событиях
urlстрокаАдрес, на который приходят события (https://)
is_activeда / нетВключён ли вебхук
disabled_reasonстрокаПочему выключен: failing — сутки без успешной доставки, client — выключен вами, staff — сотрудником datool.ru; пусто — включён
channelsсписокНомера подписанных каналов MAX
pendingчислоДоставок ждут отправки
created_atдата и времяКогда вебхук создан (ISO 8601, по Москве)
last_success_atдата и время или nullПоследняя успешная доставка
failing_sinceдата и время или nullС какого момента нет успешных доставок; null — всё хорошо
last_errorстрокаПоследняя ошибка доставки коротко

Ошибки

КодcodeКогда
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredВебхуки открыты с тарифа «API.Max Рост».
404not_foundНет объекта с таким номером или именем, или он вам не виден.
429rate_limited / throttledСлишком часто — больше запросов в секунду, чем по тарифу; сколько ждать — в заголовке Retry-After.

Изменить вебхук

PATCH/v1/max/webhooks/{id}/
0 единицс тарифа «API.Max Рост», ключ «чтение и запись»

Любые из полей: адрес, список каналов (заменяет прежний целиком), is_active. is_active=true включает выключенный вебхук: ошибки забываются, посты пойдут с текущего момента. Вебхук, выключенный сотрудником datool.ru (disabled_reason=staff), так не включить — 409 conflict, напишите в поддержку.

Параметры

Имя параметраГдеОписание
id обязателен
число
путьНомер вебхука

Тело запроса

JSON с заголовком Content-Type: application/json.

ПолеТипОписание
urlстрокаНовый адрес
channelsсписокНовый список каналов — заменяет прежний целиком
is_activeда / нетtrue — включить снова (ошибки забываются), false — выключить

Поля ответа

ПолеТипОписание
idчислоНомер вебхука — в адресах /v1/max/webhooks/{id}/ и в событиях
urlстрокаАдрес, на который приходят события (https://)
is_activeда / нетВключён ли вебхук
disabled_reasonстрокаПочему выключен: failing — сутки без успешной доставки, client — выключен вами, staff — сотрудником datool.ru; пусто — включён
channelsсписокНомера подписанных каналов MAX
pendingчислоДоставок ждут отправки
created_atдата и времяКогда вебхук создан (ISO 8601, по Москве)
last_success_atдата и время или nullПоследняя успешная доставка
failing_sinceдата и время или nullС какого момента нет успешных доставок; null — всё хорошо
last_errorстрокаПоследняя ошибка доставки коротко

Ошибки

КодcodeКогда
400ошибки полейНеверный параметр или поле тела: ошибка приходит у имени поля, например {"channels": ["Номера каналов через запятую."]}.
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredВебхуки открыты с тарифа «API.Max Рост».
403read_only_keyКлюч без отметки «чтение и запись».
403manager_requiredКлюч участника: менять вебхуки может владелец или администратор.
404not_foundНет объекта с таким номером или именем, или он вам не виден.
409conflictВебхук выключен сотрудником datool.ru — включить его может только поддержка.
429rate_limited / throttledСлишком часто — больше запросов в секунду, чем по тарифу; сколько ждать — в заголовке Retry-After.
503timeoutЗапрос к базе не уложился в 5 секунд — повторите позже или сузьте выборку.

Удалить вебхук

DELETE/v1/max/webhooks/{id}/
0 единицс тарифа «API.Max Рост», ключ «чтение и запись»

Удалить вебхук вместе с очередью ещё не отправленных доставок. Нужен ключ с отметкой «чтение и запись». Ответ 204 без тела.

Параметры

Имя параметраГдеОписание
id обязателен
число
путьНомер вебхука

Ошибки

КодcodeКогда
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredВебхуки открыты с тарифа «API.Max Рост».
403read_only_keyКлюч без отметки «чтение и запись».
403manager_requiredКлюч участника: менять вебхуки может владелец или администратор.
404not_foundНет объекта с таким номером или именем, или он вам не виден.
429rate_limited / throttledСлишком часто — больше запросов в секунду, чем по тарифу; сколько ждать — в заголовке Retry-After.

Сменить секрет подписи

POST/v1/max/webhooks/{id}/rotate-secret/
0 единицс тарифа «API.Max Рост», ключ «чтение и запись»

Новый секрет подписи: прежний перестаёт действовать сразу. Секрет — в ответе, показывается один раз.

Параметры

Имя параметраГдеОписание
id обязателен
число
путьНомер вебхука

Поля ответа

ПолеТипОписание
idчислоНомер вебхука — в адресах /v1/max/webhooks/{id}/ и в событиях
urlстрокаАдрес, на который приходят события (https://)
is_activeда / нетВключён ли вебхук
disabled_reasonстрокаПочему выключен: failing — сутки без успешной доставки, client — выключен вами, staff — сотрудником datool.ru; пусто — включён
channelsсписокНомера подписанных каналов MAX
pendingчислоДоставок ждут отправки
created_atдата и времяКогда вебхук создан (ISO 8601, по Москве)
last_success_atдата и время или nullПоследняя успешная доставка
failing_sinceдата и время или nullС какого момента нет успешных доставок; null — всё хорошо
last_errorстрокаПоследняя ошибка доставки коротко
secretстрокаСекрет подписи X-Datool-Signature. Показывается один раз — сохраните его

Ошибки

КодcodeКогда
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredВебхуки открыты с тарифа «API.Max Рост».
403read_only_keyКлюч без отметки «чтение и запись».
403manager_requiredКлюч участника: менять вебхуки может владелец или администратор.
404not_foundНет объекта с таким номером или именем, или он вам не виден.
429rate_limited / throttledСлишком часто — больше запросов в секунду, чем по тарифу; сколько ждать — в заголовке Retry-After.

Проверить вебхук

POST/v1/max/webhooks/{id}/test/
0 единицс тарифа «API.Max Рост», ключ «чтение и запись»

Пробная доставка события ping без постов — проверить адрес и подпись. Одна попытка, без повторов; не чаще раза в минуту на вебхук (чаще — 429 throttled с заголовком Retry-After). Итог виден в полях last_success_at и last_error через несколько секунд.

Параметры

Имя параметраГдеОписание
id обязателен
число
путьНомер вебхука

Поля ответа

ПолеТипОписание
deliveryчислоНомер доставки (заголовок X-Datool-Delivery)
statusстрокаqueued — поставлена в очередь отправки

Ошибки

КодcodeКогда
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredВебхуки открыты с тарифа «API.Max Рост».
403read_only_keyКлюч без отметки «чтение и запись».
403manager_requiredКлюч участника: менять вебхуки может владелец или администратор.
404not_foundНет объекта с таким номером или именем, или он вам не виден.
409conflictВебхук выключен — включите его (is_active=true) и повторите.
429throttledПроверять вебхук можно не чаще раза в минуту.
429rate_limited / throttledСлишком часто — больше запросов в секунду, чем по тарифу; сколько ждать — в заголовке Retry-After.

Формат ошибок, заголовки лимитов и что делать при каждой — в статье «Ошибки».

Страница полезна?

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти