API¶
API Gem Logic позволяет Вам интегрировать внешние системы и автоматизировать рабочие процессы. Вы можете использовать его для программного управления товарами, продажами, контактами, ремонтами, инвентаризацией и заданиями печати.
Перейдите в , чтобы создать ключи API и управлять ими.
Аутентификация¶
Все запросы API должны включать ключ API в заголовке HTTP x-api-key. Вы можете создавать ключи на странице . Ключи можно в любой момент деактивировать или удалить.
Пример запроса:
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 — ресурс не существует
Конечные точки¶
Каналы продаж¶
Метод |
|
|---|---|
URL |
|
Описание |
Возвращает список всех каналов продаж. |
Поля ответа:
Поле |
Тип |
Описание |
|---|---|---|
|
integer |
Уникальный идентификатор |
|
string |
Название торговой площадки |
Продукты¶
Список продуктов
Метод |
|
|---|---|
URL |
|
Описание |
Возвращает продукты, отфильтрованные по торговой площадке. Используйте ID торговой площадки из конечной точки marketplaces. |
Поля ответа:
Поле |
Тип |
Описание |
|---|---|---|
|
integer |
Уникальный идентификатор |
|
string |
SKU продукта |
|
datetime |
Дата создания |
|
string |
Статус продукта |
|
array |
Список изображений продукта ( |
|
decimal |
Вес |
|
decimal |
Высота |
|
decimal |
Длина |
|
decimal |
Ширина |
Создать изображение товара
Метод |
|
|---|---|
URL |
|
Описание |
Загрузить изображение товара с использованием кодировки base64. Если SKU товара ещё не существует, новый товар создаётся автоматически. |
Поля запроса:
Поле |
Тип |
Обязательно |
Описание |
|---|---|---|---|
|
string |
Да |
SKU товара, к которому прикрепляется изображение |
|
string (base64) |
Да |
Данные изображения в кодировке base64 |
Продажи¶
Список продаж
Метод |
|
|---|---|
URL |
|
Описание |
Возвращает список всех заказов на продажу. |
Поля ответа:
Поле |
Тип |
Описание |
|---|---|---|
|
string |
Уникальный идентификатор заказа |
Создать продажу
Метод |
|
|---|---|
URL |
|
Описание |
Создаёт новый заказ на продажу. |
Контакты¶
Метод |
|
|---|---|
URL |
|
Описание |
Возвращает список всех контактов. |
Поля ответа:
Поле |
Тип |
Описание |
|---|---|---|
|
integer |
Уникальный идентификатор |
|
string |
Полное имя |
|
string |
Тип контакта |
|
string |
Адрес электронной почты |
|
string |
Номер телефона |
|
string |
Предпочитаемый язык |
Ремонты¶
Создать ремонт
Метод |
|
|---|---|
URL |
|
Описание |
Создаёт новый заказ на ремонт со связанной позицией ремонта. Если точка продаж или подразделение не указаны, используется первая доступная. |
Поля запроса:
Поле |
Тип |
Обязательно |
Описание |
|---|---|---|---|
|
integer |
Нет |
ID клиента/контакта |
|
строка / целое число |
Нет |
ID или название точки продаж |
|
integer |
Нет |
ID бизнес-подразделения |
|
string |
Нет |
Название или описание позиции ремонта |
|
string |
Нет |
Дополнительный комментарий к ремонту |
|
string |
Нет |
Дополнительный комментарий к ремонту |
|
string |
Нет |
Дополнительный комментарий к ремонту |
|
decimal |
Нет |
Количество (по умолчанию: 1) |
|
decimal |
Нет |
Вес позиции |
|
string |
Нет |
Единица измерения веса |
|
string |
Нет |
Размер позиции |
|
string |
Нет |
Цвет позиции |
|
string |
Нет |
Текст гравировки |
|
Нет |
Справочный номер клиента |
|
Пример ответа:
{"message": "Repair created successfully.", "order_id": "R-0001"}
Добавление позиции в ремонт
Метод |
|
|---|---|
URL |
|
Описание |
Добавляет новую позицию в существующий заказ на ремонт. |
Поля запроса:
Поле |
Тип |
Обязательно |
Описание |
|---|---|---|---|
|
string |
Да |
Идентификатор заказа на ремонт, в который добавляется позиция |
|
string |
Нет |
SKU товара для привязки к позиции |
|
string |
Нет |
Название или описание |
|
string |
Нет |
Дополнительный комментарий к ремонту |
|
string |
Нет |
Дополнительный комментарий к ремонту |
|
string |
Нет |
Дополнительный комментарий к ремонту |
|
decimal |
Нет |
Количество (по умолчанию: 1) |
|
decimal |
Нет |
Вес позиции |
|
string |
Нет |
Единица измерения веса |
|
string |
Нет |
Размер позиции |
|
string |
Нет |
Цвет позиции |
|
string |
Нет |
Текст гравировки |
|
Нет |
Справочный номер клиента |
|
|
decimal |
Нет |
Стоимость позиции |
Инвентаризации¶
Создание инвентаризации
Метод |
|
|---|---|
URL |
|
Описание |
Создаёт новый сеанс инвентаризации. |
Поля ответа:
Поле |
Тип |
Описание |
|---|---|---|
|
string |
Идентификатор инвентаризации |
|
datetime |
Время создания |
|
string |
Всегда |
|
integer |
Количество учтённых товаров |
Список товаров инвентаризации
Метод |
|
|---|---|
URL |
|
Описание |
Возвращает все товары, учтённые в указанной инвентаризации. |
Поля ответа:
Поле |
Тип |
Описание |
|---|---|---|
|
string |
Уникальный идентификатор |
|
datetime |
Когда товар был учтён |
|
string |
SKU продукта |
|
string |
Название товара |
|
integer |
Подсчитанное количество |
Задания на печать¶
Метод |
|
|---|---|
URL |
|
Описание |
Загрузить файл PDF в очередь печати для указанного принтера. Файл проверяется на формат и безопасность. Максимальный размер файла — 20 МБ. Используйте тип содержимого |
Поля запроса:
Поле |
Тип |
Обязательно |
Описание |
|---|---|---|---|
|
файл |
Да |
Файл PDF для печати (макс. 20 МБ) |
|
UUID |
Да |
UUID целевого принтера |
|
логический |
Нет |
Печать в альбомной ориентации (по умолчанию: false) |
Пример запроса:
curl -X POST https://your-instance.gem-logic.com/api/print-pdf/ \
-H "x-api-key: YOUR_API_KEY" \
-F "pdf=@document.pdf" \
-F "printer_uuid=YOUR_PRINTER_UUID"
Пример ответа:
{"status": "queued", "print_job_id": 42}
Интерактивный обозреватель API¶
Gem Logic включает встроенный интерактивный обозреватель API на основе Swagger UI. Вы можете открыть его по ссылке Документация по API на странице . Обозреватель позволяет Вам протестировать каждую конечную точку непосредственно из Вашего браузера.
См.также