Skip to content

Содержимое корзины клиента

Метод позволяет проверить, какие товары на данный момент находятся в корзине клиента. Данные аккумулируются из событий добавления и очистки корзины.

Метод сделан преимущественно для фронта, поэтому единственный параметр, который передается для идентификации клиента - did.

GET https://api.rees46.ru/products/cart

Параметры

ПараметрТипОбязателен?Описание
shop_idStringДаAPI-ключ
didStringДаИдентификатор устройства

Запрос

Пример запроса:

shell
curl https://api.rees46.ru/products/cart?shop_id=...&did=...
javascript
r46('cart', 'get', success, failure);
swift
sdk.getProductsFromCart { result in
  switch result {
    case .success(let items):
      // Обработка ответа
    case .failure(let error):
      // Обработка ошибки
  }
}
kotlin
sdk.cartManager.getClientShoppingCartContent(
  onGetCartContent = { cartContent: CartContent ->
    // Обработка ответа
  },
  onError = { code: Int, msg: String? ->
    // Обработка ошибки
  }
)
javascript
// TODO Перепроверить
cart() {
  return new Promise((resolve, reject) => {
    this.push((() => {
      try {
        request('products/cart', {
          params: {
            shop_id: this.shop_id,
          },
        }).then( res => {
          resolve(res)
        });
      } catch (error) {
        reject(error)
      }
    }));
  })
}

Ответ

Пример ответа сервера:

json
{
  "status": "success", 
  "data": { 
    "items": [ 
      { "uniqid": "SKU_1", "quantity": 1 }, 
      { "uniqid": "SKU_2", "quantity": 3 } 
    ]
  }
}

Внимание

В будущем структура будет приведена к стандарту ответа:

json
{
  "status": "success",
  "payload": {
    "cart_items": [
      { "uniqid": "SKU_1", "quantity": 1 },
      { "uniqid": "SKU_2", "quantity": 3 }
    ]
  }
}

Рекомендуем подготовить обработчик ответа под новую структуру, чтобы ваша интеграция не сломалась.

Расшифровка свойств ответа:

СвойствоТипОписание
statusStringТекстовый статус результата обработки запроса
dataObjectОбъект с ответом
data.items[]ArrayСписок товаров
data.items[].uniqidStringИдентификатор (артикул) товара
data.items[].quantityIntegerКоличество этого товара в корзине

В случае ошибки ответ будет в формате:

json
{
  "status": "error",
  "payload": {
    "message": "Shop not found"
  }
}