Skip to content

Конфигуратор API v1 ​

http
GET /api/v1/get/item/:id/configurator
Authorization: Bearer <JWTToken>

Маршрут доступен администратору или пользователю с configurator=true. id — UMI object ID товара.

Успешный ответ ​

Сокращенный пример сохраняет точную корневую форму production-ответа:

json
{
  "status": true,
  "data": {
    "enabled": true,
    "itemId": 57114409,
    "installed": {
      "id": "3133ee0e-87ff-11ea-b88d-00155d50c701",
      "name": "Неизменяемые опции",
      "size": 0,
      "multiple": false,
      "empty": false,
      "options": []
    },
    "categories": [
      {
        "id": "da76e7bc-bc3c-11ed-b8a2-00155d50c111",
        "name": "Дополнительные опции",
        "size": 4,
        "multiple": true,
        "empty": true,
        "options": []
      }
    ],
    "options": {}
  },
  "error": {},
  "message": ""
}

installed содержит неизменяемую часть комплектации, categories — группы выбираемых опций, а options — справочник полных данных опций по их 1С ID.

Опция ​

json
{
  "objectId": 57114889,
  "name": "NFC /NFC",
  "oneCId": "option-id",
  "article": "00-06156794",
  "stockAmount": 0,
  "stores": [],
  "priceData": {
    "price": 55.51,
    "opt_price": 54.72,
    "diler_price": 53.94,
    "optovaya": 53.16,
    "krupnyj_opt": 52.32,
    "dilerskaya": 50.76,
    "krupnyj_diler": 49.56,
    "partnerskaya": 45.6
  },
  "price": 55.51,
  "personalPrice": 50.76
}

price всегда содержит розничную цену, а personalPrice выбирается по priceLevel пользователя. Для уровня Розн оба значения совпадают. Исходный priceData сохраняется ради совместимости.

Товар без конфигуратора ​

json
{
  "enabled": false,
  "itemId": 123,
  "installed": null,
  "categories": [],
  "options": {}
}

Нет доступа ​

Маршрут возвращает HTTP 200 и ошибку:

json
{
  "status": false,
  "data": {},
  "error": {
    "name": "ConfiguratorAccessError",
    "code": 1003,
    "text": "У вас не достаточно прав для доступа к конфигуратору"
  },
  "message": ""
}

Выберите версию API в верхнем меню.