This commit is contained in:
Mateusz Gruszczyński committed 2026-11-09 11:22:09 +01:00
1 parent 0cbe0566f5
commit 992a1795af
34 files changed
+1409 -604

No files matched your search

+60 -1
View File
@@ -2,7 +2,7 @@
"openapi": "3.0.3",
"info": {
"title": "RustProxy Administration API",
"version": "0.36.8",
"version": "0.36.9",
"description": "Administration API for the active panel origin. Sign in through the panel; the same-origin HttpOnly cookie authenticates all private operations. Mutations also require the exact Origin, X-RustProxy-Request: 1 and a session-bound X-CSRF-Token. Loopback HTTP is the default; Settings can enable HTTPS before using a non-loopback administration bind. This document contains no live configuration or credentials. Object schemas marked extensible are summaries: full configuration validation is authoritative in Rust. The API also permits explicitly scoped GeneralApiBearer tokens on a narrow route allowlist, with RO/RW and source CIDR checks; API-token management and Prometheus-token management are browser-session-only."
},
"servers": [
@@ -1560,6 +1560,41 @@
"properties": {},
"additionalProperties": true
},
"memory_allocator": {
"type": "object",
"nullable": true,
"description": "glibc heap statistics (mallinfo2), sampled at most every 2 s; null with other allocators. free_bytes is an upper bound of resident allocator-held free memory.",
"properties": {
"allocator": {
"type": "string"
},
"heap_bytes": {
"type": "integer",
"format": "int64"
},
"in_use_bytes": {
"type": "integer",
"format": "int64"
},
"free_bytes": {
"type": "integer",
"format": "int64"
},
"releasable_bytes": {
"type": "integer",
"format": "int64"
},
"mmap_bytes": {
"type": "integer",
"format": "int64"
},
"mmap_blocks": {
"type": "integer",
"format": "int64"
}
},
"additionalProperties": false
},
"system": {
"type": "object",
"properties": {},
@@ -3954,6 +3989,7 @@
"cache_diagnostics",
"process_diagnostics",
"process_simple",
"memory_breakdown",
"network_diagnostics",
"backend_table",
"backend_tiny",
@@ -4063,6 +4099,17 @@
},
"description": "Nullable account-scoped per-card widths (12-column grid). Null preserves the legacy grouped visual arrangement; an object, including an empty one, enables freely ordered cards. Key must be a registered Overview widget ID. Panels require width >= 4, charts >= 3 and backend table >= 6."
},
"dashboard_widget_heights": {
"type": "object",
"nullable": true,
"maxProperties": 96,
"additionalProperties": {
"type": "integer",
"minimum": 1,
"maximum": 32
},
"description": "Optional per-card heights in Overview row units (1-32; a compact stat card spans 2 rows). Cards without an entry size to their content; a height smaller than the content needs is raised automatically. Keys must be registered Overview widget IDs."
},
"dashboard_hidden_widgets": {
"type": "array",
"maxItems": 78,
@@ -4135,6 +4182,7 @@
"cache_diagnostics",
"process_diagnostics",
"process_simple",
"memory_breakdown",
"network_diagnostics",
"backend_table",
"backend_tiny",
@@ -7180,6 +7228,17 @@
},
"description": "Width overrides in a 12-column grid; null selects legacy groups"
},
"dashboard_widget_heights": {
"type": "object",
"nullable": true,
"maxProperties": 96,
"additionalProperties": {
"type": "integer",
"minimum": 1,
"maximum": 32
},
"description": "Optional per-card heights in Overview row units (1-32; a compact stat card spans 2 rows). Cards without an entry size to their content; a height smaller than the content needs is raised automatically. Keys must be registered Overview widget IDs."
},
"dashboard_density": {
"type": "string",
"enum": [