BEZET API documentation

Нижче представлена інформація для роботи з API. На даний момент версія API = v.1.0. Для роботи з API в особистому кабінеті ви можете знайти публічний та приватний ключ, згідно якого можна провести авторизацію, та отримати свій приватний токен, який дійсний протягом однієї доби. В результаті виконання запиту - успішна відповідь супроводжується 200 кодом відповіді. Не успішні - 400-499, або 500-599. В даний момент існує документація лише на PHP. Інші мови в розробці.

Авторизація
POST: /auth

Для авторизації ви повинні зробити POST запит на посилання /auth. Передати потрібно два значення:

  • pk - публічний ключ для авторизації;
  • sk - сервертний ключ для авторизації;
При успішній валідації даних в відповідь ви отримаєте токен, який в подальшому потрібно включати в header при запитах.

$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-представлення даних, пов'язаних з подією.