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

@@ -12947,6 +12947,319 @@
}
}
},
"/article/{sku}/articlelist": {
"get": {
"summary": "Get Stückliste (bundle items) for an article",
"description": "Returns the list of component items for a Stückliste article.",
"tags": [
"Article"
],
"security": [
{
"cookieAuth": []
}
],
"parameters": [
{
"in": "path",
"name": "sku",
"required": true,
"schema": {
"type": "string"
},
"description": "Article SKU"
}
],
"responses": {
"200": {
"description": "List of bundle items",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"articleId": {
"type": "integer"
},
"sku": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer"
},
"sort": {
"type": "integer"
}
}
}
}
}
}
}
}
},
"404": {
"description": "Article not found"
}
}
},
"put": {
"summary": "Set Stückliste (bundle items) for an article",
"description": "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.",
"tags": [
"Article"
],
"security": [
{
"cookieAuth": []
}
],
"parameters": [
{
"in": "path",
"name": "sku",
"required": true,
"schema": {
"type": "string"
},
"description": "Article SKU"
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"articleId": {
"type": "integer"
},
"sku": {
"type": "string"
},
"count": {
"type": "integer",
"default": 1
},
"sort": {
"type": "integer"
}
}
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "Updated Stückliste items",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object"
}
}
}
}
}
}
},
"400": {
"description": "Article is a father, has options, or contains itself"
},
"404": {
"description": "Article or component article not found"
}
}
}
},
"/article/{sku}/optionslist": {
"get": {
"summary": "Get options list for an article",
"description": "Returns the available options for an article.",
"tags": [
"Article"
],
"security": [
{
"cookieAuth": []
}
],
"parameters": [
{
"in": "path",
"name": "sku",
"required": true,
"schema": {
"type": "string"
},
"description": "Article SKU"
}
],
"responses": {
"200": {
"description": "List of options",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"options": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"articleId": {
"type": "integer"
},
"sku": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer"
},
"sort": {
"type": "integer"
},
"mandated": {
"type": "boolean"
}
}
}
}
}
}
}
}
},
"404": {
"description": "Article not found"
}
}
},
"put": {
"summary": "Set options list for an article",
"description": "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.",
"tags": [
"Article"
],
"security": [
{
"cookieAuth": []
}
],
"parameters": [
{
"in": "path",
"name": "sku",
"required": true,
"schema": {
"type": "string"
},
"description": "Article SKU"
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"options"
],
"properties": {
"options": {
"type": "array",
"items": {
"type": "object",
"properties": {
"articleId": {
"type": "integer"
},
"sku": {
"type": "string"
},
"count": {
"type": "integer",
"default": 1
},
"sort": {
"type": "integer"
},
"mandated": {
"type": "boolean",
"default": false
}
}
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "Updated options list",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"options": {
"type": "array",
"items": {
"type": "object"
}
}
}
}
}
}
},
"400": {
"description": "Article is a father, a Stückliste, or contains itself"
},
"404": {
"description": "Article or option article not found"
}
}
}
},
"/auth/selected-company": {
"put": {
"tags": [