В данном разделе описывается работа с вебхуками через API.
Информация про формат получаемых хуков доступна тут
Оглавление
Общая информация
- В одном аккаунте может быть не более 100 хуков
- Один вебхук может быть подписан на несколько событий
Список установленных вебхуков в аккаунте
Метод
GET /api/v4/webhooks
Описание
Метод позволяет получить список установленных вебхуков в аккаунте.
Ограничения
Метод доступен с правами администратора аккаунта.
GET параметры
| Параметр | Тип данных | Описание |
|---|---|---|
| filter | object | Фильтр |
| filter[destination] | string | Фильтр по точному адресу вебхука |
Заголовок типа данных при успешном результате
Content-Type: application/hal+json
Заголовок типа данных при ошибке
Content-Type: application/problem+json
HTTP коды ответа
| Код ответа | Условие |
|---|---|
| 200 | Запрос выполнен успешно |
| 401 | Пользователь не авторизован |
Параметры ответа
Метод возвращает коллекцию моделей вебхуков, рассмотрим ниже свойства модели.
| Параметр | Тип данных | Описание |
|---|---|---|
| id | int | ID вебхука |
| created_by | int | ID пользователя, создавшего вебхук |
| created_at | int | Дата создания вебхука, передается в Unix Timestamp |
| updated_at | int | Дата изменения вебхука, передается в Unix Timestamp |
| sort | int | Сортировка вебхука |
| disabled | bool | Отключен ли вебхук |
| destination | string | Валидный URL на который необходимо присылать уведомления |
| settings | array | Действия, на которые подписан вебхук. Список доступных действий смотрите тут |
Пример ответа
{
"_total_items": 2,
"_embedded": {
"webhooks": [
{
"id": 839656,
"destination": "https://webhook-uri.com",
"created_at": 1575539157,
"updated_at": 1575539157,
"account_id": 321321,
"created_by": 123123,
"sort": 1,
"disabled": false,
"settings": [
"add_task"
]
},
{
"id": 849193,
"destination": "https://api.test.ru/amoWebHook",
"created_at": 1576157524,
"updated_at": 1585816857,
"account_id": 321321,
"created_by": 123123,
"sort": 2,
"disabled": true,
"settings": [
"update_lead"
]
}
]
}
}
Подписка на вебхук
Метод
POST /api/v4/webhooks
Описание
Метод позволяет подписываться на события, информация о которым придет на указанный адрес.
Ограничения
Метод доступен с правами администратора аккаунта.
Заголовок запроса
Content-Type: application/json
Параметры запроса
Для подписки на события необходимо передать обязательные параметры destination и settings. Если в аккаунте уже есть вебхук с переданным адресом, то он будет обновлен с переданными настройками.
| Параметр | Тип данных | Описание |
|---|---|---|
| destination | string | Валидный URL на который необходимо присылать уведомления |
| settings | array | Действия, на которые подписан вебхук. Передается в виде массива cо списком возможных действий. Список доступных действий смотрите тут |
Пример запроса
{
"destination": "https://example.test",
"settings": [
"add_lead"
],
"sort": 10
}
Заголовок типа данных при успешном результате
Content-Type: application/hal+json
Заголовок типа данных при ошибке
Content-Type: application/problem+json
HTTP коды ответа
| Код ответа | Условие |
|---|---|
| 201 | Задачи были успешно созданы |
| 422 | Переданные данные не могут быть обработаны. Подробности доступны в теле ответа |
| 401 | Пользователь не авторизован |
| 400 | Переданы некорректные данные. Подробности доступны в теле ответа |
Параметры ответа
Метод возвращает объект вебхука, который были созданы. Свойства аналогичны тем, что приходят в методе получения списка.
Пример ответа
{
"id": 1056949,
"destination": "https://example.test",
"created_at": 1589012268,
"updated_at": 1589012268,
"account_id": 321321,
"created_by": 3944275,
"sort": 1,
"disabled": false,
"settings": [
"add_lead"
]
}
Отписка от событий
Метод
DELETE /api/v4/webhooks
Описание
Метод позволяет отписать вебхук от получения любых событий.
Ограничения
Метод доступен только с правами администратора аккаунта.
Заголовок запроса
Content-Type: application/json
Параметры запроса
Для отмены подписки на события необходимо передать обязательный параметр destination.
| Параметр | Тип данных | Описание |
|---|---|---|
| destination | string | Точный адрес вебхука, который необходимо удалить из списка |
Пример запроса
{
"destination": "https://example.test"
}
HTTP коды ответа
| Код ответа | Условие |
|---|---|
| 204 | Вебхук был успешно удален |
| 404 | Вебхук не найден |
| 403 | Не хватает прав для вызова данного метода |
| 401 | Пользователь не авторизован |
| 400 | Переданы некорректные данные. Подробности доступны в теле ответа |
Параметры ответа
Метод не возвращает тело
Возможные события
| Название события | Описание |
|---|---|
| responsible_lead | У сделки сменился ответственный |
| responsible_contact | У контакта сменился ответственный |
| responsible_company | У компании сменился ответственный |
| responsible_customer | У покупателя сменился ответственный |
| responsible_task | У задачи сменился ответственный |
| restore_lead | Сделка восстановлена из удаленных |
| restore_contact | Контакт восстановлен из удаленных |
| restore_company | Компания восстановлена из удаленных |
| add_lead | Добавлена сделка |
| add_contact | Добавлен контакт |
| add_company | Добавлена компания |
| add_customer | Добавлен покупатель |
| add_talk | Добавлена беседа |
| add_task | Добавлена задача |
| update_lead | Сделка изменена |
| update_contact | Контакт изменён |
| update_company | Компания изменена |
| update_customer | Покупатель изменен |
| update_talk | Беседа изменена |
| update_task | Задача изменена |
| delete_lead | Удалена сделка |
| delete_contact | Удалён контакт |
| delete_company | Удалена компания |
| delete_customer | Удален покупатель |
| delete_task | Удалена задача |
| status_lead | У сделки сменился статус |
| note_lead | Примечание добавлено в сделку |
| note_contact | Примечание добавлено в контакт |
| note_company | Примечание добавлено в компанию |
| note_customer | Примечание добавлено в покупателя |
| add_message | Получено входящее сообщение от клиента |
| add_outgoing_message | Отправлено исходящее сообщение из amoCRM клиенту |
| add_chat_template_review | Шаблон WhatsApp отправлен на одобрение |