Документация API
Для магазина необходимо активировать ключ доступа API. Для этого в кабинете на главной, в блоке магазина через меню, нужно открыть "Настройки", отметить соответствующую галочку и сохранить ключ.
Авторизация
Во всех запросах передавать заголовок вида:
Api-Key: Ключ доступа
Добавить клиента
POST: https://ibotby.ru/api/addclient
Параметры:
name — Полное имя, обязательно;
phone — Номер телефона, необязательно;
email — Электронная почта, необязательно;
idtg — TelegramId, обязательно если не указан idmx;
idmx — MaxId, обязательно если не указан idtg;
status – Статус клиента, необязательно;
source – Источник, необязательно;
note – Примечание, необязательно;
Ответ:
{
"result": "результат добавления",
"error": "описание ошибки, если не добавлено"
}
Получить список клиентов
POST: https://ibotby.ru/api/getclients
Параметры (необязательно):
id — id клиентов через запятую;
idtg — TelegramId через запятую;
idmx — MaxId через запятую;
phone — Номера телефонов через запятую;
email — Адреса почты через запятую;
size — Количество элементов в ответе, по умолчанию 100, макс. 1000;
page — Страница ответа, по умолчанию 0.
Ответ:
[{
"id": "id клиента",
"idtg": "TelegramId",
"idmx": "MaxId",
"date": "дата/время последней активности в формате unix timestamp",
"name": "полное имя клиента",
"username": "username в Telegram",
"phone": "номер телефона",
"email": "электронная почта",
"phr": "телефон подтвержден",
"mhr": "email подтвержден",
"source": "источник",
"status": "статус клиента",
"note": "примечание",
"bonus": "бонусные баллы",
"active": "1 — активен, 0 — не активен, -1 — заблокирован"
}]
Добавить/списать бонусные баллы клиента
POST: https://ibotby.ru/api/addbonus
Параметры:
id — id клиента, обязательно если не указан phone,email;
phone — Номер телефона клиента, обязательно если не указан id,email;
email — Электронная почта клиента, обязательно если не указан id,phone;
bonus — Сумма операции, положительная или отрицательная;
note — Строка примечения к операции.
Ответ:
{
"result": "бонусные баллы клиента после операции",
"error": "описание ошибки, если операция не прошла"
}
Получить список заказов
POST: https://ibotby.ru/api/getorders
Параметры (необязательно):
id — Номера заказов через запятую;
id_min — Минимальный номер заказа для выборки;
id_max — Максимальный номер заказа для выборки;
date_min – Первая дата/время периода выборки, в формате строки или unix timestamp;
date_max – Вторая дата/время периода выборки, в формате строки или unix timestamp;
status — Статус заказа для выборки, число (-1: отменен, 1: проверка, 2: принят, 3: оплачен, 4: выполнен);
idc — id клиентов через запятую;
size — Количество элементов в ответе, по умолчанию 100, макс. 1000;
page — Страница ответа, по умолчанию 0.
Ответ:
[{
"id": "номер заказа",
"idc": "id клиента",
"date": "дата/время в формате unix timestamp",
"status": "статус заказа",
"user": "имя заказчика",
"phone": "номер телефона",
"email": "электронная почта",
"items": [{ "id": "id товара", "name": "название товара", "art": "артикул", "price": "цена", "count": "количество" }],
"dlv": {"name": "способ доставки", "price": "цена доставки", "addr": "адрес доставки"},
"pay": {"name": "способ оплаты"},
"note": "примечание к заказу",
"bonus": "бонусные баллы",
"total": "итоговая сумма",
}]
Установить статус заказа
POST: https://ibotby.ru/api/setorder
Параметры:
id — Номер заказа;
status — Статус заказа, число (-1: отменен, 1: проверка, 2: принят, 3: оплачен, 4: выполнен);
stage — Дополнительный статус заказа, необязательно;
Ответ:
{
"status": "установленный статус заказа",
"stage": "дополнительный статус заказа",
}
Получить список товаров
POST: https://ibotby.ru/api/getoffers
Параметры (необязательно):
id — id товаров через запятую;
name — название товара;
category — название категории;
active — только активные;
hit — только хиты продаж;
new — только новинки;
stock — только в наличии;
size — Количество элементов в ответе, по умолчанию 100, макс. 1000;
page — Страница ответа, по умолчанию 0.
Ответ:
Некоторые поля могут отсутствовать, в зависимости от типа и состояния данных товара.
[{
"id": "id товара",
"name": "название",
"art": "артикул",
"category": "главная категория",
"category2": "дополнительная категория",
"text": "текст описания",
"images": ["ссылка на фото"],
"tags": ["имя тега"],
"price": "цена",
"unit": "ед. измерения",
"umin": "минимальное колич. для заказа",
"opts": [{ "name": "название опции", "price": "цена", "stock": "остаток"],
"stock": "остаток",
"rating": "рейтинг",
"digital": "тип цифрового товара",
"active": "активный",
"hit": "хит продаж",
"new": "новинка",
}]
Установить цену и остаток для товаров
POST: https://ibotby.ru/api/setoffers
Тело запроса:
[{
"name": "название товара",
"art": "артикул",
"barcode": "штрихкод",
"opt": "опциональный вариант",
"price": "новая цена",
"stock": "остаток в наличии",
}]
Это массив с данными товаров для обновлениямя в формате JSON. В каждой строке из полей name, art, barcode — обязательно наличие одного любого для идентификации товара, opt — необязательно. Наличие поля price — если нужно обновить цену, stock — если нужно обновить остаток.
Ответ:
{
"result": "сколько товаров обновлено",
}
Пример кода
Набор методов API может быть расширен по запросу.

