gamification.shop.product.list
Scope:
gamificationКто может вызывать: Только admin или manager. Подробнее: Права доступа
Постраничный список товаров магазина бонусов (в том числе неактивных).
HTTP: GET
Побочные эффекты: нет
Параметры метода
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
filter |
object |
нет | Фильтр в Mongo-стиле |
limit |
int |
нет | Размер страницы, по умолчанию 50, максимум 500 |
offset |
int |
нет | Смещение, по умолчанию 0 |
fetchAll |
bool |
нет | Вернуть все записи одним ответом (защитный лимит 5000) |
Возвращаемые данные
result.result — массив товаров. result.total — общее количество.
Кроме основных полей каждый товар содержит поля вариантов (значения для всех товаров страницы вычисляются одним запросом):
| Поле | Тип | Описание |
|---|---|---|
PRODUCT_TYPE |
string |
Тип товара: product — простой товар, sku — товар с вариантами, empty_sku — товар с вариантами, у которого варианты ещё не созданы |
HAS_OFFERS |
bool |
true для товара с вариантами (sku, empty_sku). Цена, остаток и покупка такого товара определяются его вариантами |
PRICE_FROM |
float |
Минимальная цена BAL среди активных вариантов с ценой; для простого товара равна PRICE; 0, если вариантов с ценой нет |
PRICE_TO |
float |
Максимальная цена BAL среди активных вариантов с ценой; для простого товара равна PRICE |
OFFERS_COUNT |
int |
Количество активных вариантов с ценой; 0 для простого товара |
Сами варианты в списке не возвращаются — их отдаёт gamification.shop.product.get.
Обработка ошибок
| Код | Описание |
|---|---|
UNAUTHORIZED |
Пользователь не авторизован |
ACCESS_DENIED |
Вызывающий не является admin/manager |
Пример запроса (GET)
curl -G "https://{портал}/rest/{user_id}/{webhook_code}/gamification.shop.product.list.json" \
-H "Accept: application/json" \
--data-urlencode "limit=10"
Пример ответа:
{
"result": {
"result": [
{
"ID": 1,
"NAME": "Кофе",
"PRICE": 100,
"ACTIVE": "Y",
"QUANTITY": 0,
"ENABLE_SELLING": "Y",
"PRODUCT_TYPE": "product",
"HAS_OFFERS": false,
"PRICE_FROM": 100,
"PRICE_TO": 100,
"OFFERS_COUNT": 0
},
{
"ID": 1110,
"NAME": "Футболка",
"PRICE": 0,
"ACTIVE": "Y",
"QUANTITY": 0,
"ENABLE_SELLING": "N",
"PRODUCT_TYPE": "sku",
"HAS_OFFERS": true,
"PRICE_FROM": 100,
"PRICE_TO": 120,
"OFFERS_COUNT": 4
}
],
"total": 2,
"next": null,
"error": null
}
}
Предыдущая
Следующая