This commit is contained in:
seb
2026-09-29 20:10:46 +02:00
parent 79b48c5d47
commit 1de802fbaa
8 changed files with 805 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
# `GET /article/{sku}/articlelist`
Protected. Requires a valid session cookie (`credentials: 'include'`).
Get Stückliste (bundle items) for an article
Returns the list of component items for a Stückliste article.
## Path parameters
| Param | Required | Type | Description |
|-------|----------|------|-------------|
| `sku` | yes | string | Article SKU |
## Response `200`
List of bundle items
```json
{
"items": [
{
"id": 1,
"articleId": 1,
"sku": "…",
"name": "…",
"count": 1,
"sort": 1
}
]
}
```
## Errors
| Status | Description |
|--------|-------------|
| 404 | Article not found |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._

View File

@@ -0,0 +1,51 @@
# `PUT /article/{sku}/articlelist`
Protected. Requires a valid session cookie (`credentials: 'include'`).
Set Stückliste (bundle items) for an article
Configures the article as a Stückliste covering a list of count * article. An article that is a father or has options cannot be a Stückliste. Pass an empty array to remove the Stückliste.
## Path parameters
| Param | Required | Type | Description |
|-------|----------|------|-------------|
| `sku` | yes | string | Article SKU |
## Body (JSON)
```json
{
"items": [
{
"articleId": 1,
"sku": "…",
"count": 1,
"sort": 1
}
]
}
```
## Response `200`
Updated Stückliste items
```json
{
"items": [
{}
]
}
```
## Errors
| Status | Description |
|--------|-------------|
| 400 | Article is a father, has options, or contains itself |
| 404 | Article or component article not found |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._

View File

@@ -0,0 +1,43 @@
# `GET /article/{sku}/optionslist`
Protected. Requires a valid session cookie (`credentials: 'include'`).
Get options list for an article
Returns the available options for an article.
## Path parameters
| Param | Required | Type | Description |
|-------|----------|------|-------------|
| `sku` | yes | string | Article SKU |
## Response `200`
List of options
```json
{
"options": [
{
"id": 1,
"articleId": 1,
"sku": "…",
"name": "…",
"count": 1,
"sort": 1,
"mandated": true
}
]
}
```
## Errors
| Status | Description |
|--------|-------------|
| 404 | Article not found |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._

View File

@@ -0,0 +1,52 @@
# `PUT /article/{sku}/optionslist`
Protected. Requires a valid session cookie (`credentials: 'include'`).
Set options list for an article
Configures options for an article. Some options can be mandated (come with the article in any case). An article that is a father or a Stückliste cannot have options. Pass an empty array to remove options.
## Path parameters
| Param | Required | Type | Description |
|-------|----------|------|-------------|
| `sku` | yes | string | Article SKU |
## Body (JSON)
```json
{
"options": [
{
"articleId": 1,
"sku": "…",
"count": 1,
"sort": 1,
"mandated": true
}
]
}
```
## Response `200`
Updated options list
```json
{
"options": [
{}
]
}
```
## Errors
| Status | Description |
|--------|-------------|
| 400 | Article is a father, a Stückliste, or contains itself |
| 404 | Article or option article not found |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._