Files
ITWorx-Pulse-Public/specs/dashboard.schema.json
T
ITWorx Pulse release export bd774932d5
Public source validation / validate (push) Failing after 3m8s
Publish ITWorx Pulse source
2026-09-03 02:09:19 +02:00

126 lines
2.5 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://itworx.local/pulse/specs/dashboard.schema.json",
"title": "Pulse dashboard document",
"type": "object",
"additionalProperties": false,
"required": [
"schemaVersion",
"id",
"slug",
"name",
"scope",
"variables",
"widgets",
"settings"
],
"properties": {
"schemaVersion": {
"type": "integer",
"minimum": 1
},
"id": {
"type": "string",
"format": "uuid"
},
"slug": {
"type": "string",
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
"maxLength": 80
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"description": {
"type": "string",
"maxLength": 1000
},
"scope": {
"type": "string",
"enum": [
"personal",
"shared",
"system"
]
},
"variables": {
"type": "array",
"maxItems": 30,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"name",
"type",
"label",
"default"
],
"properties": {
"name": {
"type": "string",
"pattern": "^[a-zA-Z][a-zA-Z0-9_]*$"
},
"type": {
"type": "string",
"enum": [
"server",
"entity",
"container",
"application",
"disk",
"pool",
"service",
"time-range",
"enum"
]
},
"label": {
"type": "string",
"maxLength": 120
},
"default": {},
"options": {
"type": "array",
"maxItems": 1000
}
}
}
},
"widgets": {
"type": "array",
"maxItems": 200,
"items": {
"$ref": "widget-instance.schema.json"
}
},
"settings": {
"type": "object",
"additionalProperties": false,
"properties": {
"defaultTimeRange": {
"type": "string",
"maxLength": 60
},
"live": {
"type": "boolean"
},
"refreshSeconds": {
"type": "integer",
"minimum": 1,
"maximum": 300
},
"rotationSeconds": {
"type": [
"integer",
"null"
],
"minimum": 10,
"maximum": 3600
}
}
}
}
}