{
  "openapi": "3.1.0",
  "paths": {
    "/admin/access": {
      "get": {
        "operationId": "getAdminAccess",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdminAccessResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Administrativen Lesezugriff anzeigen",
        "tags": [
          "Benutzerverwaltung"
        ]
      }
    },
    "/admin/users": {
      "get": {
        "operationId": "listAdminUsers",
        "parameters": [
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "minimum": 1,
              "maximum": 100,
              "type": "number"
            },
            "description": "Maximale Anzahl der Ergebnisse (1 bis 100)"
          },
          {
            "name": "offset",
            "required": false,
            "in": "query",
            "schema": {
              "minimum": 0,
              "type": "number"
            },
            "description": "Anzahl der zu überspringenden Einträge"
          },
          {
            "name": "search",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Suchbegriff für Name oder E-Mail"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdminUserListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Instanz-Benutzer auflisten",
        "tags": [
          "Benutzerverwaltung"
        ]
      },
      "post": {
        "operationId": "inviteAdminUser",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InviteAdminUserRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Benutzer einladen",
        "tags": [
          "Benutzerverwaltung"
        ]
      }
    },
    "/admin/users/{userId}/ban": {
      "post": {
        "operationId": "banAdminUser",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            },
            "description": "Benutzer-ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BanAdminUserRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Benutzer sperren",
        "tags": [
          "Benutzerverwaltung"
        ]
      }
    },
    "/admin/users/{userId}/resend-invitation": {
      "post": {
        "operationId": "resendAdminUserInvitation",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            },
            "description": "Benutzer-ID"
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Einladung erneut senden",
        "tags": [
          "Benutzerverwaltung"
        ]
      }
    },
    "/admin/users/{userId}/revoke-invitation": {
      "post": {
        "operationId": "revokeAdminUserInvitation",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            },
            "description": "Benutzer-ID"
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ausstehende Einladung widerrufen",
        "tags": [
          "Benutzerverwaltung"
        ]
      }
    },
    "/admin/users/{userId}/revoke-sessions": {
      "post": {
        "operationId": "revokeAdminUserSessions",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            },
            "description": "Benutzer-ID"
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Alle Sitzungen eines Benutzers beenden",
        "tags": [
          "Benutzerverwaltung"
        ]
      }
    },
    "/admin/users/{userId}/role": {
      "patch": {
        "operationId": "setAdminUserRole",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            },
            "description": "Benutzer-ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetAdminUserRoleRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Benutzerrolle ändern",
        "tags": [
          "Benutzerverwaltung"
        ]
      }
    },
    "/admin/users/{userId}/unban": {
      "post": {
        "operationId": "unbanAdminUser",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            },
            "description": "Benutzer-ID"
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Benutzersperre aufheben",
        "tags": [
          "Benutzerverwaltung"
        ]
      }
    },
    "/chat/threads": {
      "get": {
        "operationId": "listLibraryChatThreads",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentChatThreadListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "List library-scoped chat threads",
        "tags": [
          "chat"
        ]
      },
      "post": {
        "operationId": "createLibraryChatThread",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDocumentChatThreadRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Create library-scoped chat thread",
        "tags": [
          "chat"
        ]
      }
    },
    "/chat/threads/{threadId}/messages": {
      "get": {
        "operationId": "listLibraryChatThreadMessages",
        "parameters": [
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentChatThreadMessagesResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "List messages in library chat thread",
        "tags": [
          "chat"
        ]
      },
      "post": {
        "operationId": "sendLibraryChatThreadMessage",
        "parameters": [
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendDocumentChatThreadMessageRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendDocumentChatThreadMessageResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Send message in library chat thread",
        "tags": [
          "chat"
        ]
      }
    },
    "/chat/threads/{threadId}/messages/{messageId}/cancel": {
      "post": {
        "operationId": "cancelLibraryChatGeneration",
        "parameters": [
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "messageId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Cancel library chat generation",
        "tags": [
          "chat"
        ]
      }
    },
    "/chat/threads/{threadId}/messages/{messageId}/retry": {
      "post": {
        "operationId": "retryLibraryChatMessage",
        "parameters": [
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "messageId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Retry failed library chat message",
        "tags": [
          "chat"
        ]
      }
    },
    "/chat/threads/{threadId}/messages/{messageId}/stream": {
      "get": {
        "operationId": "streamLibraryChatMessage",
        "parameters": [
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "messageId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "SSE stream for library chat message generation",
        "tags": [
          "chat"
        ]
      }
    },
    "/connectors/catalog": {
      "get": {
        "operationId": "getConnectorCatalog",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Connector-Plugin-Katalog",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations": {
      "get": {
        "operationId": "listConnectorInstallations",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Connector-Installationen auflisten",
        "tags": [
          "Verbindungen"
        ]
      },
      "post": {
        "operationId": "createConnectorInstallation",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateConnectorInstallationRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Connector-Installation anlegen",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}": {
      "delete": {
        "operationId": "deleteConnectorInstallation",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Kein Inhalt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Connector-Installation löschen",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/export": {
      "post": {
        "operationId": "exportOne",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExportToConnectorRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Einzel-Export starten",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/import": {
      "post": {
        "operationId": "importOne",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImportFromConnectorRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Einzel-Import starten",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/importables": {
      "get": {
        "operationId": "importables",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "minimum": 1,
              "maximum": 100,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Importierbare Objekte auflisten",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/paperless": {
      "get": {
        "operationId": "getPaperlessInstallation",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Get Paperless connector settings (no secrets)",
        "tags": [
          "Verbindungen"
        ]
      },
      "put": {
        "operationId": "updatePaperlessInstallation",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePaperlessInstallationRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Update Paperless connector installation",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/paperless/dry-run": {
      "post": {
        "operationId": "paperlessImportDryRun",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Preview Paperless import counts",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/paperless/import": {
      "post": {
        "operationId": "startPaperlessImport",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Start Paperless bulk import",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/paperless/import-runs/latest": {
      "get": {
        "operationId": "getLatestPaperlessImportRun",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Get latest Paperless import run",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/paperless/import-runs/{runId}": {
      "get": {
        "operationId": "getPaperlessImportRun",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "runId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Get Paperless import run status",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/installations/{installationId}/paperless/test-connection": {
      "post": {
        "operationId": "testPaperlessInstallationConnection",
        "parameters": [
          {
            "name": "installationId",
            "required": true,
            "in": "path",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TestPaperlessInstallationConnectionRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Validate Paperless credentials for an installation",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/oauth/callback": {
      "get": {
        "operationId": "connectorOAuthCallback",
        "parameters": [
          {
            "name": "error",
            "required": false,
            "in": "query",
            "schema": {}
          },
          {
            "name": "state",
            "required": false,
            "in": "query",
            "schema": {}
          },
          {
            "name": "code",
            "required": false,
            "in": "query",
            "schema": {}
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "summary": "OAuth-Rückruf (Browser-Weiterleitung)",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/oauth/{pluginId}/start": {
      "post": {
        "operationId": "startConnectorOAuth",
        "parameters": [
          {
            "name": "pluginId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string",
              "enum": [
                "gmail",
                "outlook",
                "paperless",
                "home_assistant",
                "amazon_s3"
              ]
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StartMailOAuthRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "OAuth für Connector starten",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/plugins/paperless/test-connection": {
      "post": {
        "operationId": "testPaperlessConnection",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TestPaperlessConnectionRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Validate Paperless-ngx credentials",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/plugins/sftp_fetch/probe-host-key": {
      "post": {
        "operationId": "probeSftpFetchHostKey",
        "parameters": [],
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Probe remote SFTP host key fingerprint",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/connectors/plugins/{pluginId}": {
      "get": {
        "operationId": "getConnectorPlugin",
        "parameters": [
          {
            "name": "pluginId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string",
              "enum": [
                "gmail",
                "outlook",
                "paperless",
                "home_assistant",
                "amazon_s3"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Connector-Plugin-Beschreibung",
        "tags": [
          "Verbindungen"
        ]
      }
    },
    "/correspondents": {
      "get": {
        "operationId": "listCorrespondents",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CorrespondentListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Korrespondenten auflisten",
        "tags": [
          "Korrespondenten"
        ]
      },
      "post": {
        "operationId": "createCorrespondent",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCorrespondentRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Korrespondent anlegen",
        "tags": [
          "Korrespondenten"
        ]
      }
    },
    "/correspondents/{id}": {
      "patch": {
        "operationId": "updateCorrespondent",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCorrespondentRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Korrespondent aktualisieren",
        "tags": [
          "Korrespondenten"
        ]
      },
      "delete": {
        "operationId": "deleteCorrespondent",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Korrespondent löschen",
        "tags": [
          "Korrespondenten"
        ]
      }
    },
    "/dashboard": {
      "get": {
        "operationId": "getDashboardLayout",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardLayoutResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Get personal dashboard layout",
        "tags": [
          "workspace"
        ]
      },
      "put": {
        "operationId": "replaceDashboardLayout",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReplaceDashboardLayoutRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardLayoutResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Replace personal dashboard layout",
        "tags": [
          "workspace"
        ]
      }
    },
    "/dashboard/installation-admin": {
      "get": {
        "operationId": "getInstallationAdminStatus",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Whether the current user is an installation admin (ADR 019)",
        "tags": [
          "workspace"
        ]
      }
    },
    "/dashboard/installation-default": {
      "get": {
        "operationId": "getInstallationDashboardDefault",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InstallationDashboardDefaultResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Installation default dashboard template",
        "tags": [
          "workspace"
        ]
      },
      "put": {
        "operationId": "setInstallationDashboardDefault",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReplaceDashboardLayoutRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InstallationDashboardDefaultResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Set installation default dashboard (admin)",
        "tags": [
          "workspace"
        ]
      }
    },
    "/dashboard/statistics": {
      "get": {
        "operationId": "getDashboardStatistics",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardStatistics"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Dashboard document statistics",
        "tags": [
          "workspace"
        ]
      }
    },
    "/document-pipeline/modules": {
      "get": {
        "description": "Read-only module descriptors for OCR and post-OCR steps (order not persisted yet).",
        "operationId": "listDocumentPipelineModules",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentPipelineModulesResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Pipeline-Module (Katalog)",
        "tags": [
          "Einstellungen"
        ]
      }
    },
    "/documents": {
      "get": {
        "operationId": "listDocuments",
        "parameters": [
          {
            "name": "withoutNonInboxLabel",
            "required": false,
            "in": "query",
            "description": "When true, only documents without a non-inbox label are returned.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "unfiled",
            "required": false,
            "in": "query",
            "description": "When true, only documents without a folder assignment are returned.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "inbox",
            "required": false,
            "in": "query",
            "description": "When true, only documents in the inbox label are returned.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "q",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "uploaded",
                "queued",
                "extracting",
                "ready",
                "failed"
              ]
            }
          },
          {
            "name": "tagId",
            "required": false,
            "in": "query",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "tags",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "correspondentId",
            "required": false,
            "in": "query",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "folderId",
            "required": false,
            "in": "query",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "mappeId",
            "required": false,
            "in": "query",
            "schema": {
              "format": "uuid",
              "type": "string"
            }
          },
          {
            "name": "documentDateFrom",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "documentDateTo",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "updatedAt",
                "createdAt",
                "title",
                "documentDate"
              ]
            }
          },
          {
            "name": "order",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "asc",
                "desc"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Dokumente auflisten oder suchen",
        "tags": [
          "Dokumente"
        ]
      },
      "post": {
        "operationId": "createDocument",
        "parameters": [
          {
            "name": "folderId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mappeId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary",
                    "description": "Binärdaten (Datei)"
                  }
                },
                "required": [
                  "file"
                ]
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Dokument hochladen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/bulk": {
      "post": {
        "operationId": "bulk",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DocumentBulkRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Massenaktion",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{documentId}/tag-suggestions/{tagId}/accept": {
      "post": {
        "operationId": "acceptDocumentTagSuggestion",
        "parameters": [
          {
            "name": "documentId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tagId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label-Vorschlag übernehmen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{documentId}/tag-suggestions/{tagId}/dismiss": {
      "post": {
        "operationId": "dismissDocumentTagSuggestion",
        "parameters": [
          {
            "name": "documentId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tagId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DismissTagSuggestionRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label-Vorschlag verwerfen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{documentId}/tags/{tagId}": {
      "post": {
        "operationId": "assignDocumentTag",
        "parameters": [
          {
            "name": "documentId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tagId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label zuweisen",
        "tags": [
          "Dokumente"
        ]
      },
      "delete": {
        "operationId": "removeDocumentTag",
        "parameters": [
          {
            "name": "documentId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tagId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label entfernen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}": {
      "get": {
        "operationId": "getDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Dokument abrufen",
        "tags": [
          "Dokumente"
        ]
      },
      "patch": {
        "operationId": "patch",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDocumentRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Dokument teilweise aktualisieren",
        "tags": [
          "Dokumente"
        ]
      },
      "delete": {
        "operationId": "deleteDocument",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Dokument löschen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/chat": {
      "post": {
        "operationId": "chat",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DocumentChatRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentChatResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Dokumenten-Chat",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/chat/threads": {
      "get": {
        "operationId": "listChatThreads",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentChatThreadListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Chat-Threads auflisten",
        "tags": [
          "Dokumente"
        ]
      },
      "post": {
        "operationId": "createChatThread",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDocumentChatThreadRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Chat-Thread anlegen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/chat/threads/{threadId}/messages": {
      "get": {
        "operationId": "listChatThreadMessages",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentChatThreadMessagesResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Chat-Nachrichten auflisten",
        "tags": [
          "Dokumente"
        ]
      },
      "post": {
        "operationId": "sendChatThreadMessage",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendDocumentChatThreadMessageRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendDocumentChatThreadMessageResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Chat-Nachricht senden",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/chat/threads/{threadId}/messages/{messageId}/cancel": {
      "post": {
        "operationId": "cancelChatThreadMessage",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "messageId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Chat-Generierung abbrechen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/chat/threads/{threadId}/messages/{messageId}/retry": {
      "post": {
        "operationId": "retryChatThreadMessage",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "messageId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Chat-Generierung wiederholen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/chat/threads/{threadId}/messages/{messageId}/stream": {
      "get": {
        "operationId": "streamChatThreadMessage",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "threadId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "messageId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Chat-Antwort streamen (SSE)",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/content": {
      "get": {
        "operationId": "content",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "download",
            "required": false,
            "in": "query",
            "schema": {}
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Inhalt",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/duplicate-candidates": {
      "get": {
        "operationId": "duplicateCandidates",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Duplikat-Kandidaten",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/duplicate-candidates/{candidateId}/dismiss": {
      "post": {
        "operationId": "dismissDuplicate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "candidateId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Duplikat verwerfen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/duplicate-stack": {
      "get": {
        "operationId": "duplicateStack",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Duplikat-Stack",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/duplicate-stack/keep-version": {
      "post": {
        "operationId": "duplicateStackKeepVersion",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateStackKeepVersionRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Duplikat-Stack: Version behalten",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/duplicate-stack/not-duplicate": {
      "post": {
        "operationId": "duplicateStackNotDuplicate",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateStackNotDuplicateRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Duplikat-Stack: kein Duplikat",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/duplicate-stack/set-primary": {
      "post": {
        "operationId": "duplicateStackSetPrimary",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateStackSetPrimaryRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Duplikat-Stack: Primär setzen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/extraction/arena-rating": {
      "post": {
        "operationId": "extractionArenaRating",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExtractionArenaRatingRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Extraktions-Arena bewerten",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/extraction/compare": {
      "post": {
        "operationId": "extractionCompare",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExtractionCompareRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Extraktionen vergleichen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/extraction/requeue": {
      "post": {
        "operationId": "extractionRequeue",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Extraktion erneut einreihen",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/layout-html": {
      "get": {
        "operationId": "getDocumentLayoutHtml",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LayoutHtmlResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Rendered layout HTML",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/layout-ir": {
      "get": {
        "operationId": "getDocumentLayoutIr",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LayoutIrDocumentDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Layout IR for document re-render",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/layout-typst": {
      "get": {
        "operationId": "getDocumentLayoutTypst",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mode",
            "required": false,
            "in": "query",
            "schema": {}
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LayoutTypstResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Typst source for layout export",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/documents/{id}/tag-suggestions/refresh": {
      "post": {
        "operationId": "refreshSuggestions",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Vorschläge aktualisieren",
        "tags": [
          "Dokumente"
        ]
      }
    },
    "/extraction-feedback/field-corrections": {
      "get": {
        "operationId": "listFieldCorrections",
        "parameters": [
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "afterCreatedAt",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "afterId",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Feldkorrekturen exportieren",
        "tags": [
          "Einstellungen"
        ]
      }
    },
    "/folders": {
      "get": {
        "operationId": "listFolders",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FolderListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ordner auflisten",
        "tags": [
          "Ordner"
        ]
      },
      "post": {
        "operationId": "createFolder",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateFolderRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ordner anlegen",
        "tags": [
          "Ordner"
        ]
      }
    },
    "/folders/{id}": {
      "patch": {
        "operationId": "updateFolder",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFolderRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ordner aktualisieren",
        "tags": [
          "Ordner"
        ]
      },
      "delete": {
        "operationId": "deleteFolder",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ordner löschen",
        "tags": [
          "Ordner"
        ]
      }
    },
    "/invitations/accept": {
      "post": {
        "operationId": "acceptUserInvitation",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AcceptUserInvitationRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Einladung annehmen und Passwort setzen",
        "tags": [
          "Einladungen"
        ]
      }
    },
    "/labels/map": {
      "get": {
        "operationId": "map",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LabelMapResponse"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Zuordnung",
        "tags": [
          "Labels"
        ]
      }
    },
    "/labels/recommendation-blocklist": {
      "get": {
        "operationId": "blocklist",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LabelRecommendationBlocklistListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Blockliste",
        "tags": [
          "Labels"
        ]
      },
      "post": {
        "operationId": "addBlocklistEntry",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddLabelRecommendationBlocklistRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LabelRecommendationBlocklistEntryResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Blocklist-Eintrag hinzufügen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/labels/recommendation-blocklist/patterns": {
      "post": {
        "operationId": "confirmPattern",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConfirmLabelRecommendationBlocklistPatternRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Muster bestätigen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/labels/recommendation-blocklist/patterns/{id}": {
      "delete": {
        "operationId": "removePattern",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Muster entfernen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/labels/recommendation-blocklist/propose-pattern": {
      "post": {
        "operationId": "proposePattern",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProposeLabelRecommendationBlocklistPatternRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Muster vorschlagen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/labels/recommendation-blocklist/{id}": {
      "delete": {
        "operationId": "removeBlocklistEntry",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Blocklist-Eintrag entfernen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/labels/recommendations": {
      "get": {
        "operationId": "recommendations",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LabelRecommendationListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Empfehlungen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/labels/recommendations/{id}/accept": {
      "post": {
        "operationId": "acceptLabelRecommendation",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AcceptLabelRecommendationRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AcceptLabelRecommendationResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label-Empfehlung übernehmen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/labels/recommendations/{id}/dismiss": {
      "post": {
        "operationId": "dismissLabelRecommendation",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DismissLabelRecommendationRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label-Empfehlung verwerfen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/mappen": {
      "get": {
        "operationId": "listMappen",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MappeListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ordner-Buckets auflisten",
        "tags": [
          "Ordner"
        ]
      },
      "post": {
        "operationId": "createMappe",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMappeRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ordner-Bucket anlegen",
        "tags": [
          "Ordner"
        ]
      }
    },
    "/mappen/{id}": {
      "patch": {
        "operationId": "updateMappe",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMappeRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ordner-Bucket aktualisieren",
        "tags": [
          "Ordner"
        ]
      },
      "delete": {
        "operationId": "deleteMappe",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Ordner-Bucket löschen",
        "tags": [
          "Ordner"
        ]
      }
    },
    "/ml/models/families": {
      "get": {
        "operationId": "families",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MlModelFamilyListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Familien",
        "tags": [
          "Erweiterungen"
        ]
      }
    },
    "/ml/models/families/{familyId}/versions": {
      "get": {
        "operationId": "versions",
        "parameters": [
          {
            "name": "familyId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MlModelVersionListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Versionen",
        "tags": [
          "Erweiterungen"
        ]
      }
    },
    "/ml/models/versions/{versionId}/lifecycle": {
      "patch": {
        "operationId": "patchLifecycle",
        "parameters": [
          {
            "name": "versionId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetMlModelLifecycleRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MlModelVersionListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Lebenszyklus aktualisieren",
        "tags": [
          "Erweiterungen"
        ]
      }
    },
    "/ml/retrain": {
      "post": {
        "operationId": "retrain",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerMlRetrainRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MlRetrainJobListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Nachtrainieren",
        "tags": [
          "Erweiterungen"
        ]
      }
    },
    "/ml/retrain/jobs": {
      "get": {
        "operationId": "jobs",
        "parameters": [
          {
            "name": "familyId",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MlRetrainJobListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Jobs",
        "tags": [
          "Erweiterungen"
        ]
      }
    },
    "/openapi.json": {
      "get": {
        "description": "Maschinenlesbare Beschreibung dieser API im JSON-Format.",
        "operationId": "getOpenApiDocument",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "summary": "OpenAPI-JSON abrufen",
        "tags": [
          "System"
        ]
      }
    },
    "/recognized-fields": {
      "get": {
        "operationId": "listRecognizedFields",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Erkannte Felder (Katalog)",
        "tags": [
          "Einstellungen"
        ]
      },
      "put": {
        "operationId": "replaceRecognizedFields",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReplaceRecognizedFieldsRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Erkannte Felder ersetzen",
        "tags": [
          "Einstellungen"
        ]
      }
    },
    "/saved-views": {
      "get": {
        "operationId": "listSavedDocumentViews",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SavedDocumentViewListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "List saved document views",
        "tags": [
          "workspace"
        ]
      },
      "post": {
        "operationId": "createSavedDocumentView",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSavedDocumentViewRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SavedDocumentView"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Create saved document view",
        "tags": [
          "workspace"
        ]
      }
    },
    "/saved-views/reorder": {
      "put": {
        "operationId": "reorderSavedDocumentViews",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderSavedDocumentViewsRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Reorder owned saved views",
        "tags": [
          "workspace"
        ]
      }
    },
    "/saved-views/{id}": {
      "get": {
        "operationId": "getSavedDocumentView",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SavedDocumentView"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Get one saved document view",
        "tags": [
          "workspace"
        ]
      },
      "patch": {
        "operationId": "updateSavedDocumentView",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSavedDocumentViewRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SavedDocumentView"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Update saved document view",
        "tags": [
          "workspace"
        ]
      },
      "delete": {
        "operationId": "deleteSavedDocumentView",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Delete saved document view",
        "tags": [
          "workspace"
        ]
      }
    },
    "/search": {
      "get": {
        "description": "Combines Postgres FTS, pg_trgm, and unaccent with optional semantic ranking over document_embeddings JSONB (bounded lexical candidates + in-API cosine, ADR 016). ABAC: only the caller’s own data.",
        "operationId": "globalSearch",
        "parameters": [
          {
            "name": "q",
            "required": true,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "types",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "minimum": 1,
              "maximum": 20,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Hybrid global search (FTS, trigram, semantic)",
        "tags": [
          "Suche"
        ]
      }
    },
    "/settings": {
      "get": {
        "operationId": "getUserSettings",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserSettingsResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Benutzereinstellungen abrufen",
        "tags": [
          "Einstellungen"
        ]
      },
      "patch": {
        "operationId": "updateUserSettings",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUserSettingsRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserSettingsResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Benutzereinstellungen speichern",
        "tags": [
          "Einstellungen"
        ]
      }
    },
    "/settings/chat-providers": {
      "get": {
        "operationId": "listChatProviders",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentChatProviderListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Chat-Anbieter auflisten",
        "tags": [
          "Einstellungen"
        ]
      }
    },
    "/settings/extraction-engines": {
      "get": {
        "operationId": "listExtractionEngines",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExtractionEngineListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Extraktions-Engines auflisten",
        "tags": [
          "Einstellungen"
        ]
      }
    },
    "/settings/hardware": {
      "get": {
        "operationId": "getHardwareCapabilities",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Worker-Hardware-Fähigkeiten",
        "tags": [
          "Einstellungen"
        ]
      }
    },
    "/sftp-ingress/accounts": {
      "get": {
        "operationId": "listSftpIngressAccounts",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "List SFTP scanner ingress accounts",
        "tags": [
          "sftp-ingress"
        ]
      },
      "post": {
        "operationId": "createSftpIngressAccount",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SftpIngressCreateAccountBodyDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Create SFTP scanner ingress account",
        "tags": [
          "sftp-ingress"
        ]
      }
    },
    "/sftp-ingress/accounts/{accountId}": {
      "delete": {
        "operationId": "revokeSftpIngressAccount",
        "parameters": [
          {
            "name": "accountId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Revoke SFTP scanner ingress account",
        "tags": [
          "sftp-ingress"
        ]
      }
    },
    "/sftp-ingress/accounts/{accountId}/events": {
      "get": {
        "operationId": "listSftpIngressEvents",
        "parameters": [
          {
            "name": "accountId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "List SFTP ingress events for account",
        "tags": [
          "sftp-ingress"
        ]
      }
    },
    "/sftp-ingress/server": {
      "get": {
        "operationId": "getSftpIngressServer",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "SFTP scanner ingress server info",
        "tags": [
          "sftp-ingress"
        ]
      }
    },
    "/tags": {
      "get": {
        "operationId": "listTags",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TagListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Labels auflisten",
        "tags": [
          "Labels"
        ]
      },
      "post": {
        "operationId": "createTag",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTagRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Erstellt",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label anlegen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/tags/{id}": {
      "patch": {
        "operationId": "updateTag",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTagRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label aktualisieren",
        "tags": [
          "Labels"
        ]
      },
      "delete": {
        "operationId": "deleteTag",
        "parameters": [
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OkResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Label löschen",
        "tags": [
          "Labels"
        ]
      }
    },
    "/tags/{tagId}/custom-fields": {
      "get": {
        "operationId": "getCustomFields",
        "parameters": [
          {
            "name": "tagId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TagCustomFieldListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Benutzerdefinierte Felder abrufen",
        "tags": [
          "Labels"
        ]
      },
      "put": {
        "operationId": "putCustomFields",
        "parameters": [
          {
            "name": "tagId",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReplaceTagCustomFieldsRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TagCustomFieldListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Nicht angemeldet",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "403": {
            "description": "Keine Berechtigung",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "404": {
            "description": "Nicht gefunden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          },
          "422": {
            "description": "Ungültige Eingabe",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorEnvelopeDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          },
          {
            "bearerAuth": []
          }
        ],
        "summary": "Benutzerdefinierte Felder speichern",
        "tags": [
          "Labels"
        ]
      }
    }
  },
  "info": {
    "title": "Docuvate API",
    "description": "Schnittstelle für Dokumente, Labels, Ordner und Chat. Für Automatisierung und Integrationen. Version 1 ist stabil versioniert.",
    "version": "1.0.0",
    "contact": {},
    "x-docuvate-scalar": {
      "sidebarSearchLabel": "Suche"
    }
  },
  "tags": [
    {
      "name": "System",
      "description": "API-Beschreibung und Metadaten"
    },
    {
      "name": "Suche",
      "description": "Globale Suche (Volltext, Ähnlichkeit, semantisch)",
      "x-displayName": "Suche"
    },
    {
      "name": "Dokumente",
      "description": "Hochladen, Lesen, Suchen und Dokumenten-Chat"
    },
    {
      "name": "Labels",
      "description": "Labels, Vorschläge, Muster und benutzerdefinierte Felder"
    },
    {
      "name": "Korrespondenten",
      "description": "Absender und Partner für die Dokumentzuordnung"
    },
    {
      "name": "Ordner",
      "description": "Ordner und Ablageorte"
    },
    {
      "name": "Einstellungen",
      "description": "Kontoeinstellungen"
    },
    {
      "name": "Verbindungen",
      "description": "Anbindungen an externe Quellen"
    },
    {
      "name": "Erweiterungen",
      "description": "Modellbetrieb (optional)"
    },
    {
      "name": "Benutzerverwaltung",
      "description": "Benutzer, Rollen, Einladungen und Sitzungen verwalten"
    },
    {
      "name": "Einladungen",
      "description": "Einladungen annehmen und Passwort setzen"
    }
  ],
  "servers": [
    {
      "url": "https://ihre-instanz.example/v1",
      "description": "Beispiel-URL Ihrer selbst gehosteten API (in Docker Compose durch Ihre Domain ersetzen)."
    }
  ],
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "type": "http",
        "description": "Service API key as Bearer token"
      },
      "apiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "X-Docuvate-Api-Key",
        "description": "Service API key (alternative to Bearer)"
      }
    },
    "schemas": {
      "AcceptLabelRecommendationRequestDto": {
        "type": "object",
        "properties": {
          "recommendationId": {
            "type": "string"
          },
          "proposedName": {
            "type": "string"
          },
          "tagId": {
            "type": "string",
            "format": "uuid"
          },
          "keepTagId": {
            "type": "string",
            "format": "uuid"
          },
          "removeTagId": {
            "type": "string",
            "format": "uuid"
          },
          "color": {
            "type": "string"
          }
        }
      },
      "AcceptLabelRecommendationResponseDto": {
        "type": "object",
        "properties": {
          "tagId": {
            "type": "string"
          },
          "action": {
            "type": "string"
          }
        },
        "required": [
          "tagId",
          "action"
        ]
      },
      "AcceptUserInvitationRequestDto": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "minLength": 10,
            "description": "Einladungstoken aus der E-Mail"
          },
          "password": {
            "type": "string",
            "minLength": 8,
            "description": "Neues Passwort (mindestens 8 Zeichen)"
          }
        },
        "required": [
          "token",
          "password"
        ]
      },
      "AddLabelRecommendationBlocklistRequestDto": {
        "type": "object",
        "properties": {
          "phrase": {
            "type": "string"
          }
        },
        "required": [
          "phrase"
        ]
      },
      "AdminAccessResponseDto": {
        "type": "object",
        "properties": {
          "isAdministrator": {
            "type": "boolean"
          },
          "role": {
            "enum": [
              "admin",
              "member"
            ],
            "type": "string"
          },
          "roleDescriptions": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "isAdministrator",
          "role",
          "roleDescriptions"
        ]
      },
      "AdminUserListResponseDto": {
        "type": "object",
        "properties": {
          "users": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdminUserResponseDto"
            }
          },
          "total": {
            "type": "number"
          }
        },
        "required": [
          "users",
          "total"
        ]
      },
      "AdminUserResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "role": {
            "enum": [
              "admin",
              "member"
            ],
            "type": "string"
          },
          "banned": {
            "type": "boolean"
          },
          "banReason": {
            "type": "string",
            "nullable": true
          },
          "accountStatus": {
            "enum": [
              "active",
              "invited",
              "suspended"
            ],
            "type": "string"
          },
          "createdAt": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "email",
          "role",
          "banned",
          "accountStatus",
          "createdAt"
        ]
      },
      "ApiErrorEnvelopeDto": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "example": "FORBIDDEN"
          },
          "message": {
            "type": "string",
            "example": "ABAC denied"
          }
        },
        "required": [
          "code",
          "message"
        ]
      },
      "BanAdminUserRequestDto": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "Grund für die Sperre (optional)"
          }
        }
      },
      "ChatMessageDto": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "user",
              "assistant"
            ]
          },
          "content": {
            "type": "string"
          }
        },
        "required": [
          "role",
          "content"
        ]
      },
      "ChatMessageRecordDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "role": {
            "type": "string",
            "enum": [
              "user",
              "assistant"
            ]
          },
          "content": {
            "type": "string"
          },
          "createdAt": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string"
          },
          "generationStatus": {
            "type": "string",
            "nullable": true,
            "enum": [
              "failed",
              "pending",
              "streaming",
              "done"
            ]
          },
          "generationPhase": {
            "type": "string",
            "nullable": true,
            "enum": [
              "retrieving",
              "generating",
              "verifying"
            ]
          },
          "errorCode": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "id",
          "role",
          "content",
          "createdAt"
        ]
      },
      "ConfirmLabelRecommendationBlocklistPatternRequestDto": {
        "type": "object",
        "properties": {
          "pattern": {
            "type": "string"
          }
        },
        "required": [
          "pattern"
        ]
      },
      "CorrespondentListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "CreateConnectorInstallationRequestDto": {
        "type": "object",
        "properties": {
          "pluginId": {
            "type": "string",
            "enum": [
              "gmail",
              "outlook",
              "paperless",
              "home_assistant",
              "amazon_s3"
            ]
          },
          "displayName": {
            "type": "string",
            "minLength": 1
          },
          "credentials": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "required": [
          "pluginId",
          "displayName",
          "credentials"
        ]
      },
      "CreateCorrespondentRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "matchingAlgorithm": {
            "type": "string",
            "enum": [
              "none",
              "any",
              "all",
              "exact",
              "regex"
            ]
          },
          "match": {
            "type": "string"
          }
        },
        "required": [
          "name"
        ]
      },
      "CreateDocumentChatThreadRequestDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          }
        }
      },
      "CreateFolderRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "parentId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "mappeId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          }
        },
        "required": [
          "name"
        ]
      },
      "CreateMappeRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "color": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "name"
        ]
      },
      "CreateSavedDocumentViewRequestDto": {
        "type": "object",
        "properties": {
          "visibleColumns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LibraryTableColumnId"
            }
          },
          "name": {
            "type": "string"
          },
          "visibility": {
            "type": "string",
            "enum": [
              "private",
              "shared"
            ]
          },
          "searchQuery": {
            "type": "string"
          },
          "sort": {
            "type": "string",
            "enum": [
              "updatedAt",
              "createdAt",
              "title",
              "documentDate"
            ]
          },
          "order": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ]
          },
          "viewMode": {
            "type": "string",
            "enum": [
              "klassisch",
              "karten",
              "fokus"
            ]
          },
          "filterMode": {
            "type": "string",
            "enum": [
              "ui",
              "query"
            ]
          },
          "listScope": {
            "type": "string",
            "enum": [
              "all",
              "folder",
              "mappe"
            ]
          },
          "folderId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "mappeId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "correspondentId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "status": {
            "type": "string",
            "nullable": true,
            "enum": [
              "uploaded",
              "queued",
              "extracting",
              "ready",
              "failed"
            ]
          },
          "inbox": {
            "type": "boolean",
            "nullable": true
          },
          "withoutNonInboxLabel": {
            "type": "boolean",
            "nullable": true
          },
          "documentDateFrom": {
            "type": "string",
            "nullable": true
          },
          "documentDateTo": {
            "type": "string",
            "nullable": true
          },
          "tagIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          },
          "pinnedSidebar": {
            "type": "boolean"
          }
        },
        "required": [
          "name",
          "searchQuery"
        ]
      },
      "CreateTagRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "color": {
            "type": "string"
          },
          "isInbox": {
            "type": "boolean"
          },
          "matchingAlgorithm": {
            "type": "string",
            "enum": [
              "none",
              "any",
              "all",
              "exact",
              "regex"
            ]
          },
          "match": {
            "type": "string"
          }
        },
        "required": [
          "name"
        ]
      },
      "DashboardLayoutResponseDto": {
        "type": "object",
        "properties": {
          "widgets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardWidget"
            }
          },
          "editMode": {
            "type": "boolean"
          }
        },
        "required": [
          "widgets",
          "editMode"
        ]
      },
      "DashboardWidgetInputDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "type": "string",
            "enum": [
              "saved_view",
              "upload",
              "statistics",
              "recent_documents",
              "attention"
            ]
          },
          "position": {
            "type": "number",
            "minimum": 0
          },
          "widthCols": {
            "type": "number",
            "minimum": 1,
            "maximum": 12
          },
          "heightRows": {
            "type": "number",
            "minimum": 1,
            "maximum": 6
          },
          "savedViewId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "itemLimit": {
            "type": "number",
            "nullable": true,
            "minimum": 1,
            "maximum": 50
          }
        },
        "required": [
          "type",
          "position",
          "widthCols",
          "heightRows"
        ]
      },
      "DismissLabelRecommendationRequestDto": {
        "type": "object",
        "properties": {
          "phrase": {
            "type": "string"
          },
          "phrases": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "blockFuture": {
            "type": "boolean"
          }
        }
      },
      "DismissTagSuggestionRequestDto": {
        "type": "object",
        "properties": {
          "blockFuture": {
            "type": "boolean"
          }
        }
      },
      "DocumentBulkActionDto": {
        "type": "object",
        "properties": {
          "action": {
            "type": "string",
            "enum": [
              "addTag",
              "removeTag",
              "setCorrespondent",
              "setFolder",
              "delete"
            ]
          },
          "tagId": {
            "type": "string",
            "format": "uuid"
          },
          "correspondentId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "folderId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          }
        },
        "required": [
          "action"
        ]
      },
      "DocumentBulkRequestDto": {
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          },
          "bulk": {
            "$ref": "#/components/schemas/DocumentBulkActionDto"
          }
        },
        "required": [
          "ids",
          "bulk"
        ]
      },
      "DocumentChatProviderInfoDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "available": {
            "type": "boolean"
          }
        },
        "required": [
          "id",
          "label",
          "description",
          "available"
        ]
      },
      "DocumentChatProviderListResponseDto": {
        "type": "object",
        "properties": {
          "selectable": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentChatProviderInfoDto"
            }
          },
          "unavailable": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentChatUnavailableBackendInfoDto"
            }
          },
          "development": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentChatProviderInfoDto"
            }
          },
          "meta": {
            "$ref": "#/components/schemas/DocumentChatProvidersCatalogMetaDto"
          }
        },
        "required": [
          "selectable",
          "unavailable",
          "meta"
        ]
      },
      "DocumentChatProvidersCatalogMetaDto": {
        "type": "object",
        "properties": {
          "ollamaModel": {
            "type": "string",
            "nullable": true
          },
          "ollamaConfigured": {
            "type": "boolean"
          },
          "runsOnCpu": {
            "type": "boolean"
          }
        },
        "required": [
          "ollamaModel",
          "ollamaConfigured",
          "runsOnCpu"
        ]
      },
      "DocumentChatRequestDto": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "history": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ChatMessageDto"
            }
          }
        },
        "required": [
          "message"
        ]
      },
      "DocumentChatResponseDto": {
        "type": "object",
        "properties": {
          "reply": {
            "$ref": "#/components/schemas/ChatMessageDto"
          },
          "configured": {
            "type": "boolean"
          },
          "provider": {
            "type": "string"
          },
          "setupHint": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "reply",
          "configured"
        ]
      },
      "DocumentChatThreadDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "scope": {
            "type": "string",
            "enum": [
              "document",
              "library"
            ]
          },
          "documentIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "createdAt": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string"
          },
          "lastMessagePreview": {
            "type": "string",
            "nullable": true
          },
          "activeGenerationStatus": {
            "type": "string",
            "nullable": true,
            "enum": [
              "failed",
              "pending",
              "streaming",
              "done"
            ]
          }
        },
        "required": [
          "id",
          "title",
          "scope",
          "documentIds",
          "createdAt",
          "updatedAt"
        ]
      },
      "DocumentChatThreadListResponseDto": {
        "type": "object",
        "properties": {
          "threads": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentChatThreadDto"
            }
          }
        },
        "required": [
          "threads"
        ]
      },
      "DocumentChatThreadMessagesResponseDto": {
        "type": "object",
        "properties": {
          "messages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ChatMessageRecordDto"
            }
          }
        },
        "required": [
          "messages"
        ]
      },
      "DocumentChatUnavailableBackendInfoDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          },
          "setupHint": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "label",
          "reason",
          "setupHint"
        ]
      },
      "DocumentExtractionSummaryDto": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExtractedFieldDto"
            }
          },
          "markdown": {
            "type": "string"
          },
          "layoutIrAvailable": {
            "type": "boolean",
            "description": "True when persisted layout IR exists (fetch via GET /documents/:id/layout-ir)."
          },
          "layoutIrPages": {
            "type": "array",
            "description": "Page dimensions from persisted layout IR (no block payload).",
            "items": {
              "type": "object",
              "properties": {
                "page": {
                  "type": "integer"
                },
                "widthPt": {
                  "type": "number"
                },
                "heightPt": {
                  "type": "number"
                }
              }
            }
          }
        },
        "required": [
          "text",
          "fields"
        ]
      },
      "DocumentListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "DocumentPipelineModuleDescriptorDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "defaultEnabled": {
            "type": "boolean"
          },
          "defaultOrder": {
            "type": "number"
          }
        },
        "required": [
          "id",
          "label",
          "description",
          "defaultEnabled",
          "defaultOrder"
        ]
      },
      "DocumentPipelineModulesResponseDto": {
        "type": "object",
        "properties": {
          "modules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentPipelineModuleDescriptorDto"
            }
          }
        },
        "required": [
          "modules"
        ]
      },
      "DocumentResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "filename": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "enum": [
              "uploaded",
              "queued",
              "extracting",
              "ready",
              "failed"
            ],
            "type": "string"
          },
          "mimeType": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "createdAt": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string"
          },
          "extraction": {
            "$ref": "#/components/schemas/DocumentExtractionSummaryDto"
          }
        },
        "required": [
          "id",
          "filename",
          "title",
          "status",
          "mimeType",
          "tags",
          "createdAt",
          "updatedAt"
        ]
      },
      "DuplicateStackKeepVersionRequestDto": {
        "type": "object",
        "properties": {
          "versionDocumentId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "required": [
          "versionDocumentId"
        ]
      },
      "DuplicateStackNotDuplicateRequestDto": {
        "type": "object",
        "properties": {
          "otherDocumentId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "required": [
          "otherDocumentId"
        ]
      },
      "DuplicateStackSetPrimaryRequestDto": {
        "type": "object",
        "properties": {
          "documentId": {
            "type": "string",
            "format": "uuid"
          },
          "stackId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "required": [
          "documentId",
          "stackId"
        ]
      },
      "ExportToConnectorRequestDto": {
        "type": "object",
        "properties": {
          "documentId": {
            "type": "string",
            "format": "uuid"
          },
          "destinationRef": {
            "type": "string"
          }
        },
        "required": [
          "documentId"
        ]
      },
      "ExtractedFieldDto": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "confidence": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
          }
        },
        "required": [
          "key",
          "value"
        ]
      },
      "ExtractionArenaRatingRequestDto": {
        "type": "object",
        "properties": {
          "winnerEngine": {
            "type": "string"
          },
          "comparedEngines": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "rating": {
            "type": "number",
            "minimum": 1,
            "maximum": 5
          },
          "applyAsDefault": {
            "type": "boolean"
          }
        },
        "required": [
          "winnerEngine",
          "comparedEngines"
        ]
      },
      "ExtractionBlockDto": {
        "type": "object",
        "properties": {
          "page": {
            "type": "number",
            "minimum": 1
          },
          "x": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "y": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "width": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "height": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "text": {
            "type": "string"
          },
          "blockIndex": {
            "type": "number"
          }
        },
        "required": [
          "page",
          "x",
          "y",
          "width",
          "height",
          "text"
        ]
      },
      "ExtractionCompareRequestDto": {
        "type": "object",
        "properties": {
          "engines": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "maxPages": {
            "type": "number",
            "minimum": 1,
            "maximum": 50
          }
        }
      },
      "ExtractionEngineListResponseDto": {
        "type": "object",
        "properties": {
          "engines": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "engines"
        ]
      },
      "FolderListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "ImportFromConnectorRequestDto": {
        "type": "object",
        "properties": {
          "ref": {
            "type": "string"
          }
        },
        "required": [
          "ref"
        ]
      },
      "InstallationDashboardDefaultResponseDto": {
        "type": "object",
        "properties": {
          "widgets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardWidgetInputDto"
            }
          }
        },
        "required": [
          "widgets"
        ]
      },
      "InviteAdminUserRequestDto": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "format": "email",
            "description": "E-Mail-Adresse des eingeladenen Benutzers"
          },
          "name": {
            "type": "string",
            "description": "Anzeigename"
          },
          "role": {
            "type": "string",
            "enum": [
              "admin",
              "member"
            ],
            "description": "Rolle (admin oder member)"
          }
        },
        "required": [
          "email",
          "name"
        ]
      },
      "LabelRecommendationBlocklistEntryResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "phrase": {
            "type": "string"
          },
          "source": {
            "type": "string",
            "enum": [
              "manual",
              "dismiss"
            ]
          },
          "createdAt": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "phrase",
          "source",
          "createdAt"
        ]
      },
      "LabelRecommendationBlocklistListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "patterns": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "items",
          "patterns"
        ]
      },
      "LabelRecommendationListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "LayoutHtmlResponseDto": {
        "type": "object",
        "properties": {
          "html": {
            "type": "string"
          },
          "reconstructionReliable": {
            "type": "boolean",
            "default": true
          },
          "unreliableReason": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "html",
          "reconstructionReliable"
        ]
      },
      "LayoutIrBlockDto": {
        "type": "object",
        "properties": {
          "page": {
            "type": "number"
          },
          "x": {
            "type": "number"
          },
          "y": {
            "type": "number"
          },
          "width": {
            "type": "number"
          },
          "height": {
            "type": "number"
          },
          "text": {
            "type": "string"
          },
          "fontFamily": {
            "type": "string"
          },
          "fontSizePt": {
            "type": "number"
          },
          "weight": {
            "type": "string"
          },
          "align": {
            "type": "string"
          },
          "columnIndex": {
            "type": "number"
          },
          "blockIndex": {
            "type": "number"
          },
          "rotationDeg": {
            "type": "number"
          },
          "matrix": {
            "minItems": 6,
            "maxItems": 6,
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "textRgb": {
            "minItems": 3,
            "maxItems": 3,
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "textOriginX": {
            "type": "number"
          },
          "textOriginY": {
            "type": "number"
          }
        },
        "required": [
          "page",
          "x",
          "y",
          "width",
          "height",
          "text"
        ]
      },
      "LayoutIrDocumentDto": {
        "type": "object",
        "properties": {
          "version": {
            "type": "number",
            "enum": [
              1
            ]
          },
          "pages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LayoutIrPageDto"
            }
          }
        },
        "required": [
          "version",
          "pages"
        ]
      },
      "LayoutIrLineDto": {
        "type": "object",
        "properties": {
          "page": {
            "type": "number"
          },
          "x": {
            "type": "number"
          },
          "y": {
            "type": "number"
          },
          "width": {
            "type": "number"
          },
          "height": {
            "type": "number"
          },
          "text": {
            "type": "string"
          },
          "fontFamily": {
            "type": "string"
          },
          "fontSizePt": {
            "type": "number"
          },
          "weight": {
            "type": "string"
          },
          "align": {
            "type": "string"
          },
          "blockIndex": {
            "type": "number"
          }
        },
        "required": [
          "page",
          "x",
          "y",
          "width",
          "height",
          "text"
        ]
      },
      "LayoutIrPageDto": {
        "type": "object",
        "properties": {
          "page": {
            "type": "number"
          },
          "widthPt": {
            "type": "number"
          },
          "heightPt": {
            "type": "number"
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LayoutIrBlockDto"
            }
          },
          "lines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LayoutIrLineDto"
            }
          },
          "tables": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LayoutIrTableDto"
            }
          },
          "vectors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LayoutIrVectorDto"
            }
          },
          "widgets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LayoutIrWidgetDto"
            }
          }
        },
        "required": [
          "page",
          "widthPt",
          "heightPt",
          "blocks"
        ]
      },
      "LayoutIrTableCellDto": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "x": {
            "type": "number"
          },
          "y": {
            "type": "number"
          },
          "width": {
            "type": "number"
          },
          "height": {
            "type": "number"
          },
          "fontSizePt": {
            "type": "number"
          },
          "weight": {
            "type": "string"
          },
          "blockIndex": {
            "type": "number"
          },
          "cellRole": {
            "type": "string"
          }
        },
        "required": [
          "text",
          "x",
          "y",
          "width",
          "height"
        ]
      },
      "LayoutIrTableDto": {
        "type": "object",
        "properties": {
          "page": {
            "type": "number"
          },
          "x": {
            "type": "number"
          },
          "y": {
            "type": "number"
          },
          "width": {
            "type": "number"
          },
          "height": {
            "type": "number"
          },
          "columnCount": {
            "type": "number"
          },
          "rows": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/LayoutIrTableCellDto"
              }
            }
          }
        },
        "required": [
          "page",
          "x",
          "y",
          "width",
          "height",
          "columnCount",
          "rows"
        ]
      },
      "LayoutIrVectorDto": {
        "type": "object",
        "properties": {
          "kind": {
            "type": "string",
            "enum": [
              "rect",
              "line",
              "path"
            ]
          },
          "x": {
            "type": "number"
          },
          "y": {
            "type": "number"
          },
          "width": {
            "type": "number"
          },
          "height": {
            "type": "number"
          },
          "strokeWidthPt": {
            "type": "number"
          },
          "filled": {
            "type": "boolean"
          },
          "fillGray": {
            "type": "number"
          },
          "fillRgb": {
            "minItems": 3,
            "maxItems": 3,
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "strokeRgb": {
            "minItems": 3,
            "maxItems": 3,
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "pathD": {
            "type": "string"
          }
        },
        "required": [
          "kind",
          "x",
          "y",
          "width",
          "height"
        ]
      },
      "LayoutIrWidgetDto": {
        "type": "object",
        "properties": {
          "kind": {
            "type": "string",
            "enum": [
              "text",
              "checkbox"
            ]
          },
          "page": {
            "type": "number"
          },
          "x": {
            "type": "number"
          },
          "y": {
            "type": "number"
          },
          "width": {
            "type": "number"
          },
          "height": {
            "type": "number"
          },
          "value": {
            "type": "string"
          },
          "checked": {
            "type": "boolean"
          },
          "fieldName": {
            "type": "string"
          },
          "rotationDeg": {
            "type": "number"
          },
          "fontSizePt": {
            "type": "number"
          },
          "fontFamily": {
            "type": "string"
          },
          "align": {
            "type": "string"
          },
          "checkMark": {
            "type": "string"
          }
        },
        "required": [
          "kind",
          "page",
          "x",
          "y",
          "width",
          "height"
        ]
      },
      "LayoutTypstResponseDto": {
        "type": "object",
        "properties": {
          "typst": {
            "type": "string"
          },
          "exportMode": {
            "enum": [
              "exakt",
              "semantisch"
            ],
            "type": "string",
            "default": "exakt"
          },
          "reconstructionReliable": {
            "type": "boolean",
            "default": true
          },
          "unreliableReason": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "typst",
          "exportMode",
          "reconstructionReliable"
        ]
      },
      "LibraryTableColumnId": {
        "type": "string",
        "enum": [
          "title",
          "labels",
          "date",
          "status",
          "folder",
          "updated"
        ]
      },
      "MappeListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "MlModelFamilyDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "kind": {
            "type": "string",
            "enum": [
              "embedding",
              "ocr",
              "docqa",
              "field_extractor"
            ]
          },
          "displayName": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "id",
          "kind",
          "displayName",
          "description"
        ]
      },
      "MlModelFamilyListResponseDto": {
        "type": "object",
        "properties": {
          "families": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MlModelFamilyDto"
            }
          }
        },
        "required": [
          "families"
        ]
      },
      "MlModelVersionDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "familyId": {
            "type": "string"
          },
          "versionTag": {
            "type": "string"
          },
          "artifactUri": {
            "type": "string",
            "nullable": true
          },
          "externalRunId": {
            "type": "string",
            "nullable": true
          },
          "metrics": {
            "type": "object",
            "additionalProperties": {
              "type": "number"
            }
          },
          "lifecycle": {
            "type": "string",
            "enum": [
              "failed",
              "active",
              "registered",
              "canary",
              "archived"
            ]
          },
          "trainingSnapshotId": {
            "type": "string",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string"
          },
          "promotedAt": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "id",
          "familyId",
          "versionTag",
          "artifactUri",
          "externalRunId",
          "metrics",
          "lifecycle",
          "trainingSnapshotId",
          "notes",
          "createdAt",
          "promotedAt"
        ]
      },
      "MlModelVersionListResponseDto": {
        "type": "object",
        "properties": {
          "versions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MlModelVersionDto"
            }
          }
        },
        "required": [
          "versions"
        ]
      },
      "MlRetrainJobDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "familyId": {
            "type": "string"
          },
          "triggerKind": {
            "type": "string",
            "enum": [
              "manual",
              "cron",
              "threshold"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "queued",
              "failed",
              "cancelled",
              "running",
              "succeeded"
            ]
          },
          "trainingSnapshotId": {
            "type": "string",
            "nullable": true
          },
          "resultVersionId": {
            "type": "string",
            "nullable": true
          },
          "errorMessage": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string"
          },
          "startedAt": {
            "type": "string",
            "nullable": true
          },
          "finishedAt": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "id",
          "familyId",
          "triggerKind",
          "status",
          "trainingSnapshotId",
          "resultVersionId",
          "errorMessage",
          "createdAt",
          "startedAt",
          "finishedAt"
        ]
      },
      "MlRetrainJobListResponseDto": {
        "type": "object",
        "properties": {
          "jobs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MlRetrainJobDto"
            }
          }
        },
        "required": [
          "jobs"
        ]
      },
      "OkResponseDto": {
        "type": "object",
        "properties": {
          "ok": {
            "type": "boolean"
          }
        },
        "required": [
          "ok"
        ]
      },
      "ProposeLabelRecommendationBlocklistPatternRequestDto": {
        "type": "object",
        "properties": {
          "phrases": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "phrases"
        ]
      },
      "ReorderSavedDocumentViewsRequestDto": {
        "type": "object",
        "properties": {
          "orderedIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          }
        },
        "required": [
          "orderedIds"
        ]
      },
      "ReplaceDashboardLayoutRequestDto": {
        "type": "object",
        "properties": {
          "widgets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardWidgetInputDto"
            }
          }
        },
        "required": [
          "widgets"
        ]
      },
      "ReplaceRecognizedFieldItemDto": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "fieldType": {
            "type": "string",
            "enum": [
              "text",
              "date",
              "number",
              "currency"
            ]
          },
          "sortOrder": {
            "type": "number",
            "minimum": 0
          },
          "extractForAllDocuments": {
            "type": "boolean"
          },
          "gateLabelIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "gateLabelMatch": {
            "type": "string",
            "enum": [
              "any",
              "all"
            ]
          },
          "minLabelConfidence": {
            "type": "number",
            "nullable": true,
            "minimum": 0,
            "maximum": 1
          },
          "confidenceGateEnabled": {
            "type": "boolean",
            "nullable": true
          }
        },
        "required": [
          "key",
          "label"
        ]
      },
      "ReplaceRecognizedFieldsRequestDto": {
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReplaceRecognizedFieldItemDto"
            }
          }
        },
        "required": [
          "fields"
        ]
      },
      "ReplaceTagCustomFieldItemDto": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "fieldType": {
            "type": "string",
            "enum": [
              "text",
              "date",
              "number",
              "currency"
            ]
          },
          "sortOrder": {
            "type": "number",
            "minimum": 0
          }
        },
        "required": [
          "key",
          "label"
        ]
      },
      "ReplaceTagCustomFieldsRequestDto": {
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReplaceTagCustomFieldItemDto"
            }
          }
        },
        "required": [
          "fields"
        ]
      },
      "SavedDocumentViewListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SavedDocumentView"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "SendDocumentChatThreadMessageRequestDto": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          }
        },
        "required": [
          "message"
        ]
      },
      "SendDocumentChatThreadMessageResponseDto": {
        "type": "object",
        "properties": {
          "userMessage": {
            "$ref": "#/components/schemas/ChatMessageRecordDto"
          },
          "assistantMessage": {
            "$ref": "#/components/schemas/ChatMessageRecordDto"
          },
          "asyncGeneration": {
            "type": "boolean"
          },
          "reply": {
            "$ref": "#/components/schemas/ChatMessageDto"
          },
          "configured": {
            "type": "boolean"
          },
          "provider": {
            "type": "string"
          },
          "setupHint": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "userMessage",
          "assistantMessage",
          "reply",
          "configured"
        ]
      },
      "SetAdminUserRoleRequestDto": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "admin",
              "member"
            ],
            "description": "Rolle (admin oder member)"
          }
        },
        "required": [
          "role"
        ]
      },
      "SetMlModelLifecycleRequestDto": {
        "type": "object",
        "properties": {
          "lifecycle": {
            "type": "string",
            "enum": [
              "failed",
              "active",
              "registered",
              "canary",
              "archived"
            ]
          }
        },
        "required": [
          "lifecycle"
        ]
      },
      "SftpIngressCreateAccountBodyDto": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128
          },
          "username": {
            "type": "string",
            "maxLength": 64
          },
          "passwordPlain": {
            "type": "string",
            "nullable": true,
            "minLength": 16,
            "maxLength": 256
          },
          "sshPublicKey": {
            "type": "string",
            "nullable": true,
            "maxLength": 8192
          },
          "folderId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "labelIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          },
          "mapSubfolders": {
            "type": "boolean"
          }
        },
        "required": [
          "displayName"
        ]
      },
      "StartMailOAuthRequestDto": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string"
          },
          "accountHint": {
            "type": "string"
          }
        },
        "required": [
          "displayName"
        ]
      },
      "TagCustomFieldListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "TagListResponseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "items"
        ]
      },
      "TestPaperlessConnectionRequestDto": {
        "type": "object",
        "properties": {
          "credentials": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "required": [
          "credentials"
        ]
      },
      "TestPaperlessInstallationConnectionRequestDto": {
        "type": "object",
        "properties": {
          "credentials": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        }
      },
      "TriggerMlRetrainRequestDto": {
        "type": "object",
        "properties": {
          "familyId": {
            "type": "string"
          }
        },
        "required": [
          "familyId"
        ]
      },
      "UpdateCorrespondentRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "matchingAlgorithm": {
            "type": "string",
            "enum": [
              "none",
              "any",
              "all",
              "exact",
              "regex"
            ]
          },
          "match": {
            "type": "string"
          }
        }
      },
      "UpdateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "documentDate": {
            "type": "string",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "nullable": true
          },
          "folderId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "mappeId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "correspondentId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "tagIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          },
          "extractionFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExtractedFieldDto"
            }
          },
          "extractionBlocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExtractionBlockDto"
            }
          }
        }
      },
      "UpdateFolderRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "parentId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "mappeId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          }
        }
      },
      "UpdateMappeRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "color": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "UpdatePaperlessInstallationRequestDto": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string",
            "minLength": 1
          },
          "credentials": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "keepOcrText": {
            "type": "boolean"
          },
          "rerunOcr": {
            "type": "boolean"
          },
          "includeArchivedPdf": {
            "type": "boolean"
          }
        }
      },
      "UpdateSavedDocumentViewRequestDto": {
        "type": "object",
        "properties": {
          "visibleColumns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LibraryTableColumnId"
            }
          },
          "name": {
            "type": "string"
          },
          "visibility": {
            "type": "string",
            "enum": [
              "private",
              "shared"
            ]
          },
          "searchQuery": {
            "type": "string"
          },
          "sort": {
            "type": "string",
            "enum": [
              "updatedAt",
              "createdAt",
              "title",
              "documentDate"
            ]
          },
          "order": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ]
          },
          "viewMode": {
            "type": "string",
            "enum": [
              "klassisch",
              "karten",
              "fokus"
            ]
          },
          "filterMode": {
            "type": "string",
            "enum": [
              "ui",
              "query"
            ]
          },
          "listScope": {
            "type": "string",
            "enum": [
              "all",
              "folder",
              "mappe"
            ]
          },
          "folderId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "mappeId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "correspondentId": {
            "type": "string",
            "nullable": true,
            "format": "uuid"
          },
          "status": {
            "type": "string",
            "nullable": true,
            "enum": [
              "uploaded",
              "queued",
              "extracting",
              "ready",
              "failed"
            ]
          },
          "inbox": {
            "type": "boolean",
            "nullable": true
          },
          "withoutNonInboxLabel": {
            "type": "boolean",
            "nullable": true
          },
          "documentDateFrom": {
            "type": "string",
            "nullable": true
          },
          "documentDateTo": {
            "type": "string",
            "nullable": true
          },
          "tagIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          },
          "pinnedSidebar": {
            "type": "boolean"
          }
        }
      },
      "UpdateTagRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "color": {
            "type": "string",
            "nullable": true
          },
          "isInbox": {
            "type": "boolean"
          },
          "matchingAlgorithm": {
            "type": "string",
            "enum": [
              "none",
              "any",
              "all",
              "exact",
              "regex"
            ]
          },
          "match": {
            "type": "string"
          }
        }
      },
      "UpdateUserSettingsRequestDto": {
        "type": "object",
        "properties": {
          "preferredExtractorEngine": {
            "type": "string"
          },
          "preferredChatProvider": {
            "type": "string",
            "nullable": true
          },
          "useArenaWinnerAsDefault": {
            "type": "boolean"
          },
          "labelFieldConfidenceThreshold": {
            "type": "number",
            "minimum": 0.5,
            "maximum": 0.95
          },
          "fieldExtractionConfidenceGateEnabled": {
            "type": "boolean"
          },
          "fieldExtractionRequiredLabelIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "advancedFeaturesEnabled": {
            "type": "boolean"
          },
          "themePreference": {
            "type": "string",
            "enum": [
              "light",
              "dark",
              "system"
            ]
          },
          "locale": {
            "type": "string",
            "nullable": true,
            "enum": [
              "de",
              "en"
            ]
          }
        }
      },
      "UserSettingsResponseDto": {
        "type": "object",
        "properties": {
          "preferredExtractorEngine": {
            "type": "string"
          },
          "preferredChatProvider": {
            "type": "string",
            "nullable": true
          },
          "effectiveChatProvider": {
            "type": "string"
          },
          "customerChatProvider": {
            "type": "string"
          },
          "documentChatUiEnabled": {
            "type": "boolean"
          },
          "documentChatAvailable": {
            "type": "boolean"
          },
          "documentChatReadiness": {
            "enum": [
              "ready",
              "off",
              "unavailable",
              "starting"
            ],
            "type": "string"
          },
          "documentChatReadinessReason": {
            "type": "string",
            "nullable": true
          },
          "documentChatOllamaModel": {
            "type": "string",
            "nullable": true
          },
          "documentChatRunsOnCpu": {
            "type": "boolean"
          },
          "advancedFeaturesEnabled": {
            "type": "boolean"
          },
          "useArenaWinnerAsDefault": {
            "type": "boolean"
          },
          "arenaWinnerEngine": {
            "type": "string",
            "nullable": true
          },
          "labelFieldConfidenceThreshold": {
            "type": "number"
          },
          "fieldExtractionConfidenceGateEnabled": {
            "type": "boolean"
          },
          "fieldExtractionRequiredLabelIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "themePreference": {
            "enum": [
              "light",
              "dark",
              "system"
            ],
            "type": "string"
          },
          "locale": {
            "nullable": true,
            "enum": [
              "de",
              "en"
            ],
            "type": "string"
          }
        },
        "required": [
          "preferredExtractorEngine",
          "useArenaWinnerAsDefault"
        ]
      },
      "DashboardStatistics": {
        "type": "object",
        "properties": {
          "documentsTotal": {
            "type": "number"
          },
          "byStatus": {
            "type": "object",
            "additionalProperties": {
              "type": "number"
            }
          },
          "labelsAssignedCount": {
            "type": "number"
          },
          "unlabeledCount": {
            "type": "number"
          },
          "topLabels": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "count": {
                  "type": "number"
                }
              },
              "required": [
                "name",
                "count"
              ]
            }
          }
        },
        "required": [
          "documentsTotal",
          "byStatus",
          "labelsAssignedCount",
          "unlabeledCount",
          "topLabels"
        ]
      },
      "DashboardWidget": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "upload",
              "saved_view",
              "statistics",
              "recent_documents",
              "attention"
            ]
          },
          "position": {
            "type": "number"
          },
          "widthCols": {
            "type": "number"
          },
          "heightRows": {
            "type": "number"
          },
          "savedViewId": {
            "type": "string",
            "nullable": true
          },
          "itemLimit": {
            "type": "number",
            "nullable": true
          }
        },
        "required": [
          "id",
          "type",
          "position",
          "widthCols",
          "heightRows"
        ]
      },
      "LabelMapResponse": {
        "type": "object",
        "properties": {
          "points": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "example": "doc-7f2c"
                },
                "kind": {
                  "type": "string",
                  "example": "document"
                },
                "x": {
                  "type": "number",
                  "example": 0.18
                },
                "y": {
                  "type": "number",
                  "example": -0.42
                },
                "label": {
                  "type": "string",
                  "example": "Mietvertrag"
                },
                "documentId": {
                  "type": "string",
                  "format": "uuid",
                  "nullable": true
                },
                "tagId": {
                  "type": "string",
                  "format": "uuid",
                  "nullable": true
                },
                "tagIds": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "format": "uuid"
                  }
                },
                "tagNames": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "unlabeled": {
                  "type": "boolean"
                },
                "coverageStatus": {
                  "type": "string"
                }
              },
              "required": [
                "id",
                "kind",
                "x",
                "y",
                "label"
              ]
            }
          },
          "documentCount": {
            "type": "number"
          },
          "tagCount": {
            "type": "number"
          },
          "extractedDocumentCount": {
            "type": "number"
          },
          "emptyReason": {
            "type": "string",
            "nullable": true,
            "enum": [
              "no_extracted_documents",
              "awaiting_embeddings",
              "embedding_unavailable"
            ]
          }
        },
        "required": [
          "points",
          "documentCount",
          "tagCount",
          "extractedDocumentCount"
        ]
      },
      "SavedDocumentView": {
        "type": "object",
        "properties": {
          "visibleColumns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LibraryTableColumnId"
            }
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "visibility": {
            "enum": [
              "private",
              "shared"
            ],
            "type": "string"
          },
          "ownerUserId": {
            "type": "string"
          },
          "searchQuery": {
            "type": "string"
          },
          "sort": {
            "enum": [
              "createdAt",
              "updatedAt",
              "title",
              "documentDate"
            ],
            "type": "string"
          },
          "order": {
            "enum": [
              "asc",
              "desc"
            ],
            "type": "string"
          },
          "viewMode": {
            "enum": [
              "klassisch",
              "karten",
              "fokus"
            ],
            "type": "string"
          },
          "filterMode": {
            "enum": [
              "query",
              "ui"
            ],
            "type": "string"
          },
          "listScope": {
            "enum": [
              "all",
              "mappe",
              "folder"
            ],
            "type": "string"
          },
          "folderId": {
            "type": "string",
            "nullable": true
          },
          "mappeId": {
            "type": "string",
            "nullable": true
          },
          "correspondentId": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "nullable": true,
            "enum": [
              "uploaded",
              "queued",
              "extracting",
              "ready",
              "failed"
            ],
            "type": "string"
          },
          "inbox": {
            "type": "boolean",
            "nullable": true
          },
          "withoutNonInboxLabel": {
            "type": "boolean",
            "nullable": true
          },
          "tagIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "pinnedSidebar": {
            "type": "boolean"
          },
          "position": {
            "type": "number"
          },
          "createdAt": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string"
          }
        },
        "required": [
          "visibleColumns",
          "id",
          "name",
          "visibility",
          "ownerUserId",
          "searchQuery",
          "sort",
          "order",
          "viewMode",
          "filterMode",
          "listScope",
          "tagIds",
          "pinnedSidebar",
          "position",
          "createdAt",
          "updatedAt"
        ]
      }
    }
  }
}