plugins-core/control/schema.json

47 lines
1.2 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://squeebot.lunasqu.ee/pkg/plugins-core/control.schema.json",
"title": "Control",
"description": "Plugin control configuration",
"type": "object",
"properties": {
"authorizedIPs": {
"type": "array",
"description": "List of authorized IPs",
"items": {
"type": "string"
}
},
"tls": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "Enable TLS"
},
"key": {
"type": "string",
"description": "TLS server private key"
},
"cert": {
"type": "string",
"description": "TLS server certificate"
},
"rejectUnauthorized": {
"type": "boolean",
"description": "Reject unauthorized client certificates"
},
"requestCert": {
"type": "boolean",
"description": "Request client certificates"
}
}
},
"bind": {
"type": ["number", "string", "null"],
"description": "Bind to port or domain socket"
}
},
"required": ["authorizedIPs", "tls"]
}