Матеріал — це запис каталогу студії, що визначає назву, колір, ціну за кілограм і технологію друку (FDM або SLA). Матеріали використовуються при розрахунку вартості та створенні замовлень — materialId, переданий у ці ендпоінти, має відповідати матеріалу, що належить вашій студії.
Доступ лише для читання: створення, редагування та видалення матеріалів через API поки що не підтримується — керуйте каталогом через панель студії.
Об'єкт Material#
| Поле | Тип | Опис |
|---|---|---|
id | integer | Унікальний ідентифікатор матеріалу |
name | string | Назва матеріалу (наприклад, «PLA, червоний») |
color | string | Колір у форматі HEX (наприклад, #ff0000) |
costPerKg | Money | Собівартість матеріалу за 1 кг |
status | string | active або archived |
studioId | integer | Ідентифікатор студії-власника (завжди дорівнює студії вашого ключа) |
technology | Technology | Технологія друку, для якої призначений матеріал |
Об'єкт Money#
Грошові значення в усьому API представлені у вигляді об'єкта з сумою у вигляді рядка (щоб уникнути втрати точності при округленні) та валютою:
| Поле | Тип | Опис |
|---|---|---|
amount | string | Сума з двома знаками після коми, наприклад "600.00" |
currency.code | string | Код валюти ISO 4217, наприклад "UAH" |
currency.symbol | string | Символ валюти, наприклад "₴" |
Об'єкт Technology#
| Поле | Тип | Опис |
|---|---|---|
id | integer | Ідентифікатор технології |
name | string | Назва, наприклад "FDM" або "SLA" |
slug | string | Машинозчитуваний ідентифікатор: "fdm" або "sla" |
Список матеріалів#
Повертає всі матеріали студії, відсортовані за id у спадному порядку (найновіші перші).
GET /materials
Приклад запиту
curl https://placraftic.com/api/v1/materials \
-H "Authorization: Bearer pk_live_..."
Приклад відповіді
{
"data": [
{
"id": 12,
"name": "Test Resin",
"color": "#ff00dd",
"costPerKg": { "amount": "900.00", "currency": { "id": 5, "code": "UAH", "name": "Ukrainian Hryvnia", "symbol": "₴" } },
"status": "active",
"studioId": 1,
"technology": { "id": 2, "name": "SLA", "slug": "sla", "materialCount": 0 }
},
{
"id": 4,
"name": "PETG, білий",
"color": "#ffffff",
"costPerKg": { "amount": "550.00", "currency": { "id": 5, "code": "UAH", "name": "Ukrainian Hryvnia", "symbol": "₴" } },
"status": "active",
"studioId": 1,
"technology": { "id": 1, "name": "FDM", "slug": "fdm", "materialCount": 0 }
}
]
}
Отримати матеріал#
Повертає один матеріал за ідентифікатором.
GET /materials/{id}
Параметри шляху
| Параметр | Тип | Опис |
|---|---|---|
id | integer | Ідентифікатор матеріалу |
Приклад запиту
curl https://placraftic.com/api/v1/materials/12 \
-H "Authorization: Bearer pk_live_..."
Приклад відповіді
{
"data": {
"id": 12,
"name": "Test Resin",
"color": "#ff00dd",
"costPerKg": { "amount": "900.00", "currency": { "id": 5, "code": "UAH", "name": "Ukrainian Hryvnia", "symbol": "₴" } },
"status": "active",
"studioId": 1,
"technology": { "id": 2, "name": "SLA", "slug": "sla", "materialCount": 0 }
}
}
Помилки
| Код | Причина |
|---|---|
404 | Матеріал з таким id не існує або належить іншій студії |