Snapshots · API
Aus dem OpenAPI-Stand erzeugt. Quellzusammenfassungen bleiben unverändert; die JSON-Schemas unten sind die exakten exportierten Definitionen.
GET /api/v1/profiles/{id}/snapshots
Lokale Snapshots eines Profils (gerätegebunden, ohne Cache)
Authentifizierung: Bearer-Token
Erforderliche Routen-Scopes: profiles:read
Alle aufgeführten Scopes sind erforderlich; admin erfüllt Scope-Prüfungen. Anfrageinhalt, Tresorzustand und Ressourcenrechte können zusätzliche Voraussetzungen setzen.
| Name | Ort | Pflicht | Beschreibung |
|---|---|---|---|
id | path | Ja |
Vollständige Parameterschemas
[
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
]Kein Anfragekörper deklariert.
Dokumentierte Antworten
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"profile_id",
"reason",
"file_name",
"size_bytes",
"engine_build",
"created_at",
"exists"
],
"properties": {
"id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"reason": {
"type": "string"
},
"file_name": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"engine_build": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"exists": {
"type": "boolean"
}
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Vollständige Operationsdefinition
{
"summary": "Lokale Snapshots eines Profils (gerätegebunden, ohne Cache)",
"tags": [
"Snapshots"
],
"parameters": [
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
],
"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": [
"id",
"profile_id",
"reason",
"file_name",
"size_bytes",
"engine_build",
"created_at",
"exists"
],
"properties": {
"id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"reason": {
"type": "string"
},
"file_name": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"engine_build": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"exists": {
"type": "boolean"
}
}
}
}
}
}
}
}
},
"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/{id}/snapshots
Snapshot jetzt anlegen (Profil muss geschlossen sein)
Authentifizierung: Bearer-Token
Erforderliche Routen-Scopes: profiles:write
Alle aufgeführten Scopes sind erforderlich; admin erfüllt Scope-Prüfungen. Anfrageinhalt, Tresorzustand und Ressourcenrechte können zusätzliche Voraussetzungen setzen.
| Name | Ort | Pflicht | Beschreibung |
|---|---|---|---|
id | path | Ja |
Vollständige Parameterschemas
[
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
]Kein Anfragekörper deklariert.
Dokumentierte Antworten
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"id",
"profile_id",
"reason",
"file_name",
"size_bytes",
"engine_build",
"created_at",
"exists"
],
"properties": {
"id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"reason": {
"type": "string"
},
"file_name": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"engine_build": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"exists": {
"type": "boolean"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Vollständige Operationsdefinition
{
"summary": "Snapshot jetzt anlegen (Profil muss geschlossen sein)",
"tags": [
"Snapshots"
],
"parameters": [
{
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"in": "path",
"name": "id",
"required": true
}
],
"x-required-scopes": [
"profiles:write"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"id",
"profile_id",
"reason",
"file_name",
"size_bytes",
"engine_build",
"created_at",
"exists"
],
"properties": {
"id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"reason": {
"type": "string"
},
"file_name": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"engine_build": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"exists": {
"type": "boolean"
}
}
}
}
}
},
"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/{id}/snapshots/{snapshotId}/restore
Snapshot wiederherstellen; vorher wird der aktuelle Stand gesichert, engine_build_last_used wird auf den Build des Snapshots gesetzt
Authentifizierung: Bearer-Token
Erforderliche Routen-Scopes: profiles:write
Alle aufgeführten Scopes sind erforderlich; admin erfüllt Scope-Prüfungen. Anfrageinhalt, Tresorzustand und Ressourcenrechte können zusätzliche Voraussetzungen setzen.
| Name | Ort | Pflicht | Beschreibung |
|---|---|---|---|
id | path | Ja | |
snapshotId | path | Ja |
Vollständige Parameterschemas
[
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "path",
"name": "snapshotId",
"required": true
}
]Kein Anfragekörper deklariert.
Dokumentierte Antworten
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"restored",
"safety"
],
"properties": {
"restored": {
"type": "object",
"required": [
"id",
"profile_id",
"reason",
"file_name",
"size_bytes",
"engine_build",
"created_at",
"exists"
],
"properties": {
"id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"reason": {
"type": "string"
},
"file_name": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"engine_build": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"exists": {
"type": "boolean"
}
}
},
"safety": {
"type": "object",
"required": [
"id",
"profile_id",
"reason",
"file_name",
"size_bytes",
"engine_build",
"created_at",
"exists"
],
"properties": {
"id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"reason": {
"type": "string"
},
"file_name": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"engine_build": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"exists": {
"type": "boolean"
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Vollständige Operationsdefinition
{
"summary": "Snapshot wiederherstellen; vorher wird der aktuelle Stand gesichert, engine_build_last_used wird auf den Build des Snapshots gesetzt",
"tags": [
"Snapshots"
],
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "path",
"name": "snapshotId",
"required": true
}
],
"x-required-scopes": [
"profiles:write"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"restored",
"safety"
],
"properties": {
"restored": {
"type": "object",
"required": [
"id",
"profile_id",
"reason",
"file_name",
"size_bytes",
"engine_build",
"created_at",
"exists"
],
"properties": {
"id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"reason": {
"type": "string"
},
"file_name": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"engine_build": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"exists": {
"type": "boolean"
}
}
},
"safety": {
"type": "object",
"required": [
"id",
"profile_id",
"reason",
"file_name",
"size_bytes",
"engine_build",
"created_at",
"exists"
],
"properties": {
"id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"reason": {
"type": "string"
},
"file_name": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"engine_build": {
"type": "string"
},
"created_at": {
"type": "integer"
},
"exists": {
"type": "boolean"
}
}
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}DELETE /api/v1/profiles/{id}/snapshots/{snapshotId}
Snapshot löschen
Authentifizierung: Bearer-Token
Erforderliche Routen-Scopes: profiles:write
Alle aufgeführten Scopes sind erforderlich; admin erfüllt Scope-Prüfungen. Anfrageinhalt, Tresorzustand und Ressourcenrechte können zusätzliche Voraussetzungen setzen.
| Name | Ort | Pflicht | Beschreibung |
|---|---|---|---|
id | path | Ja | |
snapshotId | path | Ja |
Vollständige Parameterschemas
[
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "path",
"name": "snapshotId",
"required": true
}
]Kein Anfragekörper deklariert.
Dokumentierte Antworten
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"id",
"removed"
],
"properties": {
"id": {
"type": "string"
},
"removed": {
"type": "boolean"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Vollständige Operationsdefinition
{
"summary": "Snapshot löschen",
"tags": [
"Snapshots"
],
"parameters": [
{
"schema": {
"type": "string"
},
"in": "path",
"name": "id",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "path",
"name": "snapshotId",
"required": true
}
],
"x-required-scopes": [
"profiles:write"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"id",
"removed"
],
"properties": {
"id": {
"type": "string"
},
"removed": {
"type": "boolean"
}
}
}
}
}
},
"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/snapshots
Snapshot-Einstellungen
Authentifizierung: Bearer-Token
Erforderliche Routen-Scopes: profiles:read
Alle aufgeführten Scopes sind erforderlich; admin erfüllt Scope-Prüfungen. Anfrageinhalt, Tresorzustand und Ressourcenrechte können zusätzliche Voraussetzungen setzen.
Keine Pfad- oder Query-Parameter deklariert.
Kein Anfragekörper deklariert.
Dokumentierte Antworten
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"on_close",
"per_profile"
],
"properties": {
"on_close": {
"type": "boolean"
},
"per_profile": {
"type": "integer"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Vollständige Operationsdefinition
{
"summary": "Snapshot-Einstellungen",
"tags": [
"Snapshots"
],
"x-required-scopes": [
"profiles:read"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"on_close",
"per_profile"
],
"properties": {
"on_close": {
"type": "boolean"
},
"per_profile": {
"type": "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/snapshots
Snapshot beim Schließen ein-/ausschalten und Anzahl je Profil (1–20) festlegen
Authentifizierung: Bearer-Token
Erforderliche Routen-Scopes: settings:write
Alle aufgeführten Scopes sind erforderlich; admin erfüllt Scope-Prüfungen. Anfrageinhalt, Tresorzustand und Ressourcenrechte können zusätzliche Voraussetzungen setzen.
Keine Pfad- oder Query-Parameter deklariert.
Anfragekörper · erforderlich
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"on_close": {
"type": "boolean"
},
"per_profile": {
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"additionalProperties": false
}
}
}
}Dokumentierte Antworten
{
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"on_close",
"per_profile"
],
"properties": {
"on_close": {
"type": "boolean"
},
"per_profile": {
"type": "integer"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}Vollständige Operationsdefinition
{
"summary": "Snapshot beim Schließen ein-/ausschalten und Anzahl je Profil (1–20) festlegen",
"tags": [
"Snapshots"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"on_close": {
"type": "boolean"
},
"per_profile": {
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"settings:write"
],
"responses": {
"200": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"on_close",
"per_profile"
],
"properties": {
"on_close": {
"type": "boolean"
},
"per_profile": {
"type": "integer"
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}