Описание REST-сервиса
- REST-сервис реализует один метод, на входе которого - запрос для проверки списка документов (одиночного документа), на выходе - результат проверки.
- REST-сервис отвечает по адресу rest.json и использует метод POST
- Запрос для проверки документов создаётся в виде JSON-объекта, в соответствии с разделом Создание запроса для проверки документов
- Ответ вернется в виде JSON-объекта, в котором по каждому документу проставлен признак проверки. Описание ответа содержится в разделе Описание ответа сервиса
Создание запроса для проверки документов
- Запрос по документу - это JSON-объект, содержащий атрибут kind - признак вида документа, и набор атрибутов документа
-
Атрибут kind - признак вида документа - принимает следующие значения:
1 - Таможенная декларация
- Для каждого вида документа все атрибуты являются обязательными
- Все атрибуты JSON-объекта, кроме kind и атрибутов документа, игнорируются и возвращаются в ответе в неизменном виде. Например, к каждому документу может быть добавлен атрибут id, содержащий уникальный идентификатор документа. Этот атрибут при разборе ответа может быть использован для связи элементов ответа с элементами запроса.
- Сервису может быть передан для проверки одиночный документ, или массив документов, содержащий не более 1 000 элементов
- Если массив, переданный для проверки, содержит элементы, отличные от JSON-объектов, они будут проигнорированы.
Перечень атрибутов проверяемых документов:
1 - Таможенная декларация
Имя атрибута | Наименование параметра | Описание |
---|---|---|
Имя атрибута
nom_td
|
Наименование параметра
Регистрационный номер таможенной декларации
|
Описание
Значение по формату регистрационного номера таможенной декларации (23 символа):
TTTTTTTT/DDMMGG/NNNNNNN где: TTTTTTTT - цифровой восьмизначный код таможенного органа; DDMMGG - значение корректной даты в формате ДДММГГ; NNNNNNN - семизначный порядковый номер; больше 0; меньшие значения дополняются слева нулями. |
Имя атрибута
vid
|
Наименование параметра
Вид таможенной процедуры
|
Описание
Возможные значения:
40 - импорт 10 - экспорт 80 - транзит |
Имя атрибута
inn
|
Наименование параметра
ИНН лица, ответственного за финансовое урегулирование
|
Описание
Корректный ИНН ЮЛ или ФЛ
|
Примеры оформления запросов
Запрос по одиночному документу:
{"inn":"9515031101","nom_td":"12345678/080807/0016937","vid":"10","kind":"1"}
Описание ответа сервиса
Ответ сервиса представляет собой JSON-объект, структура которого зависит от корректности запроса:
- Корректный запрос - ответ представляет собой копию структуры запроса, в каждый элемент запроса добавляется атрибут RESULT,
содержащий код результата проверки:
0 - Документ отсутствует (аннулирован)
1 - Документ найден
2 - Документ найден, нет факта вывоза
- Запрос является синтаксически корректным JSON-объектом, однако отдельные его обязательные атрибуты отсутствуют или не удовлетворяют требованиям - ответ представляет собой копию структуры запроса, в который добавляется атрибут ERRORS, содержащий описание результата форматно логического контроля в виде JSON-объекта, ключами в котором являются имена обязательных атрибутов, в значениях которых диагностированы ошибки, а значениями - перечень выявленных ошибок.
- Запрос является корректным массивом, однако некоторые его элементы некорректны. В этом случае вернется копия массива запроса, в корректные его элементы будет добавлен атрибут RESULT, в некорректные атрибут ERRORS, как описано выше, элементы массива, не являющиеся JSON-объектами (массивы, строки и т.д.) будут проигнорироавны и возвращены в неизменном виде
- Запрос не является сиетаксически корректной структурой - ответ представляет собой JSON-объект, содержащий три атрибута:
ERROR - Имеет значение "Ошибка разбора запроса"
ERR_MSG - Сообщение об ошибке разбора запроса JSON - парсером
SRC - Исходная строка запроса, которую не удалось разобрать
Примеры ответов
Ответ на корректный запрос по одиночному документу:
{"inn":"9515031101","nom_td":"12345678/080807/0016937","vid":"10","kind":"1","RESULT":"1"}
Ответ на некорректный запрос:
{"ERR_MSG":"Expected EOF at line 1 column 166","ERROR":"Ошибка разбора запроса","SRC":"[{\"inn\":\"9515031102\",\"nom_td\":\"12345678/080807/X016937\",\"vid\":\"10\",\"kind\":[\"11\",\"12\"]},{\"inn\":\"9515031101\",\"nom_td\":\"12345678/080807/0016937\",\"vid\":\"10\",\"kind\":\"1\"}],{\"rnom_ts\":\"HMINP40V\",\"nom_cmr\":\"K8DPV9\",\"oksm_rcp\":\"UA\",\"oksm_send\":\"AZ\",\"kind\":\"2\"},{\"dir\":\"A\",\"dt_doc\":\"26.03.2013\",\"ship_name\":\"WW9SF3BEG\",\"kind\":\"3\",\"nom_doc\":\"CDHKCG00NB8CM\"},{\"dir_2\":\"A\",\"nom_doc_2\":\"LJP10A4\",\"year\":\"2013\",\"kind\":\"5\"},\"hgj\"] "}