Integration API · v1
Integration API
Стабільний API-контракт для кожного магазину Storeforma.
Домен магазину визначає tenant-а, виданий ключ — дозволені дії, а дані залишаються ізольованими в межах цього магазину. У кожному прикладі замініть {store-domain} на домен потрібного магазину.
Автентифікація
Створіть ключ у розділі API Keys адмінки магазину та передавайте його з кожним запитом. Базовий URL: https://{store-domain}/api/v1/integrations
Authorization: Bearer {key}
Accept: application/jsonСписок товарів
GET /products повертає каталог із пагінацією та потребує catalog:read. GET /products/{id} повертає один товар.
| Параметр | Значення |
|---|---|
| page | Номер сторінки, починаючи з 1. |
| limit | За замовчуванням 15, максимум 50. |
| filter[name] | Частина назви товару. |
| filter[sku] | Точний SKU. |
| include=offers | Додає варіанти товару. |
curl -H "Authorization: Bearer {key}" \
+ -H "Accept: application/json" \
+ "https://{store-domain}/api/v1/integrations/products?limit=15&filter[sku]=SKU-1&include=offers"{
"current_page": 1,
"data": [{"id": 12, "name": "Product", "sku": "SKU-1", "quantity": 5,
"currency_code": "UAH", "min_price": 49000, "max_price": 49000}],
"per_page": 15, "total": 1
}Можливості та endpoints
| Можливість | Endpoints |
|---|---|
| catalog:read | GET /products, GET /products/{id} |
| catalog:write | PUT/PATCH /catalog/products/{external_id}; PUT /catalog/categories/{external_id}; PUT /catalog/tags/{external_id} |
| orders:read | GET /orders |
| orders:write-status | POST /orders/{reference}/status |
| content:read | GET /content/pages |
| content:write | PUT /content/pages/{external_id}; POST /content/pages/{external_id}/publish; POST /content/pages/{external_id}/unpublish |