This commit is contained in:
seb
2026-07-31 18:25:42 +02:00
parent 1a05a5b7d6
commit 6074aa7304
33 changed files with 3041 additions and 470 deletions

View File

@@ -0,0 +1,41 @@
# `POST /company`
Protected. Requires a valid session cookie (`credentials: 'include'`).
Create company
Creates a company and selects it for the current user.
## Body (JSON)
```json
{
"iso639": "de",
"name": "Acme GmbH",
"taxrate": 19,
"reducedtaxrate": 7
}
```
## Response `201`
Created; selected company updated
```json
{
"company": { … },
"user": { … }
}
```
## Errors
| Status | Description |
|--------|-------------|
| 400 | Validation error — `{"error":"…"}` |
| 401 | Unauthorized — `{"error":"…"}` |
| 409 | Company name not available — `{"error":"…"}` |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._

View File

@@ -0,0 +1,31 @@
# `DELETE /company/{id}`
Protected. Requires a valid session cookie (`credentials: 'include'`).
Delete company
Deletes a company.
## Path parameters
| Param | Required | Type | Description |
|-------|----------|------|-------------|
| `id` | yes | integer | |
## Response `204`
Deleted
_No content_
## Errors
| Status | Description |
|--------|-------------|
| 400 | Invalid id — `{"error":"…"}` |
| 401 | Unauthorized — `{"error":"…"}` |
| 500 | Server error — `{"error":"…"}` |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._

View File

@@ -0,0 +1,28 @@
# `GET /company`
Protected. Requires a valid session cookie (`credentials: 'include'`).
List companies
Lists companies for the authenticated user.
## Response `200`
Company list
```json
{
"companies": []
}
```
## Errors
| Status | Description |
|--------|-------------|
| 401 | Unauthorized — `{"error":"…"}` |
| 500 | Server error — `{"error":"…"}` |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._

View File

@@ -0,0 +1,47 @@
# `PUT /company/{id}`
Protected. Requires a valid session cookie (`credentials: 'include'`).
Update company
Updates a company.
## Path parameters
| Param | Required | Type | Description |
|-------|----------|------|-------------|
| `id` | yes | integer | |
## Body (JSON)
```json
{
"iso639": "…",
"name": "…",
"taxrate": 1,
"reducedtaxrate": 1
}
```
## Response `200`
Updated
```json
{
"company": { … }
}
```
## Errors
| Status | Description |
|--------|-------------|
| 400 | Validation error — `{"error":"…"}` |
| 401 | Unauthorized — `{"error":"…"}` |
| 404 | Company not found — `{"error":"…"}` |
| 409 | Company name not available — `{"error":"…"}` |
---
_Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._