Справочники

Облачный Pyrus
Безоблачный Pyrus

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Список значений. Все неперечисленные значения будут удалены.

Была ли эта статья полезной?