Работа со справочниками
Получение справочников
Общее описание
Функция GET /v6/api/catalogManagement/catalogs позволяет получить список справочников.
Параметры вызова
Функция не имеет дополнительных параметров.
Результат выполнения
Функция возвращает массив структур с параметрами справочников:
| Параметр | Описание |
|---|---|
| catalogExternalID | Внешний ИД справочника |
| templateID | ИД шаблона справочника |
| version | Версия справочника |
| creationDate | Дата создания справочника (подробнее о формате времени). |
| lastModificationDate | Дата последнего изменения справочника (подробнее о формате времени). |
| title | Название справочника |
| description | Описание справочника |
| hasItems | Есть ли записи в справочнике. Существуют следующие значения:
|
Формат запроса
GET /v6/api/catalogManagement/catalogs HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/catalogManagement/catalogs HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
\{
"catalogs": [
\{
"catalogExternalID": "string",
"templateID": integer,
"version": integer,
"creationDate": "string",
"lastModificationDate": "string",
"title": "string",
"description": "string",
"hasItems": boolean
},
\{
"catalogExternalID": "string",
"templateID": integer,
"version": integer,
"creationDate": "string",
"lastModificationDate": "string",
"title": "string",
"description": "string",
"hasItems": boolean
}
]
}Пример ответа
\{
"catalogs": [
\{
"catalogExternalID": "c9a8bf1e-9327-464b-a0a7-5522044d1367",
"templateID": 2,
"version": 0,
"creationDate": "2024-03-22T12:11:46.697+03:00",
"lastModificationDate": "2024-03-22T12:11:46.877+03:00",
"title": "Расходные материалы",
"description": "Расходные материалы",
"hasItems": true
},
\{
"catalogExternalID": "ae029ba7-3668-4a07-80b8-9876e195bf62",
"templateID": 3,
"version": 2,
"creationDate": "2023-08-01T06:38:22.79+03:00",
"lastModificationDate": "2023-08-01T06:57:53.383+03:00",
"title": "Автоматика и диспетчеризация",
"description": "Автоматика и диспетчеризация",
"hasItems": true
}
]
}Получение справочника
Общее описание
Функция GET /v6/api/catalogManagement/catalogs/{catalogID} позволяет получить список справочников.
Параметры вызова
В запросе используется обязательный параметр catalogID — идентификатор справочника.
Результат выполнения
Функция возвращает структуру с параметрами справочника:
| Параметр | Описание |
|---|---|
| catalogExternalID | Внешний ИД справочника |
| templateID | ИД шаблона справочника |
| version | Версия справочника |
| creationDate | Дата создания справочника (подробнее о формате времени). |
| lastModificationDate | Дата последнего изменения справочника (подробнее о формате времени). |
| title | Название справочника |
| description | Описание справочника |
| hasItems | Есть ли записи в справочнике. Существуют следующие значения:
|
Формат запроса
GET /v6/api/catalogManagement/catalogs/\{catalogID} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/catalogManagement/catalogs/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
\{
"catalogExternalID": "string",
"templateID": integer,
"version": integer,
"creationDate": "string",
"lastModificationDate": "string",
"title": "string",
"description": "string",
"hasItems": boolean
}Пример ответа
\{
"catalogExternalID": "ae029ba7-3668-4a07-80b8-9876e195bf62",
"templateID": 3,
"version": 2,
"creationDate": "2023-08-01T06:38:22.79+03:00",
"lastModificationDate": "2023-08-01T06:57:53.383+03:00",
"title": "Автоматика и диспетчеризация",
"description": "Автоматика и диспетчеризация",
"hasItems": true
}Создание справочника
Общее описание
Функция POST /v6/api/catalogManagement/catalogs позволяет создать справочник.
Создать справочник может только пользователь с ролью «Администратор».
Параметры вызова
Функция имеет следующие параметры:
| Параметр | Описание |
|---|---|
| templateID | ИД шаблона справочника |
| title | Название справочника |
| description | Описание справочника |
Результат выполнения
Функция возвращает структуру с параметрами справочника:
| Параметр | Описание |
|---|---|
| catalogExternalID | Внешний ИД справочника |
| templateID | ИД шаблона справочника |
| version | Версия справочника |
| creationDate | Дата создания справочника (подробнее о формате времени). |
| lastModificationDate | Дата последнего изменения справочника (подробнее о формате времени). |
| title | Название справочника |
| description | Описание справочника |
| hasItems | Есть ли записи в справочнике. Существуют следующие значения:
|
Формат запроса
POST /v6/api/catalogManagement/catalogs HTTP/1.1
Host: host
Authorization: Bearer token
\{
"templateID": integer,
"title": "string",
"description": "string"
}Пример запроса
POST /v6/api/catalogManagement/catalogs HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token
\{
"templateID": 1,
"title": "Справочник",
"description": "Справочник клиентов"
}Формат ответа
\{
"catalogExternalID": "string",
"templateID": integer,
"version": integer,
"creationDate": "string",
"lastModificationDate": "string",
"title": "string",
"description": "string",
"hasItems": boolean
}Пример ответа
\{
"catalogExternalID": "ae029ba7-3668-4a07-80b8-9876e195bf62",
"templateID": 3,
"version": 2,
"creationDate": "2023-08-01T06:38:22.79+03:00",
"lastModificationDate": "2023-08-01T06:57:53.383+03:00",
"title": "Автоматика и диспетчеризация",
"description": "Автоматика и диспетчеризация",
"hasItems": true
}Редактирование справочника
Общее описание
Функция PATCH /v6/api/catalogManagement/catalogs/{catalogID} позволяет изменить название и описание справочника.
Редактировать справочник может только пользователь с ролью «Администратор».
Параметры запроса
Функция имеет следующие параметры:
| Параметр | Описание |
|---|---|
| catalogID | ИД справочника |
| templateID | ИД шаблона справочника |
| title | Название справочника |
| description | Описание справочника |
Результат выполнения
Функция возвращает структуру с параметрами справочника:
| Параметр | Описание |
|---|---|
| catalogExternalID | Внешний ИД справочника |
| creationDate | Дата создания справочника (подробнее о формате времени) |
| title | Название справочника |
| description | Описание справочника |
Формат запроса
PATCH /v6/api/catalogManagement/catalogs/\{catalogID} HTTP/1.1
Host: host
Authorization: Bearer token
\{
"title": "string",
"description": "string"
}Пример запроса
PATCH /v6/api/catalogManagement/catalogs/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token
\{
"title": "Справочник клиентов",
"description": "Клиенты всех филиалов"
}Формат ответа
\{
"catalogExternalID": "string",
"creationDate": "string",
"title": "string",
"description": "string"
}Пример ответа
\{
"catalogExternalID": "ae029ba7-3668-4a07-80b8-9876e195bf62",
"creationDate": "2023-08-01T06:38:22.79+03:00",
"title": "Справочник клиентов",
"description": "Клиенты всех филиалов"
}Удаление справочника
Общее описание
Функция DELETE /v6/api/catalogManagement/catalogs/{catalogID} позволяет удалить справочник по его идентификатору.
Удалить справочник может только пользователь с ролью «Администратор».
Параметры вызова
В запросе используется обязательный параметр catalogID — идентификатор справочника.
Результат выполнения
При успешном выполнении возвращается статус 204.
Формат запроса
DELETE /v6/api/catalogManagement/catalogs/\{catalogID} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
DELETE /v6/api/catalogManagement/catalogs/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenПолучение записей справочника
Общее описание
Функция GET /v6/api/catalogManagement/catalogs/{catalogID}/entries позволяет получить записи справочника по его идентификатору.
Параметры вызова
В запросе используется обязательный параметр catalogID — идентификатор справочника.
Результат выполнения
Функция возвращает массив структур с параметрами записей справочника:
| Параметр | Описание |
|---|---|
| entryID | ИД записи справочника |
| templateItemExternalID | ИД поля шаблона справочника |
| name | Название поля справочника |
| value | Значение поля справочника |
| values | Значения поля справочника (в случае множественного выбора из списка) |
| type | Тип поля справочника. Существуют следующие значения:
|
| subType | Подтип поля «Строка». Существуют следующие значения:
|
| fileName | Название вложенного файла |
| contentType | Тип вложенного файла |
| contentLength | Размер вложенного файла |
| version | Версия справочника |
| templateItemVersion | Версия поля шаблона |
Формат запроса
GET /v6/api/catalogManagement/catalogs/\{catalogID}/entries HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/catalogManagement/catalogs/1/entries HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
\{
"entries": [
\{
"entryID": "string",
"items": [
\{
"templateItemExternalID": "string",
"name": "string",
"value": "string",
"values": [
"string"
],
"type": integer,
"subType": integer,
"fileName": "string",
"contentType": "string",
"contentLength": integer,
"version": integer,
"templateItemVersion": integer
},
\{
"templateItemExternalID": "string",
"name": "string",
"value": "string",
"values": [
"string"
],
"type": integer,
"subType": integer,
"fileName": "string",
"contentType": "string",
"contentLength": integer,
"version": integer,
"templateItemVersion": integer
}
]
}
]
}Пример ответа
\{
"entries": [
\{
"entryID": "b089189d-1531-4c6b-bf0c-7faca5435856",
"items": [
\{
"templateItemExternalID": "1100061",
"name": "Наименование",
"value": "Моторное масло",
"values": null,
"type": 0,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 0,
"templateItemVersion": 1
},
\{
"templateItemExternalID": "1100065",
"name": "Стоимость (руб)",
"value": "2000",
"values": null,
"type": 4,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 0,
"templateItemVersion": 1
},
\{
"templateItemExternalID": "1100066",
"name": "Количество",
"value": "10 литров",
"values": null,
"type": 0,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 0,
"templateItemVersion": 1
}
]
}
]
}Получение записи справочника по ее идентификатору
Общее описание
Функция GET /v6/api/catalogManagement/catalogs/{catalogID}/entries/{entryID} позволяет получить запись справочника по ее идентификатору.
Параметры вызова
В запросе используются обязательные параметры:
| Параметр | Описание |
|---|---|
| catalogID | ИД справочника |
| entryID | ИД записи справочника |
Результат выполнения
Функция возвращает структуру с параметрами записи справочника:
| Параметр | Описание |
|---|---|
| entryID | ИД записи справочника |
| templateItemExternalID | ИД поля шаблона справочника |
| name | Название поля справочника |
| value | Значение поля справочника |
| values | Значения поля справочника (в случае множественного выбора из списка) |
| type | Тип поля справочника. Существуют следующие значения:
|
| subType | Подтип поля «Строка»:
|
| fileName | Название вложенного файла |
| contentType | Тип вложенного файла |
| contentLength | Размер вложенного файла |
| version | Версия справочника |
| templateItemVersion | Версия поля шаблона |
Формат запроса
GET /v6/api/catalogManagement/catalogs/\{catalogID}/entries/\{entryID} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/catalogManagement/catalogs/1/entries/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
\{
"entryID": "string",
"items": [
\{
"templateItemExternalID": "string",
"name": "string",
"value": "string",
"values": [
"string"
],
"type": integer,
"subType": integer,
"fileName": "string",
"contentType": "string",
"contentLength": integer,
"version": integer,
"templateItemVersion": integer
},
\{
"templateItemExternalID": "string",
"name": "string",
"value": "string",
"values": [
"string"
],
"type": integer,
"subType": integer,
"fileName": "string",
"contentType": "string",
"contentLength": integer,
"version": integer,
"templateItemVersion": integer
}
]
}Пример ответа
\{
"entryID": "b089189d-1531-4c6b-bf0c-7faca5435856",
"items": [
\{
"templateItemExternalID": "1100061",
"name": "Наименование",
"value": "Моторное масло",
"values": null,
"type": 0,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 0,
"templateItemVersion": 1
},
\{
"templateItemExternalID": "1100065",
"name": "Стоимость (руб)",
"value": "2000",
"values": null,
"type": 4,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 0,
"templateItemVersion": 1
},
\{
"templateItemExternalID": "1100066",
"name": "Количество",
"value": "10 литров",
"values": null,
"type": 0,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 0,
"templateItemVersion": 1
}
]
}Добавление записей в справочник
Общее описание
Функция POST /v6/api/catalogManagement/catalogs/{catalogID}/entries позволяет добавить записи в справочник.
Добавить запись в справочник могут только пользователи с ролью «Пользователь» (с разрешением «Разрешить редактирование записей справочников») или «Администратор».
Параметры вызова
Функция имеет следующие параметры:
| Параметр | Описание |
|---|---|
| catalogID | ИД справочника |
| templateItemExternalID | ИД поля шаблона справочника |
| value | Значение поля справочника |
| values | Значения поля справочника (в случае множественного выбора из списка) |
| fileName | Название вложенного файла |
| contentType | Тип вложенного файла |
| contentLength | Размер вложенного файла |
Результаты выполнения
Функция возвращает массив структур с параметрами добавленных и недобавленных записей справочника:
| Параметр | Описание |
|---|---|
| Параметры добавленных записей (addedEntries) | |
| entryID | ИД записи справочника |
| templateItemExternalID | ИД поля шаблона справочника |
| name | Название поля справочника |
| value | Значение поля справочника |
| values | Значения поля справочника (для множественного выбора) |
| type |
|
| subType | Подтип поля «Строка»: 0 — ввод текста. Подтип поля «Целое число»: 0 — ввод целого числа. Подтип поля «Вещественное число»: 0 — ввод числа с плавающей точкой. |
| fileName | Название вложенного файла |
| contentType | Тип вложенного файла |
| contentLength | Размер вложенного файла |
| version | Версия справочника |
| templateItemVersion | Версия поля шаблона |
| Параметры недобавленных записей (notAddedEntries) | |
| entryIndex | Номер записи в запросе, которая не была добавлена (начиная с 0) |
| errors | Описание ошибки |
Формат запроса
POST /v6/api/catalogManagement/catalogs/\{catalogID}/entries HTTP/1.1
Host: host
Authorization: Bearer token
\{
"entries": [
\{
"items": [
\{
"templateItemExternalID": "string",
"value": "string",
"values": [
"string"
],
"fileName": "string",
"contentType": "string",
"contentLength": integer
}
]
}
]
}Пример запроса
POST /v6/api/catalogManagement/catalogs/1/entries HTTP/1.1
Host: host
Authorization: Bearer token
\{
"entries": [
\{
"items": [
\{
"templateItemExternalID": "1100061",
"value": "Охлаждающая жидкость"
},
\{
"templateItemExternalID": "1100065",
"value": "10000"
},
\{
"templateItemExternalID": "1100066",
"value": "30 литров"
}
]
}
]
}Формат ответа
\{
"addedEntries": [
\{
"entryID": "string",
"items": [
\{
"templateItemExternalID": "string",
"name": "string",
"value": "string",
"values": integer,
"type": integer,
"subType": integer,
"fileName": integer,
"contentType": integer,
"contentLength": integer,
"version": integer,
"templateItemVersion": integer
},
\{
"templateItemExternalID": "string",
"name": "string",
"value": "string",
"values": integer,
"type": integer,
"subType": integer,
"fileName": integer,
"contentType": integer,
"contentLength": integer,
"version": integer,
"templateItemVersion": integer
}
]
}
],
"notAddedEntries": [
\{
"entryIndex": integer,
"errors": [
"string"
]
}
]
}Пример ответа
\{
"addedEntries": [
\{
"entryID": "104004",
"items": [
\{
"templateItemExternalID": "1100061",
"name": "Название",
"value": "Охлаждающая жидкость",
"values": null,
"type": 0,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 2,
"templateItemVersion": 1
},
\{
"templateItemExternalID": "1100065",
"name": "Цена",
"value": "1000",
"values": null,
"type": 0,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 2,
"templateItemVersion": 1
}
]
}
],
"notAddedEntries": [
\{
"entryIndex": 2,
"errors": [
"Введенное в поле «Артикул» значение имеет неверный формат"
]
}
]
}Редактирование записи справочника
Общее описание
Функция PATCH /v6/api/catalogManagement/catalogs/{catalogID}/entries/{entryID} позволяет изменить запись в справочнике.
Изменить запись могут только пользователи с ролью «Пользователь» (с разрешением «Разрешить редактирование записей справочников») или «Администратор».
Параметры вызова
| Параметр | Описание |
|---|---|
| catalogID | ИД справочника |
| entryID | ИД записи справочника |
| templateItemExternalID | ИД поля шаблона справочника |
| value | Значение поля справочника |
| values | Значения поля справочника (для множественного выбора) |
| fileName | Название вложенного файла |
| contentType | Тип вложенного файла |
| contentLength | Размер вложенного файла |
Результат выполнения
Функция возвращает структуру с параметрами записи справочника:
| Параметр | Описание |
|---|---|
| entryID | ИД записи справочника |
| templateItemExternalID | ИД поля шаблона справочника |
| name | Название поля справочника |
| value | Значение поля справочника |
| values | Значения поля справочника (для множественного выбора) |
| type |
|
| subType | Подтип поля «Строка»: 0 — ввод текста. Подтип поля «Целое число»: 0 — ввод целого числа. Подтип поля «Вещественное число»: 0 — ввод числа с плавающей точкой. |
| fileName | Название вложенного файла |
| contentType | Тип вложенного файла |
| contentLength | Размер вложенного файла |
| version | Версия справочника |
| templateItemVersion | Версия поля шаблона |
Формат запроса
PATCH /v6/api/catalogManagement/catalogs/\{catalogID}/entries/\{entryID} HTTP/1.1
Host: host
Authorization: Bearer token
[
\{
"templateItemExternalID": "string",
"value": "string",
"values": [
"string"
],
"fileName": "string",
"contentType": "string",
"contentLength": integer
}
]Пример запроса
PATCH /v6/api/catalogManagement/catalogs/1/entries/1 HTTP/1.1
Host: host
Authorization: Bearer token
[
\{
"templateItemExternalID": "1100061",
"value": "3000 руб."
}
]Формат ответа
\{
"entryID": "string",
"items": [
\{
"templateItemExternalID": "string",
"name": "string",
"value": "string",
"values": [
"string"
],
"type": integer,
"subType": integer,
"fileName": "string",
"contentType": "string",
"contentLength": integer,
"version": integer,
"templateItemVersion": integer
}
]
}Пример ответа
\{
"entryID": "1",
"items": [
\{
"templateItemExternalID": "1100061",
"name": "Цена",
"value": "3000 руб.",
"values": null,
"type": 0,
"subType": null,
"fileName": null,
"contentType": null,
"contentLength": null,
"version": 1,
"templateItemVersion": 1
}
]
}Удаление записи справочника
Общее описание
Функция DELETE /v6/api/catalogManagement/catalogs/{catalogID}/entries/{entryID} позволяет удалить запись из справочника.
Удалить запись может только пользователь с ролью «Администратор».
Параметры вызова
| Параметр | Описание |
|---|---|
| catalogID | ИД справочника |
| entryID | ИД записи справочника |
Результат выполнения
При успешном выполнении возвращается статус 204.
Формат запроса
DELETE /v6/api/catalogManagement/catalogs/\{catalogID}/entries/\{entryID} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
DELETE /v6/api/catalogManagement/catalogs/1/entries/1 HTTP/1.1
Host: host
Authorization: Bearer token