Описание API
Данный API предоставляет программный доступ к справочной информации, а именно к классификатору товаров, работ и услуг, а также к связанным с ними шаблонам характеристик.
API позволяет:
- Получить полную иерархическую структуру классификатора (классы, коды, наименования).
- Получить шаблон характеристик для конкретного класса, включая список параметров, их типы, единицы измерения, возможные значения и готовые шаблоны наименований.
Ответы возвращаются в структурированном формате XML.
Базовый URL API:
https://ecnsi.ru/api2/Формат всех запросов:
[Базовый URL]?key=[API_ключ]&req=[Название_метода]&[доп. параметры]
Аутентификация
Для доступа к API требуется API-ключ. Он передается в качестве обязательного параметра key в строке запроса для каждого вызова.
Важно: Храните ваш API-ключ в секрете. Не передавайте его в клиентском коде (JavaScript, мобильные приложения) без необходимости. Для тестирования используйте предоставленный тестовый ключ.
Запросы API
API предоставляет два метода для получения данных.
Запрос KOST_GetClass - Получение классификатора
Позволяет получить весь иерархический список классов (категорий).
Описание запроса
- Метод: GET
- URL: https://ecnsi.ru/api2/
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| key | string | Да | Ваш кникальный ключ доступа |
| req | string | Да | Название метода метода: 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/
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| key | string | Да | Ключ доступа к API |
| req | string | Да | Название метода метода: KOST_GetTemplate |
| ClassId | integer | Да | Идентификатор класса из классификатора |
Пример запроса
"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" - Успешное выполнение
- Другие значения типа - различные ошибки
