Документация для разработчиков
API для выгрузки товаров на сайт Аманат
Выгрузка товаров должна происходить на адрес https://amanat.ru/api/v1/uploadProducts
. Метод отправки данных - POST
.
JSON с товарами имеет следующую структуру:
{ "token": "XXXXXXX", // строка, обязательно "data": [ // массив объектов, обязательно { "product_id": "XXXXXXX", // строка, обязательно "title": "XXXXXXX", // строка, обязательно "desc": "XXXXXXX", // строка, не обязательно "price": "XXXXXXX", // строка, обязательно "image_1": "XXXXXXX", // строка, не обязательно "image_2": "XXXXXXX", // строка, не обязательно "image_3": "XXXXXXX", // строка, не обязательно "brand": "XXXXXXX", // строка, не обязательно "color": "XXXXXXX", // строка, не обязательно "category": "XXXXXXX", // строка, обязательно "characteristics": [ // массив объектов, не обязательно { "name": "XXXXXXX", // строка, обязательно "value": "XXXXXXX" // строка, обязательно } ] } ] }
JSON представляет из себя объект с двумя ключами: token
и data
. Оба ключа являются обязательными.
В ключе token
указывается токен, полученный от представителя Аманат. В data
- список товаров, необходимых выгрузить.
data
представляет из себя массив объектов. Для простоты, все ключи объектов сделаны строками. Каждый объект содержит в себе:
product_id
- ID товара, обязательное поле. Поле используется при последующей выгрузке, для обновления характеристик или удаления товара. Поэтому важно, чтобы поле было фиксированным и не генерировалось случайным образом на лету.title
- Название товара, обязательное поле.desc
- Краткое описание товара, необязательное поле.price
- Цена товара, обязательное поле.image_1
- Абсолютный URL до картинки товара на вашем сайте, необязательное поле. Оптимальный размер - не менее 500x650 и не более 1000x1300.image_2
- Абсолютный URL до картинки товара на вашем сайте, необязательное поле. Оптимальный размер - не менее 500x650 и не более 1000x1300.image_3
- Абсолютный URL до картинки товара на вашем сайте, необязательное поле. Оптимальный размер - не менее 500x650 и не более 1000x1300.brand
- Название производителя товара, необязательное поле.color
- Цвет товара, необязательное поле.category
- Категория, обязательное поле. ID категории из списка категорий Аманат (список ниже).characteristics
- Массив характеристик, необязательное поле.
Если у какого-то поля нет значения, стоит передавать пустой ключ. Например, при отсутствии описания, стоит передавать "desc": ""
, а при отсутствии характеристик - "characteristics": []
.
При повторной выгрузке, товары распознаются по ключу product_id
. Если какого-то товара нет в повторной выгрузке, он удаляется из каталога.
После передачи товаров, API выдаст нескольковариантов ответа:
- Unauthorized - ошибка токена.
- Error: no data - отсутствует ключ
data
или он пуст. - Success - успешная выгрузка. При наличии товаров, выгрузка которых не удалась, эти товары будут отображены.
Список категорий для выгрузки товаров
Название категории | ID |
---|---|
Телефоны | 1 |
Планшеты | 2 |
Гаджеты | 3 |
Аксессуары | 4 |
Ноутбуки | 5 |
Телевизоры | 6 |
Кондиционеры | 7 |
Холодильники | 8 |
Стиральные машины | 9 |
Посудомоечные машины | 10 |
Варочные панели | 11 |
Духовые шкафы | 12 |
Плиты | 13 |
Вытяжки | 14 |
Прочая бытовая техника | 15 |
Интеграция калькулятора на свой сайт
Для интеграции калькулятора на свой сайт нужно выполнить следующие шаги:
- Подключить стили и скрипты калькулятора:
<link rel="stylesheet" href="https://amanat.ru/static/calc/amanat.css">
<script src="https://amanat.ru/static/calc/amanat.js"></script>
- Передать необходимую информацию в скрипт:
- Атрибут
data-amanat-name
навешивается на элемент с названием товара - Атрибут
data-amanat-price
навешивается на элемент с ценой товара - Атрибут
data-amanat-image
на изображение товара - Атрибут
data-amanat-buy
навешивается на кнопку для отображения калькулятора - Мета-атрибут
data-amanat-place
содержит в себе название вашего товара
- Атрибут
Пример карточки товара с атрибутами:
<div class="productCard"> <meta data-amanat-place content="Название магазина"> <div class="productCard__name" data-amanat-name>Телефон</div> <div class="productCard__price" data-amanat-price>100000</div> <img class="productCard__img" data-amanat-image src="./phone.webp"> <a class="productCard__buy" data-amanat-buy href="#">Купить в рассрочку</a> </div>
Отслеживание отправки
После успешной отправки, калькулятор инициализирует событие submittedAmanatForm
, на которое можно подписаться для передачи данных в средства аналитики.
Код подписки на событие:
window.addEventListener('submittedAmanatForm', () => { // Код, срабатывающий после отправки. })
Личный кабинет
Чтобы увидеть список всех заказов с вашего сайта, вы можете авторизоваться на этой странице.
Вам будет доступна информация о номере заказа и времени его оформления, стоимости и названии товара и имени клиента.