Описание API ЕАИСТО-М

WEB-DK.RU

Для взаимодействия с ЕАИСТО через API используется приложение-коннектор EAISTO Client Agent — локальный HTTP-сервис для 1С с подписанием через КриптоПро. Актуальная версия: v0.2.32.

Запросить дистрибутив Установщик выдаётся после подключения подписки

После установки запустите агент, укажите на вкладке «Аккаунт» API-ключ коннектора из личного кабинета web-dk.ru и запустите локальный сервис. Базовый URL API по умолчанию: http://localhost:8080/api5/ecp1c/ (порт настраивается в приложении). Во всех запросах 1С передаётся параметр accesstoken — тот же ключ, что в личном кабинете.

Новое API для взаимодействия с системой ЕАИСТО-М. Для получения диагностической карты нужно выполнить последовательно методы: captcha — возвращает картинку с капчей, send — создаст черновик в ЕАИСТО и загрузит первое фото, начав отсчёт времени в ЕАИСТО, send — с вторым фото, и затем метод sign — подпишет черновик и вернёт карту в формате PDF.

Поддерживаются два префикса URL: legacy /api5/ecp1c/ (для совместимости с 1С) и современный /api/. Пример: /api5/ecp1c/captcha = /api/captcha.

Методы

0. Проверка состояния агента (без авторизации)

GET http://localhost:8080/api5/ecp1c/status

Возвращает JSON

  • версия агента, статус сервиса, EAISTO, подписки и обновлений
  • метод доступен без accesstoken

1. Инициализация сессии и получение картинки с капчей

GET http://localhost:8080/api5/ecp1c/captcha?accesstoken=API_КЛЮЧ

Возвращает JSON

  • captcha — base64 картинки капчи
  • EAISTO_SESSION — идентификатор сессии ЕАИСТО
  • jwtToken — токен, который необходимо подписать и отправить в параметре sign метода send

2. Отправка черновика

POST http://localhost:8080/api5/ecp1c/send?EAISTO_SESSION=сессия_еаисто&captcha=код_каптчи&accesstoken=API_КЛЮЧ

Параметры

  • json — обязательный, данные карты в виде json
  • sign — обязательный, строка возвращаемая методом CAdESCOM.CadesSignedData.SignCades, в качестве подписываемых данных выступает jwtToken (Base64.Encode)
  • image1 — обязательный, при начале диагностики, файл фото в начале осмотра в виде строки base64
  • image2 — обязательный, при завершении диагностики, файл фото в конце осмотра в виде строки base64
  • id — обязательный, идентификатор в ЕАИСТО, если новая карта, то 0

Параметр json

{
  "operator": "номер оператора техосмотра по реестру",
  "card": {
    "BodyNumber": "номер кузова",
    "RegistrationNumber": "рег знак",
    "VehicleCategory2": "категория, например, M1",
    "VehicleCategory": "категория, например, B",
    "RegistrationDocument": {
      "DocumentType": "тип документа: RegTalon - СТС, PTS - ПТС, EPTS - ЭПТС",
      "Series": "серия документа",
      "Number": "номер документы",
      "Organization": "кем выдан документ",
      "Date": "дата выдачи в формате, 2004-01-01",
      "Foreign": "если иностранец, то Y, иначе N"
    },
    "Killometrage": "пробег",
    "Fuel": "топливо: Petrol, Diesel, PressureGas, LiquefiedGas, None",
    "BrakingSystem": "тормозная система: Hydraulic, Mechanical, Pneumatic, Combined",
    "Vehicle": {
      "Make": "марка",
      "Model": "модель"
    },
    "Vin": "VIN номер",
    "Year": "год выпуска",
    "FrameNumber": "номер рамы",
    "EmptyMass": "масса без нагрузки",
    "MaxMass": "максимальная масса",
    "Tyres": "модель шин",
    "Tachograph": {
      "Brand": "марка тахографа",
      "Model": "модель тахографа",
      "SerialNumber": "serийный номер тахографа"
    },
    "comment": "примечание",
    "diagnosticType": "вид проверки: первичная или повторная",
    "parentCardId": "идентификатор карты первичного осмотра в ЕАИСТО",
    "gibddEmployeeCode": "код инспектора ГИБДД для автобусов",
    "specialAppointment": "",
    "diagnosticResults": [
      {
        "number": "номер пункта ДК, по которому установлена неисправность",
        "failed": true,
        "razdel": "порядковый номер раздела диагностической карты, от 0 до 6",
        "predmet": "предмет проверки диагностической карты",
        "bottom": "нижнее допустимое значение проверяемого параметра",
        "top": "верхнее допустимое значение проверяемого параметра",
        "result": "результат проверки параметра"
      }
    ],
    "gbo": {
      "hasGasEquipment": true,
      "gasEquipmentTestNumber": "1233333",
      "gasEquipmentTestNextDate": "2021-05-03",
      "noGasBottle": false,
      "gasBottleSerialNumber": "1234",
      "gasBottleTestDate": "2021-05-06",
      "gasBottleTestNextDate": "2021-05-06",
      "gasBottleYear": "2005"
    }
  }
}

Возвращает JSON

  • id — идентификатор созданной карты в ЕАИСТО
  • digest — хэш для подписания карты
  • EAISTO_SESSION — идентификатор сессии ЕАИСТО
  • data — json с данными карты из ЕАИСТО
  • ts — timestamp из ЕАИСТО

3. Подписание карты и получение печатной формы и номера ЕАИСТО

POST http://localhost:8080/api5/ecp1c/sign?id=id_карты&EAISTO_SESSION=сессия_еаисто&ts=таймстамп&accesstoken=API_КЛЮЧ

Параметры

  • id — обязательный, идентификатор карты в ЕАИСТО
  • EAISTO_SESSION — обязательный, идентификатор сессии в ЕАИСТО
  • ts — обязательный, временная метка из метода send
  • sign — обязательный, подпись digest через CAdESCOM

Возвращает JSON

  • id — идентификатор созданной карты в ЕАИСТО
  • validity — срок действия карты
  • number — 15-ти значный номер в ЕАИСТО
  • pdf — base64 PDF

5. Получение карты или PDF по номеру / id

POST http://localhost:8080/api5/ecp1c/get-by-id?accesstoken=API_КЛЮЧ&EAISTO_SESSION=сессия_еаисто

Вспомогательные методы

1. Отправляет сообщение в WhatsApp на указанный номер

POST http://web-dk.ru/api4/wa/send?access-token=

Параметры

  • phone — обязательный
  • message — обязательный
Продолжая использовать https://v3.web-dk.ru, вы подтверждаете, что согласны с Политикой конфиденциальности, в том числе, с порядком использования cookie-файлов. OK