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}

Описание

Возвращает продукты, отфильтрованные по торговой площадке. Используйте 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

Да

Идентификатор заказа на ремонт, в который добавляется позиция

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

Идентификатор инвентаризации

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. Обозреватель позволяет Вам протестировать каждую конечную точку непосредственно из Вашего браузера.

См.также