Skip to content

API сайта

JSON-методы, которые шаблон вызывает из браузера посетителя: корзина, каталог, поиск, сравнение, избранное, отзывы, покупатель и быстрый заказ.

Это не API бэк-офиса для интеграций. Запросы идут на домен магазина и используют сессию витрины.

Как читать примеры

У метода первая строка — глагол и путь. Сразу под ней таблица параметров: имя, обязательность, тип и смысл. Ниже два столбца: слева запрос, справа ответ со статусом. На узком экране ответ уходит под запрос.

Отдельное поведение метода — отдельный пример со своим заголовком и своей таблицей.

Запрос витрины написан на JavaScript для браузера: fetch с cookie витрины.

Общие правила

Запрос выполняется на домене магазина. credentials: "same-origin" отправляет cookie сессии: без них корзина, сравнение и избранное будут чужими или пустыми.

Токен CSRF лежит в <meta name="csrf-token">. Для POST, PATCH, PUT и DELETE его нужно передать заголовком X-CSRF-Token.

const csrfToken = document.querySelector('meta[name="csrf-token"]').content;

await fetch("/front_api/cart.json", {
  method: "PATCH",
  credentials: "same-origin",
  headers: {
    Accept: "application/json",
    "Content-Type": "application/json",
    "X-CSRF-Token": csrfToken
  },
  body: JSON.stringify({ variant_id: 2176487200, quantity: 1 })
});

Ответ в формате JSON. У части старых адресов для этого нужен суффикс .json. У /front_api/... формат тоже лучше указывать явно: /front_api/cart.json.

Текущие методы корзины, сравнения и избранного живут в /front_api. Адреса /cart_items.json, /compares.json и /products_by_id/...json продолжают работать и описаны рядом как слой совместимости.

Разделы

Раздел Методы
Корзина /front_api/cart, /cart_items
Товары /front_api/products, карточка товара
Коллекции список товаров, фильтры, меню
Поиск /search.json, подсказки
Сравнение и избранное /front_api/compares, /front_api/favorites
Отзывы и комментарии товары, магазин, статьи
Покупатель контакты, обратная связь, вход
Заказ /fast_checkout.json
Доставка расчёт доставки