Справочники
- GET/catalogs/{catalog-id}Получение справочника
- GET/catalogsПолучение всех справочников
- PUT/catalogsСоздание справочника
- POST/catalogs/{catalog-id}Синхронизация справочника
- POST/catalogs/{catalog-id}/diffИзменение справочника
GET /catalogs/{catalog-id}
Метод возвращает справочник со всеми элементами.
GET https://api.pyrus.com/v4/catalogs/422?include_deleted
Тело ответа
{ "catalog_id": 6625, "name": "Clients", "catalog_headers": [ { "name": "Name", "type": "text" }, { "name": "Company", "type": "text" } ], "items": [ { "item_id": 15200, "values": [ "Reatha Middendorf", "Acme, inc." ] }, { "item_id": 15201, "values": [ "Daedra Ullrich", "Widget Corp" ] }, { "item_id": 15202, "values": [ "Andy Mahn", "123 Warehousing" ] } ] }
curl
curl -X GET \ https://api.pyrus.com/v4/catalogs/422?include_deleted \ -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \ -H 'Content-Type: application/json'
Параметры
include_deleted | Добавляет удаленные элементы справочника в результаты запроса. Доступно только пользователям с правами администратора организации. |
GET /catalogs
Метод возвращает все справочники без элементов.
GET https://api.pyrus.com/v4/catalogs
Тело ответа
{ "catalogs": [ { "catalog_id": 31816, "name": "Catalog1", "version": 151199, "deleted": false, "supervisors": [ 1731 ], "external_version": 0 }, { "catalog_id": 31817, "name": "Catalog2", "version": 109104, "deleted": false, "external_version": 0 } ] }
curl
curl -X GET \ https://api.pyrus.com/v4/catalogs \ -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \ -H 'Content-Type: application/json'
PUT /catalogs
Создание справочника. Метод возвращает созданный справочник со всеми элементами.
PUT https://api.pyrus.com/v4/catalogs
Тело запроса
{ "name": "Clients", "catalog_headers": [ "Name", "Company" ], "items": [ { "values": [ "Reatha Middendorf", "Acme, inc." ] }, { "values": [ "Daedra Ullrich", "Widget Corp" ] }, { "values": [ "Andy Mahn", "123 Warehousing" ] } ] }
Тело ответа
{ "catalog_id": 6625, "name": "Clients", "catalog_headers": [ { "name": "Name", "type": "text" }, { "name": "Company", "type": "text" } ], "items": [ { "item_id": 15200, "values": [ "Reatha Middendorf", "Acme, inc." ] }, { "item_id": 15201, "values": [ "Daedra Ullrich", "Widget Corp" ] }, { "item_id": 15202, "values": [ "Andy Mahn", "123 Warehousing" ] } ] }
curl
curl -X PUT \ https://api.pyrus.com/v4/catalogs/ \ -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \ -H 'Content-Type: application/json' \ -d '{ "name": "Clients", "catalog_headers": [ "Name", "Company" ], "items": [ { "values": [ "Reatha Middendorf", "Acme, inc." ] }, { "values": [ "Daedra Ullrich", "Widget Corp" ] }, { "values": [ "Andy Mahn", "123 Warehousing" ] } ] }'
POST /catalogs/{catalog-id}
Синхронизация справочника. Метод обновляет значения и заголовки справочника. Необходимо передать все значения и текстовые колонки, которые должны остаться в справочнике. Все неуказанные в запросе значения и текстовые колонки будут удалены. Колонки маршрутизации добавить/удалить с помощью этого запроса нельзя. Можно только изменить значения для существующей колонки маршрутизации. Для этого ее нужно явно передать в списке колонок. Первая колонка справочника является ключевой. Поэтому изменить ее название нельзя. Метод возвращает список значений, которые были добавлены/изменены/удалены.
POST https://api.pyrus.com/v4/catalogs/6625
Тело запроса
{ "apply": true, "catalog_headers": [ "Name", "Company" ], "items": [ { "values": [ "Reatha Middendorf", "Acme" ] }, { "values": [ "Daedra Ullrich", "Widget Corp" ] }, { "values": [ "Jean Overturf", "Demo Company" ] } ] }
Тело ответа
{ "apply": true, "added": [ { "item_id": 15205, "values": [ "Jean Overturf", "Demo Company" ] } ], "deleted": [ { "item_id": 15202, "values": [ "Andy Mahn", "123 Warehousing" ] } ], "updated": [ { "item_id": 15200, "values": [ "Reatha Middendorf", "Acme" ] } ], "catalog_headers": [ { "name": "Name", "type": "text" }, { "name": "Customer Company", "type": "text" } ] }
curl
curl -X POST \ https://api.pyrus.com/v4/catalogs/6625 \ -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \ -H 'Content-Type: application/json' \ -d '{ "apply": true, "catalog_headers": [ "Name", "Company" ], "items": [ { "values": [ "Reatha Middendorf", "Acme" ] }, { "values": [ "Daedra Ullrich", "Widget Corp" ] }, { "values": [ "Jean Overturf", "Demo Company" ] } ] }'
Параметры
apply | Укажите true если хотите обновить справочник и false если хотите только посчитать, какие элементы будут добавлены/удалены/обновлены. |
catalog_headers | Список колонок. Все неперечисленные текстовые колонки будут удалены. |
items | Список значений. Все неперечисленные значения будут удалены. |
POST /catalogs/{catalog-id}/diff
Изменение справочника. Метод позволяет добавлять новые, изменять или удалять существующие записи справочника. Первая колонка справочника является ключевой. Для добавления или изменения записей передается массив значений этих записей. Для удаления передается только список ключей. Метод возвращает список значений, которые были добавлены, изменены или удалены (аналогично методу синхронизации справочника).
POST https://api.pyrus.com/v4/catalogs/6625/diff
Тело запроса
{ "upsert": [ { "values": [ "Reatha Middendorf", "Acme" ] }, { "values": [ "Daedra Ullrich", "Widget Corp" ] }], "delete": ["Jean Overturf"] }
Тело ответа
{ "apply": true, "added": [ { "item_id": 24807, "values": [ "Daedra Ullrich", "Widget Corp" ] }], "deleted": [ { "item_id": 23169, "values": [ "Jean Overturf", "Demo Company" ] }], "updated": [ { "item_id": 23178, "values": [ "Reatha Middendorf", "Acme" ] }], "catalog_headers": [ { "name": "Name", "type": "text" }, { "name": "Company name", "type": "text" }] } { "apply": true, "added": [ { "item_id": 24807, "values": [ "Daedra Ullrich", "Widget Corp" ] }], "deleted": [ { "item_id": 23169, "values": [ "Jean Overturf", "Demo Company" ] }], "updated": [ { "item_id": 23178, "values": [ "Reatha Middendorf", "Acme" ] }], "catalog_headers": [ { "name": "Name", "type": "text" }, { "name": "Company name", "type": "text" }] }
curl
curl -X POST \ https://api.pyrus.com/v4/catalogs/6625/diff \ -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \ -H 'Content-Type: application/json' \ -d '{ "upsert": [ { "values": [ "Reatha Middendorf", "Acme" ] }, { "values": [ "Daedra Ullrich", "Widget Corp" ] }], "delete": ["Jean Overturf"] }'
Параметры
upsert | Список значений записей для добавления и изменения. |
delete | Список ключей (значения первой колонки) для удаления. |