Описание API

Данный API предоставляет программный доступ к справочной информации, а именно к классификатору товаров, работ и услуг, а также к связанным с ними шаблонам характеристик.

API позволяет:

  • Получить полную иерархическую структуру классификатора (классы, коды, наименования).
  • Получить шаблон характеристик для конкретного класса, включая список параметров, их типы, единицы измерения, возможные значения и готовые шаблоны наименований.

Ответы возвращаются в структурированном формате XML.

Базовый URL API:

https://ecnsi.ru/api2/

Формат всех запросов:

GET

[Базовый URL]?key=[API_ключ]&req=[Название_метода]&[доп. параметры]

Аутентификация

Для доступа к API требуется API-ключ. Он передается в качестве обязательного параметра key в строке запроса для каждого вызова.

Важно: Храните ваш API-ключ в секрете. Не передавайте его в клиентском коде (JavaScript, мобильные приложения) без необходимости. Для тестирования используйте предоставленный тестовый ключ.

Запросы API

API предоставляет два метода для получения данных.

Запрос KOST_GetClass - Получение классификатора

Позволяет получить весь иерархический список классов (категорий).

Описание запроса

  • Метод: GET
  • URL: https://ecnsi.ru/api2/
ПараметрТипОбязательныйОписание
keystringДаВаш кникальный ключ доступа
reqstringДаНазвание метода метода: KOST_GetClass

Пример запроса

"https://ecnsi.ru/api2/?key=[API_ключ]&req=KOST_GetClass"

Структура успешного ответа (XML)

<result>
  <report key="..." ukey="" method="KOST_GetClass">
    <Status type="1" val="Успешно"/>
    <Time create="2026-01-28 16:19:23" lead="0.1194 sec."/>
    <Company Id="0" Name="Тестовая компания"/>
    <Error code="" val=""/>
  </report>
  <Items count_all="500" count_curent="500" limit="10" page_all="50" page_curent="0">
    <Item>
      <Id>21661</Id>
      <Parent>0</Parent>
      <Code>001</Code>
      <Name>Металлопрокат</Name>
      <DateUpdate>2024-02-16 14:05:25</DateUpdate>
    </Item>
    <!-- ... другие элементы ... -->
  </Items>
</result>

Описание полей ответа

Раздел <report>:

  • Status - статус выполнения запроса
    • type="1" - успешное выполнение
    • val - текстовое описание статуса
  • Time - информация о времени выполнения
    • create - дата и время создания отчета
    • lead - время выполнения запроса
  • Company - информация о компании
  • Error - информация об ошибках (пусто при успешном выполнении)

Раздел <Items>:

  • count_all - общее количество элементов в классификаторе
  • count_curent - количество элементов в текущем ответе
  • limit - максимальное количество элементов на страницу
  • page_all - общее количество страниц
  • page_curent - текущая страница (0-based)

Элемент <Item>:

  • Id - уникальный идентификатор элемента
  • Parent - идентификатор родительского элемента (0 для корневых)
  • Code - код элемента в иерархии (например, "001.A1.B1.C1")
  • Name - название элемента
  • DateUpdate - дата и время последнего обновления

Запрос KOST_GetTemplate - Получение шаблона характеристик

Описание запроса

  • Метод: GET
  • URL: https://ecnsi.ru/api2/
ПараметрТипОбязательныйОписание
keystringДаКлюч доступа к API
reqstringДаНазвание метода метода: KOST_GetTemplate
ClassIdintegerДаИдентификатор класса из классификатора

Пример запроса

"https://ecnsi.ru/api2/?key=[API_ключ]&req=KOST_GetTemplate&ClassId=117124"

Структура успешного ответа (XML)

<result>
  <report key="..." ukey="" method="KOST_GetTemlate">
    <Status type="1" val="Успешно"/>
    <Time create="2026-01-28 16:17:46" lead="0.1899 sec."/>
    <Company Id="0" Name="Тестовая компания"/>
    <Error code="" val=""/>
  </report>
  <Items count_all="" count_curent="1" limit="10" page_all="0" page_curent="0">
    <Item>
      <!-- Блок с ПАРАМЕТРАМИ ХАРАКТЕРИСТИК -->
        <Params>
          <Item Id="137561" Type="Число" Name="Дальность действия">
            <Code Value="044.A4.C3.D1.E2-000:1.0.0-1.1-11.1.0.0:8.147-1.1610.1-0">
              <Product>044.A4.C3.D1.E2-000</Product>
              <Communication>1.0.0-1.1-11.1.0.0</Communication>
              <Parameter>8.147-1.1610.1-0</Parameter>
              <Id>137561</Id>
              <Hash>9EFD207A640FDE8C02DFEB0CE2370579</Hash>
            </Code>
            <Classification>
              <Group Id="8" Name="Технические"/>
              <Type Id="147" Name="Механические"/>
            </Classification>
            <Unit>
              <Type Id="8" Name="Метр (м)" Nominal="м"/>
            </Unit>
          </Item>
          <!-- ... другие параметры ... -->
        </Params>
        <!-- Блок с ШАБЛОНАМИ НАИМЕНОВАНИЙ -->
        <Templates Default="7299">
          <Item Id="7299" Name="Фотоэлемент инфракрасный проводной рефлекторный" Document="">
            <Values/>
          </Item>
        </Templates>
    </Item>
  </Items>
</result>

Описание полей ответа

Раздел <Params> - список параметров характеристик:

Элемент параметра (<Item> внутри <Params>

  • Id - уникальный идентификатор параметра
  • Type - тип значения параметра:
    • Число - числовое значение
    • Справочник - значение из справочника
    • и другие возможные типы
  • Name - название параметра

Подразделы параметра:

  • Code - структурированный код параметра
    • Value - полное строковое значение
    • Product - код продукта
    • Communication - код связи
    • Parameter - код параметра
    • Id - идентификатор
    • Hash - хэш-значение
  • Classification - классификация параметра
    • Group - группа параметров (Id, Name)
    • Type - тип параметров (Id, Name)
  • Unit - единица измерения (только для Type="Число")
    • Type - тип параметров (Id, Name, Nominal)
  • Values - допустимые значения (только для Type="Справочник")
    • Item - элемент справочника (Id, Name)

Раздел Templates - шаблоны наименований:

  • Default - идентификатор шаблона по умолчанию
  • Item - Шаблон наименования
    • Id - идентификатор шаблона
    • Name - название шаблона
    • Document - ссылка на документацию (может быть пустой)
    • Values - порядок характеристик

Коды статусов:

  • type="1" - Успешное выполнение
  • Другие значения типа - различные ошибки