Orders
Beheer orders en orderregels. Orders worden gebruikt voor het uitslag-proces: na het aanmaken van orders worden ze via waves gealloceerd en gepickt.
Endpoints
| Methode | Pad | Beschrijving |
|---|---|---|
GET | /orders | Alle orders ophalen |
POST | /orders | Order aanmaken (incl. regels) |
GET | /orders/:id | Specifieke order ophalen (incl. regels) |
PUT | /orders/:id | Order bijwerken |
DELETE | /orders/:id | Order verwijderen |
GET | /orders/:id/lines | Orderregels ophalen |
POST | /orders/:id/lines | Orderregels toevoegen |
GET | /orders/:id/lines/:line_id | Specifieke orderregel ophalen |
PUT | /orders/:id/lines/:line_id | Orderregel bijwerken |
DELETE | /orders/:id/lines/:line_id | Orderregel verwijderen |
Alle orders ophalen
GET /orders
Query parameters
| Parameter | Type | Beschrijving |
|---|---|---|
lines | string | false om orderregels weg te laten (standaard: inclusief regels) |
Response 200 OK
[
{
"order_id": "ORD-001",
"client_id": "CLIENT01",
"order_date": "2026-03-14",
"order_status": {
"id": 1,
"description": "Released"
},
"order_status_description": "Released",
"customer": {
"id": 5,
"name": "Bedrijf BV - Amsterdam"
},
"ship_by_date": "2026-03-16",
"carrier": "PostNL",
"ship_dock": "DOCK-01",
"creation_datetime": "2026-03-14 10:30:00",
"created_by": "admin",
"lines": [
{
"order_id": "ORD-001",
"line": 1,
"sku_id": "SKU-001",
"qty": 10,
"qty_picked": 0,
"qty_shipped": 0
}
]
}
]
Order aanmaken
POST /orders
Request
Order met regels in één request:
{
"order_id": "ORD-001",
"customer_id": 5,
"order_date": "2026-03-14",
"ship_by_date": "2026-03-16",
"carrier_id": 1,
"ship_dock": "DOCK-01",
"lines": [
{
"sku_id": "SKU-001",
"qty": 10
},
{
"sku_id": "SKU-002",
"qty": 5
}
]
}
| Veld | Type | Verplicht | Beschrijving |
|---|---|---|---|
order_id | string | ✅ | Uniek order ID |
customer_id | number | Nee | ID van de klant (uit /customers) |
order_date | string | Nee | Orderdatum (YYYY-MM-DD) |
ship_by_date | string | Nee | Te verzenden datum (YYYY-MM-DD) |
carrier_id | number | Nee | ID van de vervoerder (uit /carriers) |
ship_dock | string | Nee | Dock locatie |
lines | array | Nee | Orderregels (optioneel, kan later via POST) |
Orderregel velden
| Veld | Type | Verplicht | Beschrijving |
|---|---|---|---|
sku_id | string | ✅ | Artikel-ID |
qty | number | ✅ | Gewenst aantal |
line | number | Nee | Regelnummer (wordt automatisch gegenereerd als weggelaten) |
Response 204 No Content
Succesvol aangemaakt.
Response 409 Conflict
{
"message": "Order with OrderID ORD-001 already exists"
}
Specifieke order ophalen
GET /orders/:id
Response 200 OK
Retourneert de order inclusief regels (zelfde formaat als bij lijst).
Response 404 Not Found
{
"message": "Order with OrderID ORD-001 not found"
}
Order bijwerken
PUT /orders/:id
Request
{
"customer_id": 5,
"order_date": "2026-03-14",
"ship_by_date": "2026-03-17",
"carrier_id": 2,
"ship_dock": "DOCK-02"
}
Response 204 No Content
Order verwijderen
DELETE /orders/:id
Verwijdert de order inclusief alle orderregels.
Response 204 No Content
Orderregels toevoegen
POST /orders/:id/lines
Request
Enkele regel:
{
"sku_id": "SKU-003",
"qty": 20
}
Of meerdere regels als array:
[
{ "sku_id": "SKU-003", "qty": 20 },
{ "sku_id": "SKU-004", "qty": 15 }
]
Regelnummers
Regelnummers worden automatisch gegenereerd als ze niet meegegeven worden.
Response 204 No Content
Orderregel bijwerken
PUT /orders/:id/lines/:line_id
Request
{
"sku_id": "SKU-003",
"qty": 25
}
Response 204 No Content
Orderregel verwijderen
DELETE /orders/:id/lines/:line_id