Подписка на вебхуки (Webhooks)


 

Методы предназначены для управления подпиской на получение вебхуков на URL клиента.

Так как тестовый аккаунт СДЭК является общим для всех клиентов, для тестирования вебхуков необходимо использовать только боевой URL СДЭК.
В запросе на добавление подписки укажите свой тестовый URL, куда будут приходить вебхуки. После завершения тестирования поменяйте его на свой боевой URL.

1. Добавление подписки

На текущий момент есть возможность добавить подписку на события по статусам заказа, по готовности печатной формы, получение фото документов по заказам и информации о закрытии преалерта.

Запрос на добавление подписки

Для использования необходимо отправить POST-запрос на URL: https://api.cdek.ru/v2/webhooks

Тело запроса необходимо передавать в формате JSON (Content-Type: application/json).

Поддерживаются следующие поля:

Название поля

Описание

Тип поля

Обяз. для заполн.

1

urlURL, на который клиент хочет получать вебхукиstring()да
2type1

Тип события:
ORDER_STATUS - событие по статусам
PRINT_FORM - готовность печатной формы
DOWNLOAD_PHOTO  - получение фото документов по заказам
PREALERT_CLOSED - получение информации о закрытии преалерта

string()да
3retryable   

Добавление возможности повторной отправки вебхука в случае ошибки
(по умолчанию false) 

boolean нет 
4additional

Создание дополнительной подписки 

boolean нет

1 Если у клиента уже есть подписка с указанным типом, то старый url перезатирается на новый

Ответ на добавление подписки

Ответ возвращается в формате JSON:

Название поля

Описание

Тип поля

Обяз. для заполн.

1entityИнформация о подпискеentityнет
1.1uuidИдентификатор подписки в ИС СДЭКUUIDнет
1.2retryableПовторная отправка вебхука в случае ошибки.
Если не был передан, то по умолчанию "false". 
Если был передан признак "additional = true" , то параметр "retryable" будет также "true". 
boolean да
2requestsИнформация о запросе над подпискойrequest[]да
2.1request_uuidИдентификатор запроса в ИС СДЭКUUIDнет
2.2typeТип запроса
Может принимать значения: CREATE, UPDATE, DELETE, AUTH, GET
string()да
2.3date_timeДата и время установки текущего состояния запроса (формат yyyy-MM-dd'T'HH:mm:ssZ)datetimeда
2.4state

Текущее состояние запроса
Может принимать значения: 

ACCEPTED - пройдена предварительная валидация и запрос принят
WAITING - запрос ожидает обработки (зависит от выполнения другого запроса)
SUCCESSFUL - запрос обработан успешно
INVALID - запрос обработался с ошибкой

string()да
2.5errorsОшибки, возникшие в ходе выполнения запросаerror[]нет
2.5.1codeКод ошибкиstring()да
2.5.2messageОписание ошибкиstring()да
2.6warningsПредупреждения, возникшие в ходе выполнения запросаwarning[]нет
2.6.1codeКод предупрежденияstring()да
2.6.2messageОписание предупрежденияstring()да


{ 
	"url":"https://webhook.site",
	"type":"ORDER_STATUS"
}


{
    "entity": {
        "uuid": "73c65d02-51a9-4423-8ee8-cc662ec3eb85"
    },
    "requests": [
        {
            "request_uuid": "72753031-0e1b-4f1d-abcc-b0bb0bd6ab2f",
            "type": "CREATE",
            "state": "SUCCESSFUL",
            "date_time": "2020-02-10T12:14:57+0000",
            "errors": [],
            "warnings": []
        }
    ]
}


2. Информация о подписке

Метод предназначен для получения информации о подписке/подписках клиента на получение вебхуков. 

Запрос на получение информации о подписке

Для использования необходимо отправить GET-запрос на URL: 

Ответ на получение информации о подписке

Ответ возвращается в формате JSON:

Название поля

Описание

Тип поля

Обяз. для заполн.

1entityИнформация о подпискеentityнет

1.1

uuidИдентификатор подпискиUUIDда
1.2urlURL, на который клиенту приходят вебхукиstring()да
1.3typeТип событияstring()да
2requestsИнформация о запросе над подпискойrequest[]да
2.1request_uuidИдентификатор запроса в ИС СДЭКUUIDнет
2.2typeТип запроса
Может принимать значения: CREATE, UPDATE, DELETE, AUTH, GET
string()да
2.3date_timeДата и время установки текущего состояния запроса (формат yyyy-MM-dd'T'HH:mm:ssZ)datetimeда
2.4state

Текущее состояние запроса
Может принимать значения: 

ACCEPTED - пройдена предварительная валидация и запрос принят
WAITING - запрос ожидает обработки (зависит от выполнения другого запроса)
SUCCESSFUL - запрос обработан успешно
INVALID - запрос обработался с ошибкой

string()да
2.5errorsОшибки, возникшие в ходе выполнения запросаerror[]нет
2.5.1codeКод ошибкиstring()да
2.5.2messageОписание ошибкиstring()да
2.6warningsПредупреждения, возникшие в ходе выполнения запросаwarning[]нет
2.6.1codeКод предупрежденияstring()да
2.6.2messageОписание предупрежденияstring()да


