Trash · API
Generated from the OpenAPI snapshot. Source summaries remain unchanged; JSON schemas below are the exact exported definitions.
DELETE /api/v1/profiles/{id}
Profil in den Papierkorb legen; permanent=true löscht sofort endgültig (zusätzlich trash:manage)
Authentication: bearer token
Required route scopes: profiles:delete
All listed scopes are required; admin satisfies scope checks. Request content, vault state and resource permissions can impose additional requirements.
| Name | Location | Required | Description |
|---|---|---|---|
permanent | query | No | |
id | path | Yes |
Full parameter schemas
[
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "permanent",
"required": false
},
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
]No request body declared.
Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"id",
"state"
],
"properties": {
"id": {
"type": "string"
},
"state": {
"type": "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": "Profil in den Papierkorb legen; permanent=true löscht sofort endgültig (zusätzlich trash:manage)",
"tags": [
"Papierkorb"
],
"parameters": [
{
"schema": {
"type": "boolean"
},
"in": "query",
"name": "permanent",
"required": false
},
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
],
"x-required-scopes": [
"profiles:delete"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"id",
"state"
],
"properties": {
"id": {
"type": "string"
},
"state": {
"type": "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/profiles/batch/delete
Mehrere Profile in den Papierkorb legen; Ergebnis je Profil
Authentication: bearer token
Required route scopes: profiles:delete
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": [
"ids"
],
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"minItems": 1,
"maxItems": 1000
},
"permanent": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results",
"succeeded",
"failed"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"id",
"ok"
],
"properties": {
"index": {
"type": "integer"
},
"id": {
"type": [
"null",
"string"
]
},
"ok": {
"type": "boolean"
},
"no": {
"type": "integer"
},
"error": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {
"type": "object",
"additionalProperties": {}
}
}
}
}
}
},
"succeeded": {
"type": "integer"
},
"failed": {
"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": "Mehrere Profile in den Papierkorb legen; Ergebnis je Profil",
"tags": [
"Papierkorb"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"minItems": 1,
"maxItems": 1000
},
"permanent": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"profiles:delete"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results",
"succeeded",
"failed"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"id",
"ok"
],
"properties": {
"index": {
"type": "integer"
},
"id": {
"type": [
"null",
"string"
]
},
"ok": {
"type": "boolean"
},
"no": {
"type": "integer"
},
"error": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {
"type": "object",
"additionalProperties": {}
}
}
}
}
}
},
"succeeded": {
"type": "integer"
},
"failed": {
"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/trash
Profile im Papierkorb mit Löschzeitpunkt, Ablauf und Restzeit
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.
| Name | Location | Required | Description |
|---|---|---|---|
limit | query | No | |
cursor | query | No | |
search | query | No | |
delete_source | query | No |
Full parameter schemas
[
{
"schema": {
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"in": "query",
"name": "limit",
"required": false
},
{
"schema": {
"type": "string",
"maxLength": 256
},
"in": "query",
"name": "cursor",
"required": false
},
{
"schema": {
"type": "string",
"maxLength": 200
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "string",
"maxLength": 20
},
"in": "query",
"name": "delete_source",
"required": false
}
]No request body declared.
Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"items",
"total",
"total_size_bytes",
"retention_days",
"next_cursor"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"no",
"name",
"folder_key",
"engine",
"origin_group",
"tags",
"deleted_at",
"deleted_by",
"delete_source",
"purge_after",
"purge_hold",
"size_bytes",
"state",
"remaining_ms",
"proxy_in_trash",
"purge_error"
],
"properties": {
"id": {
"type": "string"
},
"no": {
"type": "integer"
},
"name": {
"type": "string"
},
"folder_key": {
"type": "string"
},
"engine": {
"type": "string"
},
"origin_group": {
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"id": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
}
}
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"deleted_at": {
"type": "integer"
},
"deleted_by": {
"type": [
"null",
"string"
]
},
"delete_source": {
"type": [
"null",
"string"
]
},
"purge_after": {
"type": [
"null",
"integer"
]
},
"purge_hold": {
"type": "boolean"
},
"size_bytes": {
"type": [
"null",
"integer"
]
},
"state": {
"type": "string"
},
"remaining_ms": {
"type": [
"null",
"integer"
]
},
"proxy_in_trash": {
"type": "boolean"
},
"purge_error": {
"type": [
"null",
"string"
]
}
}
}
},
"total": {
"type": "integer"
},
"total_size_bytes": {
"type": "integer"
},
"retention_days": {
"type": "integer"
},
"next_cursor": {
"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": "Profile im Papierkorb mit Löschzeitpunkt, Ablauf und Restzeit",
"tags": [
"Papierkorb"
],
"parameters": [
{
"schema": {
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"in": "query",
"name": "limit",
"required": false
},
{
"schema": {
"type": "string",
"maxLength": 256
},
"in": "query",
"name": "cursor",
"required": false
},
{
"schema": {
"type": "string",
"maxLength": 200
},
"in": "query",
"name": "search",
"required": false
},
{
"schema": {
"type": "string",
"maxLength": 20
},
"in": "query",
"name": "delete_source",
"required": false
}
],
"x-required-scopes": [
"profiles:read"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"items",
"total",
"total_size_bytes",
"retention_days",
"next_cursor"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"no",
"name",
"folder_key",
"engine",
"origin_group",
"tags",
"deleted_at",
"deleted_by",
"delete_source",
"purge_after",
"purge_hold",
"size_bytes",
"state",
"remaining_ms",
"proxy_in_trash",
"purge_error"
],
"properties": {
"id": {
"type": "string"
},
"no": {
"type": "integer"
},
"name": {
"type": "string"
},
"folder_key": {
"type": "string"
},
"engine": {
"type": "string"
},
"origin_group": {
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"id": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
}
}
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"deleted_at": {
"type": "integer"
},
"deleted_by": {
"type": [
"null",
"string"
]
},
"delete_source": {
"type": [
"null",
"string"
]
},
"purge_after": {
"type": [
"null",
"integer"
]
},
"purge_hold": {
"type": "boolean"
},
"size_bytes": {
"type": [
"null",
"integer"
]
},
"state": {
"type": "string"
},
"remaining_ms": {
"type": [
"null",
"integer"
]
},
"proxy_in_trash": {
"type": "boolean"
},
"purge_error": {
"type": [
"null",
"string"
]
}
}
}
},
"total": {
"type": "integer"
},
"total_size_bytes": {
"type": "integer"
},
"retention_days": {
"type": "integer"
},
"next_cursor": {
"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/trash/restore
Profile wiederherstellen (Ursprungsgruppe, Namenskonflikt mit Zusatz)
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": [
"profile_ids"
],
"properties": {
"profile_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"minItems": 1,
"maxItems": 1000
},
"restore_proxies": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results",
"succeeded",
"failed"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"id",
"ok"
],
"properties": {
"index": {
"type": "integer"
},
"id": {
"type": [
"null",
"string"
]
},
"ok": {
"type": "boolean"
},
"no": {
"type": "integer"
},
"error": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {
"type": "object",
"additionalProperties": {}
}
}
}
}
}
},
"succeeded": {
"type": "integer"
},
"failed": {
"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": "Profile wiederherstellen (Ursprungsgruppe, Namenskonflikt mit Zusatz)",
"tags": [
"Papierkorb"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"profile_ids"
],
"properties": {
"profile_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"minItems": 1,
"maxItems": 1000
},
"restore_proxies": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"trash:manage"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results",
"succeeded",
"failed"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"id",
"ok"
],
"properties": {
"index": {
"type": "integer"
},
"id": {
"type": [
"null",
"string"
]
},
"ok": {
"type": "boolean"
},
"no": {
"type": "integer"
},
"error": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {
"type": "object",
"additionalProperties": {}
}
}
}
}
}
},
"succeeded": {
"type": "integer"
},
"failed": {
"type": "integer"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}POST /api/v1/trash/backup-coverage
Profilinhalt vorhandener Datenbanksicherungen und entschlüsselbarer Vollbackups im Zielordner prüfen; unprüfbare Dateien separat zählen
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.
Request body · required
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"profile_ids"
],
"properties": {
"profile_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"minItems": 1,
"maxItems": 1000
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"db_backups",
"full_backups",
"unchecked",
"profiles",
"oldest_at"
],
"properties": {
"db_backups": {
"type": "integer"
},
"full_backups": {
"type": "integer"
},
"unchecked": {
"type": "integer"
},
"profiles": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"db_backups",
"full_backups"
],
"properties": {
"id": {
"type": "string"
},
"db_backups": {
"type": "integer"
},
"full_backups": {
"type": "integer"
}
}
}
},
"oldest_at": {
"type": [
"null",
"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": "Profilinhalt vorhandener Datenbanksicherungen und entschlüsselbarer Vollbackups im Zielordner prüfen; unprüfbare Dateien separat zählen",
"tags": [
"Papierkorb"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"profile_ids"
],
"properties": {
"profile_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"minItems": 1,
"maxItems": 1000
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"profiles:read"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"db_backups",
"full_backups",
"unchecked",
"profiles",
"oldest_at"
],
"properties": {
"db_backups": {
"type": "integer"
},
"full_backups": {
"type": "integer"
},
"unchecked": {
"type": "integer"
},
"profiles": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"db_backups",
"full_backups"
],
"properties": {
"id": {
"type": "string"
},
"db_backups": {
"type": "integer"
},
"full_backups": {
"type": "integer"
}
}
}
},
"oldest_at": {
"type": [
"null",
"integer"
]
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}POST /api/v1/trash/purge
Ausgewählte Profile endgültig löschen
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": [
"profile_ids"
],
"properties": {
"profile_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"minItems": 1,
"maxItems": 1000
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results",
"succeeded",
"failed"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"id",
"ok"
],
"properties": {
"index": {
"type": "integer"
},
"id": {
"type": [
"null",
"string"
]
},
"ok": {
"type": "boolean"
},
"no": {
"type": "integer"
},
"error": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {
"type": "object",
"additionalProperties": {}
}
}
}
}
}
},
"succeeded": {
"type": "integer"
},
"failed": {
"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": "Ausgewählte Profile endgültig löschen",
"tags": [
"Papierkorb"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"profile_ids"
],
"properties": {
"profile_ids": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"minItems": 1,
"maxItems": 1000
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"trash:manage"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results",
"succeeded",
"failed"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"id",
"ok"
],
"properties": {
"index": {
"type": "integer"
},
"id": {
"type": [
"null",
"string"
]
},
"ok": {
"type": "boolean"
},
"no": {
"type": "integer"
},
"error": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {
"type": "object",
"additionalProperties": {}
}
}
}
}
}
},
"succeeded": {
"type": "integer"
},
"failed": {
"type": "integer"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}DELETE /api/v1/trash/{id}
Einen Eintrag endgültig löschen
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.
| Name | Location | Required | Description |
|---|---|---|---|
id | path | Yes |
Full parameter schemas
[
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
]No request body declared.
Documented responses
{
"204": {
"description": "No content."
},
"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": "Einen Eintrag endgültig löschen",
"tags": [
"Papierkorb"
],
"parameters": [
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
],
"x-required-scopes": [
"trash:manage"
],
"responses": {
"204": {
"description": "No content."
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}PATCH /api/v1/trash/{id}
Endlöschung aussetzen oder fortsetzen
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.
| Name | Location | Required | Description |
|---|---|---|---|
id | path | Yes |
Full parameter schemas
[
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
]Request body · required
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"purge_hold"
],
"properties": {
"purge_hold": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"id",
"no",
"name",
"folder_key",
"engine",
"origin_group",
"tags",
"deleted_at",
"deleted_by",
"delete_source",
"purge_after",
"purge_hold",
"size_bytes",
"state",
"remaining_ms",
"proxy_in_trash",
"purge_error"
],
"properties": {
"id": {
"type": "string"
},
"no": {
"type": "integer"
},
"name": {
"type": "string"
},
"folder_key": {
"type": "string"
},
"engine": {
"type": "string"
},
"origin_group": {
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"id": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
}
}
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"deleted_at": {
"type": "integer"
},
"deleted_by": {
"type": [
"null",
"string"
]
},
"delete_source": {
"type": [
"null",
"string"
]
},
"purge_after": {
"type": [
"null",
"integer"
]
},
"purge_hold": {
"type": "boolean"
},
"size_bytes": {
"type": [
"null",
"integer"
]
},
"state": {
"type": "string"
},
"remaining_ms": {
"type": [
"null",
"integer"
]
},
"proxy_in_trash": {
"type": "boolean"
},
"purge_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": "Endlöschung aussetzen oder fortsetzen",
"tags": [
"Papierkorb"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"purge_hold"
],
"properties": {
"purge_hold": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
}
},
"parameters": [
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
],
"x-required-scopes": [
"trash:manage"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"id",
"no",
"name",
"folder_key",
"engine",
"origin_group",
"tags",
"deleted_at",
"deleted_by",
"delete_source",
"purge_after",
"purge_hold",
"size_bytes",
"state",
"remaining_ms",
"proxy_in_trash",
"purge_error"
],
"properties": {
"id": {
"type": "string"
},
"no": {
"type": "integer"
},
"name": {
"type": "string"
},
"folder_key": {
"type": "string"
},
"engine": {
"type": "string"
},
"origin_group": {
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"id": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
}
}
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"deleted_at": {
"type": "integer"
},
"deleted_by": {
"type": [
"null",
"string"
]
},
"delete_source": {
"type": [
"null",
"string"
]
},
"purge_after": {
"type": [
"null",
"integer"
]
},
"purge_hold": {
"type": "boolean"
},
"size_bytes": {
"type": [
"null",
"integer"
]
},
"state": {
"type": "string"
},
"remaining_ms": {
"type": [
"null",
"integer"
]
},
"proxy_in_trash": {
"type": "boolean"
},
"purge_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/trash/empty
Papierkorb leeren; confirm_count muss der tatsächlichen 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": [
"confirm_count"
],
"properties": {
"confirm_count": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results",
"succeeded",
"failed"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"id",
"ok"
],
"properties": {
"index": {
"type": "integer"
},
"id": {
"type": [
"null",
"string"
]
},
"ok": {
"type": "boolean"
},
"no": {
"type": "integer"
},
"error": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {
"type": "object",
"additionalProperties": {}
}
}
}
}
}
},
"succeeded": {
"type": "integer"
},
"failed": {
"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": "Papierkorb leeren; confirm_count muss der tatsächlichen Anzahl entsprechen",
"tags": [
"Papierkorb"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"confirm_count"
],
"properties": {
"confirm_count": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"trash:manage"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"results",
"succeeded",
"failed"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"id",
"ok"
],
"properties": {
"index": {
"type": "integer"
},
"id": {
"type": [
"null",
"string"
]
},
"ok": {
"type": "boolean"
},
"no": {
"type": "integer"
},
"error": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {
"type": "object",
"additionalProperties": {}
}
}
}
}
}
},
"succeeded": {
"type": "integer"
},
"failed": {
"type": "integer"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}POST /api/v1/trash/resume-purge
Nach Prüfung der Systemzeit die angehaltene Endlöschung fortsetzen
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.
No request body declared.
Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"retention_days",
"purge_interval_hours",
"purge_paused",
"purge_paused_due",
"next_purge_run_at"
],
"properties": {
"retention_days": {
"type": "integer"
},
"purge_interval_hours": {
"type": "integer"
},
"purge_paused": {
"type": "boolean"
},
"purge_paused_due": {
"type": "integer"
},
"next_purge_run_at": {
"type": [
"null",
"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": "Nach Prüfung der Systemzeit die angehaltene Endlöschung fortsetzen",
"tags": [
"Papierkorb"
],
"x-required-scopes": [
"trash:manage"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"retention_days",
"purge_interval_hours",
"purge_paused",
"purge_paused_due",
"next_purge_run_at"
],
"properties": {
"retention_days": {
"type": "integer"
},
"purge_interval_hours": {
"type": "integer"
},
"purge_paused": {
"type": "boolean"
},
"purge_paused_due": {
"type": "integer"
},
"next_purge_run_at": {
"type": [
"null",
"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/settings/trash
Einstellungen des Papierkorbs
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": [
"retention_days",
"purge_interval_hours",
"purge_paused",
"purge_paused_due",
"next_purge_run_at"
],
"properties": {
"retention_days": {
"type": "integer"
},
"purge_interval_hours": {
"type": "integer"
},
"purge_paused": {
"type": "boolean"
},
"purge_paused_due": {
"type": "integer"
},
"next_purge_run_at": {
"type": [
"null",
"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": "Einstellungen des Papierkorbs",
"tags": [
"Papierkorb"
],
"x-required-scopes": [
"profiles:read"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"retention_days",
"purge_interval_hours",
"purge_paused",
"purge_paused_due",
"next_purge_run_at"
],
"properties": {
"retention_days": {
"type": "integer"
},
"purge_interval_hours": {
"type": "integer"
},
"purge_paused": {
"type": "boolean"
},
"purge_paused_due": {
"type": "integer"
},
"next_purge_run_at": {
"type": [
"null",
"integer"
]
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}PUT /api/v1/settings/trash
Aufbewahrungsfrist ändern (0–365 Tage); wirkt rückwirkend auf alle Einträge
Authentication: bearer token
Required route scopes: settings: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": [
"retention_days"
],
"properties": {
"retention_days": {
"type": "integer",
"minimum": 0,
"maximum": 365
},
"confirm_shorten": {
"type": "boolean"
},
"confirm_immediate": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
}
}Documented responses
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"retention_days",
"affected",
"purge_not_before"
],
"properties": {
"retention_days": {
"type": "integer"
},
"affected": {
"type": "integer"
},
"purge_not_before": {
"type": [
"null",
"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": "Aufbewahrungsfrist ändern (0–365 Tage); wirkt rückwirkend auf alle Einträge",
"tags": [
"Papierkorb"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"retention_days"
],
"properties": {
"retention_days": {
"type": "integer",
"minimum": 0,
"maximum": 365
},
"confirm_shorten": {
"type": "boolean"
},
"confirm_immediate": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"settings:write"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"retention_days",
"affected",
"purge_not_before"
],
"properties": {
"retention_days": {
"type": "integer"
},
"affected": {
"type": "integer"
},
"purge_not_before": {
"type": [
"null",
"integer"
]
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}