Maintenance · API
Generated from the OpenAPI snapshot. Source summaries remain unchanged; JSON schemas below are the exact exported definitions.
GET /api/v1/maintenance/orphans
Unbekannte Profilordner: Ordner im Profilbereich ohne Datenbankeintrag (z. B. nach Wiederherstellung einer älteren Datenbanksicherung)
Authentication: bearer token
Required route scopes: profiles:read
All listed scopes are required; admin satisfies scope checks. Request content, vault state and resource permissions can impose additional requirements.
No path or query parameters declared.
No request body declared.
Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"folder_key",
"modified_at",
"size_bytes",
"has_mirror",
"profile"
],
"properties": {
"folder_key": {
"type": "string"
},
"modified_at": {
"type": "integer"
},
"size_bytes": {
"type": "integer"
},
"has_mirror": {
"type": "boolean"
},
"profile": {
"anyOf": [
{
"type": "object",
"required": [
"id",
"no",
"name",
"group",
"engine",
"engine_version",
"updated_at"
],
"properties": {
"id": {
"type": [
"string",
"null"
]
},
"no": {
"type": [
"integer",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"group": {
"type": [
"string",
"null"
]
},
"engine": {
"type": [
"string",
"null"
]
},
"engine_version": {
"type": [
"string",
"null"
]
},
"updated_at": {
"type": [
"integer",
"null"
]
}
}
},
{
"type": "null"
}
]
}
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Complete operation definition
{
"summary": "Unbekannte Profilordner: Ordner im Profilbereich ohne Datenbankeintrag (z. B. nach Wiederherstellung einer älteren Datenbanksicherung)",
"tags": [
"Wartung"
],
"x-required-scopes": [
"profiles:read"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"folder_key",
"modified_at",
"size_bytes",
"has_mirror",
"profile"
],
"properties": {
"folder_key": {
"type": "string"
},
"modified_at": {
"type": "integer"
},
"size_bytes": {
"type": "integer"
},
"has_mirror": {
"type": "boolean"
},
"profile": {
"anyOf": [
{
"type": "object",
"required": [
"id",
"no",
"name",
"group",
"engine",
"engine_version",
"updated_at"
],
"properties": {
"id": {
"type": [
"string",
"null"
]
},
"no": {
"type": [
"integer",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"group": {
"type": [
"string",
"null"
]
},
"engine": {
"type": [
"string",
"null"
]
},
"engine_version": {
"type": [
"string",
"null"
]
},
"updated_at": {
"type": [
"integer",
"null"
]
}
}
},
{
"type": "null"
}
]
}
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}POST /api/v1/maintenance/orphans/import
Unbekannte Profilordner über profile.json wieder als Profile aufnehmen (Nr. und Kurz-ID bleiben, wenn frei; Geheimnisse müssen neu gesetzt werden)
Authentication: bearer token
Required route scopes: profiles:write
All listed scopes are required; admin satisfies scope checks. Request content, vault state and resource permissions can impose additional requirements.
No path or query parameters declared.
Request body · required
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"folder_keys"
],
"properties": {
"folder_keys": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[0-9A-Z]{12}$"
},
"minItems": 1,
"maxItems": 500
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"folder_key",
"ok",
"id",
"no",
"warnings",
"error"
],
"properties": {
"folder_key": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"id": {
"type": [
"null",
"string"
]
},
"no": {
"type": [
"null",
"integer"
]
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"error": {
"type": [
"null",
"string"
]
}
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Complete operation definition
{
"summary": "Unbekannte Profilordner über profile.json wieder als Profile aufnehmen (Nr. und Kurz-ID bleiben, wenn frei; Geheimnisse müssen neu gesetzt werden)",
"tags": [
"Wartung"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"folder_keys"
],
"properties": {
"folder_keys": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[0-9A-Z]{12}$"
},
"minItems": 1,
"maxItems": 500
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"profiles:write"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"folder_key",
"ok",
"id",
"no",
"warnings",
"error"
],
"properties": {
"folder_key": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"id": {
"type": [
"null",
"string"
]
},
"no": {
"type": [
"null",
"integer"
]
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"error": {
"type": [
"null",
"string"
]
}
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}POST /api/v1/maintenance/orphans/delete
Unbekannte Profilordner endgültig löschen (confirm_count muss der Anzahl entsprechen)
Authentication: bearer token
Required route scopes: trash:manage
All listed scopes are required; admin satisfies scope checks. Request content, vault state and resource permissions can impose additional requirements.
No path or query parameters declared.
Request body · required
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"folder_keys",
"confirm_count"
],
"properties": {
"folder_keys": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[0-9A-Z]{12}$"
},
"minItems": 1,
"maxItems": 500
},
"confirm_count": {
"type": "integer",
"minimum": 1
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"folder_key",
"ok",
"id",
"no",
"warnings",
"error"
],
"properties": {
"folder_key": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"id": {
"type": [
"null",
"string"
]
},
"no": {
"type": [
"null",
"integer"
]
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"error": {
"type": [
"null",
"string"
]
}
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Complete operation definition
{
"summary": "Unbekannte Profilordner endgültig löschen (confirm_count muss der Anzahl entsprechen)",
"tags": [
"Wartung"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"folder_keys",
"confirm_count"
],
"properties": {
"folder_keys": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[0-9A-Z]{12}$"
},
"minItems": 1,
"maxItems": 500
},
"confirm_count": {
"type": "integer",
"minimum": 1
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"trash:manage"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"folder_key",
"ok",
"id",
"no",
"warnings",
"error"
],
"properties": {
"folder_key": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"id": {
"type": [
"null",
"string"
]
},
"no": {
"type": [
"null",
"integer"
]
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"error": {
"type": [
"null",
"string"
]
}
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}POST /api/v1/storage/move/check
Zielordner für das Verschieben der Datenwurzel prüfen (lokal, leer, beschreibbar, genug Platz); das Verschieben selbst startet die Manager-App bei beendetem Core
Authentication: bearer token
Required route scopes: admin
All listed scopes are required; admin satisfies scope checks. Request content, vault state and resource permissions can impose additional requirements.
No path or query parameters declared.
Request body · required
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"target"
],
"properties": {
"target": {
"type": "string",
"minLength": 3,
"maxLength": 1024
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"size_bytes",
"required_bytes",
"free_bytes",
"running_profiles"
],
"properties": {
"size_bytes": {
"type": "integer"
},
"required_bytes": {
"type": "integer"
},
"free_bytes": {
"type": "integer"
},
"running_profiles": {
"type": "integer"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Complete operation definition
{
"summary": "Zielordner für das Verschieben der Datenwurzel prüfen (lokal, leer, beschreibbar, genug Platz); das Verschieben selbst startet die Manager-App bei beendetem Core",
"tags": [
"Wartung"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"target"
],
"properties": {
"target": {
"type": "string",
"minLength": 3,
"maxLength": 1024
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"admin"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"size_bytes",
"required_bytes",
"free_bytes",
"running_profiles"
],
"properties": {
"size_bytes": {
"type": "integer"
},
"required_bytes": {
"type": "integer"
},
"free_bytes": {
"type": "integer"
},
"running_profiles": {
"type": "integer"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}GET /api/v1/storage/previous-root
Alte Datenwurzel nach dem Verschieben (bleibt bis zur Bestätigung erhalten)
Authentication: bearer token
Required route scopes: admin
All listed scopes are required; admin satisfies scope checks. Request content, vault state and resource permissions can impose additional requirements.
No path or query parameters declared.
No request body declared.
Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"previous"
],
"properties": {
"previous": {
"anyOf": [
{
"type": "object",
"required": [
"path",
"exists",
"size_bytes"
],
"properties": {
"path": {
"type": "string"
},
"exists": {
"type": "boolean"
},
"size_bytes": {
"type": "integer"
}
}
},
{
"type": "null"
}
]
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Complete operation definition
{
"summary": "Alte Datenwurzel nach dem Verschieben (bleibt bis zur Bestätigung erhalten)",
"tags": [
"Wartung"
],
"x-required-scopes": [
"admin"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"previous"
],
"properties": {
"previous": {
"anyOf": [
{
"type": "object",
"required": [
"path",
"exists",
"size_bytes"
],
"properties": {
"path": {
"type": "string"
},
"exists": {
"type": "boolean"
},
"size_bytes": {
"type": "integer"
}
}
},
{
"type": "null"
}
]
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}POST /api/v1/storage/previous-root/delete
Alte Datenwurzel löschen (path muss der gemeldeten alten Datenwurzel entsprechen)
Authentication: bearer token
Required route scopes: admin
All listed scopes are required; admin satisfies scope checks. Request content, vault state and resource permissions can impose additional requirements.
No path or query parameters declared.
Request body · required
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string",
"minLength": 3,
"maxLength": 1024
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"removed"
],
"properties": {
"removed": {
"type": "boolean"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Complete operation definition
{
"summary": "Alte Datenwurzel löschen (path muss der gemeldeten alten Datenwurzel entsprechen)",
"tags": [
"Wartung"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string",
"minLength": 3,
"maxLength": 1024
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"admin"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"removed"
],
"properties": {
"removed": {
"type": "boolean"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}