https://api.cdek.ru/v2/webhooks/73c65d02-51a9-4423-8ee8-cc662ec3eb85


{
    "entity": {
        "uuid": "73c65d02-51a9-4423-8ee8-cc662ec3eb85",
        "type": "ORDER_STATUS",
        "url": "https://webhook.site"
    },
    "requests": [
        {
            "request_uuid": "72753031-5ae3-448f-ba78-ea29d08e89fa",
            "type": "CREATE",
            "state": "SUCCESSFUL",
            "date_time": "2020-02-10T12:17:06+0000",
            "errors": [],
            "warnings": []
        }
    ]
}


Ответ на получение информации о всех текущих подписках

Ответ возвращается в формате JSON:

Название поляОписаниеТип поляОбяз. для заполн.
1.1 uuid Идентификатор подпискиUUIDда
1.2url URL, на который клиенту приходят вебхукиstring()да
1.3type Тип событияstring()да
1.4requestsИнформация о запросеrequest[]нет
    1.4.1typeТип запроса
Может принимать значения: CREATE, UPDATE, DELETE, AUTH, GET
string()да
    1.4.2date_timeДата и время установки текущего состояния запроса (формат yyyy-MM-dd'T'HH:mm:ssZ)datetimeда
    1.4.3stateТекущее состояние запроса
Может принимать значения: 
ACCEPTED - пройдена предварительная валидация и запрос принят
WAITING - запрос ожидает обработки (зависит от выполнения другого запроса)
SUCCESSFUL - запрос обработан успешно
INVALID - запрос обработался с ошибкой
 string() да
    1.4.4errorsОшибки, возникшие в ходе выполнения запросаerror[]нет
       1.4.4.1codeКод ошибкиstring()да
       1.4.4.2messageОписание ошибкиstring()да
    1.4.5warningsПредупреждения, возникшие в ходе выполнения запросаwarning[]нет
        1.4.5.1codeКод предупрежденияstring()да
        1.4.5.2messageОписание предупрежденияstring()да


https://api.cdek.ru/v2/webhooks/


[
    {
        "type": "ORDER_STATUS",
        "uuid": "d7da1dbd-ae19-4f86-ab85-3274fa96ea8e",
        "url": "https://webhook.site/"
    },
    {
        "type": "PRINT_FORM",
        "uuid": "6624c7c0-680a-4c4e-9ed7-3f48ca9df4f4",
        "url": "https://webhook.site/"
    },
    {
        "type": "DOWNLOAD_PHOTO",
        "uuid": "41b9c676-bb54-4107-ba32-30ad4f1e9c7b",
        "url": "https://webhook.site/"
    },
    {
        "type": "PREALERT_CLOSED",
        "uuid": "0d15c501-8ed5-4f44-a462-ea7ec37cea22",
        "url": "https://webhook.site/"
    }
]


3. Удаление подписки 

Метод предназначен для удаления подписки на получение вебхуков.

Запрос на удаление подписки

Для использования необходимо отправить DELETE-запрос на URL: 
https://api.cdek.ru/v2/webhooks/{uuid}, где uuid - идентификатор подписки

Ответ на удаление подписки

Ответ возвращается в формате JSON:

Название поля

Описание

Тип поля

Обяз. для заполн.

1entityИнформация о подпискеentityнет

1.1

uuidИдентификатор удаленной подпискиUUIDда
2requestsИнформация о запросе над подпискойrequest[]да
2.1request_uuidИдентификатор запроса в ИС СДЭКUUIDнет
2.2typeТип запроса
Может принимать значения: CREATE, UPDATE, DELETE, AUTH, GET
string()да
2.3date_timeДата и время установки текущего состояния запроса (формат yyyy-MM-dd'T'HH:mm:ssZ)datetimeда
2.4state

Текущее состояние запроса
Может принимать значения: 

ACCEPTED - пройдена предварительная валидация и запрос принят
WAITING - запрос ожидает обработки (зависит от выполнения другого запроса)
SUCCESSFUL - запрос обработан успешно
INVALID - запрос обработался с ошибкой

string()да
2.5errorsОшибки, возникшие в ходе выполнения запросаerror[]нет
2.5.1codeКод ошибкиstring()да
2.5.2messageОписание ошибкиstring()да
2.6warningsПредупреждения, возникшие в ходе выполнения запросаwarning[]нет
2.6.1codeКод предупрежденияstring()да
2.6.2messageОписание предупрежденияstring()да


https://api.cdek.ru/v2/webhooks/73c65d02-51a9-4423-8ee8-cc662ec3eb85


{
    "entity": {
        "uuid": "73c65d02-51a9-4423-8ee8-cc662ec3eb85"
    },
    "requests": [
        {
            "request_uuid": "72753031-0e1b-4f1d-abcc-b0bqw456ab2f",
            "type": "DELETE",
            "state": "SUCCESSFUL",
            "date_time": "2020-02-10T12:14:57+0000",
            "errors": [],
            "warnings": []
        }
    ]
}


 

© 2000—2024, Курьерская компания СДЭК