API

API Gem Logic дозволяє Вам інтегруватися із зовнішніми системами та автоматизувати робочі процеси. Ви можете використовувати його для програмного управління продуктами, продажами, контактами, ремонтами, інвентаризаціями та завданнями друку.

Перейдіть до Налаштування ‣ API, щоб створити та керувати Вашими ключами API.

Автентифікація

Усі запити API повинні містити ключ API в HTTP-заголовку x-api-key. Ви можете створити ключі на сторінці Налаштування ‣ API. Ключі можна деактивувати або видалити в будь-який час.

Приклад запиту:

curl -X GET https://your-instance.gem-logic.com/api/marketplaces/ \
  -H "x-api-key: YOUR_API_KEY"

Небезпека

Зберігайте Ваші ключі API в таємниці. Ніколи не розголошуйте їх у публічних репозиторіях або коді на стороні клієнта. Якщо ключ скомпрометовано, негайно деактивуйте його та створіть новий.

Базова URL-адреса

Усі кінцеві точки є відносними до URL-адреси Вашого екземпляра, під префіксом /api/:

https://your-instance.gem-logic.com/api/

Формат відповіді

Усі відповіді повертаються у форматі JSON. Успішні запити повертають код стану 200 (для GET) або 201 (для POST). Помилки повертають відповідний код стану з повідомленням:

  • 200 OK — успішний запит GET

  • 201 Created — успішний запит POST

  • 400 Bad Request — недійсні або відсутні дані

  • 401 Unauthorized — недійсний або відсутній ключ API

  • 404 Not Found — ресурс не існує

Кінцеві точки

Торгові майданчики

Метод

GET

URL

/api/marketplaces/

Опис

Повертає список усіх каналів продажів.

Поля відповіді:

Поле

Тип

Опис

id

integer

Унікальний ідентифікатор

marketplace

string

Назва торгового майданчика

Продукти

Список продуктів

Метод

GET

URL

/api/products/{marketplace_id}

Опис

Повертає продукти, відфільтровані за торговим майданчиком. Використовуйте ідентифікатор торгового майданчика з кінцевої точки marketplaces.

Поля відповіді:

Поле

Тип

Опис

id

integer

Унікальний ідентифікатор

item_sku

string

SKU продукту

created

datetime

Дата створення

status

string

Статус продукту

images

array

Список зображень продукту (id, image)

item_weight

decimal

Вага

item_height

decimal

Висота

item_length

decimal

Довжина

item_width

decimal

Ширина

Створити зображення продукту

Метод

POST

URL

/api/products/create/image/

Опис

Завантажує зображення продукту за допомогою кодування base64. Якщо SKU продукту ще не існує, новий продукт створюється автоматично.

Поля запиту:

Поле

Тип

Обов’язкове

Опис

item_sku

string

Так

SKU продукту, до якого прикріпити зображення

image

string (base64)

Так

Дані зображення в кодуванні base64

Продажі

Список продажів

Метод

GET

URL

/api/sales/

Опис

Повертає список усіх замовлень на продаж.

Поля відповіді:

Поле

Тип

Опис

order_id

string

Унікальний ідентифікатор замовлення

Створити продаж

Метод

POST

URL

/api/sales/create/

Опис

Створює нове замовлення на продаж.

Контакти

Метод

GET

URL

/api/contacts/

Опис

Повертає список усіх контактів.

Поля відповіді:

Поле

Тип

Опис

id

integer

Унікальний ідентифікатор

complete_name

string

Повне ім’я

contact_type

string

Тип контакту

email

string

Адреса електронної пошти

phone

string

Номер телефону

language

string

Бажана мова

Ремонти

Створити ремонт

Метод

POST

URL

/api/repairs/create/

Опис

Створює нове замовлення на ремонт із пов’язаним ремонтним артикулом. Якщо точку продажу або підрозділ не вказано, використовується перша доступна.

Поля запиту:

Поле

Тип

Обов’язкове

Опис

client_id

integer

Ні

ID клієнта/контакту

marketplace

рядок / ціле число

Ні

ID або назва точки продажу

division_id

integer

Ні

ID підрозділу компанії

title

string

Ні

Назва або опис ремонтного артикулу

repair_info_1

string

Ні

Додатковий коментар щодо ремонту

repair_info_2

string

Ні

Додатковий коментар щодо ремонту

repair_info_3

string

Ні

Додатковий коментар щодо ремонту

quantity

decimal

Ні

Кількість (за замовчуванням: 1)

weight

decimal

Ні

Вага артикулу

weight_unit

string

Ні

Одиниця вимірювання ваги

size

string

Ні

Розмір артикулу

color

string

Ні

Колір артикулу

engravement

string

Ні

Текст гравірування

client_reference | string

Ні

Довідковий номер клієнта

Приклад відповіді:

{"message": "Repair created successfully.", "order_id": "R-0001"}

Додати артикул до ремонту

Метод

POST

URL

/api/repairs/add-item/

Опис

Додає новий артикул до існуючого замовлення на ремонт.

Поля запиту:

Поле

Тип

Обов’язкове

Опис

order_id

string

Так

ID замовлення на ремонт, до якого потрібно додати артикул

item_sku

string

Ні

SKU продукту для зв’язування з артикулом

title

string

Ні

Назва або опис

repair_info_1

string

Ні

Додатковий коментар щодо ремонту

repair_info_2

string

Ні

Додатковий коментар щодо ремонту

repair_info_3

string

Ні

Додатковий коментар щодо ремонту

quantity

decimal

Ні

Кількість (за замовчуванням: 1)

weight

decimal

Ні

Вага артикулу

weight_unit

string

Ні

Одиниця вимірювання ваги

size

string

Ні

Розмір артикулу

color

string

Ні

Колір артикулу

engravement

string

Ні

Текст гравірування

client_reference | string

Ні

Довідковий номер клієнта

cost

decimal

Ні

Вартість артикулу

Інвентаризації

Створити інвентаризацію

Метод

POST

URL

/api/inventory-counts/

Опис

Створює нову сесію інвентаризації.

Поля відповіді:

Поле

Тип

Опис

id

string

ID інвентаризації

created_at

datetime

Часова мітка створення

status

string

Завжди active

tag_count

integer

Кількість порахованих продуктів

Переглянути продукти інвентаризації

Метод

GET

URL

/api/inventory-counts/{inventory_count_id}/products/

Опис

Повертає всі продукти, пораховані в конкретній інвентаризації.

Поля відповіді:

Поле

Тип

Опис

id

string

Унікальний ідентифікатор

created_at

datetime

Коли продукт був порахований

product_sku

string

SKU продукту

product_name

string

Назва продукту

quantity

integer

Підрахована кількість

Інтерактивний провідник API

Gem Logic включає вбудований інтерактивний провідник API на базі Swagger UI. Ви можете отримати до нього доступ за посиланням Документація API на сторінці Налаштування ‣ API. Провідник дозволяє Вам випробувати кожну кінцеву точку безпосередньо з Вашого браузера.

Дивись також