Supplier Products API

Catalog of items each supplier offers — create, read, update and delete.

Endpoints

MethodPathDescription
GET/api/v1/supplier/productsList supplier products, optionally filtered by supplierId
GET/api/v1/supplier/products/{id}Get a single supplier product
POST/api/v1/supplier/productsCreate a new supplier product
PATCH/api/v1/supplier/products/{id}Partially update a supplier product
DELETE/api/v1/supplier/products/{id}Delete a supplier product

GET /api/v1/supplier/products

Query parameterTypeRequiredDescription
supplierIduuidFilter products that belong to one specific supplier
Shell
curl "{{BASE_URL}}/api/v1/supplier/products?supplierId=3f2b9a1c-…"

Response 200 OK — JSON array of SupplierProductDto.


POST /api/v1/supplier/products

Request body (CreateSupplierProductDto)

FieldTypeRequiredDescription
supplierIduuidSupplier this item belongs to
namestringProduct name
codestringSupplier SKU / article code
descriptionstringDescription
unitOfMeasureenumOne of KG, G, T, L, ML, M3, M, CM, MM, M2, PCS, ROLL, BOX, PALLET
unitPricestring (decimal)Unit price — use a string to preserve precision
currencystringISO 4217 currency code (e.g. EUR)
activebooleanWhether the product is currently offered
Shell
curl -X POST {{BASE_URL}}/api/v1/supplier/products \
-H "Content-Type: application/json" \
-d '{
"supplierId": "3f2b9a1c-…",
"name": "Organic Cotton Yarn 30/1",
"code": "SUP-YRN-030",
"unitOfMeasure": "KG",
"unitPrice": "12.50",
"currency": "EUR",
"active": true
}'

Response 201 CreatedSupplierProductDto.


GET /api/v1/supplier/products/{id}

PATCH /api/v1/supplier/products/{id}

Partial update. Fields allowed: name, code, description, unitOfMeasure, unitPrice, currency, active.

DELETE /api/v1/supplier/products/{id}

  • 204 No Content — deleted.
  • 404 Not Found — product does not exist in your tenant.

Supplier product schema

SupplierProductDto:

JSON
{
"id": "a1c3…",
"supplierId": "3f2b9a1c-…",
"name": "Organic Cotton Yarn 30/1",
"code": "SUP-YRN-030",
"description": null,
"unitOfMeasure": "KG",
"unitPrice": "12.50",
"currency": "EUR",
"active": true,
"createdAt": "2026-04-21T10:00:00.000Z",
"updatedAt": "2026-04-21T10:00:00.000Z"
}