This commit is contained in:
seb
2026-09-30 17:35:20 +02:00
parent 82cc138ba6
commit caacbe4968
9 changed files with 366 additions and 0 deletions

View File

@@ -183,8 +183,10 @@ Generated from `@openapi` annotations in [`src/api/routes/`](../../src/api/route
| [`routes/unit/delete.md`](routes/unit/delete.md) | `DELETE /unit` |
| [`routes/unit/list.md`](routes/unit/list.md) | `GET /unit` |
| [`routes/unit/upsert.md`](routes/unit/upsert.md) | `PUT /unit` |
| [`routes/v1/category.md`](routes/v1/category.md) | `GET /v1/category` |
| [`routes/pos/client.md`](routes/pos/client.md) | `GET /v1/client` |
| [`routes/pos/init.md`](routes/pos/init.md) | `GET /v1/init` |
| [`routes/v1/product.md`](routes/v1/product.md) | `GET /v1/product` |
| [`routes/warehouse/list.md`](routes/warehouse/list.md) | `GET /warehouse` |
| [`routes/warehouse/create.md`](routes/warehouse/create.md) | `POST /warehouse` |
| [`routes/warehouse/order.md`](routes/warehouse/order.md) | `PUT /warehouse/order` |

View File

@@ -13576,6 +13576,57 @@
}
}
},
"/v1/product": {
"get": {
"summary": "JTL-POS product catalog synchronization",
"description": "Returns product catalog with prices, stock, variants, and image hashes modified after lastChangedProduct cursor.",
"tags": [
"POS Sync"
],
"security": [
{
"BearerAuth": []
}
],
"parameters": [
{
"in": "query",
"name": "lastChangedProduct",
"schema": {
"type": "string"
},
"description": "Unix timestamp cursor of last product sync"
},
{
"in": "query",
"name": "limit",
"schema": {
"type": "integer",
"default": 50
},
"description": "Maximum number of products to return"
}
],
"responses": {
"200": {
"description": "Array of product objects for JTL-POS",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object"
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/v1/init": {
"get": {
"tags": [
@@ -13841,6 +13892,57 @@
}
}
}
},
"/v1/category": {
"get": {
"summary": "JTL-POS category synchronization",
"description": "Returns category hierarchy modified after lastChangedCategory cursor for the authenticated POS register.",
"tags": [
"POS Sync"
],
"security": [
{
"BearerAuth": []
}
],
"parameters": [
{
"in": "query",
"name": "lastChangedCategory",
"schema": {
"type": "string"
},
"description": "Unix timestamp cursor of last category sync"
},
{
"in": "query",
"name": "limit",
"schema": {
"type": "integer",
"default": 50
},
"description": "Maximum number of categories to return"
}
],
"responses": {
"200": {
"description": "Array of category objects for JTL-POS",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object"
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
}
},
"components": {

View File

@@ -0,0 +1,34 @@
# `GET /v1/category`
Protected. Requires a valid session cookie (`credentials: 'include'`).
JTL-POS category synchronization
Returns category hierarchy modified after lastChangedCategory cursor for the authenticated POS register.
## Query parameters
| Param | Required | Type | Description |
|-------|----------|------|-------------|
| `lastChangedCategory` | no | string | Unix timestamp cursor of last category sync |
| `limit` | no | integer | Maximum number of categories to return |
## Response `200`
Array of category objects for JTL-POS
```json
[
{}
]
```
## Errors
| Status | Description |
|--------|-------------|
| 401 | Unauthorized |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._

View File

@@ -0,0 +1,34 @@
# `GET /v1/product`
Protected. Requires a valid session cookie (`credentials: 'include'`).
JTL-POS product catalog synchronization
Returns product catalog with prices, stock, variants, and image hashes modified after lastChangedProduct cursor.
## Query parameters
| Param | Required | Type | Description |
|-------|----------|------|-------------|
| `lastChangedProduct` | no | string | Unix timestamp cursor of last product sync |
| `limit` | no | integer | Maximum number of products to return |
## Response `200`
Array of product objects for JTL-POS
```json
[
{}
]
```
## Errors
| Status | Description |
|--------|-------------|
| 401 | Unauthorized |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._