# `POST /company` Protected. Requires a valid session cookie (`credentials: 'include'`). Create company Creates a company and selects it for the current user. ## Body (JSON) | Field | Required | Type | Description | |-------|----------|------|-------------| | `iso639` | yes | string | | | `name` | yes | string | | | `taxrate` | yes | number | | | `reducedtaxrate` | yes | number | | ```json { "iso639": "de", "name": "Acme GmbH", "taxrate": 19, "reducedtaxrate": 7 } ``` ## Signals On success, emits SSE signals: `user`, `company` (see [`GET /events`](../events.md)). ## Response `201` Created; selected company updated ```json { "company": { "id": 1, "name": "…", "rootCategoryId": 1, "languageId": 1, "iso639": "…", "taxrate": 1, "reducedtaxrate": 1, "taxfreerate": 1, "role": "admin" }, "user": { "id": 1, "email": "user@example.com", "selectedCompanyId": 1, "picture": "…" } } ``` ## Errors | Status | Description | |--------|-------------| | 400 | Validation error — `{"error":"…"}` | | 401 | Unauthorized — `{"error":"…"}` | | 403 | Not authorized (invited users cannot create companies when implicit create is disabled) — `{"error":"…"}` | --- _Generated from `@openapi` JSDoc. Do not edit by hand — run `npm run docs:api`._