Описание 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\"] "}