API электронной транспортной накладной (ЭТрН)
Последовательность вызовов для создания и отправки первого титула (титула грузоотправителя) ЭТрН
- Создание ЭТрН
- Сохранение данных первого титула (титула грузоотправителя)
- Сохранение участников
- Формирование XML-файла первого титула (титула грузоотправителя)
- Отправка первого титула (титула грузоотправителя)
Последовательность вызовов для создания и отправки второго титула (титула перевозчика) ЭТрН
- Сохранение данных второго титула (титула перевозчика)
- Формирование XML-файла второго титула (титула перевозчика)
- Отправка второго титула (титула перевозчика)
Последовательность вызовов для создания и отправки третьего титула (титула грузополучателя) ЭТрН
- Сохранение данных третьего титула (титула грузополучателя)
- Формирование XML-файла третьего титула (титула грузополучателя)
- Отправка третьего титула (титула грузополучателя)
Последовательность вызовов для создания и отправки четвёртого титула (титула перевозчика) ЭТрН
- Сохранение данных четвёртого титула (титула перевозчика)
- Формирование XML-файла четвёртого титула (титула перевозчика)
- Отправка четвёртого титула (титула перевозчика)
Получение информации по ЭТрН
- Получение информации по участнику документооборота
- Получение метаинформации по ЭТрН (подписанты, статус и т.д.)
- Получение ключа доступа к печатной форме и QR-коду
- Скачивание файла печатной формы и QR-кода
Работа с первым титулом (титулом грузоотправителя) ЭТрН
Создание ЭТрН
Позволяет создать пустой первый титул ЭТрН с данными грузоотправителя. С этого момента можно получать метаинформацию по документу.
Создание ЭТрН post /gw/epd/etrn/v1/docflows
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows"); 200 Successful Response
Возвращает id документооборота
Сохранение черновика первого титула (титула грузоотправителя). JSON
Позволяет сохранить данные первого титула.
В теле передаётся JSON в утверждённом законодательством формате.
Параметр send_to_driver отвечает за отправку ЭТрН в приложение «АТИ Водитель» после успешного подписания первого титула.
Сохранение черновика первого титула put /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1' \ -X 'PUT' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"верс_форм":"5.01","ид_пол_иной":["string"],"документ":{"кнд":"1110339","наим_эк_суб_сост":"string","осн_дов_орг_сост":"?","сод_инф_го":"?"}}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("PUT", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1", "{""верс_форм"":""5.01"",""ид_пол_иной"":[""string""],""документ"":{""кнд"":""1110339"",""наим_эк_суб_сост"":""string"",""осн_дов_орг_сост"":""?"",""сод_инф_го"":""?""}}"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Сохранение участников ЭТрН
Сохраняет участников (подписантов) ЭТрН.
Сохранение участников ЭТрН put /gw/epd/etrn/v1/docflows/{docflow_id}/participants
Информация о пользователе, где "cargo_sender" - это отправитель, "cargo_carrier" - перевозчик, "cargo_receiver" - получатель
Идентификатор пользователя в АТИ
Идентификатор контакта пользователя в фирме
Идентификатор пользователя в Астрал
Информация о пользователе, где "cargo_sender" - это отправитель, "cargo_carrier" - перевозчик, "cargo_receiver" - получатель
Идентификатор пользователя в АТИ
Идентификатор контакта пользователя в фирме
Идентификатор пользователя в Астрал
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/participants' \ -X 'PUT' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"cargo_carrier":{"firm_id":"[0-9]+","contact_id":0,"user_astral_id":"string"},"cargo_receiver":{"firm_id":"[0-9]+","contact_id":0,"user_astral_id":"string"}}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("PUT", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/participants", "{""cargo_carrier"":{""firm_id"":""[0-9]+"",""contact_id"":0,""user_astral_id"":""string""},""cargo_receiver"":{""firm_id"":""[0-9]+"",""contact_id"":0,""user_astral_id"":""string""}}"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Формирование первого титула (титула грузоотправителя). XML-файл
Позволяет создать XML-файл первого титула, чтобы в дальнейшем подписать и отправить его. Указывается отпечаток сертификата электронной подписи SHA-1 и номер МЧД (если есть).
Генерация первого титула (XML-файл) post /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1/xml
Схема тела запроса для генерации xml, необходимая для генерации полномочий подписанта
Идентификатор сертификата
Идентификатор МЧД
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1/xml' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"certificate_id":"string","power_of_attorney_id":"string"}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1/xml", "{""certificate_id"":""string"",""power_of_attorney_id"":""string""}"); 200 Successful Response
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Отправка первого титула (титула грузоотправителя)
Позволяет отправить первый титул в ГИС (в Государственную информационную систему) и контрагентам. После отправки титула в ГИС, ЭТрН меняет свой статус на “title_1_waiting_operator”. После получения первого титула ГИС проводит валидацию титула:
- если валидация пройдена успешно — титул поступает контрагентам, а статус ЭТрН меняется на “title_1_success”;
- если валидация не пройдена — статус ЭТрН меняется вновь на “draft” и первый титул контрагентам не поступает. При отправке необходимо указать строку подписи прикладываемого XML-файла первого титула в формате base64.
Отправка первого титула post /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1/send
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1/send' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: multipart/form-data; boundary=boundary'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_1/send"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Работа со вторым титулом ЭТрН (титулом перевозчика)
Сохранение черновика второго титула (титула перевозчика). JSON
Позволяет сохранить данные второго титула. В теле передаётся JSON в утверждённом законодательством формате.
Сохранение черновика второго титула put /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2' \ -X 'PUT' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"верс_форм":"5.01","ид_пол_иной":["string"],"документ":{"кнд":"1110340","сод_инф_прв_прием":{"зам_прв_прием":{"зам_дат_вр_приб":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_прб":"0","зам_дат_вр_убыт":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_уб":"0","зам_дат_вр_пос_прием":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_прм":"0","зам_сост_груз":"string","зам_масс":"string","зам_кол_мест":"string","зам_погр_раб":"string","инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]},"отмет_прв_прием":[{"дат_вр_отмет":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_отм":"0","обст_отмет":"string","отм_акт_взв":"string","св_акт":[{"наим_док":"string","номер_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})","ид_док":"string","доп_свед_док":"string","ид_рек_сост":[{"иннюл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}","иннфл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}","данн_ино":{"ид_стат":"ЮЛ","стран":"string","наим":"string","идентиф":"string","иные_свед":"string","уд_личн_ин_фл":{"вид_док":"string","ном_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"}},"наим_оив":"string"}]}],"разм_штр":[{"факт_кол_ед_изм":"string","итог_разм_штр_рф":0.5,"код_окв":"[0-9]{3}","наим_окв":"string","итог_разм_штр_ин":0.5,"дата_курс_вал":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})","курс_вал":0.5,"расч_штр":"string"}],"инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]}],"инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]}}}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("PUT", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2", "{""верс_форм"":""5.01"",""ид_пол_иной"":[""string""],""документ"":{""кнд"":""1110340"",""сод_инф_прв_прием"":{""зам_прв_прием"":{""зам_дат_вр_приб"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_прб"":""0"",""зам_дат_вр_убыт"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_уб"":""0"",""зам_дат_вр_пос_прием"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_прм"":""0"",""зам_сост_груз"":""string"",""зам_масс"":""string"",""зам_кол_мест"":""string"",""зам_погр_раб"":""string"",""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]},""отмет_прв_прием"":[{""дат_вр_отмет"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_отм"":""0"",""обст_отмет"":""string"",""отм_акт_взв"":""string"",""св_акт"":[{""наим_док"":""string"",""номер_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"",""ид_док"":""string"",""доп_свед_док"":""string"",""ид_рек_сост"":[{""иннюл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}"",""иннфл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}"",""данн_ино"":{""ид_стат"":""ЮЛ"",""стран"":""string"",""наим"":""string"",""идентиф"":""string"",""иные_свед"":""string"",""уд_личн_ин_фл"":{""вид_док"":""string"",""ном_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})""}},""наим_оив"":""string""}]}],""разм_штр"":[{""факт_кол_ед_изм"":""string"",""итог_разм_штр_рф"":0.5,""код_окв"":""[0-9]{3}"",""наим_окв"":""string"",""итог_разм_штр_ин"":0.5,""дата_курс_вал"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"",""курс_вал"":0.5,""расч_штр"":""string""}],""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]}],""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]}}}"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Формирование второго титула (титула перевозчика). XML-файл
Позволяет создать XML-файл второго титула, чтобы в дальнейшем подписать и отправить его. Указывается отпечаток сертификата электронной подписи SHA-1 и номер МЧД (если есть).
Генерация второго титула (XML-файл) post /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2/xml
Схема тела запроса для генерации xml, необходимая для генерации полномочий подписанта
Идентификатор сертификата
Идентификатор МЧД
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2/xml' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"certificate_id":"string","power_of_attorney_id":"string"}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2/xml", "{""certificate_id"":""string"",""power_of_attorney_id"":""string""}"); 200 Successful Response
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Отправка второго титула (титула перевозчика)
Позволяет отправить второй титул ЭТрН в ГИС (в Государственную информационную систему) и контрагентам. После отправки титула в ГИС, ЭТрН меняет свой статус на “title_2_waiting_operator”. После получения второго титула ГИС проводит валидацию титула:
- если валидация пройдена успешно — титул поступает контрагентам, статус ЭТрН меняется на “title_2_success”;
- если валидация не пройдена — статус ЭТрН меняется вновь на “title_1_success” и второй титул контрагентам не поступает. При отправке необходимо указать строку подписи прикладываемого XML-файла второго титула в формате base64.
Отправка второго титула post /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2/send
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2/send' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: multipart/form-data; boundary=boundary'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_2/send"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Работа с третьим титулом ЭТрН (титулом грузополучателя)
Сохранение черновика третьего титула (титула грузополучателя). JSON
Позволяет сохранить данные третьего титула. В теле передаётся JSON в утверждённом законодательством формате.
Сохранение черновика третьего титула put /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3' \ -X 'PUT' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"верс_форм":"5.01","ид_пол_иной":["string"],"документ":{"кнд":"1110341","наим_экон_суб_сост":"string","осн_довер_орг_сост":{"наим_док":"string","номер_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})","ид_док":"string","доп_свед_док":"string","ид_рек_сост":[{"иннюл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}","иннфл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}","данн_ино":{"ид_стат":"ЮЛ","стран":"string","наим":"string","идентиф":"string","иные_свед":"string","уд_личн_ин_фл":{"вид_док":"string","ном_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"}},"наим_оив":"string"}]},"сод_инф_гп":{"сод_оп_отк":"string","прич_отк":"string","испр_тр_н":{"ном_испр":0.5,"дата_испр":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"},"прием_груз_гп":{"ф_дат_вр_приб":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_ф_пр":"0","ф_дат_вр_убыт":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_ф_уб":"0","заяв_дат_вр_приб":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_з_пр":"0","мет_опр_масс":"01","кол_мест_прием_ч":0.5,"общ_св_сост":"string","мас_брут_знач_прием":0.5,"мас_нет_знач_прием":0.5,"объем":0.5,"адр_выгруз":{"адр_коммент":"string","глн":"string","коорд":{"широта":"string","долгота":"string"},"адрес_рф":{"индекс":"string","код_регион":"[0-9]{2}","район":"string","город":"string","насел_пункт":"string","улица":"string","дом":"string","корпус":"string","кварт":"string"},"адрес_инф":{"код_стр":"[0-9]{3}","адр_текст":"string"},"код_гар":"string"},"св_прин_по_наим":[{"наим_груз":"string","сост_груз":"string","плотн":0.5,"объем":0.5,"кол_мест":0.5,"пер_марк":["string"],"мас_груз":{"мас_нет_знач":0.5,"мас_брут_знач":0.5,"кол_палл":0.5}}],"инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]},"отмет_гп":[{"дат_вр_отмет":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_отм":"0","обст_отмет":"string","св_акт":[{"наим_док":"string","номер_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})","ид_док":"string","доп_свед_док":"string","ид_рек_сост":[{"иннюл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}","иннфл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}","данн_ино":{"ид_стат":"ЮЛ","стран":"string","наим":"string","идентиф":"string","иные_свед":"string","уд_личн_ин_фл":{"вид_док":"string","ном_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"}},"наим_оив":"string"}]}],"разм_штр":[{"факт_кол_ед_изм":"string","итог_разм_штр_рф":0.5,"код_окв":"[0-9]{3}","наим_окв":"string","итог_разм_штр_ин":0.5,"дата_курс_вал":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})","курс_вал":0.5,"расч_штр":"string"}],"св_акт_взв":[{"наим_док":"string","номер_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})","ид_док":"string","доп_свед_док":"string","ид_рек_сост":[{"иннюл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}","иннфл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}","данн_ино":{"ид_стат":"ЮЛ","стран":"string","наим":"string","идентиф":"string","иные_свед":"string","уд_личн_ин_фл":{"вид_док":"string","ном_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"}},"наим_оив":"string"}]}],"инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]}],"инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]}}}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("PUT", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3", "{""верс_форм"":""5.01"",""ид_пол_иной"":[""string""],""документ"":{""кнд"":""1110341"",""наим_экон_суб_сост"":""string"",""осн_довер_орг_сост"":{""наим_док"":""string"",""номер_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"",""ид_док"":""string"",""доп_свед_док"":""string"",""ид_рек_сост"":[{""иннюл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}"",""иннфл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}"",""данн_ино"":{""ид_стат"":""ЮЛ"",""стран"":""string"",""наим"":""string"",""идентиф"":""string"",""иные_свед"":""string"",""уд_личн_ин_фл"":{""вид_док"":""string"",""ном_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})""}},""наим_оив"":""string""}]},""сод_инф_гп"":{""сод_оп_отк"":""string"",""прич_отк"":""string"",""испр_тр_н"":{""ном_испр"":0.5,""дата_испр"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})""},""прием_груз_гп"":{""ф_дат_вр_приб"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_ф_пр"":""0"",""ф_дат_вр_убыт"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_ф_уб"":""0"",""заяв_дат_вр_приб"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_з_пр"":""0"",""мет_опр_масс"":""01"",""кол_мест_прием_ч"":0.5,""общ_св_сост"":""string"",""мас_брут_знач_прием"":0.5,""мас_нет_знач_прием"":0.5,""объем"":0.5,""адр_выгруз"":{""адр_коммент"":""string"",""глн"":""string"",""коорд"":{""широта"":""string"",""долгота"":""string""},""адрес_рф"":{""индекс"":""string"",""код_регион"":""[0-9]{2}"",""район"":""string"",""город"":""string"",""насел_пункт"":""string"",""улица"":""string"",""дом"":""string"",""корпус"":""string"",""кварт"":""string""},""адрес_инф"":{""код_стр"":""[0-9]{3}"",""адр_текст"":""string""},""код_гар"":""string""},""св_прин_по_наим"":[{""наим_груз"":""string"",""сост_груз"":""string"",""плотн"":0.5,""объем"":0.5,""кол_мест"":0.5,""пер_марк"":[""string""],""мас_груз"":{""мас_нет_знач"":0.5,""мас_брут_знач"":0.5,""кол_палл"":0.5}}],""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]},""отмет_гп"":[{""дат_вр_отмет"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_отм"":""0"",""обст_отмет"":""string"",""св_акт"":[{""наим_док"":""string"",""номер_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"",""ид_док"":""string"",""доп_свед_док"":""string"",""ид_рек_сост"":[{""иннюл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}"",""иннфл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}"",""данн_ино"":{""ид_стат"":""ЮЛ"",""стран"":""string"",""наим"":""string"",""идентиф"":""string"",""иные_свед"":""string"",""уд_личн_ин_фл"":{""вид_док"":""string"",""ном_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})""}},""наим_оив"":""string""}]}],""разм_штр"":[{""факт_кол_ед_изм"":""string"",""итог_разм_штр_рф"":0.5,""код_окв"":""[0-9]{3}"",""наим_окв"":""string"",""итог_разм_штр_ин"":0.5,""дата_курс_вал"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"",""курс_вал"":0.5,""расч_штр"":""string""}],""св_акт_взв"":[{""наим_док"":""string"",""номер_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"",""ид_док"":""string"",""доп_свед_док"":""string"",""ид_рек_сост"":[{""иннюл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}"",""иннфл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}"",""данн_ино"":{""ид_стат"":""ЮЛ"",""стран"":""string"",""наим"":""string"",""идентиф"":""string"",""иные_свед"":""string"",""уд_личн_ин_фл"":{""вид_док"":""string"",""ном_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})""}},""наим_оив"":""string""}]}],""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]}],""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]}}}"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Формирование третьего титула (титула грузополучателя). XML-файл
Позволяет создать XML-файл третьего титула, чтобы в дальнейшем подписать и отправить его. Указывается отпечаток сертификата электронной подписи SHA-1 и номер МЧД (если есть).
Генерация третьего титула (XML-файл) post /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3/xml
Схема тела запроса для генерации xml, необходимая для генерации полномочий подписанта
Идентификатор сертификата
Идентификатор МЧД
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3/xml' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"certificate_id":"string","power_of_attorney_id":"string"}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3/xml", "{""certificate_id"":""string"",""power_of_attorney_id"":""string""}"); 200 Successful Response
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Отправка третьего титула (титула грузополучателя)
Позволяет отправить третий титул ЭТрН в ГИС (в Государственную информационную систему) и контрагентам. После отправки титула в ГИС, ЭТрН меняет свой статус на “title_3_waiting_operator”. После получения третьего титула ГИС проводит валидацию титула:
- если валидация пройдена — титул поступает контрагентам, статус ЭТрН меняется на “title_3_success”;
- если валидация не пройдена — статус ЭТрН меняется вновь на “title_2_success” и третий титул контрагентам не поступает. При отправке необходимо указать строку подписи прикладываемого XML-файла третьего титула в формате base64.
Отправка третьего титула post /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3/send
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3/send' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: multipart/form-data; boundary=boundary'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_3/send"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Работа с четвёртым титулом ЭТрН (титулом перевозчика)
Сохранение черновика четвёртого титула (титула перевозчика). JSON
Позволяет сохранить данные четвёртого титула. В теле передаётся JSON в утверждённом законодательством формате.
Сохранение черновика четвёртого титула put /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4' \ -X 'PUT' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"верс_форм":"5.01","ид_пол_иной":["string"],"документ":{"кнд":"1110342","сод_прв_выд":{"зам_прв_выд":{"зам_дата_вр_приб":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_пр":"0","зам_дат_вр_убыт":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_уб":"0","зам_дат_вр_пос_выгр":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_выгр":"0","зам_сост_груз":"string","зам_раб_выгр":"string","инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]},"отмет_прв_выд":[{"дат_вр_отмет":"(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))","нал_коор_точ_вр_отм":"0","обст_отмет":"string","отм_акт_взв":"string","св_акт":[{"наим_док":"string","номер_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})","ид_док":"string","доп_свед_док":"string","ид_рек_сост":[{"иннюл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}","иннфл":"([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}","данн_ино":{"ид_стат":"ЮЛ","стран":"string","наим":"string","идентиф":"string","иные_свед":"string","уд_личн_ин_фл":{"вид_док":"string","ном_док":"string","дата_док":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"}},"наим_оив":"string"}]}],"разм_штр":[{"факт_кол_ед_изм":"string","итог_разм_штр_рф":0.5,"код_окв":"[0-9]{3}","наим_окв":"string","итог_разм_штр_ин":0.5,"дата_курс_вал":"(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})","курс_вал":0.5,"расч_штр":"string"}],"инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]}],"инф_пол":[{"ид_файл_инф_пол":"string","текст_инф":[{"идентиф":"string","значение":"string"}]}]}}}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("PUT", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4", "{""верс_форм"":""5.01"",""ид_пол_иной"":[""string""],""документ"":{""кнд"":""1110342"",""сод_прв_выд"":{""зам_прв_выд"":{""зам_дата_вр_приб"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_пр"":""0"",""зам_дат_вр_убыт"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_уб"":""0"",""зам_дат_вр_пос_выгр"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_выгр"":""0"",""зам_сост_груз"":""string"",""зам_раб_выгр"":""string"",""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]},""отмет_прв_выд"":[{""дат_вр_отмет"":""(((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\\.(01|0[3-9]{1}|1[0-2]{1}))|(31\\.(01|03|05|07|08|10|12)))\\.((19|20)[0-9]{2}))|(29\\.02\\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6))))))([T]([0-1]{1}[0-9]{1}|2[0-3]{1}):([0-5]{1}[0-9]{1}):([0-5]{1}[0-9]{1})([+-]([01][0-9])[:]([0-5][0-9])))"",""нал_коор_точ_вр_отм"":""0"",""обст_отмет"":""string"",""отм_акт_взв"":""string"",""св_акт"":[{""наим_док"":""string"",""номер_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"",""ид_док"":""string"",""доп_свед_док"":""string"",""ид_рек_сост"":[{""иннюл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}"",""иннфл"":""([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}"",""данн_ино"":{""ид_стат"":""ЮЛ"",""стран"":""string"",""наим"":""string"",""идентиф"":""string"",""иные_свед"":""string"",""уд_личн_ин_фл"":{""вид_док"":""string"",""ном_док"":""string"",""дата_док"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})""}},""наим_оив"":""string""}]}],""разм_штр"":[{""факт_кол_ед_изм"":""string"",""итог_разм_штр_рф"":0.5,""код_окв"":""[0-9]{3}"",""наим_окв"":""string"",""итог_разм_штр_ин"":0.5,""дата_курс_вал"":""(((0[1-9]{1}|[1-2]{1}[0-9]{1})\\.(0[1-9]{1}|1[0-2]{1}))|((30)\\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\\.(01|03|05|07|08|10|12)))\\.(19[0-9]{2}|20[0-9]{2})"",""курс_вал"":0.5,""расч_штр"":""string""}],""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]}],""инф_пол"":[{""ид_файл_инф_пол"":""string"",""текст_инф"":[{""идентиф"":""string"",""значение"":""string""}]}]}}}"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Формирование четвёртого титула (титула перевозчика). XML-файл
Позволяет создать XML-файл четвёртого титула, чтобы в дальнейшем подписать и отправить его. Указывается отпечаток сертификата электронной подписи SHA-1 и номер МЧД (если есть).
Генерация четвёртого титула (XML-файл) post /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4/xml
Схема тела запроса для генерации xml, необходимая для генерации полномочий подписанта
Идентификатор сертификата
Идентификатор МЧД
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4/xml' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '{"certificate_id":"string","power_of_attorney_id":"string"}'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4/xml", "{""certificate_id"":""string"",""power_of_attorney_id"":""string""}"); 200 Successful Response
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Отправка четвёртого титула (титула перевозчика)
Позволяет отправить четвёртый титул ЭТрН в ГИС (в Государственную информационную систему) и контрагентам. После отправки титула в ГИС, ЭТрН меняет свой статус на “title_4_waiting_operator”. После получения четвёртого титула ГИС проводит валидацию титула:
- если валидация пройдена успешно, то титул поступает контрагентам, статус ЭТрН меняется на “title_4_success”;
- если валидация не пройдена — статус ЭТрН меняется вновь на “title_3_success” и четвёртый титул контрагентам не поступает. При отправке необходимо указывать строку подписи прикладываемого XML-файла четвёртого титула в формате base64.
Отправка четвёртого титула post /gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4/send
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4/send' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: multipart/form-data; boundary=boundary'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/titles/title_4/send"); 200 Successful Response
Возвращает id документооборота
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Получение информации по ЭТрН
Поиск участников документооборота по ИНН
Позволяет получить данные участника документооборота по ИНН.
По умолчанию astral_stand = real. Для тестового стенда astral_stand = fake
Поиск участников по ИНН get /gw/epd/users/v1/participants
curl 'https://api.ati.su/gw/epd/users/v1/participants' \ -X 'GET' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("GET", "https://api.ati.su", "/gw/epd/users/v1/participants"); 200 Successful Response
Идентификатор astral_user
Идентификатор фирмы
Наименование участника
Идентификатор аккаунта АТИ
Идентификатор контакта аккаунта по умолчанию
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Получение метаинформации по ЭТрН
Позволяет получить метаинформацию по ЭТрН (подписанты, статус и т. д.).
Получение метаинформации по ЭТрН get /gw/epd/etrn/v1/docflows/{docflow_id}
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}' \ -X 'GET' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("GET", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}"); 200 Successful Response
Общая информация о документообороте
Все возможные состояния для документооборота ЭТрН
Грузоотправитель
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Область полномочий
An enumeration.
An enumeration.
An enumeration.
Основные полномочия
Основные полномочия организации
Должность
Перевозчик
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Область полномочий
An enumeration.
An enumeration.
An enumeration.
Основные полномочия
Основные полномочия организации
Должность
Грузополучатель
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Описывает схему документа в MongoDB. Все вложенные в схему документы должны наследоваться от этого класса.
Область полномочий
An enumeration.
An enumeration.
An enumeration.
Основные полномочия
Основные полномочия организации
Должность
Список флагов
Схема с историей документа в методе получения мета информации
Информация о подписи в истории
Информация относящаяся к интеграции с водителем
Телефон выбранного водителя
Возможные решения водителя по этрн
Дата и время принятия решения водителем
Причина отказа водителя
Нужно ли отправлять ЭТРН в АТИ Водитель автоматически при подписании первого титула
Отправлен ли уже ЭТРН в АТИ Водитель
Точка погрузки
Дата и время прибытия в точку
Дата и время отбытия из точки
Дата и время изменения статуса
Примечание, формат key1=value1;key2=value2
Точка разгрузки
Дата и время прибытия в точку
Дата и время отбытия из точки
Дата и время изменения статуса
Примечание, формат key1=value1;key2=value2
Номер ЭТРН
Дата заполнения ЭТРН
История платежей
Завершен ли флоу для титула успешно
Завершен ли флоу для титула успешно
Завершен ли флоу для титула успешно
Завершен ли флоу для титула успешно
Завершен ли флоу для титула успешно
Завершен ли флоу для титула успешно
Завершен ли флоу для титула успешно
Завершен ли флоу для титула успешно
An enumeration.
Имя шаблона
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Получение ключа доступа к печатной форме и QR-коду
Позволяет получить ключ доступа, необходимый для скачивания файлов печатной формы и QR-кода. Если файл печатной формы или QR-кода ранее не генерировался, то для успешного ответа потребуется время — вызов метода надо будет повторить.
Получение ключа доступа для скачивания печатной формы и QR-кода post /gw/epd/etrn/v1/docflows/{docflow_id}/files/{doc_type}
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/files/{doc_type}' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/files/{doc_type}"); 200 Successful Response
Возвращает id файла
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки
Скачивание файла печатной формы и QR-кода
Позволяет скачивать файлы печатной формы и QR-кода. Требуется ключ доступа из метода выше.
Скачивание файлов печатной формы и QR-кода get /gw/epd/etrn/v1/docflows/{docflow_id}/files/{file_key}
curl 'https://api.ati.su/gw/epd/etrn/v1/docflows/{docflow_id}/files/{file_key}' \ -X 'GET' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("GET", "https://api.ati.su", "/gw/epd/etrn/v1/docflows/{docflow_id}/files/{file_key}"); 200 Successful Response
422 Validation Error
Путь до поля, вызвавшего ошибку
Расшифровка ошибки
Тип ошибки