Нижче представлена інформація для роботи з API. На даний момент версія API = v.1.0. Для роботи з API в особистому кабінеті ви можете знайти публічний та приватний ключ, згідно якого можна провести авторизацію, та отримати свій приватний токен, який дійсний протягом однієї доби. В результаті виконання запиту - успішна відповідь супроводжується 200 кодом відповіді. Не успішні - 400-499, або 500-599. В даний момент існує документація лише на PHP. Інші мови в розробці.
POST: /auth
Для авторизації ви повинні зробити POST запит на посилання /auth. Передати потрібно два значення:
- pk - публічний ключ для авторизації;
- sk - сервертний ключ для авторизації;
$data = json_encode( array( "pk"=> 'PKHERE',"sk"=> 'SKHERE') );
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Accept:*/*'));
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$result = curl_exec($ch);
curl_close($ch);
//do smthing with response
| Атрибут | Тип поля | Значення |
|---|---|---|
| pk | Required | Строка, 10 символів |
| sk | Required | Строка, 80 символів |
GET: /orders
Для отримання 100 останніх замовлень достатньо виконати GET запит на посилання /orders. В відповідь ви отримаєте JSON масив з всіма даними про замовлення. Важливо передати заголовок авторизації (токен). Успішна відповідь кодується 200 кодом та JSON масивом з даними.
$ch = curl_init( $url );
$data = json_encode( array( "pk"=> 'PKHERE',"sk"=> 'SKHERE') );
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Accept:*/*','token: YOURTOKEN'));
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$result = curl_exec($ch);
curl_close($ch);
//do smthing with response
POST: /orders
Для додавання замовлень потрібно надіслати POST запит на посилання /orders з JSON тілом, яке включає в себе поля які описано нижче. Якщо запит успішний - в відповідь ви отримаєте номер замовлення на платформі. Якщо ні - ту чи іншу помилку залежно від умов. Успішний статус відповіді = 200.
| Атрибут | Тип поля | Значення |
|---|---|---|
| user_tel | Required | Номер телефону в форматі +380123456789 |
| user_name | Reruired | Текстове поле, до 192 символів |
| note | Optional | Текстове поле, до 62000 символів |
| city | Required | Місто відправлення |
| warehouse | Required | Відділення для відправки |
| track | Optional | Номер накладної для відстеження |
| typedel | Optional | Тип поштової служби. npdel = Нова пошта, ukrdel = Укр пошта |
| call | Optional | int (1 - потрібно телефонувати, 0 - ні) |
| products | Required | Масив товарів. Описаний в таблиці нижче |
| Атрибут | Тип поля | Значення |
|---|---|---|
| qty | Optional | Число, >1, за замовчування = 1. Кількість товару. |
| price | Required | Ціна продажу, Decimal 15,2 |
| title | Required | Назва на сайті BEZET |
| sku | Optional | Артикул на сайті BEZET |
| size | Optional | Розмір товару, текстове поле |
$ch = curl_init( $url );
$data = [
'user_tel'=>'',
'user_name'=>'',
'city'=>'',
'warehouse'=>'',
'products'=>
[
['title'=>'',
'price'=>'',
],
],
];
$data = json_encode($data);
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Accept:*/*','token: YOURTOKEN'));
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$result = curl_exec($ch);
curl_close($ch);
//do somthing with response
PUT: /orders
Оновлення замовлення практично повністю аналогічне створенню. Однак існує ще одне поле, а саме orderid, яке потрібно щоб було першим та мало цілочисельне значення замовлення яке потрібно змінити.
Важливо розуміти, що потрібно передавати готове нове замовлення, а не лише зміни. В випадку запіздозри в обмані системи функціонал буде вимкнуто.
Успішний статус відповіді в зміні даних = 200.| Атрибут | Тип поля | Значення |
|---|---|---|
| orderid | Required | ID замовлення на платформі |
| user_tel | Required | Номер телефону в форматі +380123456789 |
| user_name | Reruired | Текстове поле, до 192 символів |
| note | Optional | Текстове поле, до 62000 символів |
| city | Required | Місто відправлення |
| warehouse | Required | Відділення для відправки |
| track | Optional | Номер накладної для відстеження |
| typedel | Optional | Тип поштової служби. npdel = Нова пошта, ukrdel = Укр пошта |
| call | Optional | int (1 - потрібно телефонувати, 0 - ні) |
| products | Required | Масив товарів. Описаний в таблиці нижче |
| Атрибут | Тип поля | Значення |
|---|---|---|
| qty | Optional | Число, >1, за замовчування = 1. Кількість товару. |
| price | Required | Ціна продажу, Decimal 15,2 |
| title | Required | Назва на сайті BEZET |
| sku | Optional | Артикул на сайті BEZET |
| size | Optional | Розмір товару, текстове поле |
DELETE: /orders
Видалення замовлення приховає його від виведення при запиті замовлень, однак залишить доступним замовлення для адміністрації сайту. Успішний статус відповіді в зміні даних = 200.
| Атрибут | Тип поля | Значення |
|---|---|---|
| orderid | Required | ID замовлення на платформі |
GET: /products
Для отримання 100 останніх товарів достатньо виконати GET запит на посилання /products. В відповідь ви отримаєте JSON масив з всіма даними про товар. Важливо передати заголовок авторизації (токен). Успішна відповідь кодується 200 кодом та JSON масивом з даними. Якщо потрібно отримати конкретний товар у запиті достатньо буде передати параметром його артикул на сайті.
| Атрибут | Тип поля | Значення |
|---|---|---|
| sku | Optional | Строка, 10 символів |
$ch = curl_init( $url );
$data = json_encode( array( "pk"=> 'PKHERE',"sk"=> 'SKHERE',) );
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Accept:*/*','token: YOURTOKEN'));
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$result = curl_exec($ch);
curl_close($ch);
//do smthing with response
POST: /products
Для додавання товару потрібно надіслати POST запит на посилання /products з JSON тілом, яке включає в себе поля які описано нижче. Якщо запит успішний - в відповідь ви отримаєте номер замовлення на платформі. Якщо ні - ту чи іншу помилку залежно від умов. Успішний статус відповіді = 200.
| Атрибут | Тип поля | Значення |
|---|---|---|
| user_tel | Required | Номер телефону в форматі +380123456789 |
| user_name | Required | Текстове поле, до 192 символів |
| title | Required | Назва товару RU, до 255 символів |
| title_ua | Required | Назва товару UA, до 255 символів |
| alias | Required | Посилання до товару, до 255 символів |
| sku | Required | Артикул товару, до 150 символів |
| sale_price | Optional | Знижка до товару, не може перевищувати за звичайну ціну, ціле число |
| price | Required | Ціна товару, ціле число |
| video | Optional | Відео до товару, обов'язково в форматі https://youtu.be/ids |
| buytoday | Required | Придбали сьогодні |
| keywords | Optional | Массив ключових слів до товару. |
| brand_country | Optional | Країна бренду |
| develop_country | Optional | Країна виробник |
| img | Required | Основне зображення картки товаруі |
| img_grid | Required | Розмірна сітка |
| gallery | Required | Массив зображень картки товару |
| modification | Required | Розміри товару |
| size | Required | Кількість на складі |
| content | Required | Опис товару RU |
| content_ua | Required | Опис товару UA |
| category_id | Required | ID категорії товару |
| date | Optional | Дата та час додавання товару в форматі - XXXX-XX-XX XX:XX:XX |
| colors | Required | Массив, ID кольорів |
| attrs | Required | Массив массивів, де ключ є ID группи а значення ID самого атрибуту |
$ch = curl_init( $url );
$data = [
'pk' => '',
'sk' => '',
'user_tel' => '',
'user_name' => '',
'title' => '',
'title_ua' => '',
'alias' => '',
'sku' => '',
'price' => ,
'video' => '',
'category_id' => ,
'keywords' => '',
'buytoday' =>,
'brand_country' => '',
'develop_country' => '',
'img' => '',
'img_grid' => '',
'gallery' => [
],
'modification' => [],
'size' => [
],
'colors' => ,
'availability' => '',
'status' => '',
'date' => '',
'content_ua' => '',
'content' => '',
'attrs' => [
]
];
$data = json_encode($data);
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Accept:*/*','token: YOURTOKEN'));
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$result = curl_exec($ch);
curl_close($ch);
//do somthing with response
DELETE: /products
Видалення товар приховає його від виведення при запиті товарів, однак залишить доступним товар для адміністрації сайту. Успішний статус відповіді в зміні даних = 200.
| Атрибут | Тип поля | Значення |
|---|---|---|
| productid | Required | ID товару на платформі |
Платформа надає два види вебхуків для інтеграції з зовнішніми системами:
| Webhook | Опис |
|---|---|
| Webhook за новим замовленням | Спрацьовує кожного разу при створенні нового замовлення. Включає всі деталі замовлення. |
| Webhook за зміною статусів замовлення | Спрацьовує при зміні статусу існуючого замовлення. Включає в себе поточний статус замовлення. |
Щоб підписатися на ці події, необхідно вказати endpoint, на який будуть відправлятися POST-запити. Слідуйте інструкціям на платформі для налаштування вашого endpoint.
Формат даних
POST-запити будуть містити JSON-представлення даних, пов'язаних з подією.