v.1.3.1
API построен на основе REST + JSON.
URL для подключения: https://cms.docdelivery.ru/deliveryapi/order/
Авторизация
Каждому партнёру выдаётся логин (login) к API (отличаются от доступов к приложению CMS DocDelivery), идентифицирующие партнёра при подключениях и секретный пароль (password), использующиеся для формирования подписи запросов.
Подпись запросов при выполнении любого запроса независимо от HTTP-метода формируется по следующему принципу:
signature = md5 ( login + password );
Таким образом, строка запроса будет выглядеть так:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>
Дополнительные параметры, передаваемые в строке запроса:
| Параметр | Обязательный параметр | Тип данных | Описание |
| MODE | НЕТ | String | В период тестирования подключения к API сервису необходимо указывать параметр "test". В противном случае все новые заявки будут попадать в общую очередь обработки заявки. |
| TASK | ДА | String |
В параметре указывается команда API сервису на выполнение задачи: GetStatusList - получить справочник статусов возможных в API системе статусов заявок; GetBankList - получить справочник банков, работающих в системе; GetOrderInfo - получить информацию о заявке; AddOrder - добавить заявку в систему; GetOrderHistory - получить комментарии к заявке; ChangeOrderStatus - изменить статус заявки; GetOrderDocs - получить список документов заявки; GetOrderDoc - получить документ заявки; AddOrderDoc - добавить документ к заявке; |
GetStatusList
Получить справочник статусов возможных в API системе статусов заявок
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=GetStatusList
Возвращаемые данные: массив в формате JSON-строки
| Параметр | Обязательный параметр | Тип данных | Описание |
| id | ДА | INT(5) | Идентификатор статуса заявки в системе DocDelivery |
| title | ДА | String(20) | Название статуса заявки
|
| description | НЕТ | String(255) | Описание статуса заявки |
| comment_need |
НЕТ | INT(1) | Признак необходимости комментария, при изменении статуса заказа на данный статус. Возможные варианты: 1 - комментарий обязателен, 0 - комментарий не обязетален |
GetBankList
Получить справочник банков, работающих в системе
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=GetBankList
Возвращаемые данные: массив в формате JSON-строки
| Параметр | Обязательный параметр | Тип данных | Описание |
| id | ДА | INT(5) | Идентификатор банка заявки в системе DocDelivery |
| title | ДА | String(20) | Наименование банка в системе DocDelivery |
GetOrderInfo
Получить информацию о заявке
Дополнительный параметр: order_id - идентификатор заявки со стороны партнера. Обязательный параметр.
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=GetOrderInfo&order_id=<Идентификатор заявки>
ВАЖНО: партнер может получить информацию только по СВОЕЙ заявке.
Возвращаемые данные: массив в формате JSON-строки
| Параметр | Обязательный параметр | Тип данных | Описание |
| id | ДА | Int(11) | Идентификатор заявки в системе DocDelivery |
| order_id | ДА | String(200) | Идентификатор заявки на стороне партнера
|
| name | ДА | String(255) | Фамилия, Имя, Отчество клиента |
| phone | ДА | String(30) |
Телефон для связи с клиентом Формат: 89991112233, +79991112233 |
| НЕТ | String(30) |
Электронная почта для связи с клиентом |
|
| comments | НЕТ | Text |
Общие комментарии к заявке. Это могут быть комментарии для менеджера, сотрудника колцентра или курьера. Данный комментарий видят все участники цепочки по доставке. |
| created | ДА | DateTime |
Дата и время создания заявки в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС |
| bank_id | ДА | Int(11) |
Идентификатор банка в системе DocDelivery (см. справочник банков) |
| bank_name | ДА | String(20) |
Наименование банка из справочника банков |
| add_docs | НЕТ | String(255) |
Список дополнительных документов, которые клиент должен предоставить курьеру при доставке |
| date_delivery | НЕТ | Date |
Дата, на которую назначена доставка заявки клиенту в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС |
| time1 | НЕТ | Time |
Интервал времени доставки заявки С - ПО в формате ЧЧ:ММ:СС
|
| time2 |
НЕТ | Time | |
| coordinate | НЕТ | String(50) |
Координаты адреса доставки заявки |
| address | ДА | String(255) |
Полный адрес доставки заявки в формате: Московская обл., г.Химки, ул.Иванов, д.2, корп.3, кв.12 |
| region | НЕТ | String(100) |
Регион доставки заявки |
| city | НЕТ | String(100) |
Город доставки заявки |
| street_type | НЕТ | String(50) |
Тип улицы доставки заявки (улица, шоссе, проспект и т.п.) |
| street | НЕТ | String(100) |
Наименование улица доставки заявки |
| building | НЕТ | String(10) |
Номер дома доставки заявки, включая строения, корпусы, квартира и пр. Пример: д.2,стр.1,кв.13 |
| status_id | ДА | Int(11) |
Идетификатор статуса заявки в системе DocDelivery на момент запроса. (см. справочник статусов заявок) |
| status_name | ДА | String(20) |
Название статуса заявки в системе DocDelivery |
| published | ДА | Int(1) |
Признак активности заявки. Возможные варианты значений: 1- заявка активна, 2- заявка деактивирована (помечена удаленной) |
AddOrder
Добавить заявку в систему
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=AddOrder
Принимаемые данные: массив в формате JSON-строки передаваемый методом POST
| Параметр | Обязательный параметр | Тип данных | Описание |
| order_id | ДА | String(200) | Идентификатор заявки на стороне партнера
|
| name | ДА | String(255) | Фамилия, Имя, Отчество клиента |
| phone | ДА | String(30) |
Телефон для связи с клиентом Формат: 89991112233, +79991112233 |
| comments | НЕТ | Text |
Общие комментарии к заявке. Это могут быть комментарии для менеджера, сотрудника колцентра или курьера. Данный комментарий видят все участники цепочки по доставке. |
| bank_id | ДА | Int(11) |
Идентификатор банка в системе DocDelivery (см. справочник банков) |
| add_docs | НЕТ | String(255) |
Список дополнительных документов, которые клиент должен предоставить курьеру при доставке |
| date_delivery | НЕТ | Date |
Дата, на которую назначена доставка заявки клиенту в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС |
| time1 | НЕТ | Time |
Интервал времени доставки заявки С - ПО в формате ЧЧ:ММ:СС
|
| time2 |
НЕТ | Time | |
| coordinate | НЕТ | String(50) |
Координаты адреса доставки заявки |
| address | ДА | String(255) |
Полный адрес доставки заявки в формате: Московская обл., г.Химки, ул.Иванов, д.2, корп.3, кв.12 |
| region | ДА | String(100) |
Регион доставки заявки |
| city | ДА | String(100) |
Город доставки заявки |
| street_type | НЕТ | String(50) |
Тип улицы доставки заявки (улица, шоссе, проспект и т.п.) |
| street | ДА | String(100) |
Наименование улица доставки заявки |
| building | ДА | String(10) |
Номер дома доставки заявки, включая строения, корпусы, квартира и пр. Пример: д.2,стр.1,кв.13 |
| status_id | ДА | Int(11) |
Идетификатор статуса заявки в системе DocDelivery на момент запроса. (см. справочник статусов заявок) |
В случае успешного создания заявки, результатом добавления заявки массив:
id - идентификатор новой заявки в системе DocDelivery
order_id - идентификатор новой заявки на стороне партнера
created - дата и время создания заявки в формате ГГГГ.ММ.ДД ЧЧ:ММ:СС
result - true
GetOrderHistory
Получить комментарии к заказу в хронологическом порядке
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=GetOrderHistory&order_id=<Идентификатор заявки>
Возвращаемые данные: массив в формате JSON-строки
| Параметр | Обязательный параметр | Тип данных | Описание |
| created | ДА | DateTime | Дата и время изменения статуса заказа и добавления комментария к заказу. Формат ГГГГ.ММ.ДД ЧЧ:ММ:СС |
| status_id | ДА | Int(5) | Идентификатор статуса заказа из справочника заказов |
| status_name | ДА | String(20) | Наименование статуса заказа из справочника заказов |
| comment | НЕТ | TEXT | Комментарий сотрудника DocDelivery |
ChangeOrderStatus
Изменить статус заказа
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=ChangeOrderStatus
Принимаемые данные: массив в формате JSON-строки передаваемый методом POST
| Параметр | Обязательный параметр | Тип данных | Описание |
| order_id | ДА | String(200) | Идентификатор заявки на стороне партнера |
| status_id | ДА | Int(5) | Идентификатор статуса заказа в системе DocDelivery из справочника заказов |
| comment | НЕТ | TEXT | Комментарий к заказу. Необходим в том случае, если к указанному статусу заказа требуется комментарий (см. справочник статусов заказов) |
В случае успешного изменения статуса заявки будет возвращен массив:
id - идентификатор заявки в системе DocDelivery
order_id - идентификатор заявки на стороне партнера
status_id - идентификатор нового статуса заказа из справочника статусов заказов DocDelivery
status_name - название нового статуса заказа из справочника статусов заказов DocDelivery
created - дата и время изменения статуса заказа в формате ГГГГ.ММ.ДД ЧЧ.ММ.СС
result - true
GetOrderDocs
Получить список документов заказа
Дополнительный параметр: order_id - идентификатор заявки со стороны партнера. Обязательный параметр.
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=GetOrderDocs&order_id=<Идентификатор заявки>
ВАЖНО: партнер может получить информацию только по СВОЕЙ заявке.
Возвращаемые данные: массив в формате JSON-строки
| Параметр | Обязательный параметр | Тип данных | Описание |
| id | ДА | Int(11) | Идентификатор документа в системе DocDelivery |
| title | ДА | String(255) | Заголовок документа |
| type | ДА | String(5) | Расширение файла документа |
GetOrderDoc
Получить список документов заказа
Дополнительные параметры:
order_id - идентификатор заявки со стороны партнера. Обязательный параметр.
doc_id - идентификатор документа в системе DocDelivery (см. GetOrderDocs). Обязательный параметр.
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=GetOrderDoc&order_id=<Идентификатор заявки>&doc_id=<Идентификатор документа>
ВАЖНО: партнер может получить информацию только по СВОЕЙ заявке.
Возвращаемые данные: массив в формате JSON-строки
| Параметр | Обязательный параметр | Тип данных | Описание |
| id | ДА | Int(11) | Идентификатор документа в системе DocDelivery |
| title | ДА | String(255) | Заголовок документа |
| content |
ДА | TEXT | Содержимое файла, закодированное BASE64 |
| type | ДА | String(5) | Расширение файла документа |
AddOrderDoc
Добавить документ к заказу
Пример обращения:
https://cms.docdelivery.ru/deliveryapi/order/?login=<Ваш API логин>&signature=<Ваша API подпись>&task=AddOrderDoc
Принимаемые данные: массив в формате JSON-строки передаваемый методом POST
| Параметр | Обязательный параметр | Тип данных | Описание |
| order_id | ДА | String(200) | Идентификатор заявки на стороне партнера |
| title | ДА | String(255) |
Название документа. Должно начинаться с текста наименования партнера, может продолжаться названием документа. Например: ИМЯ_ПАРТНЕРА: договор ВАЖНО: наименование документа должно быть УНИКАЛЬНЫМ для данной заявки Пример: ИМЯ_ПАРТНЕРА: договор_1 ИМЯ_ПАРТНЕРА: договор_2 ИМЯ_ПАРТНЕРА: заявление |
| content | ДА | TEXT | Содержимое файла, закодированное BASE64 |
| type |
ДА | String(5) | Расширения файла документа |
В случае успешного добавления документа будет возвращен массив:
doc_id - идентификатор документа в системе DocDelivery
created - дата и время изменения статуса заказа в формате ГГГГ.ММ.ДД ЧЧ.ММ.СС
result - true