{"openapi":"3.1.0","info":{"title":"ImmoFreak REST API","version":"1.0.0","description":"Mit der ImmoFreak REST API greifst du aus eigenen Programmen, Tabellen und Automatisierungen auf dein ImmoFreak-Konto zu: lesen in allen Bereichen, anlegen und ändern dort, wo du es erlaubst.\n\n## Schnellstart\n\n1. In ImmoFreak **Integrationen → REST API → Schlüssel verwalten → Neuer Schlüssel** öffnen.\n2. Namen und Gültigkeit wählen, dann je Bereich **Aus**, **Lesen** oder **Lesen & Schreiben**.\n3. Schlüssel kopieren und als Header mitschicken:\n\n```bash\ncurl \"https://api.immofreak.de/v1/properties?limit=10\" \\\n  -H \"Authorization: Bearer ifk_live_…\"\n```\n\nOben rechts kannst du über **Authentication** deinen Schlüssel eintragen und jeden Endpunkt direkt hier ausprobieren. Der Schlüssel bleibt in deinem Browser und geht nur an https://api.immofreak.de.\n\n## Authentifizierung\n\n- Jede Anfrage braucht den Header `Authorization: Bearer <Schlüssel>`. Schlüssel sehen so aus: `ifk_live_<12 Zeichen>_<43 Zeichen>`.\n- **Nie in die Adresse schreiben** (`?token=…`): Solche Anfragen lehnt die API mit `400 key_in_url` ab, weil Adressen in Protokollen und Verläufen landen.\n- Ein Schlüssel gilt 30 Tage, 90 Tage, 1 Jahr oder unbegrenzt und lässt sich jederzeit widerrufen. Danach antwortet die API sofort mit `401`.\n- Ein Schlüssel ist **fest an das Konto gebunden**, in dem er angelegt wurde. Ist in der App gerade ein anderer Arbeitsbereich aktiv, antwortet die API mit `409 workspace_mismatch`, statt im falschen Konto zu arbeiten.\n- Die API sieht dieselben Daten wie du in der App, mit allen Team-Einschränkungen. Ist das Konto nicht freigegeben oder die Testphase abgelaufen: `403 account_inactive`.\n- `GET /me` zeigt, zu wem ein Schlüssel gehört und welche Rechte er hat.\n\n## Bereiche und Rechte\n\nJeder Schlüssel bekommt pro Bereich ein Recht. `:write` schließt Lesen ein.\n\n| Bereich | Lesen | Lesen & Schreiben | Endpunkte |\n|---|---|---|---|\n| Fix & Flip | `fixflip:read` | `fixflip:write` | `/projects`, `/budget-items`, `/project-costs`, `/project-loans`, `/project-units`, `/project-stages`, `/project-buyers`, `/work-packages`, `/fixed-costs` |\n| Buy & Hold | `bestand:read` | `bestand:write` | `/properties`, `/units`, `/leases`, `/property-loans`, `/meters`, `/meter-readings`, `/utilities`, `/insurances`, `/rent-increases`, `/expenses`, `/pv-systems` |\n| Mieter | `tenants:read` | `tenants:write` | `/tenants`, `/tenant-payments` |\n| Aufteiler | `aufteiler:read` | `aufteiler:write` | `/aufteiler-projects`, `/aufteiler-units`, `/aufteiler-tenants`, `/aufteiler-leases`, `/aufteiler-costs`, `/aufteiler-loans`, `/aufteiler-payments` |\n| Akquise | `deals:read` | `deals:write` | `/deals`, `/pipelines`, `/stages`, `/deal-analyses` |\n| Leads | `leads:read` | `leads:write` | `/leads`, `/lead-sources` |\n| Makler-CRM | `makler:read` | `makler:write` | `/listings`, `/listing-interests`, `/viewings`, `/mandates`, `/commissions`, `/search-profiles` |\n| Marktsuche | `market:read` | nur lesbar | `/market-listings`, `/market-searches`, `/market-saved-searches`, `/market-favorites` |\n| Kontakte | `contacts:read` | `contacts:write` | `/contacts`, `/contractors` |\n| Aufgaben | `tasks:read` | `tasks:write` | `/tasks`, `/checklists` |\n| Banking | `banking:read` | nur lesbar | `/bank-accounts`, `/bank-transactions` |\n\n## Lesen\n\n- **Liste:** `GET /{ressource}` liefert `{ \"data\": [...], \"next_cursor\": \"…\" | null }`, neueste zuerst.\n- **Einzeln:** `GET /{ressource}/{id}` liefert `{ \"data\": {...} }` oder `404`.\n- **Seitenweise:** `?limit=1…100` (Standard 50). Gibt es mehr, steht in `next_cursor` ein Wert; den als `?cursor=…` an die nächste Anfrage hängen, bis `next_cursor` `null` ist. Filter bei jeder Seite gleich mitschicken.\n- **Filter:** je Endpunkt dokumentiert, z. B. `/tasks?project_id=…&status=offen`. Verweis-Filter (`…_id`) brauchen eine UUID. Unbekannte oder doppelte Parameter ergeben `400`.\n- **Mieter:** `/tenants` zeigt standardmäßig nur aktive Mieter, `?archived=true` die archivierten.\n\n## Schreiben\n\n- **Anlegen:** `POST /{ressource}` mit JSON-Body, Antwort `201` mit dem neuen Eintrag samt `id`.\n- **Ändern:** `PATCH /{ressource}/{id}`; nur die mitgeschickten Felder ändern sich. `null` leert ein Feld.\n- Header `Content-Type: application/json`, Body höchstens 100 KB.\n- Nur die je Endpunkt als beschreibbar aufgeführten Felder. `id`, Konto, Zeitstempel und Bearbeiter setzt immer ImmoFreak; schickst du sie mit, antwortet die API mit `400 field_not_writable`.\n- **Verweise** (z. B. `property_id`, `contact_id`) müssen auf Einträge in **deinem** Konto zeigen, sonst `422 invalid_reference`.\n- **Löschen gibt es über die API nicht.** In der App landen gelöschte Einträge samt abhängigen Daten im Papierkorb und lassen sich 30 Tage wiederherstellen; das soll so bleiben.\n- Steuerberater-Zugänge im Team dürfen über die API nicht schreiben.\n\n## Marktsuche\n\n- `/market-listings` braucht das Markt-Abo und einen PLZ-Anfang mit 2 bis 5 Ziffern: `?zip=55`.\n- Weitere Filter: Vermarktungsart, Objektart, Preis, Fläche, Zimmer, Preis je m², Baujahr, Rendite, Preissenkung, Top-Deal, Auktion, vermietet, `listed_since` und `include_gone`.\n- Kontaktdaten privater Anbieter gibt die API nicht heraus.\n\n## Datenformate\n\n- Zeitpunkte in UTC nach ISO 8601: `2026-10-26T14:30:00.123456Z`. Datumsangaben: `2026-10-26`.\n- Beträge und Flächen als Zahlen mit Punkt; Renditen als Anteil (`0.052` = 5,2 %).\n- Leere Werte sind `null`.\n\n## Fehler\n\nFehler haben immer diese Form:\n\n```json\n{ \"error\": { \"code\": \"invalid_reference\", \"message\": \"property_id: … gibt es in deinem Konto nicht.\", \"request_id\": \"…\" } }\n```\n\n| Status | code | Bedeutung |\n|---|---|---|\n| 400 | `invalid_parameter`, `missing_parameter`, `invalid_cursor`, `invalid_json`, `invalid_body`, `field_not_writable`, `key_in_url` | Anfrage passt nicht |\n| 401 | `unauthorized` | Schlüssel fehlt, falsch, widerrufen oder abgelaufen |\n| 403 | `insufficient_scope`, `account_inactive`, `write_forbidden` | Recht fehlt, Konto nicht freigegeben oder keine Schreibrechte |\n| 404 | `not_found` | Endpunkt oder Eintrag gibt es nicht (oder er gehört nicht zu deinem Konto) |\n| 405 | `method_not_allowed`, `not_writable` | Methode nicht erlaubt, Endpunkt nur lesbar |\n| 409 | `workspace_mismatch`, `conflict` | Anderer Arbeitsbereich aktiv oder Eintrag existiert schon |\n| 413 | `body_too_large` | Body über 100 KB |\n| 415 | `unsupported_media_type` | `Content-Type: application/json` fehlt |\n| 422 | `invalid_value`, `invalid_reference`, `missing_field`, `rejected` | Wert, Verweis oder Pflichtfeld passt nicht |\n| 429 | `rate_limited`, `too_many_failed_attempts` | Kurz warten (Header `Retry-After`) |\n| 500/503 | `internal_error`, `unavailable` | Fehler bei uns; bitte per Support-Ticket mit `request_id` melden |\n\n## Limits\n\n- Keine Tages- oder Monatsgrenze.\n- Zum Schutz höchstens **300 Anfragen pro Minute** je Schlüssel. Jede Antwort enthält `X-RateLimit-Limit` und `X-RateLimit-Remaining`; darüber kommt `429` mit `Retry-After` in Sekunden.\n- Zu viele ungültige Schlüssel von derselben Adresse sperren diese für 10 Minuten.\n\n## Sicherheit und Datenschutz\n\n- ImmoFreak speichert zur Prüfung nur einen Fingerabdruck (SHA-256) des Schlüssels; zum erneuten Kopieren liegt er zusätzlich verschlüsselt vor.\n- IBAN, BIC, Steuer-IDs, interne Tokens und Freigabe-Links gibt die API nie heraus.\n- Aufrufe aus fremden Webseiten (CORS) sind gesperrt, damit der Schlüssel nie im Code einer Webseite steht. Nutze die API aus Server-Programmen, Skripten, Tabellen oder Automatisierungs-Tools.\n- Protokolliert werden je Anfrage nur Zeit, Weg und Status, 90 Tage lang.\n\n## Beispiele\n\nFertige Beispiele für curl, JavaScript, Python, PHP, Google Sheets, Excel/Power BI sowie Make, Zapier und n8n stehen in ImmoFreak unter **Integrationen → REST API → Anleitung**.\n\n## Hilfe und Support\n\nSchreib in ImmoFreak unter [Support](https://app.immofreak.de/support) ein Ticket mit dem Bereich **REST API**. Damit wir schnell helfen können:\n\n- Methode und Endpunkt, z. B. `GET /v1/projects?status=offen`\n- `request_id` und `code` aus der Fehlerantwort\n- ungefährer Zeitpunkt und womit du aufrufst (z. B. Python, Make, Excel)\n- vom Schlüssel **nur den Anfang** (`ifk_live_…`), nie den ganzen; einen eingefügten Schlüssel schwärzt ImmoFreak automatisch\n\nSupport ist Montag bis Freitag von 10 bis 20 Uhr erreichbar.\n\n## Versionen\n\nDiese Doku beschreibt **v1**. Neue Felder und Endpunkte kommen ohne neue Version dazu; Änderungen, die bestehende Programme brechen würden, nur mit einer neuen Version (`/v2`).","contact":{"name":"ImmoFreak Support (Ticket, Bereich REST API)","url":"https://app.immofreak.de/support"}},"servers":[{"url":"https://api.immofreak.de/v1","description":"Produktion"}],"security":[{"bearer":[]}],"tags":[{"name":"Fix-&-Flip-Projekte","description":"Endpunkt `/projects`"},{"name":"Budgetpositionen","description":"Endpunkt `/budget-items`"},{"name":"Projektkosten","description":"Endpunkt `/project-costs`"},{"name":"Projektfinanzierungen","description":"Endpunkt `/project-loans`"},{"name":"Einheiten im Projekt","description":"Endpunkt `/project-units`"},{"name":"Projektphasen","description":"Endpunkt `/project-stages`"},{"name":"Kaufinteressenten im Projekt","description":"Endpunkt `/project-buyers`"},{"name":"Gewerke und Vorgänge","description":"Endpunkt `/work-packages`"},{"name":"Fixkosten","description":"Endpunkt `/fixed-costs`"},{"name":"Objekte im Bestand","description":"Endpunkt `/properties`"},{"name":"Einheiten im Bestand","description":"Endpunkt `/units`"},{"name":"Mietverträge","description":"Endpunkt `/leases`"},{"name":"Darlehen im Bestand","description":"Endpunkt `/property-loans`"},{"name":"Zähler","description":"Endpunkt `/meters`"},{"name":"Zählerstände","description":"Endpunkt `/meter-readings`"},{"name":"Versorgerverträge","description":"Endpunkt `/utilities`"},{"name":"Versicherungen","description":"Endpunkt `/insurances`"},{"name":"Mieterhöhungen","description":"Endpunkt `/rent-increases`"},{"name":"Ausgaben im Bestand","description":"Endpunkt `/expenses`"},{"name":"PV-Anlagen","description":"Endpunkt `/pv-systems`"},{"name":"Mieter (Bestand)","description":"Endpunkt `/tenants`"},{"name":"Mietzahlungen","description":"Endpunkt `/tenant-payments`"},{"name":"Aufteiler-Projekte","description":"Endpunkt `/aufteiler-projects`"},{"name":"Aufteiler-Einheiten","description":"Endpunkt `/aufteiler-units`"},{"name":"Aufteiler-Mieter","description":"Endpunkt `/aufteiler-tenants`"},{"name":"Aufteiler-Mietverträge","description":"Endpunkt `/aufteiler-leases`"},{"name":"Aufteiler-Kosten","description":"Endpunkt `/aufteiler-costs`"},{"name":"Aufteiler-Kredite","description":"Endpunkt `/aufteiler-loans`"},{"name":"Aufteiler-Mietzahlungen","description":"Endpunkt `/aufteiler-payments`"},{"name":"Akquise-Deals","description":"Endpunkt `/deals`"},{"name":"Akquise-Pipelines","description":"Endpunkt `/pipelines`"},{"name":"Phasen der Akquise-Pipelines","description":"Endpunkt `/stages`"},{"name":"Deal-Analysen (Kalkulator)","description":"Endpunkt `/deal-analyses`"},{"name":"Leads","description":"Endpunkt `/leads`"},{"name":"Lead-Quellen","description":"Endpunkt `/lead-sources`"},{"name":"Inserate","description":"Endpunkt `/listings`"},{"name":"Interessenten je Inserat","description":"Endpunkt `/listing-interests`"},{"name":"Besichtigungen","description":"Endpunkt `/viewings`"},{"name":"Maklerverträge","description":"Endpunkt `/mandates`"},{"name":"Provisionen","description":"Endpunkt `/commissions`"},{"name":"Suchprofile","description":"Endpunkt `/search-profiles`"},{"name":"Inserate der Marktsuche (PLZ-Präfix Pflicht)","description":"Endpunkt `/market-listings`"},{"name":"Suchaufträge der Marktsuche","description":"Endpunkt `/market-searches`"},{"name":"Gespeicherte Suchen der Marktsuche","description":"Endpunkt `/market-saved-searches`"},{"name":"Favoriten der Marktsuche (listing_id = Inserat)","description":"Endpunkt `/market-favorites`"},{"name":"Kontakte","description":"Endpunkt `/contacts`"},{"name":"Handwerker","description":"Endpunkt `/contractors`"},{"name":"Aufgaben","description":"Endpunkt `/tasks`"},{"name":"Checklisten","description":"Endpunkt `/checklists`"},{"name":"Bankkonten (ohne IBAN)","description":"Endpunkt `/bank-accounts`"},{"name":"Kontoumsätze (ohne IBAN)","description":"Endpunkt `/bank-transactions`"},{"name":"Konto","description":"Angaben zum Schlüssel"}],"x-tagGroups":[{"name":"Fix & Flip","tags":["Fix-&-Flip-Projekte","Budgetpositionen","Projektkosten","Projektfinanzierungen","Einheiten im Projekt","Projektphasen","Kaufinteressenten im Projekt","Gewerke und Vorgänge","Fixkosten"]},{"name":"Buy & Hold","tags":["Objekte im Bestand","Einheiten im Bestand","Mietverträge","Darlehen im Bestand","Zähler","Zählerstände","Versorgerverträge","Versicherungen","Mieterhöhungen","Ausgaben im Bestand","PV-Anlagen","Mieter (Bestand)","Mietzahlungen"]},{"name":"Aufteiler","tags":["Aufteiler-Projekte","Aufteiler-Einheiten","Aufteiler-Mieter","Aufteiler-Mietverträge","Aufteiler-Kosten","Aufteiler-Kredite","Aufteiler-Mietzahlungen"]},{"name":"Akquise & Leads","tags":["Akquise-Deals","Akquise-Pipelines","Phasen der Akquise-Pipelines","Deal-Analysen (Kalkulator)","Leads","Lead-Quellen"]},{"name":"Makler-CRM","tags":["Inserate","Interessenten je Inserat","Besichtigungen","Maklerverträge","Provisionen","Suchprofile"]},{"name":"Marktsuche","tags":["Inserate der Marktsuche (PLZ-Präfix Pflicht)","Suchaufträge der Marktsuche","Gespeicherte Suchen der Marktsuche","Favoriten der Marktsuche (listing_id = Inserat)"]},{"name":"Kontakte","tags":["Kontakte","Handwerker"]},{"name":"Aufgaben","tags":["Aufgaben","Checklisten"]},{"name":"Banking","tags":["Bankkonten (ohne IBAN)","Kontoumsätze (ohne IBAN)"]},{"name":"Konto","tags":["Konto"]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Persönlicher API-Schlüssel aus ImmoFreak (Integrationen → REST API)."}},"responses":{"Fehler":{"description":"Fehler (siehe Tabelle „Fehler“ in der Einführung)","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"request_id":{"type":"string"}}}}}}}}},"schemas":{"leads":{"type":"object","description":"Leads","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"asking_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"contact_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_email":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"immoscout_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"offer_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"offer_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_interval_days":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_follow_up_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"follow_up_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"follow_up_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"acquisition_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_company":{"anyOf":[{"type":"string"},{"type":"null"}]},"plot_area":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"leads_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Leads. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"asking_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"contact_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_email":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"immoscout_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"offer_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"offer_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_interval_days":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_follow_up_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"follow_up_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"follow_up_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"acquisition_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_company":{"anyOf":[{"type":"string"},{"type":"null"}]},"plot_area":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"lead-sources":{"type":"object","description":"Lead-Quellen","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"lead-sources_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Lead-Quellen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"deals":{"type":"object","description":"Akquise-Deals","properties":{"id":{"type":"string","format":"uuid"},"pipeline_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stage_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"price":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"contact_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_email":{"anyOf":[{"type":"string"},{"type":"null"}]},"immoscout_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"offer_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"offer_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_interval_days":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_follow_up_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"follow_up_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"follow_up_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"acquisition_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_company":{"anyOf":[{"type":"string"},{"type":"null"}]},"plot_area":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"deals_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Akquise-Deals. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"pipeline_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stage_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"price":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"contact_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_email":{"anyOf":[{"type":"string"},{"type":"null"}]},"immoscout_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"offer_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"offer_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_interval_days":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_follow_up_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"follow_up_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"follow_up_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"acquisition_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_company":{"anyOf":[{"type":"string"},{"type":"null"}]},"plot_area":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"pipelines":{"type":"object","description":"Akquise-Pipelines","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"pipelines_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Akquise-Pipelines. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"stages":{"type":"object","description":"Phasen der Akquise-Pipelines","properties":{"id":{"type":"string","format":"uuid"},"pipeline_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"stages_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Phasen der Akquise-Pipelines. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"pipeline_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"deal-analyses":{"type":"object","description":"Deal-Analysen (Kalkulator)","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"asking_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"arv":{"anyOf":[{"type":"number"},{"type":"null"}]},"square_meters":{"anyOf":[{"type":"number"},{"type":"null"}]},"renovation_cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"renovation_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notar_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"grunderwerbsteuer_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"makler_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"purchase_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"eigenkapital":{"anyOf":[{"type":"number"},{"type":"null"}]},"zinssatz":{"anyOf":[{"type":"number"},{"type":"null"}]},"tilgung":{"anyOf":[{"type":"number"},{"type":"null"}]},"holding_costs_monthly":{"anyOf":[{"type":"number"},{"type":"null"}]},"verkaufsmakler_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"parking_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"parking_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"financed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"ziel_kaeufer":{"anyOf":[{"type":"string"},{"type":"null"}]},"ziel_miete_monat":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"deal-analyses_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Deal-Analysen (Kalkulator). Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"asking_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"arv":{"anyOf":[{"type":"number"},{"type":"null"}]},"square_meters":{"anyOf":[{"type":"number"},{"type":"null"}]},"renovation_cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"renovation_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notar_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"grunderwerbsteuer_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"makler_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"purchase_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"eigenkapital":{"anyOf":[{"type":"number"},{"type":"null"}]},"zinssatz":{"anyOf":[{"type":"number"},{"type":"null"}]},"tilgung":{"anyOf":[{"type":"number"},{"type":"null"}]},"holding_costs_monthly":{"anyOf":[{"type":"number"},{"type":"null"}]},"verkaufsmakler_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"parking_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"parking_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"financed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"ziel_kaeufer":{"anyOf":[{"type":"string"},{"type":"null"}]},"ziel_miete_monat":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"projects":{"type":"object","description":"Fix-&-Flip-Projekte","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"purchase_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"target_sell_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"arv":{"anyOf":[{"type":"number"},{"type":"null"}]},"renovation_budget":{"anyOf":[{"type":"number"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"immoscout_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"parking_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"parking_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notar_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"grunderwerbsteuer_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"makler_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"verkaufsmakler_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"holding_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"profit_tax_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"project_kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"actual_sell_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"converted_property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"client_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"reserve_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"living_area":{"anyOf":[{"type":"number"},{"type":"null"}]},"plot_area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"construction_year":{"anyOf":[{"type":"integer"},{"type":"null"}]},"property_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"condition":{"anyOf":[{"type":"string"},{"type":"null"}]},"equity_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"interest_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"monthly_holding_costs":{"anyOf":[{"type":"number"},{"type":"null"}]},"construction_overhead_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"risk_buffer_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"ankauf_zahlung_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"verkauf_zahlung_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"ziel_kaeufer":{"anyOf":[{"type":"string"},{"type":"null"}]},"ziel_miete_monat":{"anyOf":[{"type":"number"},{"type":"null"}]},"sanierung_start":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"sanierung_monate":{"anyOf":[{"type":"integer"},{"type":"null"}]}}},"projects_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Fix-&-Flip-Projekte. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"purchase_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"target_sell_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"arv":{"anyOf":[{"type":"number"},{"type":"null"}]},"renovation_budget":{"anyOf":[{"type":"number"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"immoscout_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"parking_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"parking_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notar_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"grunderwerbsteuer_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"makler_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"verkaufsmakler_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"holding_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"profit_tax_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"project_kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"actual_sell_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"converted_property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"client_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"reserve_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"living_area":{"anyOf":[{"type":"number"},{"type":"null"}]},"plot_area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"construction_year":{"anyOf":[{"type":"integer"},{"type":"null"}]},"property_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"condition":{"anyOf":[{"type":"string"},{"type":"null"}]},"equity_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"interest_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"monthly_holding_costs":{"anyOf":[{"type":"number"},{"type":"null"}]},"construction_overhead_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"risk_buffer_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"ankauf_zahlung_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"verkauf_zahlung_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"ziel_kaeufer":{"anyOf":[{"type":"string"},{"type":"null"}]},"ziel_miete_monat":{"anyOf":[{"type":"number"},{"type":"null"}]},"sanierung_start":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"sanierung_monate":{"anyOf":[{"type":"integer"},{"type":"null"}]}}},"budget-items":{"type":"object","description":"Budgetpositionen","properties":{"id":{"type":"string","format":"uuid"},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contractor_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"category":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"estimated_cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"actual_cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"vorgang_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"partner_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"link":{"anyOf":[{"type":"string"},{"type":"null"}]},"status_changed_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"quantity":{"anyOf":[{"type":"number"},{"type":"null"}]},"unit":{"anyOf":[{"type":"string"},{"type":"null"}]},"unit_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"budget-items_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Budgetpositionen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"category":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"estimated_cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"actual_cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"vorgang_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"partner_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"link":{"anyOf":[{"type":"string"},{"type":"null"}]},"status_changed_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"quantity":{"anyOf":[{"type":"number"},{"type":"null"}]},"unit":{"anyOf":[{"type":"string"},{"type":"null"}]},"unit_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"project-costs":{"type":"object","description":"Projektkosten","properties":{"id":{"type":"string","format":"uuid"},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"recurring":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"unit":{"anyOf":[{"type":"string"},{"type":"null"}]},"percent_base":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"project-costs_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Projektkosten. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"recurring":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"unit":{"anyOf":[{"type":"string"},{"type":"null"}]},"percent_base":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"project-loans":{"type":"object","description":"Projektfinanzierungen","properties":{"id":{"type":"string","format":"uuid"},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"lender_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"lender_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"interest_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"repayment_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"amortization_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"term_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rank":{"anyOf":[{"type":"integer"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"profit_share_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"effective_interest_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"processing_fee":{"anyOf":[{"type":"number"},{"type":"null"}]},"interest_payment":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"project-loans_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Projektfinanzierungen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"lender_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"lender_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"interest_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"repayment_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"amortization_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"term_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rank":{"anyOf":[{"type":"integer"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"profit_share_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"effective_interest_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"processing_fee":{"anyOf":[{"type":"number"},{"type":"null"}]},"interest_payment":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"project-units":{"type":"object","description":"Einheiten im Projekt","properties":{"id":{"type":"string","format":"uuid"},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"floor":{"anyOf":[{"type":"string"},{"type":"null"}]},"rented":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"planned_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"actual_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"sale_status":{"anyOf":[{"type":"string"},{"type":"null"}]},"sale_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"buyer_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"typ":{"anyOf":[{"type":"string"},{"type":"null"}]},"mea":{"anyOf":[{"type":"number"},{"type":"null"}]},"sondernutzung":{"anyOf":[{"type":"string"},{"type":"null"}]},"mieter_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"kaltmiete":{"anyOf":[{"type":"number"},{"type":"null"}]},"mietbeginn":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_mitgeteilt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_ergebnis":{"anyOf":[{"type":"string"},{"type":"null"}]},"mindestpreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaeufer_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kaeufer_verbraucher":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"partner_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"provision_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"provision_betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"provision_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reserviert_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reservierung_bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reservierungsgebuehr":{"anyOf":[{"type":"number"},{"type":"null"}]},"notartermin_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaufpreis_faellig_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaufpreis_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"uebergabe_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]}}},"project-units_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Einheiten im Projekt. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"floor":{"anyOf":[{"type":"string"},{"type":"null"}]},"rented":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"planned_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"actual_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"sale_status":{"anyOf":[{"type":"string"},{"type":"null"}]},"sale_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"buyer_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"typ":{"anyOf":[{"type":"string"},{"type":"null"}]},"mea":{"anyOf":[{"type":"number"},{"type":"null"}]},"sondernutzung":{"anyOf":[{"type":"string"},{"type":"null"}]},"mieter_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"kaltmiete":{"anyOf":[{"type":"number"},{"type":"null"}]},"mietbeginn":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_mitgeteilt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_ergebnis":{"anyOf":[{"type":"string"},{"type":"null"}]},"mindestpreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaeufer_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kaeufer_verbraucher":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"partner_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"provision_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"provision_betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"provision_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reserviert_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reservierung_bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reservierungsgebuehr":{"anyOf":[{"type":"number"},{"type":"null"}]},"notartermin_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaufpreis_faellig_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaufpreis_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"uebergabe_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]}}},"project-stages":{"type":"object","description":"Projektphasen","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"project-stages_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Projektphasen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"project-buyers":{"type":"object","description":"Kaufinteressenten im Projekt","properties":{"id":{"type":"string","format":"uuid"},"kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stufe":{"anyOf":[{"type":"string"},{"type":"null"}]},"kaufmotiv":{"anyOf":[{"type":"string"},{"type":"null"}]},"budget_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"budget_max":{"anyOf":[{"type":"number"},{"type":"null"}]},"eigenkapital":{"anyOf":[{"type":"number"},{"type":"null"}]},"finanzierung":{"anyOf":[{"type":"string"},{"type":"null"}]},"quelle":{"anyOf":[{"type":"string"},{"type":"null"}]},"partner_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"wiedervorlage_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"verloren_grund":{"anyOf":[{"type":"string"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"project-buyers_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Kaufinteressenten im Projekt. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stufe":{"anyOf":[{"type":"string"},{"type":"null"}]},"kaufmotiv":{"anyOf":[{"type":"string"},{"type":"null"}]},"budget_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"budget_max":{"anyOf":[{"type":"number"},{"type":"null"}]},"eigenkapital":{"anyOf":[{"type":"number"},{"type":"null"}]},"finanzierung":{"anyOf":[{"type":"string"},{"type":"null"}]},"quelle":{"anyOf":[{"type":"string"},{"type":"null"}]},"partner_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"wiedervorlage_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"verloren_grund":{"anyOf":[{"type":"string"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"work-packages":{"type":"object","description":"Gewerke und Vorgänge","properties":{"id":{"type":"string","format":"uuid"},"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"level":{"anyOf":[{"type":"string"},{"type":"null"}]},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"deadline":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"budget":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"work-packages_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Gewerke und Vorgänge. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"level":{"anyOf":[{"type":"string"},{"type":"null"}]},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"deadline":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"budget":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"fixed-costs":{"type":"object","description":"Fixkosten","properties":{"id":{"type":"string","format":"uuid"},"bezeichnung":{"anyOf":[{"type":"string"},{"type":"null"}]},"kategorie":{"anyOf":[{"type":"string"},{"type":"null"}]},"betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"intervall":{"anyOf":[{"type":"string"},{"type":"null"}]},"ab":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notiz":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"fixed-costs_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Fixkosten. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"bezeichnung":{"anyOf":[{"type":"string"},{"type":"null"}]},"kategorie":{"anyOf":[{"type":"string"},{"type":"null"}]},"betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"intervall":{"anyOf":[{"type":"string"},{"type":"null"}]},"ab":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notiz":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"aufteiler-projects":{"type":"object","description":"Aufteiler-Projekte","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"street":{"anyOf":[{"type":"string"},{"type":"null"}]},"house_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"city":{"anyOf":[{"type":"string"},{"type":"null"}]},"bundesland":{"anyOf":[{"type":"string"},{"type":"null"}]},"phase":{"anyOf":[{"type":"string"},{"type":"null"}]},"baujahr":{"anyOf":[{"type":"integer"},{"type":"null"}]},"wohnflaeche":{"anyOf":[{"type":"number"},{"type":"null"}]},"grundstueck":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaufpreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"kauf_beurkundet_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"nutzen_lasten_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"grest_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"notar_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"grundbuch_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"makler_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"sanierungsbudget":{"anyOf":[{"type":"number"},{"type":"null"}]},"kosten_aufteilung":{"anyOf":[{"type":"number"},{"type":"null"}]},"kosten_sonstige":{"anyOf":[{"type":"number"},{"type":"null"}]},"vertriebsprovision_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"marketing_budget":{"anyOf":[{"type":"number"},{"type":"null"}]},"hausgeld_leerstand_monat":{"anyOf":[{"type":"number"},{"type":"null"}]},"haltedauer_monate":{"anyOf":[{"type":"integer"},{"type":"null"}]},"eigenkapital":{"anyOf":[{"type":"number"},{"type":"null"}]},"darlehen":{"anyOf":[{"type":"number"},{"type":"null"}]},"zins_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"teilungserklaerung_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"abgeschlossenheit_beantragt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"abgeschlossenheit_erteilt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"grundbuecher_angelegt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"verwalter":{"anyOf":[{"type":"string"},{"type":"null"}]},"verwalter_bestellt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"verwalter_bestellt_bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"energieausweis_bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"umwandlung_genehmigung_noetig":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"umwandlung_genehmigt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"milieuschutz":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"sperrfrist_jahre":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"ff_project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"aufteiler-projects_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Aufteiler-Projekte. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"street":{"anyOf":[{"type":"string"},{"type":"null"}]},"house_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"city":{"anyOf":[{"type":"string"},{"type":"null"}]},"bundesland":{"anyOf":[{"type":"string"},{"type":"null"}]},"phase":{"anyOf":[{"type":"string"},{"type":"null"}]},"baujahr":{"anyOf":[{"type":"integer"},{"type":"null"}]},"wohnflaeche":{"anyOf":[{"type":"number"},{"type":"null"}]},"grundstueck":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaufpreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"kauf_beurkundet_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"nutzen_lasten_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"grest_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"notar_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"grundbuch_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"makler_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"sanierungsbudget":{"anyOf":[{"type":"number"},{"type":"null"}]},"kosten_aufteilung":{"anyOf":[{"type":"number"},{"type":"null"}]},"kosten_sonstige":{"anyOf":[{"type":"number"},{"type":"null"}]},"vertriebsprovision_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"marketing_budget":{"anyOf":[{"type":"number"},{"type":"null"}]},"hausgeld_leerstand_monat":{"anyOf":[{"type":"number"},{"type":"null"}]},"haltedauer_monate":{"anyOf":[{"type":"integer"},{"type":"null"}]},"eigenkapital":{"anyOf":[{"type":"number"},{"type":"null"}]},"darlehen":{"anyOf":[{"type":"number"},{"type":"null"}]},"zins_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"teilungserklaerung_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"abgeschlossenheit_beantragt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"abgeschlossenheit_erteilt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"grundbuecher_angelegt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"verwalter":{"anyOf":[{"type":"string"},{"type":"null"}]},"verwalter_bestellt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"verwalter_bestellt_bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"energieausweis_bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"umwandlung_genehmigung_noetig":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"umwandlung_genehmigt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"milieuschutz":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"sperrfrist_jahre":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"aufteiler-units":{"type":"object","description":"Aufteiler-Einheiten","properties":{"id":{"type":"string","format":"uuid"},"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"nummer":{"anyOf":[{"type":"string"},{"type":"null"}]},"typ":{"anyOf":[{"type":"string"},{"type":"null"}]},"lage":{"anyOf":[{"type":"string"},{"type":"null"}]},"zimmer":{"anyOf":[{"type":"number"},{"type":"null"}]},"flaeche":{"anyOf":[{"type":"number"},{"type":"null"}]},"mea":{"anyOf":[{"type":"number"},{"type":"null"}]},"sondernutzung":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"vermietet":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"mieter_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"kaltmiete":{"anyOf":[{"type":"number"},{"type":"null"}]},"mietbeginn":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_mitgeteilt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_ergebnis":{"anyOf":[{"type":"string"},{"type":"null"}]},"listenpreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"mindestpreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"verkaufspreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaeufer_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kaeufer_verbraucher":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"partner_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"provision_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"provision_betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"provision_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reserviert_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reservierung_bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reservierungsgebuehr":{"anyOf":[{"type":"number"},{"type":"null"}]},"notartermin_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"beurkundet_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaufpreis_faellig_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaufpreis_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"uebergabe_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"aufteiler-units_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Aufteiler-Einheiten. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"nummer":{"anyOf":[{"type":"string"},{"type":"null"}]},"typ":{"anyOf":[{"type":"string"},{"type":"null"}]},"lage":{"anyOf":[{"type":"string"},{"type":"null"}]},"zimmer":{"anyOf":[{"type":"number"},{"type":"null"}]},"flaeche":{"anyOf":[{"type":"number"},{"type":"null"}]},"mea":{"anyOf":[{"type":"number"},{"type":"null"}]},"sondernutzung":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"vermietet":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"mieter_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"kaltmiete":{"anyOf":[{"type":"number"},{"type":"null"}]},"mietbeginn":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_mitgeteilt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_ergebnis":{"anyOf":[{"type":"string"},{"type":"null"}]},"listenpreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"mindestpreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"verkaufspreis":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaeufer_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kaeufer_verbraucher":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"partner_kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"provision_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"provision_betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"provision_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reserviert_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reservierung_bis":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"reservierungsgebuehr":{"anyOf":[{"type":"number"},{"type":"null"}]},"notartermin_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"beurkundet_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaufpreis_faellig_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaufpreis_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"uebergabe_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"aufteiler-tenants":{"type":"object","description":"Aufteiler-Mieter","properties":{"id":{"type":"string","format":"uuid"},"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"einheit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"anrede":{"anyOf":[{"type":"string"},{"type":"null"}]},"vorname":{"anyOf":[{"type":"string"},{"type":"null"}]},"nachname":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"telefon":{"anyOf":[{"type":"string"},{"type":"null"}]},"mobil":{"anyOf":[{"type":"string"},{"type":"null"}]},"einzug_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"auszug_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaution":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaution_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_mitgeteilt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_ergebnis":{"anyOf":[{"type":"string"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]},"archived_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"aufteiler-tenants_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Aufteiler-Mieter. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"einheit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"anrede":{"anyOf":[{"type":"string"},{"type":"null"}]},"vorname":{"anyOf":[{"type":"string"},{"type":"null"}]},"nachname":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"telefon":{"anyOf":[{"type":"string"},{"type":"null"}]},"mobil":{"anyOf":[{"type":"string"},{"type":"null"}]},"einzug_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"auszug_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"kaution":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaution_bezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_mitgeteilt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"vorkaufsrecht_ergebnis":{"anyOf":[{"type":"string"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]},"archived_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"aufteiler-leases":{"type":"object","description":"Aufteiler-Mietverträge","properties":{"id":{"type":"string","format":"uuid"},"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"einheit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"mieter_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"beginn":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"ende":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"unbefristet":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"kaltmiete":{"anyOf":[{"type":"number"},{"type":"null"}]},"nebenkosten":{"anyOf":[{"type":"number"},{"type":"null"}]},"heizkosten":{"anyOf":[{"type":"number"},{"type":"null"}]},"stellplatz_miete":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaution":{"anyOf":[{"type":"number"},{"type":"null"}]},"abrechnung_ab":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"zahltag":{"anyOf":[{"type":"integer"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"aufteiler-leases_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Aufteiler-Mietverträge. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"einheit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"mieter_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"beginn":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"ende":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"unbefristet":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"kaltmiete":{"anyOf":[{"type":"number"},{"type":"null"}]},"nebenkosten":{"anyOf":[{"type":"number"},{"type":"null"}]},"heizkosten":{"anyOf":[{"type":"number"},{"type":"null"}]},"stellplatz_miete":{"anyOf":[{"type":"number"},{"type":"null"}]},"kaution":{"anyOf":[{"type":"number"},{"type":"null"}]},"abrechnung_ab":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"zahltag":{"anyOf":[{"type":"integer"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"aufteiler-costs":{"type":"object","description":"Aufteiler-Kosten","properties":{"id":{"type":"string","format":"uuid"},"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"einheit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kategorie":{"anyOf":[{"type":"string"},{"type":"null"}]},"beschreibung":{"anyOf":[{"type":"string"},{"type":"null"}]},"betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"datum":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"umlagefaehig":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"verteilerschluessel":{"anyOf":[{"type":"string"},{"type":"null"}]},"ust_satz":{"anyOf":[{"type":"number"},{"type":"null"}]},"lohnanteil_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"steuer_kategorie":{"anyOf":[{"type":"string"},{"type":"null"}]},"beleg_dokument_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"bank_transaction_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"aufteiler-costs_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Aufteiler-Kosten. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"einheit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kategorie":{"anyOf":[{"type":"string"},{"type":"null"}]},"beschreibung":{"anyOf":[{"type":"string"},{"type":"null"}]},"betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"datum":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"umlagefaehig":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"verteilerschluessel":{"anyOf":[{"type":"string"},{"type":"null"}]},"ust_satz":{"anyOf":[{"type":"number"},{"type":"null"}]},"lohnanteil_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"steuer_kategorie":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"aufteiler-loans":{"type":"object","description":"Aufteiler-Kredite","properties":{"id":{"type":"string","format":"uuid"},"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"einheit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kontakt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"bank":{"anyOf":[{"type":"string"},{"type":"null"}]},"art":{"anyOf":[{"type":"string"},{"type":"null"}]},"betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"zins_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"tilgung_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"rate_monat":{"anyOf":[{"type":"number"},{"type":"null"}]},"zinsbindung_jahre":{"anyOf":[{"type":"integer"},{"type":"null"}]},"beginn":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"ende":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"tilgungsfrei_monate":{"anyOf":[{"type":"integer"},{"type":"null"}]},"grundschuld":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"rang":{"anyOf":[{"type":"integer"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"aufteiler-loans_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Aufteiler-Kredite. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"projekt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"einheit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"bank":{"anyOf":[{"type":"string"},{"type":"null"}]},"art":{"anyOf":[{"type":"string"},{"type":"null"}]},"betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"zins_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"tilgung_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"rate_monat":{"anyOf":[{"type":"number"},{"type":"null"}]},"zinsbindung_jahre":{"anyOf":[{"type":"integer"},{"type":"null"}]},"beginn":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"ende":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"tilgungsfrei_monate":{"anyOf":[{"type":"integer"},{"type":"null"}]},"grundschuld":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"rang":{"anyOf":[{"type":"integer"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notizen":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"aufteiler-payments":{"type":"object","description":"Aufteiler-Mietzahlungen","properties":{"id":{"type":"string","format":"uuid"},"vertrag_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"monat":{"anyOf":[{"type":"string"},{"type":"null"}]},"betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"gezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"art":{"anyOf":[{"type":"string"},{"type":"null"}]},"bank_transaction_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"notiz":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"aufteiler-payments_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Aufteiler-Mietzahlungen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"vertrag_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"monat":{"anyOf":[{"type":"string"},{"type":"null"}]},"betrag":{"anyOf":[{"type":"number"},{"type":"null"}]},"gezahlt_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"art":{"anyOf":[{"type":"string"},{"type":"null"}]},"notiz":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"properties":{"type":"object","description":"Objekte im Bestand","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"purchase_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"current_value":{"anyOf":[{"type":"number"},{"type":"null"}]},"purchase_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"units":{"anyOf":[{"type":"integer"},{"type":"null"}]},"total_area":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"construction_year":{"anyOf":[{"type":"integer"},{"type":"null"}]},"property_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"management_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"ownership_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"street":{"anyOf":[{"type":"string"},{"type":"null"}]},"house_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"city":{"anyOf":[{"type":"string"},{"type":"null"}]},"country":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"converted_project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"transfer_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"ai_value":{"anyOf":[{"type":"number"},{"type":"null"}]},"ai_value_low":{"anyOf":[{"type":"number"},{"type":"null"}]},"ai_value_high":{"anyOf":[{"type":"number"},{"type":"null"}]},"ai_value_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"properties_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Objekte im Bestand. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"purchase_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"current_value":{"anyOf":[{"type":"number"},{"type":"null"}]},"purchase_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"units":{"anyOf":[{"type":"integer"},{"type":"null"}]},"total_area":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"construction_year":{"anyOf":[{"type":"integer"},{"type":"null"}]},"property_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"management_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"ownership_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"street":{"anyOf":[{"type":"string"},{"type":"null"}]},"house_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"city":{"anyOf":[{"type":"string"},{"type":"null"}]},"country":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"transfer_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]}}},"units":{"type":"object","description":"Einheiten im Bestand","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"current_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"target_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"has_parking":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"parking_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"has_kitchen":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"kitchen_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"unit_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"floor_label":{"anyOf":[{"type":"string"},{"type":"null"}]},"unit_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"mea":{"anyOf":[{"type":"string"},{"type":"null"}]},"monthly_fees":{"anyOf":[{"type":"number"},{"type":"null"}]},"monthly_utilities":{"anyOf":[{"type":"number"},{"type":"null"}]},"monthly_heating":{"anyOf":[{"type":"number"},{"type":"null"}]},"parking_kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"parking_label":{"anyOf":[{"type":"string"},{"type":"null"}]},"parking_fees":{"anyOf":[{"type":"number"},{"type":"null"}]},"purchase_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"purchase_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"transfer_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"construction_year":{"anyOf":[{"type":"integer"},{"type":"null"}]},"self_use":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"self_use_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"vermietungsart":{"anyOf":[{"type":"string"},{"type":"null"}]},"soll_umsatz_monat":{"anyOf":[{"type":"number"},{"type":"null"}]},"is_wg":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"wg_zimmer_anzahl":{"anyOf":[{"type":"integer"},{"type":"null"}]},"wg_gemeinschaftsflaeche":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"units_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Einheiten im Bestand. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"current_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"target_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"has_parking":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"parking_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"has_kitchen":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"kitchen_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"unit_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"floor_label":{"anyOf":[{"type":"string"},{"type":"null"}]},"unit_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"mea":{"anyOf":[{"type":"string"},{"type":"null"}]},"monthly_fees":{"anyOf":[{"type":"number"},{"type":"null"}]},"monthly_utilities":{"anyOf":[{"type":"number"},{"type":"null"}]},"monthly_heating":{"anyOf":[{"type":"number"},{"type":"null"}]},"parking_kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"parking_label":{"anyOf":[{"type":"string"},{"type":"null"}]},"parking_fees":{"anyOf":[{"type":"number"},{"type":"null"}]},"purchase_price":{"anyOf":[{"type":"number"},{"type":"null"}]},"purchase_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"transfer_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"construction_year":{"anyOf":[{"type":"integer"},{"type":"null"}]},"self_use":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"self_use_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"vermietungsart":{"anyOf":[{"type":"string"},{"type":"null"}]},"soll_umsatz_monat":{"anyOf":[{"type":"number"},{"type":"null"}]},"is_wg":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"wg_zimmer_anzahl":{"anyOf":[{"type":"integer"},{"type":"null"}]},"wg_gemeinschaftsflaeche":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"leases":{"type":"object","description":"Mietverträge","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"rent_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"operating_costs":{"anyOf":[{"type":"number"},{"type":"null"}]},"heating_costs":{"anyOf":[{"type":"number"},{"type":"null"}]},"deposit_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"deposit_paid":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"deposit_paid_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"end_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"contract_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"notice_period":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rent_payment_day":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"signed_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"signed_document_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"billing_start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"keys_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"kitchen_equipped":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"parking_spaces":{"anyOf":[{"type":"integer"},{"type":"null"}]},"pets_policy":{"anyOf":[{"type":"string"},{"type":"null"}]},"garden_included":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"smoking_allowed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"contract_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"rent_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"rent_adjustment_kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"vat_rate_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"no_show_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"rent_liability":{"anyOf":[{"type":"string"},{"type":"null"}]},"vat_base":{"anyOf":[{"type":"string"},{"type":"null"}]},"parking_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"kitchen_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"rent_in_advance":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"verwaltung_einbehalt":{"anyOf":[{"type":"number"},{"type":"null"}]},"furniture_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"moebliert":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"wg_zimmer":{"anyOf":[{"type":"string"},{"type":"null"}]},"wg_zimmer_flaeche":{"anyOf":[{"type":"number"},{"type":"null"}]},"wg_gemeinschaft_anteil":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"leases_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Mietverträge. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"rent_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"operating_costs":{"anyOf":[{"type":"number"},{"type":"null"}]},"heating_costs":{"anyOf":[{"type":"number"},{"type":"null"}]},"deposit_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"deposit_paid":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"deposit_paid_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"end_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"contract_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"notice_period":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rent_payment_day":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"signed_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"signed_document_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"billing_start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"keys_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"kitchen_equipped":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"parking_spaces":{"anyOf":[{"type":"integer"},{"type":"null"}]},"pets_policy":{"anyOf":[{"type":"string"},{"type":"null"}]},"garden_included":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"smoking_allowed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"contract_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"rent_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"rent_adjustment_kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"vat_rate_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"no_show_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"rent_liability":{"anyOf":[{"type":"string"},{"type":"null"}]},"vat_base":{"anyOf":[{"type":"string"},{"type":"null"}]},"parking_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"kitchen_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"rent_in_advance":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"verwaltung_einbehalt":{"anyOf":[{"type":"number"},{"type":"null"}]},"furniture_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"moebliert":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"wg_zimmer":{"anyOf":[{"type":"string"},{"type":"null"}]},"wg_zimmer_flaeche":{"anyOf":[{"type":"number"},{"type":"null"}]},"wg_gemeinschaft_anteil":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"property-loans":{"type":"object","description":"Darlehen im Bestand","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"lender_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"loan_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"original_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"interest_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"amortization_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"monthly_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"fixed_period_years":{"anyOf":[{"type":"integer"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"end_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"land_charge_secured":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"rank":{"anyOf":[{"type":"integer"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"grace_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"bank_account_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"zins_methode":{"anyOf":[{"type":"string"},{"type":"null"}]},"zins_abschluss":{"anyOf":[{"type":"string"},{"type":"null"}]},"zahltag":{"anyOf":[{"type":"integer"},{"type":"null"}]},"bank_stand":{"anyOf":[{"type":"number"},{"type":"null"}]},"bank_stand_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"loan_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"zins_variabel":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"zins_referenz":{"anyOf":[{"type":"string"},{"type":"null"}]},"land_charge_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"fixed_period_end":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]}}},"property-loans_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Darlehen im Bestand. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"lender_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"loan_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"original_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"interest_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"amortization_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"monthly_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"fixed_period_years":{"anyOf":[{"type":"integer"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"end_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"land_charge_secured":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"rank":{"anyOf":[{"type":"integer"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"grace_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"bank_account_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"zins_methode":{"anyOf":[{"type":"string"},{"type":"null"}]},"zins_abschluss":{"anyOf":[{"type":"string"},{"type":"null"}]},"zahltag":{"anyOf":[{"type":"integer"},{"type":"null"}]},"bank_stand":{"anyOf":[{"type":"number"},{"type":"null"}]},"bank_stand_am":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"loan_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"zins_variabel":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"zins_referenz":{"anyOf":[{"type":"string"},{"type":"null"}]},"land_charge_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"fixed_period_end":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]}}},"meters":{"type":"object","description":"Zähler","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"number":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"location":{"anyOf":[{"type":"string"},{"type":"null"}]},"unit_of_measure":{"anyOf":[{"type":"string"},{"type":"null"}]},"installed_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"removed_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"calibration_until":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]}}},"meters_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Zähler. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"number":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"location":{"anyOf":[{"type":"string"},{"type":"null"}]},"unit_of_measure":{"anyOf":[{"type":"string"},{"type":"null"}]},"installed_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"removed_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"calibration_until":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]}}},"meter-readings":{"type":"object","description":"Zählerstände","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"meter_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"anyOf":[{"type":"number"},{"type":"null"}]},"date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"read_by":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"meter_ref":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"meter-readings_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Zählerstände. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"value":{"anyOf":[{"type":"number"},{"type":"null"}]},"date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"read_by":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"meter_ref":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"utilities":{"type":"object","description":"Versorgerverträge","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"provider":{"anyOf":[{"type":"string"},{"type":"null"}]},"type":{"anyOf":[{"type":"string"},{"type":"null"}]},"contract_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"meter_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"monthly_advance":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"utilities_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Versorgerverträge. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"provider":{"anyOf":[{"type":"string"},{"type":"null"}]},"type":{"anyOf":[{"type":"string"},{"type":"null"}]},"contract_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"meter_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"monthly_advance":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"insurances":{"type":"object","description":"Versicherungen","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"insurer":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"utility_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"policy_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"sum_insured":{"anyOf":[{"type":"number"},{"type":"null"}]},"deductible":{"anyOf":[{"type":"number"},{"type":"null"}]},"annual_premium":{"anyOf":[{"type":"number"},{"type":"null"}]},"payment_interval":{"anyOf":[{"type":"string"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"main_due_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notice_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"apportionable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"via_weg":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"end_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"insurances_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Versicherungen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"insurer":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"utility_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"policy_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"sum_insured":{"anyOf":[{"type":"number"},{"type":"null"}]},"deductible":{"anyOf":[{"type":"number"},{"type":"null"}]},"annual_premium":{"anyOf":[{"type":"number"},{"type":"null"}]},"payment_interval":{"anyOf":[{"type":"string"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"main_due_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notice_months":{"anyOf":[{"type":"integer"},{"type":"null"}]},"apportionable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"via_weg":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"end_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"rent-increases":{"type":"object","description":"Mieterhöhungen","properties":{"id":{"type":"string","format":"uuid"},"contract_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"old_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"new_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"sent_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"effective_from":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"consent_deadline":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"applied_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"rent-increases_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Mieterhöhungen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"contract_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"kind":{"anyOf":[{"type":"string"},{"type":"null"}]},"old_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"new_rent":{"anyOf":[{"type":"number"},{"type":"null"}]},"sent_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"effective_from":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"consent_deadline":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"applied_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"expenses":{"type":"object","description":"Ausgaben im Bestand","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"category":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"is_umlagefaehig":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"receipt_document_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"bank_transaction_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"vat_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"akhk_ausgenommen":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"akhk_grund":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"expenses_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Ausgaben im Bestand. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"category":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"is_umlagefaehig":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"vat_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"akhk_ausgenommen":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"akhk_grund":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"pv-systems":{"type":"object","description":"PV-Anlagen","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"kwp":{"anyOf":[{"type":"number"},{"type":"null"}]},"inbetriebnahme":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"investition":{"anyOf":[{"type":"number"},{"type":"null"}]},"ertrag_kwh_jahr":{"anyOf":[{"type":"number"},{"type":"null"}]},"modell":{"anyOf":[{"type":"string"},{"type":"null"}]},"einspeiseverguetung_ct":{"anyOf":[{"type":"number"},{"type":"null"}]},"mieterstrom_anteil_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"mieterstrom_preis_ct":{"anyOf":[{"type":"number"},{"type":"null"}]},"mieterstrom_zuschlag_ct":{"anyOf":[{"type":"number"},{"type":"null"}]},"eigenverbrauch_anteil_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"strompreis_bezug_ct":{"anyOf":[{"type":"number"},{"type":"null"}]},"betriebskosten_jahr":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"pv-systems_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für PV-Anlagen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"kwp":{"anyOf":[{"type":"number"},{"type":"null"}]},"inbetriebnahme":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"investition":{"anyOf":[{"type":"number"},{"type":"null"}]},"ertrag_kwh_jahr":{"anyOf":[{"type":"number"},{"type":"null"}]},"modell":{"anyOf":[{"type":"string"},{"type":"null"}]},"einspeiseverguetung_ct":{"anyOf":[{"type":"number"},{"type":"null"}]},"mieterstrom_anteil_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"mieterstrom_preis_ct":{"anyOf":[{"type":"number"},{"type":"null"}]},"mieterstrom_zuschlag_ct":{"anyOf":[{"type":"number"},{"type":"null"}]},"eigenverbrauch_anteil_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"strompreis_bezug_ct":{"anyOf":[{"type":"number"},{"type":"null"}]},"betriebskosten_jahr":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"tenants":{"type":"object","description":"Mieter (Bestand)","properties":{"id":{"type":"string","format":"uuid"},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"move_in_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"lease_start":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"lease_end":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"deposit":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"billing_start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_addon":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_street":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_city":{"anyOf":[{"type":"string"},{"type":"null"}]},"mobile":{"anyOf":[{"type":"string"},{"type":"null"}]},"archived_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"tenants_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Mieter (Bestand). Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"move_in_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"lease_start":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"lease_end":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"deposit":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"billing_start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_addon":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_street":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_city":{"anyOf":[{"type":"string"},{"type":"null"}]},"mobile":{"anyOf":[{"type":"string"},{"type":"null"}]},"archived_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"tenant-payments":{"type":"object","description":"Mietzahlungen","properties":{"id":{"type":"string","format":"uuid"},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"type":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"due_period":{"anyOf":[{"type":"string"},{"type":"null"}]},"assigned_period":{"anyOf":[{"type":"string"},{"type":"null"}]},"nicht_steuerbar":{"anyOf":[{"type":"boolean"},{"type":"null"}]}}},"tenant-payments_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Mietzahlungen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"type":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"due_period":{"anyOf":[{"type":"string"},{"type":"null"}]},"assigned_period":{"anyOf":[{"type":"string"},{"type":"null"}]},"nicht_steuerbar":{"anyOf":[{"type":"boolean"},{"type":"null"}]}}},"listings":{"type":"object","description":"Inserate","properties":{"id":{"type":"string","format":"uuid"},"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"marketing_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"object_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"street":{"anyOf":[{"type":"string"},{"type":"null"}]},"house_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"city":{"anyOf":[{"type":"string"},{"type":"null"}]},"show_exact_address":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"price":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_on_request":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"service_charge":{"anyOf":[{"type":"number"},{"type":"null"}]},"heating_cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"deposit":{"anyOf":[{"type":"number"},{"type":"null"}]},"hoa_fee":{"anyOf":[{"type":"number"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"plot_area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"bathrooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"floor":{"anyOf":[{"type":"string"},{"type":"null"}]},"total_floors":{"anyOf":[{"type":"string"},{"type":"null"}]},"year_built":{"anyOf":[{"type":"string"},{"type":"null"}]},"modernization_year":{"anyOf":[{"type":"string"},{"type":"null"}]},"available_from":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"condition":{"anyOf":[{"type":"string"},{"type":"null"}]},"heating_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"equipment":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"location_description":{"anyOf":[{"type":"string"},{"type":"null"}]},"land_register_info":{"anyOf":[{"type":"string"},{"type":"null"}]},"special_rights":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_cert_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_value":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_class":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_cert_issue_year":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_cert_exempt":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"commission_model":{"anyOf":[{"type":"string"},{"type":"null"}]},"commission_buyer_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"commission_seller_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"commission_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"owner_contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"source_property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"source_unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"source_project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"reference":{"anyOf":[{"type":"string"},{"type":"null"}]},"bereich":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"listings_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Inserate. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"marketing_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"object_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"street":{"anyOf":[{"type":"string"},{"type":"null"}]},"house_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"city":{"anyOf":[{"type":"string"},{"type":"null"}]},"show_exact_address":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"price":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_on_request":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"service_charge":{"anyOf":[{"type":"number"},{"type":"null"}]},"heating_cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"deposit":{"anyOf":[{"type":"number"},{"type":"null"}]},"hoa_fee":{"anyOf":[{"type":"number"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"plot_area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"bathrooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"floor":{"anyOf":[{"type":"string"},{"type":"null"}]},"total_floors":{"anyOf":[{"type":"string"},{"type":"null"}]},"year_built":{"anyOf":[{"type":"string"},{"type":"null"}]},"modernization_year":{"anyOf":[{"type":"string"},{"type":"null"}]},"available_from":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"condition":{"anyOf":[{"type":"string"},{"type":"null"}]},"heating_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"equipment":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"location_description":{"anyOf":[{"type":"string"},{"type":"null"}]},"land_register_info":{"anyOf":[{"type":"string"},{"type":"null"}]},"special_rights":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_cert_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_value":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_class":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_cert_issue_year":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_cert_exempt":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"commission_model":{"anyOf":[{"type":"string"},{"type":"null"}]},"commission_buyer_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"commission_seller_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"commission_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"owner_contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"source_property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"source_unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"source_project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"type":"string"},{"type":"null"}]},"bereich":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"listing-interests":{"type":"object","description":"Interessenten je Inserat","properties":{"id":{"type":"string","format":"uuid"},"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stage":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"offer_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"expose_sent_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"rejection_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"follow_up_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_interval_days":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_follow_up_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"follow_up_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"follow_up_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"bewertung":{"anyOf":[{"type":"integer"},{"type":"null"}]}}},"listing-interests_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Interessenten je Inserat. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"stage":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"offer_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"expose_sent_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"rejection_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"follow_up_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_interval_days":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_follow_up_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"follow_up_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"follow_up_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"bewertung":{"anyOf":[{"type":"integer"},{"type":"null"}]}}},"viewings":{"type":"object","description":"Besichtigungen","properties":{"id":{"type":"string","format":"uuid"},"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"interest_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"starts_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"duration_min":{"anyOf":[{"type":"integer"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"feedback":{"anyOf":[{"type":"string"},{"type":"null"}]},"feedback_rating":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"viewings_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Besichtigungen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"interest_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"starts_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"duration_min":{"anyOf":[{"type":"integer"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"feedback":{"anyOf":[{"type":"string"},{"type":"null"}]},"feedback_rating":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"mandates":{"type":"object","description":"Maklerverträge","properties":{"id":{"type":"string","format":"uuid"},"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"owner_contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"mandate_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"text_form_confirmed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"signed_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"valid_until":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"commission_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"commission_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"owner_is_consumer":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"distance_contract":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"withdrawal_info_sent_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"withdrawal_deadline":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"withdrawal_waived":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"mandate_party":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"mandates_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Maklerverträge. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"owner_contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"mandate_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"text_form_confirmed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"signed_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"valid_until":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"commission_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"commission_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"owner_is_consumer":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"distance_contract":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"withdrawal_info_sent_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"withdrawal_deadline":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"withdrawal_waived":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"mandate_party":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"commissions":{"type":"object","description":"Provisionen","properties":{"id":{"type":"string","format":"uuid"},"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"interest_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"party":{"anyOf":[{"type":"string"},{"type":"null"}]},"base_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"net_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"vat_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"gross_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"requires_proof":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"proof_received_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"due_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"paid_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"invoice_no":{"anyOf":[{"type":"string"},{"type":"null"}]},"invoice_document_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"invoice_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"service_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"buyer_is_consumer":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"override_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"recipient_is_business":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"cancelled_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"cancel_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"commissions_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Provisionen. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"interest_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"party":{"anyOf":[{"type":"string"},{"type":"null"}]},"base_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"net_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"vat_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"gross_amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"requires_proof":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"proof_received_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"due_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"paid_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"invoice_no":{"anyOf":[{"type":"string"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"invoice_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"service_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"buyer_is_consumer":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"override_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"recipient_is_business":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"cancelled_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"cancel_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"search-profiles":{"type":"object","description":"Suchprofile","properties":{"id":{"type":"string","format":"uuid"},"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"marketing_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip_prefix":{"anyOf":[{"type":"string"},{"type":"null"}]},"price_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_max":{"anyOf":[{"type":"number"},{"type":"null"}]},"area_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"active":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"search-profiles_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Suchprofile. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"marketing_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip_prefix":{"anyOf":[{"type":"string"},{"type":"null"}]},"price_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_max":{"anyOf":[{"type":"number"},{"type":"null"}]},"area_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"active":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"contacts":{"type":"object","description":"Kontakte","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"company":{"anyOf":[{"type":"string"},{"type":"null"}]},"mode":{"anyOf":[{"type":"string"},{"type":"null"}]},"roles":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"trade":{"anyOf":[{"type":"string"},{"type":"null"}]},"hourly_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"rating":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"follow_up_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_interval_days":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_follow_up_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"follow_up_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"follow_up_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_street":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_city":{"anyOf":[{"type":"string"},{"type":"null"}]},"website":{"anyOf":[{"type":"string"},{"type":"null"}]},"customer_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"payment_terms":{"anyOf":[{"type":"string"},{"type":"null"}]},"property_ids":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"mobile":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"contacts_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Kontakte. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"company":{"anyOf":[{"type":"string"},{"type":"null"}]},"mode":{"anyOf":[{"type":"string"},{"type":"null"}]},"roles":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"trade":{"anyOf":[{"type":"string"},{"type":"null"}]},"hourly_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"rating":{"anyOf":[{"type":"integer"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"follow_up_at":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"follow_up_interval_days":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_follow_up_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"follow_up_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"follow_up_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_street":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"address_city":{"anyOf":[{"type":"string"},{"type":"null"}]},"website":{"anyOf":[{"type":"string"},{"type":"null"}]},"customer_number":{"anyOf":[{"type":"string"},{"type":"null"}]},"payment_terms":{"anyOf":[{"type":"string"},{"type":"null"}]},"mobile":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"contractors":{"type":"object","description":"Handwerker","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"company":{"anyOf":[{"type":"string"},{"type":"null"}]},"trade":{"anyOf":[{"type":"string"},{"type":"null"}]},"phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"hourly_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"rating":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"contractors_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Handwerker. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"company":{"anyOf":[{"type":"string"},{"type":"null"}]},"trade":{"anyOf":[{"type":"string"},{"type":"null"}]},"phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"hourly_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"rating":{"anyOf":[{"type":"number"},{"type":"null"}]},"notes":{"anyOf":[{"type":"string"},{"type":"null"}]}}},"tasks":{"type":"object","description":"Aufgaben","properties":{"id":{"type":"string","format":"uuid"},"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"priority":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string"},{"type":"null"}]},"mode":{"anyOf":[{"type":"string"},{"type":"null"}]},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contract_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"due_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"assigned_to":{"anyOf":[{"type":"string"},{"type":"null"}]},"completed_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"vorgang_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"deal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"assigned_user_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"assigned_user_ids":{"anyOf":[{"type":"array","items":{"type":"string","format":"uuid"}},{"type":"null"}]},"remind_days_before":{"anyOf":[{"type":"integer"},{"type":"null"}]},"repeat_every":{"anyOf":[{"type":"integer"},{"type":"null"}]},"repeat_unit":{"anyOf":[{"type":"string"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"parent_task_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"tasks_schreiben":{"type":"object","additionalProperties":false,"description":"Beschreibbare Felder für Aufgaben. Alle optional bei PATCH; beim Anlegen gelten die Pflichtfelder der Datenbank.","properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"priority":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string"},{"type":"null"}]},"mode":{"anyOf":[{"type":"string"},{"type":"null"}]},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"contract_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"due_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"assigned_to":{"anyOf":[{"type":"string"},{"type":"null"}]},"completed_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"vorgang_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"deal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"listing_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"assigned_user_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"assigned_user_ids":{"anyOf":[{"type":"array","items":{"type":"string","format":"uuid"}},{"type":"null"}]},"remind_days_before":{"anyOf":[{"type":"integer"},{"type":"null"}]},"repeat_every":{"anyOf":[{"type":"integer"},{"type":"null"}]},"repeat_unit":{"anyOf":[{"type":"string"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"parent_task_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"checklists":{"type":"object","description":"Checklisten","properties":{"id":{"type":"string","format":"uuid"},"project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"lead_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"deal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"template_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"task_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"bank-accounts":{"type":"object","description":"Bankkonten (ohne IBAN)","properties":{"id":{"type":"string","format":"uuid"},"bank_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"account_holder":{"anyOf":[{"type":"string"},{"type":"null"}]},"balance":{"anyOf":[{"type":"number"},{"type":"null"}]},"last_sync":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"status":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"provider":{"anyOf":[{"type":"string"},{"type":"null"}]},"consent_expires_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_sync_status":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_sync_added":{"anyOf":[{"type":"integer"},{"type":"null"}]},"last_sync_ok_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"last_bank_refresh_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"bank-transactions":{"type":"object","description":"Kontoumsätze (ohne IBAN)","properties":{"id":{"type":"string","format":"uuid"},"bank_account_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"date":{"anyOf":[{"type":"string","format":"date","example":"2026-10-26"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"counterparty":{"anyOf":[{"type":"string"},{"type":"null"}]},"purpose":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string"},{"type":"null"}]},"matched_tenant_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"matched_property_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"matched_unit_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]},"is_reconciled":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"match_status":{"anyOf":[{"type":"string"},{"type":"null"}]},"match_confidence":{"anyOf":[{"type":"number"},{"type":"null"}]},"is_ignored":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"assigned_period":{"anyOf":[{"type":"string"},{"type":"null"}]},"gvc_code":{"anyOf":[{"type":"string"},{"type":"null"}]},"booking_text":{"anyOf":[{"type":"string"},{"type":"null"}]},"vat_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"matched_project_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}]}}},"market-listings":{"type":"object","description":"Inserate der Marktsuche (PLZ-Präfix Pflicht)","properties":{"id":{"type":"string","format":"uuid"},"portal":{"anyOf":[{"type":"string"},{"type":"null"}]},"expose_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"title":{"anyOf":[{"type":"string"},{"type":"null"}]},"zip":{"anyOf":[{"type":"string"},{"type":"null"}]},"city":{"anyOf":[{"type":"string"},{"type":"null"}]},"street_hint":{"anyOf":[{"type":"string"},{"type":"null"}]},"property_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"marketing_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"price":{"anyOf":[{"type":"number"},{"type":"null"}]},"area":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_per_sqm":{"anyOf":[{"type":"number"},{"type":"null"}]},"build_year":{"anyOf":[{"type":"integer"},{"type":"null"}]},"modernisiert_jahr":{"anyOf":[{"type":"integer"},{"type":"null"}]},"floor":{"anyOf":[{"type":"integer"},{"type":"null"}]},"hausgeld":{"anyOf":[{"type":"number"},{"type":"null"}]},"rent_actual":{"anyOf":[{"type":"number"},{"type":"null"}]},"is_rented":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"is_auction":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"condition":{"anyOf":[{"type":"string"},{"type":"null"}]},"energy_class":{"anyOf":[{"type":"string"},{"type":"null"}]},"has_balcony":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"has_elevator":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"has_kitchen":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"has_cellar":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"has_garden":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"parking_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"erbbau":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"niessbrauch":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"ferienwohnung":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"moebliert":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"provider_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"provider_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"provision":{"anyOf":[{"type":"string"},{"type":"null"}]},"commission_text":{"anyOf":[{"type":"string"},{"type":"null"}]},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"lat":{"anyOf":[{"type":"number"},{"type":"null"}]},"lon":{"anyOf":[{"type":"number"},{"type":"null"}]},"first_seen_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"listed_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"published_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"last_seen_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"gone_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"price_first":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_changed_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"is_reduced":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"price_drop_pct":{"anyOf":[{"type":"number"},{"type":"null"}]},"top_deal":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"marktwert":{"anyOf":[{"type":"number"},{"type":"null"}]},"marktwert_abw":{"anyOf":[{"type":"number"},{"type":"null"}]},"miete_soll":{"anyOf":[{"type":"number"},{"type":"null"}]},"rendite_ist":{"anyOf":[{"type":"number"},{"type":"null"}]},"rendite_soll":{"anyOf":[{"type":"number"},{"type":"null"}]}}},"market-searches":{"type":"object","description":"Suchaufträge der Marktsuche","properties":{"id":{"type":"string","format":"uuid"},"portal":{"anyOf":[{"type":"string"},{"type":"null"}]},"portals":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"marketing_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"property_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"geo_label":{"anyOf":[{"type":"string"},{"type":"null"}]},"city":{"anyOf":[{"type":"string"},{"type":"null"}]},"kreis_key":{"anyOf":[{"type":"string"},{"type":"null"}]},"radius_km":{"anyOf":[{"type":"integer"},{"type":"null"}]},"price_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"price_max":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"rooms_max":{"anyOf":[{"type":"number"},{"type":"null"}]},"area_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"area_max":{"anyOf":[{"type":"number"},{"type":"null"}]},"qm_preis_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"qm_preis_max":{"anyOf":[{"type":"number"},{"type":"null"}]},"rendite_ist_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"rendite_soll_min":{"anyOf":[{"type":"number"},{"type":"null"}]},"nur_archiv":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"active":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"notify":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_run_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]},"last_status":{"anyOf":[{"type":"string"},{"type":"null"}]},"found_count":{"anyOf":[{"type":"integer"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"market-saved-searches":{"type":"object","description":"Gespeicherte Suchen der Marktsuche","properties":{"id":{"type":"string","format":"uuid"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"filters":{"anyOf":[{"type":"object"},{"type":"null"}]},"notify":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}},"market-favorites":{"type":"object","description":"Favoriten der Marktsuche (listing_id = Inserat)","properties":{"listing_id":{"type":"string","format":"uuid"},"note":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time","example":"2026-10-26T14:30:00Z"},{"type":"null"}]}}}}},"paths":{"/me":{"get":{"tags":["Konto"],"summary":"Schlüssel, Konto und Rechte","operationId":"me","description":"Zeigt, zu welcher Person und welchem Konto der Schlüssel gehört und welche Rechte er hat. Braucht kein besonderes Recht.","responses":{"200":{"description":"OK"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/leads":{"get":{"tags":["Leads"],"summary":"Liste","operationId":"list_leads","description":"Leads, neueste zuerst. Recht: Leads lesen (`leads:read` oder `leads:write`).","security":[{"bearer":["leads:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"source","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in source.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/leads"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Leads"],"summary":"Anlegen","operationId":"create_leads","description":"Legt einen Eintrag im eigenen Konto an. Recht: Leads lesen & schreiben (`leads:write`).","security":[{"bearer":["leads:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/leads_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/leads"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/leads/{id}":{"get":{"tags":["Leads"],"summary":"Einzeln abrufen","operationId":"get_leads","description":"Ein Eintrag über seine id. Recht: Leads lesen (`leads:read` oder `leads:write`).","security":[{"bearer":["leads:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/leads"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Leads"],"summary":"Ändern","operationId":"update_leads","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Leads lesen & schreiben (`leads:write`).","security":[{"bearer":["leads:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/leads_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/leads"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/lead-sources":{"get":{"tags":["Lead-Quellen"],"summary":"Liste","operationId":"list_lead_sources","description":"Lead-Quellen, neueste zuerst. Recht: Leads lesen (`leads:read` oder `leads:write`).","security":[{"bearer":["leads:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/lead-sources"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Lead-Quellen"],"summary":"Anlegen","operationId":"create_lead_sources","description":"Legt einen Eintrag im eigenen Konto an. Recht: Leads lesen & schreiben (`leads:write`).","security":[{"bearer":["leads:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/lead-sources_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/lead-sources"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/lead-sources/{id}":{"get":{"tags":["Lead-Quellen"],"summary":"Einzeln abrufen","operationId":"get_lead_sources","description":"Ein Eintrag über seine id. Recht: Leads lesen (`leads:read` oder `leads:write`).","security":[{"bearer":["leads:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/lead-sources"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Lead-Quellen"],"summary":"Ändern","operationId":"update_lead_sources","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Leads lesen & schreiben (`leads:write`).","security":[{"bearer":["leads:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/lead-sources_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/lead-sources"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/deals":{"get":{"tags":["Akquise-Deals"],"summary":"Liste","operationId":"list_deals","description":"Akquise-Deals, neueste zuerst. Recht: Akquise lesen (`deals:read` oder `deals:write`).","security":[{"bearer":["deals:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"pipeline_id","in":"query","required":false,"description":"Nur Einträge mit diesem pipeline_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"stage_id","in":"query","required":false,"description":"Nur Einträge mit diesem stage_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"source","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in source.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/deals"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Akquise-Deals"],"summary":"Anlegen","operationId":"create_deals","description":"Legt einen Eintrag im eigenen Konto an. Recht: Akquise lesen & schreiben (`deals:write`). Verweise müssen zu deinem Konto gehören: `pipeline_id`, `stage_id`.","security":[{"bearer":["deals:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/deals_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/deals"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/deals/{id}":{"get":{"tags":["Akquise-Deals"],"summary":"Einzeln abrufen","operationId":"get_deals","description":"Ein Eintrag über seine id. Recht: Akquise lesen (`deals:read` oder `deals:write`).","security":[{"bearer":["deals:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/deals"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Akquise-Deals"],"summary":"Ändern","operationId":"update_deals","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Akquise lesen & schreiben (`deals:write`). Verweise müssen zu deinem Konto gehören: `pipeline_id`, `stage_id`.","security":[{"bearer":["deals:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/deals_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/deals"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/pipelines":{"get":{"tags":["Akquise-Pipelines"],"summary":"Liste","operationId":"list_pipelines","description":"Akquise-Pipelines, neueste zuerst. Recht: Akquise lesen (`deals:read` oder `deals:write`).","security":[{"bearer":["deals:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/pipelines"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Akquise-Pipelines"],"summary":"Anlegen","operationId":"create_pipelines","description":"Legt einen Eintrag im eigenen Konto an. Recht: Akquise lesen & schreiben (`deals:write`).","security":[{"bearer":["deals:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/pipelines_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/pipelines"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/pipelines/{id}":{"get":{"tags":["Akquise-Pipelines"],"summary":"Einzeln abrufen","operationId":"get_pipelines","description":"Ein Eintrag über seine id. Recht: Akquise lesen (`deals:read` oder `deals:write`).","security":[{"bearer":["deals:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/pipelines"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Akquise-Pipelines"],"summary":"Ändern","operationId":"update_pipelines","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Akquise lesen & schreiben (`deals:write`).","security":[{"bearer":["deals:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/pipelines_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/pipelines"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/stages":{"get":{"tags":["Phasen der Akquise-Pipelines"],"summary":"Liste","operationId":"list_stages","description":"Phasen der Akquise-Pipelines, neueste zuerst. Recht: Akquise lesen (`deals:read` oder `deals:write`).","security":[{"bearer":["deals:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"pipeline_id","in":"query","required":false,"description":"Nur Einträge mit diesem pipeline_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/stages"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Phasen der Akquise-Pipelines"],"summary":"Anlegen","operationId":"create_stages","description":"Legt einen Eintrag im eigenen Konto an. Recht: Akquise lesen & schreiben (`deals:write`). Verweise müssen zu deinem Konto gehören: `pipeline_id`.","security":[{"bearer":["deals:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stages_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/stages"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/stages/{id}":{"get":{"tags":["Phasen der Akquise-Pipelines"],"summary":"Einzeln abrufen","operationId":"get_stages","description":"Ein Eintrag über seine id. Recht: Akquise lesen (`deals:read` oder `deals:write`).","security":[{"bearer":["deals:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/stages"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Phasen der Akquise-Pipelines"],"summary":"Ändern","operationId":"update_stages","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Akquise lesen & schreiben (`deals:write`). Verweise müssen zu deinem Konto gehören: `pipeline_id`.","security":[{"bearer":["deals:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stages_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/stages"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/deal-analyses":{"get":{"tags":["Deal-Analysen (Kalkulator)"],"summary":"Liste","operationId":"list_deal_analyses","description":"Deal-Analysen (Kalkulator), neueste zuerst. Recht: Akquise lesen (`deals:read` oder `deals:write`).","security":[{"bearer":["deals:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/deal-analyses"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Deal-Analysen (Kalkulator)"],"summary":"Anlegen","operationId":"create_deal_analyses","description":"Legt einen Eintrag im eigenen Konto an. Recht: Akquise lesen & schreiben (`deals:write`). Verweise müssen zu deinem Konto gehören: `project_id`.","security":[{"bearer":["deals:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/deal-analyses_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/deal-analyses"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/deal-analyses/{id}":{"get":{"tags":["Deal-Analysen (Kalkulator)"],"summary":"Einzeln abrufen","operationId":"get_deal_analyses","description":"Ein Eintrag über seine id. Recht: Akquise lesen (`deals:read` oder `deals:write`).","security":[{"bearer":["deals:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/deal-analyses"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Deal-Analysen (Kalkulator)"],"summary":"Ändern","operationId":"update_deal_analyses","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Akquise lesen & schreiben (`deals:write`). Verweise müssen zu deinem Konto gehören: `project_id`.","security":[{"bearer":["deals:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/deal-analyses_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/deal-analyses"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/projects":{"get":{"tags":["Fix-&-Flip-Projekte"],"summary":"Liste","operationId":"list_projects","description":"Fix-&-Flip-Projekte, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"project_kind","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in project_kind.","schema":{"type":"string"}},{"name":"converted_property_id","in":"query","required":false,"description":"Nur Einträge mit diesem converted_property_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/projects"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Fix-&-Flip-Projekte"],"summary":"Anlegen","operationId":"create_projects","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `converted_property_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/projects_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/projects"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/projects/{id}":{"get":{"tags":["Fix-&-Flip-Projekte"],"summary":"Einzeln abrufen","operationId":"get_projects","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/projects"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Fix-&-Flip-Projekte"],"summary":"Ändern","operationId":"update_projects","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `converted_property_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/projects_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/projects"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/budget-items":{"get":{"tags":["Budgetpositionen"],"summary":"Liste","operationId":"list_budget_items","description":"Budgetpositionen, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"contractor_id","in":"query","required":false,"description":"Nur Einträge mit diesem contractor_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"category","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in category.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"vorgang_id","in":"query","required":false,"description":"Nur Einträge mit diesem vorgang_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"price_id","in":"query","required":false,"description":"Nur Einträge mit diesem price_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/budget-items"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Budgetpositionen"],"summary":"Anlegen","operationId":"create_budget_items","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`, `vorgang_id`, `price_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/budget-items_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/budget-items"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/budget-items/{id}":{"get":{"tags":["Budgetpositionen"],"summary":"Einzeln abrufen","operationId":"get_budget_items","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/budget-items"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Budgetpositionen"],"summary":"Ändern","operationId":"update_budget_items","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`, `vorgang_id`, `price_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/budget-items_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/budget-items"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-costs":{"get":{"tags":["Projektkosten"],"summary":"Liste","operationId":"list_project_costs","description":"Projektkosten, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"kind","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in kind.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/project-costs"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Projektkosten"],"summary":"Anlegen","operationId":"create_project_costs","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-costs_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-costs"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-costs/{id}":{"get":{"tags":["Projektkosten"],"summary":"Einzeln abrufen","operationId":"get_project_costs","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-costs"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Projektkosten"],"summary":"Ändern","operationId":"update_project_costs","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-costs_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-costs"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-loans":{"get":{"tags":["Projektfinanzierungen"],"summary":"Liste","operationId":"list_project_loans","description":"Projektfinanzierungen, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"lender_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in lender_type.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/project-loans"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Projektfinanzierungen"],"summary":"Anlegen","operationId":"create_project_loans","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`, `contact_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-loans_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-loans"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-loans/{id}":{"get":{"tags":["Projektfinanzierungen"],"summary":"Einzeln abrufen","operationId":"get_project_loans","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-loans"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Projektfinanzierungen"],"summary":"Ändern","operationId":"update_project_loans","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`, `contact_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-loans_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-loans"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-units":{"get":{"tags":["Einheiten im Projekt"],"summary":"Liste","operationId":"list_project_units","description":"Einheiten im Projekt, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"sale_status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in sale_status.","schema":{"type":"string"}},{"name":"typ","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in typ.","schema":{"type":"string"}},{"name":"kaeufer_kontakt_id","in":"query","required":false,"description":"Nur Einträge mit diesem kaeufer_kontakt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"partner_kontakt_id","in":"query","required":false,"description":"Nur Einträge mit diesem partner_kontakt_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/project-units"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Einheiten im Projekt"],"summary":"Anlegen","operationId":"create_project_units","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`, `kaeufer_kontakt_id`, `partner_kontakt_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-units_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-units"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-units/{id}":{"get":{"tags":["Einheiten im Projekt"],"summary":"Einzeln abrufen","operationId":"get_project_units","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-units"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Einheiten im Projekt"],"summary":"Ändern","operationId":"update_project_units","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`, `kaeufer_kontakt_id`, `partner_kontakt_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-units_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-units"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-stages":{"get":{"tags":["Projektphasen"],"summary":"Liste","operationId":"list_project_stages","description":"Projektphasen, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/project-stages"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Projektphasen"],"summary":"Anlegen","operationId":"create_project_stages","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`).","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-stages_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-stages"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-stages/{id}":{"get":{"tags":["Projektphasen"],"summary":"Einzeln abrufen","operationId":"get_project_stages","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-stages"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Projektphasen"],"summary":"Ändern","operationId":"update_project_stages","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`).","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-stages_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-stages"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-buyers":{"get":{"tags":["Kaufinteressenten im Projekt"],"summary":"Liste","operationId":"list_project_buyers","description":"Kaufinteressenten im Projekt, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"kontakt_id","in":"query","required":false,"description":"Nur Einträge mit diesem kontakt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"stufe","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in stufe.","schema":{"type":"string"}},{"name":"partner_kontakt_id","in":"query","required":false,"description":"Nur Einträge mit diesem partner_kontakt_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/project-buyers"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Kaufinteressenten im Projekt"],"summary":"Anlegen","operationId":"create_project_buyers","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `kontakt_id`, `project_id`, `unit_id`, `partner_kontakt_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-buyers_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-buyers"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/project-buyers/{id}":{"get":{"tags":["Kaufinteressenten im Projekt"],"summary":"Einzeln abrufen","operationId":"get_project_buyers","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-buyers"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Kaufinteressenten im Projekt"],"summary":"Ändern","operationId":"update_project_buyers","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `kontakt_id`, `project_id`, `unit_id`, `partner_kontakt_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/project-buyers_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/project-buyers"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/work-packages":{"get":{"tags":["Gewerke und Vorgänge"],"summary":"Liste","operationId":"list_work_packages","description":"Gewerke und Vorgänge, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/work-packages"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Gewerke und Vorgänge"],"summary":"Anlegen","operationId":"create_work_packages","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/work-packages_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/work-packages"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/work-packages/{id}":{"get":{"tags":["Gewerke und Vorgänge"],"summary":"Einzeln abrufen","operationId":"get_work_packages","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/work-packages"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Gewerke und Vorgänge"],"summary":"Ändern","operationId":"update_work_packages","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`). Verweise müssen zu deinem Konto gehören: `project_id`.","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/work-packages_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/work-packages"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/fixed-costs":{"get":{"tags":["Fixkosten"],"summary":"Liste","operationId":"list_fixed_costs","description":"Fixkosten, neueste zuerst. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"kategorie","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in kategorie.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/fixed-costs"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Fixkosten"],"summary":"Anlegen","operationId":"create_fixed_costs","description":"Legt einen Eintrag im eigenen Konto an. Recht: Fix & Flip lesen & schreiben (`fixflip:write`).","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fixed-costs_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/fixed-costs"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/fixed-costs/{id}":{"get":{"tags":["Fixkosten"],"summary":"Einzeln abrufen","operationId":"get_fixed_costs","description":"Ein Eintrag über seine id. Recht: Fix & Flip lesen (`fixflip:read` oder `fixflip:write`).","security":[{"bearer":["fixflip:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/fixed-costs"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Fixkosten"],"summary":"Ändern","operationId":"update_fixed_costs","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Fix & Flip lesen & schreiben (`fixflip:write`).","security":[{"bearer":["fixflip:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fixed-costs_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/fixed-costs"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-projects":{"get":{"tags":["Aufteiler-Projekte"],"summary":"Liste","operationId":"list_aufteiler_projects","description":"Aufteiler-Projekte, neueste zuerst. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"phase","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in phase.","schema":{"type":"string"}},{"name":"ff_project_id","in":"query","required":false,"description":"Nur Einträge mit diesem ff_project_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/aufteiler-projects"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Aufteiler-Projekte"],"summary":"Anlegen","operationId":"create_aufteiler_projects","description":"Legt einen Eintrag im eigenen Konto an. Recht: Aufteiler lesen & schreiben (`aufteiler:write`).","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-projects_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-projects"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-projects/{id}":{"get":{"tags":["Aufteiler-Projekte"],"summary":"Einzeln abrufen","operationId":"get_aufteiler_projects","description":"Ein Eintrag über seine id. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-projects"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Aufteiler-Projekte"],"summary":"Ändern","operationId":"update_aufteiler_projects","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Aufteiler lesen & schreiben (`aufteiler:write`).","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-projects_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-projects"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-units":{"get":{"tags":["Aufteiler-Einheiten"],"summary":"Liste","operationId":"list_aufteiler_units","description":"Aufteiler-Einheiten, neueste zuerst. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"projekt_id","in":"query","required":false,"description":"Nur Einträge mit diesem projekt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"typ","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in typ.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"kaeufer_kontakt_id","in":"query","required":false,"description":"Nur Einträge mit diesem kaeufer_kontakt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"partner_kontakt_id","in":"query","required":false,"description":"Nur Einträge mit diesem partner_kontakt_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/aufteiler-units"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Aufteiler-Einheiten"],"summary":"Anlegen","operationId":"create_aufteiler_units","description":"Legt einen Eintrag im eigenen Konto an. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `kaeufer_kontakt_id`, `partner_kontakt_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-units_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-units"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-units/{id}":{"get":{"tags":["Aufteiler-Einheiten"],"summary":"Einzeln abrufen","operationId":"get_aufteiler_units","description":"Ein Eintrag über seine id. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-units"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Aufteiler-Einheiten"],"summary":"Ändern","operationId":"update_aufteiler_units","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `kaeufer_kontakt_id`, `partner_kontakt_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-units_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-units"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-tenants":{"get":{"tags":["Aufteiler-Mieter"],"summary":"Liste","operationId":"list_aufteiler_tenants","description":"Aufteiler-Mieter, neueste zuerst. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"projekt_id","in":"query","required":false,"description":"Nur Einträge mit diesem projekt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"einheit_id","in":"query","required":false,"description":"Nur Einträge mit diesem einheit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"kontakt_id","in":"query","required":false,"description":"Nur Einträge mit diesem kontakt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"archived","in":"query","required":false,"description":"true = nur archivierte, false = nur aktive (Standard).","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/aufteiler-tenants"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Aufteiler-Mieter"],"summary":"Anlegen","operationId":"create_aufteiler_tenants","description":"Legt einen Eintrag im eigenen Konto an. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `einheit_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-tenants_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-tenants"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-tenants/{id}":{"get":{"tags":["Aufteiler-Mieter"],"summary":"Einzeln abrufen","operationId":"get_aufteiler_tenants","description":"Ein Eintrag über seine id. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-tenants"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Aufteiler-Mieter"],"summary":"Ändern","operationId":"update_aufteiler_tenants","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `einheit_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-tenants_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-tenants"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-leases":{"get":{"tags":["Aufteiler-Mietverträge"],"summary":"Liste","operationId":"list_aufteiler_leases","description":"Aufteiler-Mietverträge, neueste zuerst. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"projekt_id","in":"query","required":false,"description":"Nur Einträge mit diesem projekt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"einheit_id","in":"query","required":false,"description":"Nur Einträge mit diesem einheit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"mieter_id","in":"query","required":false,"description":"Nur Einträge mit diesem mieter_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/aufteiler-leases"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Aufteiler-Mietverträge"],"summary":"Anlegen","operationId":"create_aufteiler_leases","description":"Legt einen Eintrag im eigenen Konto an. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `einheit_id`, `mieter_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-leases_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-leases"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-leases/{id}":{"get":{"tags":["Aufteiler-Mietverträge"],"summary":"Einzeln abrufen","operationId":"get_aufteiler_leases","description":"Ein Eintrag über seine id. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-leases"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Aufteiler-Mietverträge"],"summary":"Ändern","operationId":"update_aufteiler_leases","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `einheit_id`, `mieter_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-leases_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-leases"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-costs":{"get":{"tags":["Aufteiler-Kosten"],"summary":"Liste","operationId":"list_aufteiler_costs","description":"Aufteiler-Kosten, neueste zuerst. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"projekt_id","in":"query","required":false,"description":"Nur Einträge mit diesem projekt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"einheit_id","in":"query","required":false,"description":"Nur Einträge mit diesem einheit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"kategorie","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in kategorie.","schema":{"type":"string"}},{"name":"beleg_dokument_id","in":"query","required":false,"description":"Nur Einträge mit diesem beleg_dokument_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"bank_transaction_id","in":"query","required":false,"description":"Nur Einträge mit diesem bank_transaction_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/aufteiler-costs"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Aufteiler-Kosten"],"summary":"Anlegen","operationId":"create_aufteiler_costs","description":"Legt einen Eintrag im eigenen Konto an. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `einheit_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-costs_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-costs"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-costs/{id}":{"get":{"tags":["Aufteiler-Kosten"],"summary":"Einzeln abrufen","operationId":"get_aufteiler_costs","description":"Ein Eintrag über seine id. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-costs"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Aufteiler-Kosten"],"summary":"Ändern","operationId":"update_aufteiler_costs","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `einheit_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-costs_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-costs"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-loans":{"get":{"tags":["Aufteiler-Kredite"],"summary":"Liste","operationId":"list_aufteiler_loans","description":"Aufteiler-Kredite, neueste zuerst. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"projekt_id","in":"query","required":false,"description":"Nur Einträge mit diesem projekt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"einheit_id","in":"query","required":false,"description":"Nur Einträge mit diesem einheit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"kontakt_id","in":"query","required":false,"description":"Nur Einträge mit diesem kontakt_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"art","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in art.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/aufteiler-loans"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Aufteiler-Kredite"],"summary":"Anlegen","operationId":"create_aufteiler_loans","description":"Legt einen Eintrag im eigenen Konto an. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `einheit_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-loans_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-loans"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-loans/{id}":{"get":{"tags":["Aufteiler-Kredite"],"summary":"Einzeln abrufen","operationId":"get_aufteiler_loans","description":"Ein Eintrag über seine id. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-loans"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Aufteiler-Kredite"],"summary":"Ändern","operationId":"update_aufteiler_loans","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `projekt_id`, `einheit_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-loans_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-loans"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-payments":{"get":{"tags":["Aufteiler-Mietzahlungen"],"summary":"Liste","operationId":"list_aufteiler_payments","description":"Aufteiler-Mietzahlungen, neueste zuerst. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"vertrag_id","in":"query","required":false,"description":"Nur Einträge mit diesem vertrag_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"art","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in art.","schema":{"type":"string"}},{"name":"bank_transaction_id","in":"query","required":false,"description":"Nur Einträge mit diesem bank_transaction_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/aufteiler-payments"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Aufteiler-Mietzahlungen"],"summary":"Anlegen","operationId":"create_aufteiler_payments","description":"Legt einen Eintrag im eigenen Konto an. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `vertrag_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-payments_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-payments"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/aufteiler-payments/{id}":{"get":{"tags":["Aufteiler-Mietzahlungen"],"summary":"Einzeln abrufen","operationId":"get_aufteiler_payments","description":"Ein Eintrag über seine id. Recht: Aufteiler lesen (`aufteiler:read` oder `aufteiler:write`).","security":[{"bearer":["aufteiler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-payments"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Aufteiler-Mietzahlungen"],"summary":"Ändern","operationId":"update_aufteiler_payments","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Aufteiler lesen & schreiben (`aufteiler:write`). Verweise müssen zu deinem Konto gehören: `vertrag_id`.","security":[{"bearer":["aufteiler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/aufteiler-payments_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/aufteiler-payments"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/properties":{"get":{"tags":["Objekte im Bestand"],"summary":"Liste","operationId":"list_properties","description":"Objekte im Bestand, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"converted_project_id","in":"query","required":false,"description":"Nur Einträge mit diesem converted_project_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/properties"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Objekte im Bestand"],"summary":"Anlegen","operationId":"create_properties","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`).","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/properties_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/properties"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/properties/{id}":{"get":{"tags":["Objekte im Bestand"],"summary":"Einzeln abrufen","operationId":"get_properties","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/properties"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Objekte im Bestand"],"summary":"Ändern","operationId":"update_properties","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`).","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/properties_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/properties"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/units":{"get":{"tags":["Einheiten im Bestand"],"summary":"Liste","operationId":"list_units","description":"Einheiten im Bestand, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"tenant_id","in":"query","required":false,"description":"Nur Einträge mit diesem tenant_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/units"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Einheiten im Bestand"],"summary":"Anlegen","operationId":"create_units","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `tenant_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/units_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/units"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/units/{id}":{"get":{"tags":["Einheiten im Bestand"],"summary":"Einzeln abrufen","operationId":"get_units","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/units"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Einheiten im Bestand"],"summary":"Ändern","operationId":"update_units","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `tenant_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/units_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/units"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/leases":{"get":{"tags":["Mietverträge"],"summary":"Liste","operationId":"list_leases","description":"Mietverträge, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"tenant_id","in":"query","required":false,"description":"Nur Einträge mit diesem tenant_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"contract_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in contract_type.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"signed_document_id","in":"query","required":false,"description":"Nur Einträge mit diesem signed_document_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/leases"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Mietverträge"],"summary":"Anlegen","operationId":"create_leases","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `tenant_id`, `signed_document_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/leases_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/leases"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/leases/{id}":{"get":{"tags":["Mietverträge"],"summary":"Einzeln abrufen","operationId":"get_leases","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/leases"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Mietverträge"],"summary":"Ändern","operationId":"update_leases","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `tenant_id`, `signed_document_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/leases_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/leases"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/property-loans":{"get":{"tags":["Darlehen im Bestand"],"summary":"Liste","operationId":"list_property_loans","description":"Darlehen im Bestand, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"loan_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in loan_type.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"bank_account_id","in":"query","required":false,"description":"Nur Einträge mit diesem bank_account_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/property-loans"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Darlehen im Bestand"],"summary":"Anlegen","operationId":"create_property_loans","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `contact_id`, `bank_account_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/property-loans_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/property-loans"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/property-loans/{id}":{"get":{"tags":["Darlehen im Bestand"],"summary":"Einzeln abrufen","operationId":"get_property_loans","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/property-loans"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Darlehen im Bestand"],"summary":"Ändern","operationId":"update_property_loans","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `contact_id`, `bank_account_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/property-loans_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/property-loans"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/meters":{"get":{"tags":["Zähler"],"summary":"Liste","operationId":"list_meters","description":"Zähler, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"kind","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in kind.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/meters"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Zähler"],"summary":"Anlegen","operationId":"create_meters","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/meters_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/meters"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/meters/{id}":{"get":{"tags":["Zähler"],"summary":"Einzeln abrufen","operationId":"get_meters","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/meters"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Zähler"],"summary":"Ändern","operationId":"update_meters","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/meters_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/meters"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/meter-readings":{"get":{"tags":["Zählerstände"],"summary":"Liste","operationId":"list_meter_readings","description":"Zählerstände, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/meter-readings"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Zählerstände"],"summary":"Anlegen","operationId":"create_meter_readings","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `meter_ref`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/meter-readings_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/meter-readings"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/meter-readings/{id}":{"get":{"tags":["Zählerstände"],"summary":"Einzeln abrufen","operationId":"get_meter_readings","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/meter-readings"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Zählerstände"],"summary":"Ändern","operationId":"update_meter_readings","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `meter_ref`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/meter-readings_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/meter-readings"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/utilities":{"get":{"tags":["Versorgerverträge"],"summary":"Liste","operationId":"list_utilities","description":"Versorgerverträge, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in type.","schema":{"type":"string"}},{"name":"contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem contact_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/utilities"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Versorgerverträge"],"summary":"Anlegen","operationId":"create_utilities","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `contact_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/utilities_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/utilities"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/utilities/{id}":{"get":{"tags":["Versorgerverträge"],"summary":"Einzeln abrufen","operationId":"get_utilities","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/utilities"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Versorgerverträge"],"summary":"Ändern","operationId":"update_utilities","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `contact_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/utilities_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/utilities"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/insurances":{"get":{"tags":["Versicherungen"],"summary":"Liste","operationId":"list_insurances","description":"Versicherungen, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"kind","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in kind.","schema":{"type":"string"}},{"name":"contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"utility_id","in":"query","required":false,"description":"Nur Einträge mit diesem utility_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/insurances"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Versicherungen"],"summary":"Anlegen","operationId":"create_insurances","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `contact_id`, `utility_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/insurances_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/insurances"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/insurances/{id}":{"get":{"tags":["Versicherungen"],"summary":"Einzeln abrufen","operationId":"get_insurances","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/insurances"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Versicherungen"],"summary":"Ändern","operationId":"update_insurances","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `contact_id`, `utility_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/insurances_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/insurances"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/rent-increases":{"get":{"tags":["Mieterhöhungen"],"summary":"Liste","operationId":"list_rent_increases","description":"Mieterhöhungen, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"contract_id","in":"query","required":false,"description":"Nur Einträge mit diesem contract_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"tenant_id","in":"query","required":false,"description":"Nur Einträge mit diesem tenant_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"kind","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in kind.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/rent-increases"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Mieterhöhungen"],"summary":"Anlegen","operationId":"create_rent_increases","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `contract_id`, `property_id`, `unit_id`, `tenant_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rent-increases_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/rent-increases"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/rent-increases/{id}":{"get":{"tags":["Mieterhöhungen"],"summary":"Einzeln abrufen","operationId":"get_rent_increases","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/rent-increases"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Mieterhöhungen"],"summary":"Ändern","operationId":"update_rent_increases","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `contract_id`, `property_id`, `unit_id`, `tenant_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rent-increases_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/rent-increases"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/expenses":{"get":{"tags":["Ausgaben im Bestand"],"summary":"Liste","operationId":"list_expenses","description":"Ausgaben im Bestand, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"category","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in category.","schema":{"type":"string"}},{"name":"receipt_document_id","in":"query","required":false,"description":"Nur Einträge mit diesem receipt_document_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"bank_transaction_id","in":"query","required":false,"description":"Nur Einträge mit diesem bank_transaction_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/expenses"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Ausgaben im Bestand"],"summary":"Anlegen","operationId":"create_expenses","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/expenses_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/expenses"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/expenses/{id}":{"get":{"tags":["Ausgaben im Bestand"],"summary":"Einzeln abrufen","operationId":"get_expenses","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/expenses"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Ausgaben im Bestand"],"summary":"Ändern","operationId":"update_expenses","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/expenses_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/expenses"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/pv-systems":{"get":{"tags":["PV-Anlagen"],"summary":"Liste","operationId":"list_pv_systems","description":"PV-Anlagen, neueste zuerst. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/pv-systems"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["PV-Anlagen"],"summary":"Anlegen","operationId":"create_pv_systems","description":"Legt einen Eintrag im eigenen Konto an. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/pv-systems_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/pv-systems"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/pv-systems/{id}":{"get":{"tags":["PV-Anlagen"],"summary":"Einzeln abrufen","operationId":"get_pv_systems","description":"Ein Eintrag über seine id. Recht: Buy & Hold lesen (`bestand:read` oder `bestand:write`).","security":[{"bearer":["bestand:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/pv-systems"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["PV-Anlagen"],"summary":"Ändern","operationId":"update_pv_systems","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Buy & Hold lesen & schreiben (`bestand:write`). Verweise müssen zu deinem Konto gehören: `property_id`.","security":[{"bearer":["bestand:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/pv-systems_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/pv-systems"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/tenants":{"get":{"tags":["Mieter (Bestand)"],"summary":"Liste","operationId":"list_tenants","description":"Mieter (Bestand), neueste zuerst. Recht: Mieter lesen (`tenants:read` oder `tenants:write`).","security":[{"bearer":["tenants:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"archived","in":"query","required":false,"description":"true = nur archivierte, false = nur aktive (Standard).","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/tenants"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Mieter (Bestand)"],"summary":"Anlegen","operationId":"create_tenants","description":"Legt einen Eintrag im eigenen Konto an. Recht: Mieter lesen & schreiben (`tenants:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`.","security":[{"bearer":["tenants:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tenants_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tenants"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/tenants/{id}":{"get":{"tags":["Mieter (Bestand)"],"summary":"Einzeln abrufen","operationId":"get_tenants","description":"Ein Eintrag über seine id. Recht: Mieter lesen (`tenants:read` oder `tenants:write`).","security":[{"bearer":["tenants:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tenants"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Mieter (Bestand)"],"summary":"Ändern","operationId":"update_tenants","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Mieter lesen & schreiben (`tenants:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`.","security":[{"bearer":["tenants:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tenants_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tenants"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/tenant-payments":{"get":{"tags":["Mietzahlungen"],"summary":"Liste","operationId":"list_tenant_payments","description":"Mietzahlungen, neueste zuerst. Recht: Mieter lesen (`tenants:read` oder `tenants:write`).","security":[{"bearer":["tenants:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"tenant_id","in":"query","required":false,"description":"Nur Einträge mit diesem tenant_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in type.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/tenant-payments"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Mietzahlungen"],"summary":"Anlegen","operationId":"create_tenant_payments","description":"Legt einen Eintrag im eigenen Konto an. Recht: Mieter lesen & schreiben (`tenants:write`). Verweise müssen zu deinem Konto gehören: `tenant_id`, `property_id`, `unit_id`.","security":[{"bearer":["tenants:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tenant-payments_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tenant-payments"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/tenant-payments/{id}":{"get":{"tags":["Mietzahlungen"],"summary":"Einzeln abrufen","operationId":"get_tenant_payments","description":"Ein Eintrag über seine id. Recht: Mieter lesen (`tenants:read` oder `tenants:write`).","security":[{"bearer":["tenants:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tenant-payments"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Mietzahlungen"],"summary":"Ändern","operationId":"update_tenant_payments","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Mieter lesen & schreiben (`tenants:write`). Verweise müssen zu deinem Konto gehören: `tenant_id`, `property_id`, `unit_id`.","security":[{"bearer":["tenants:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tenant-payments_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tenant-payments"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/listings":{"get":{"tags":["Inserate"],"summary":"Liste","operationId":"list_listings","description":"Inserate, neueste zuerst. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"marketing_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in marketing_type.","schema":{"type":"string"}},{"name":"object_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in object_type.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"owner_contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem owner_contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"source_property_id","in":"query","required":false,"description":"Nur Einträge mit diesem source_property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"source_unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem source_unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"source_project_id","in":"query","required":false,"description":"Nur Einträge mit diesem source_project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"bereich","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in bereich.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/listings"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Inserate"],"summary":"Anlegen","operationId":"create_listings","description":"Legt einen Eintrag im eigenen Konto an. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `owner_contact_id`, `source_property_id`, `source_unit_id`, `source_project_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/listings_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/listings"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/listings/{id}":{"get":{"tags":["Inserate"],"summary":"Einzeln abrufen","operationId":"get_listings","description":"Ein Eintrag über seine id. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/listings"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Inserate"],"summary":"Ändern","operationId":"update_listings","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `owner_contact_id`, `source_property_id`, `source_unit_id`, `source_project_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/listings_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/listings"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/listing-interests":{"get":{"tags":["Interessenten je Inserat"],"summary":"Liste","operationId":"list_listing_interests","description":"Interessenten je Inserat, neueste zuerst. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"listing_id","in":"query","required":false,"description":"Nur Einträge mit diesem listing_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"stage","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in stage.","schema":{"type":"string"}},{"name":"source","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in source.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/listing-interests"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Interessenten je Inserat"],"summary":"Anlegen","operationId":"create_listing_interests","description":"Legt einen Eintrag im eigenen Konto an. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `listing_id`, `contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/listing-interests_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/listing-interests"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/listing-interests/{id}":{"get":{"tags":["Interessenten je Inserat"],"summary":"Einzeln abrufen","operationId":"get_listing_interests","description":"Ein Eintrag über seine id. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/listing-interests"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Interessenten je Inserat"],"summary":"Ändern","operationId":"update_listing_interests","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `listing_id`, `contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/listing-interests_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/listing-interests"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/viewings":{"get":{"tags":["Besichtigungen"],"summary":"Liste","operationId":"list_viewings","description":"Besichtigungen, neueste zuerst. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"listing_id","in":"query","required":false,"description":"Nur Einträge mit diesem listing_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"interest_id","in":"query","required":false,"description":"Nur Einträge mit diesem interest_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/viewings"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Besichtigungen"],"summary":"Anlegen","operationId":"create_viewings","description":"Legt einen Eintrag im eigenen Konto an. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `listing_id`, `interest_id`, `contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/viewings_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/viewings"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/viewings/{id}":{"get":{"tags":["Besichtigungen"],"summary":"Einzeln abrufen","operationId":"get_viewings","description":"Ein Eintrag über seine id. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/viewings"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Besichtigungen"],"summary":"Ändern","operationId":"update_viewings","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `listing_id`, `interest_id`, `contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/viewings_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/viewings"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/mandates":{"get":{"tags":["Maklerverträge"],"summary":"Liste","operationId":"list_mandates","description":"Maklerverträge, neueste zuerst. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"listing_id","in":"query","required":false,"description":"Nur Einträge mit diesem listing_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"owner_contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem owner_contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"mandate_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in mandate_type.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/mandates"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Maklerverträge"],"summary":"Anlegen","operationId":"create_mandates","description":"Legt einen Eintrag im eigenen Konto an. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `listing_id`, `owner_contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mandates_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/mandates"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/mandates/{id}":{"get":{"tags":["Maklerverträge"],"summary":"Einzeln abrufen","operationId":"get_mandates","description":"Ein Eintrag über seine id. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/mandates"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Maklerverträge"],"summary":"Ändern","operationId":"update_mandates","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `listing_id`, `owner_contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mandates_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/mandates"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/commissions":{"get":{"tags":["Provisionen"],"summary":"Liste","operationId":"list_commissions","description":"Provisionen, neueste zuerst. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"listing_id","in":"query","required":false,"description":"Nur Einträge mit diesem listing_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"interest_id","in":"query","required":false,"description":"Nur Einträge mit diesem interest_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"party","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in party.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"invoice_document_id","in":"query","required":false,"description":"Nur Einträge mit diesem invoice_document_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/commissions"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Provisionen"],"summary":"Anlegen","operationId":"create_commissions","description":"Legt einen Eintrag im eigenen Konto an. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `listing_id`, `interest_id`, `contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/commissions_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/commissions"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/commissions/{id}":{"get":{"tags":["Provisionen"],"summary":"Einzeln abrufen","operationId":"get_commissions","description":"Ein Eintrag über seine id. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/commissions"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Provisionen"],"summary":"Ändern","operationId":"update_commissions","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `listing_id`, `interest_id`, `contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/commissions_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/commissions"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/search-profiles":{"get":{"tags":["Suchprofile"],"summary":"Liste","operationId":"list_search_profiles","description":"Suchprofile, neueste zuerst. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"contact_id","in":"query","required":false,"description":"Nur Einträge mit diesem contact_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"marketing_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in marketing_type.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/search-profiles"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Suchprofile"],"summary":"Anlegen","operationId":"create_search_profiles","description":"Legt einen Eintrag im eigenen Konto an. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/search-profiles_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/search-profiles"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/search-profiles/{id}":{"get":{"tags":["Suchprofile"],"summary":"Einzeln abrufen","operationId":"get_search_profiles","description":"Ein Eintrag über seine id. Recht: Makler-CRM lesen (`makler:read` oder `makler:write`).","security":[{"bearer":["makler:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/search-profiles"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Suchprofile"],"summary":"Ändern","operationId":"update_search_profiles","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Makler-CRM lesen & schreiben (`makler:write`). Verweise müssen zu deinem Konto gehören: `contact_id`.","security":[{"bearer":["makler:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/search-profiles_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/search-profiles"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/contacts":{"get":{"tags":["Kontakte"],"summary":"Liste","operationId":"list_contacts","description":"Kontakte, neueste zuerst. Recht: Kontakte lesen (`contacts:read` oder `contacts:write`).","security":[{"bearer":["contacts:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"mode","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in mode.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/contacts"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Kontakte"],"summary":"Anlegen","operationId":"create_contacts","description":"Legt einen Eintrag im eigenen Konto an. Recht: Kontakte lesen & schreiben (`contacts:write`).","security":[{"bearer":["contacts:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/contacts_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/contacts"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/contacts/{id}":{"get":{"tags":["Kontakte"],"summary":"Einzeln abrufen","operationId":"get_contacts","description":"Ein Eintrag über seine id. Recht: Kontakte lesen (`contacts:read` oder `contacts:write`).","security":[{"bearer":["contacts:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/contacts"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Kontakte"],"summary":"Ändern","operationId":"update_contacts","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Kontakte lesen & schreiben (`contacts:write`).","security":[{"bearer":["contacts:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/contacts_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/contacts"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/contractors":{"get":{"tags":["Handwerker"],"summary":"Liste","operationId":"list_contractors","description":"Handwerker, neueste zuerst. Recht: Kontakte lesen (`contacts:read` oder `contacts:write`).","security":[{"bearer":["contacts:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/contractors"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Handwerker"],"summary":"Anlegen","operationId":"create_contractors","description":"Legt einen Eintrag im eigenen Konto an. Recht: Kontakte lesen & schreiben (`contacts:write`).","security":[{"bearer":["contacts:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/contractors_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/contractors"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/contractors/{id}":{"get":{"tags":["Handwerker"],"summary":"Einzeln abrufen","operationId":"get_contractors","description":"Ein Eintrag über seine id. Recht: Kontakte lesen (`contacts:read` oder `contacts:write`).","security":[{"bearer":["contacts:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/contractors"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Handwerker"],"summary":"Ändern","operationId":"update_contractors","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Kontakte lesen & schreiben (`contacts:write`).","security":[{"bearer":["contacts:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/contractors_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/contractors"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/tasks":{"get":{"tags":["Aufgaben"],"summary":"Liste","operationId":"list_tasks","description":"Aufgaben, neueste zuerst. Recht: Aufgaben lesen (`tasks:read` oder `tasks:write`).","security":[{"bearer":["tasks:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}},{"name":"category","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in category.","schema":{"type":"string"}},{"name":"mode","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in mode.","schema":{"type":"string"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"tenant_id","in":"query","required":false,"description":"Nur Einträge mit diesem tenant_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"contract_id","in":"query","required":false,"description":"Nur Einträge mit diesem contract_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"vorgang_id","in":"query","required":false,"description":"Nur Einträge mit diesem vorgang_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"deal_id","in":"query","required":false,"description":"Nur Einträge mit diesem deal_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"listing_id","in":"query","required":false,"description":"Nur Einträge mit diesem listing_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"assigned_user_id","in":"query","required":false,"description":"Nur Einträge mit diesem assigned_user_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"parent_task_id","in":"query","required":false,"description":"Nur Einträge mit diesem parent_task_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/tasks"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"post":{"tags":["Aufgaben"],"summary":"Anlegen","operationId":"create_tasks","description":"Legt einen Eintrag im eigenen Konto an. Recht: Aufgaben lesen & schreiben (`tasks:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `tenant_id`, `contract_id`, `project_id`, `vorgang_id`, `deal_id`, `listing_id`, `assigned_user_id`, `assigned_user_ids`, `parent_task_id`.","security":[{"bearer":["tasks:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tasks_schreiben"}}}},"responses":{"201":{"description":"Angelegt","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tasks"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/tasks/{id}":{"get":{"tags":["Aufgaben"],"summary":"Einzeln abrufen","operationId":"get_tasks","description":"Ein Eintrag über seine id. Recht: Aufgaben lesen (`tasks:read` oder `tasks:write`).","security":[{"bearer":["tasks:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tasks"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}},"patch":{"tags":["Aufgaben"],"summary":"Ändern","operationId":"update_tasks","description":"Ändert nur die mitgeschickten Felder; null leert ein Feld. Recht: Aufgaben lesen & schreiben (`tasks:write`). Verweise müssen zu deinem Konto gehören: `property_id`, `unit_id`, `tenant_id`, `contract_id`, `project_id`, `vorgang_id`, `deal_id`, `listing_id`, `assigned_user_id`, `assigned_user_ids`, `parent_task_id`.","security":[{"bearer":["tasks:write"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tasks_schreiben"}}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Geändert","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/tasks"}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"413":{"$ref":"#/components/responses/Fehler"},"415":{"$ref":"#/components/responses/Fehler"},"422":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/checklists":{"get":{"tags":["Checklisten"],"summary":"Liste","operationId":"list_checklists","description":"Checklisten, neueste zuerst. Recht: Aufgaben lesen (`tasks:read`).","security":[{"bearer":["tasks:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"project_id","in":"query","required":false,"description":"Nur Einträge mit diesem project_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"lead_id","in":"query","required":false,"description":"Nur Einträge mit diesem lead_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"property_id","in":"query","required":false,"description":"Nur Einträge mit diesem property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"deal_id","in":"query","required":false,"description":"Nur Einträge mit diesem deal_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"template_id","in":"query","required":false,"description":"Nur Einträge mit diesem template_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"task_id","in":"query","required":false,"description":"Nur Einträge mit diesem task_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/checklists"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/checklists/{id}":{"get":{"tags":["Checklisten"],"summary":"Einzeln abrufen","operationId":"get_checklists","description":"Ein Eintrag über seine id. Recht: Aufgaben lesen (`tasks:read`).","security":[{"bearer":["tasks:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/checklists"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/bank-accounts":{"get":{"tags":["Bankkonten (ohne IBAN)"],"summary":"Liste","operationId":"list_bank_accounts","description":"Bankkonten (ohne IBAN), neueste zuerst. Recht: Banking lesen (`banking:read`).","security":[{"bearer":["banking:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in status.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/bank-accounts"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/bank-accounts/{id}":{"get":{"tags":["Bankkonten (ohne IBAN)"],"summary":"Einzeln abrufen","operationId":"get_bank_accounts","description":"Ein Eintrag über seine id. Recht: Banking lesen (`banking:read`).","security":[{"bearer":["banking:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/bank-accounts"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/bank-transactions":{"get":{"tags":["Kontoumsätze (ohne IBAN)"],"summary":"Liste","operationId":"list_bank_transactions","description":"Kontoumsätze (ohne IBAN), neueste zuerst. Recht: Banking lesen (`banking:read`).","security":[{"bearer":["banking:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"bank_account_id","in":"query","required":false,"description":"Nur Einträge mit diesem bank_account_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"category","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in category.","schema":{"type":"string"}},{"name":"matched_tenant_id","in":"query","required":false,"description":"Nur Einträge mit diesem matched_tenant_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"matched_property_id","in":"query","required":false,"description":"Nur Einträge mit diesem matched_property_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"matched_unit_id","in":"query","required":false,"description":"Nur Einträge mit diesem matched_unit_id (UUID).","schema":{"type":"string","format":"uuid"}},{"name":"matched_project_id","in":"query","required":false,"description":"Nur Einträge mit diesem matched_project_id (UUID).","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/bank-transactions"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/bank-transactions/{id}":{"get":{"tags":["Kontoumsätze (ohne IBAN)"],"summary":"Einzeln abrufen","operationId":"get_bank_transactions","description":"Ein Eintrag über seine id. Recht: Banking lesen (`banking:read`).","security":[{"bearer":["banking:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/bank-transactions"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/market-listings":{"get":{"tags":["Inserate der Marktsuche (PLZ-Präfix Pflicht)"],"summary":"Liste","operationId":"list_market_listings","description":"Inserate der Marktsuche (PLZ-Präfix Pflicht), neueste zuerst. Recht: Marktsuche lesen (`market:read`).","security":[{"bearer":["market:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"zip","in":"query","required":true,"description":"PLZ-Anfang mit 2 bis 5 Ziffern, z. B. 55 oder 55116. Pflicht.","schema":{"type":"string","pattern":"^\\d{2,5}$"}},{"name":"marketing_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in marketing_type.","schema":{"type":"string"}},{"name":"property_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in property_type.","schema":{"type":"string"}},{"name":"portal","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in portal.","schema":{"type":"string"}},{"name":"provider_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in provider_type.","schema":{"type":"string"}},{"name":"price_min","in":"query","required":false,"description":"Mindestens dieser Wert in price.","schema":{"type":"number"}},{"name":"price_max","in":"query","required":false,"description":"Höchstens dieser Wert in price.","schema":{"type":"number"}},{"name":"area_min","in":"query","required":false,"description":"Mindestens dieser Wert in area.","schema":{"type":"number"}},{"name":"area_max","in":"query","required":false,"description":"Höchstens dieser Wert in area.","schema":{"type":"number"}},{"name":"rooms_min","in":"query","required":false,"description":"Mindestens dieser Wert in rooms.","schema":{"type":"number"}},{"name":"rooms_max","in":"query","required":false,"description":"Höchstens dieser Wert in rooms.","schema":{"type":"number"}},{"name":"price_per_sqm_min","in":"query","required":false,"description":"Mindestens dieser Wert in price_per_sqm.","schema":{"type":"number"}},{"name":"price_per_sqm_max","in":"query","required":false,"description":"Höchstens dieser Wert in price_per_sqm.","schema":{"type":"number"}},{"name":"build_year_min","in":"query","required":false,"description":"Mindestens dieser Wert in build_year.","schema":{"type":"number"}},{"name":"build_year_max","in":"query","required":false,"description":"Höchstens dieser Wert in build_year.","schema":{"type":"number"}},{"name":"rendite_ist_min","in":"query","required":false,"description":"Mindestens dieser Wert in rendite_ist.","schema":{"type":"number"}},{"name":"rendite_soll_min","in":"query","required":false,"description":"Mindestens dieser Wert in rendite_soll.","schema":{"type":"number"}},{"name":"is_reduced","in":"query","required":false,"description":"true = nur mit is_reduced, false = nur ohne.","schema":{"type":"boolean"}},{"name":"top_deal","in":"query","required":false,"description":"true = nur mit top_deal, false = nur ohne.","schema":{"type":"boolean"}},{"name":"is_auction","in":"query","required":false,"description":"true = nur mit is_auction, false = nur ohne.","schema":{"type":"boolean"}},{"name":"is_rented","in":"query","required":false,"description":"true = nur mit is_rented, false = nur ohne.","schema":{"type":"boolean"}},{"name":"listed_since","in":"query","required":false,"description":"Nur ab diesem Datum in listed_at (JJJJ-MM-TT).","schema":{"type":"string","format":"date"}},{"name":"include_gone","in":"query","required":false,"description":"true = auch nicht mehr verfügbare Inserate zeigen.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/market-listings"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/market-listings/{id}":{"get":{"tags":["Inserate der Marktsuche (PLZ-Präfix Pflicht)"],"summary":"Einzeln abrufen","operationId":"get_market_listings","description":"Ein Eintrag über seine id. Recht: Marktsuche lesen (`market:read`).","security":[{"bearer":["market:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/market-listings"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/market-searches":{"get":{"tags":["Suchaufträge der Marktsuche"],"summary":"Liste","operationId":"list_market_searches","description":"Suchaufträge der Marktsuche, neueste zuerst. Recht: Marktsuche lesen (`market:read`).","security":[{"bearer":["market:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}},{"name":"active","in":"query","required":false,"description":"true = nur mit active, false = nur ohne.","schema":{"type":"boolean"}},{"name":"marketing_type","in":"query","required":false,"description":"Nur Einträge mit genau diesem Wert in marketing_type.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/market-searches"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/market-searches/{id}":{"get":{"tags":["Suchaufträge der Marktsuche"],"summary":"Einzeln abrufen","operationId":"get_market_searches","description":"Ein Eintrag über seine id. Recht: Marktsuche lesen (`market:read`).","security":[{"bearer":["market:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/market-searches"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/market-saved-searches":{"get":{"tags":["Gespeicherte Suchen der Marktsuche"],"summary":"Liste","operationId":"list_market_saved_searches","description":"Gespeicherte Suchen der Marktsuche, neueste zuerst. Recht: Marktsuche lesen (`market:read`).","security":[{"bearer":["market:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/market-saved-searches"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/market-saved-searches/{id}":{"get":{"tags":["Gespeicherte Suchen der Marktsuche"],"summary":"Einzeln abrufen","operationId":"get_market_saved_searches","description":"Ein Eintrag über seine id. Recht: Marktsuche lesen (`market:read`).","security":[{"bearer":["market:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/market-saved-searches"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/market-favorites":{"get":{"tags":["Favoriten der Marktsuche (listing_id = Inserat)"],"summary":"Liste","operationId":"list_market_favorites","description":"Favoriten der Marktsuche (listing_id = Inserat), neueste zuerst. Recht: Marktsuche lesen (`market:read`).","security":[{"bearer":["market:read"]}],"parameters":[{"name":"limit","in":"query","description":"Einträge je Seite, 1 bis 100.","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"cursor","in":"query","description":"Wert aus next_cursor der vorherigen Seite.","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/market-favorites"}},"next_cursor":{"type":["string","null"]}}}}}},"400":{"$ref":"#/components/responses/Fehler"},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}},"/market-favorites/{id}":{"get":{"tags":["Favoriten der Marktsuche (listing_id = Inserat)"],"summary":"Einzeln abrufen","operationId":"get_market_favorites","description":"Ein Eintrag über seine listing_id. Recht: Marktsuche lesen (`market:read`).","security":[{"bearer":["market:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/market-favorites"}}}}}},"401":{"$ref":"#/components/responses/Fehler"},"403":{"$ref":"#/components/responses/Fehler"},"404":{"$ref":"#/components/responses/Fehler"},"409":{"$ref":"#/components/responses/Fehler"},"429":{"$ref":"#/components/responses/Fehler"}}}}}}