summaryrefslogtreecommitdiffstats
path: root/integrations
diff options
context:
space:
mode:
authorAustin S. Hemmelgarn <austin@netdata.cloud>2023-07-26 12:53:52 -0400
committerGitHub <noreply@github.com>2023-07-26 22:23:52 +0530
commit85d122f8a6c4709943825c1fcf9bffa784bd5620 (patch)
treebe18267e2276ccb507fb10ca9750b7d34c43b4f8 /integrations
parentb12cadca9938ae90b157b8f9f5a3d911c3cd43b0 (diff)
Add schema and examples for notification method metadata. (#15549)
Diffstat (limited to 'integrations')
-rw-r--r--integrations/notifications.yaml39
-rw-r--r--integrations/schemas/notification.json60
2 files changed, 99 insertions, 0 deletions
diff --git a/integrations/notifications.yaml b/integrations/notifications.yaml
new file mode 100644
index 0000000000..11dcc6e5e4
--- /dev/null
+++ b/integrations/notifications.yaml
@@ -0,0 +1,39 @@
+- id: ''
+ meta:
+ name: ''
+ link: ''
+ categories: []
+ icon_filename: ''
+ keywords: []
+ overview:
+ notification_description: ''
+ notification_limitations: ''
+ setup:
+ prerequisites:
+ list:
+ - title: ''
+ description: ''
+ configuration:
+ file:
+ name: ''
+ description: ''
+ options:
+ description: ''
+ folding:
+ title: ''
+ enabled: true
+ list:
+ - name: ''
+ default_value: ''
+ description: ''
+ required: false
+ examples:
+ folding:
+ enabled: true
+ title: ''
+ list:
+ - name: ''
+ folding:
+ enabled: false
+ description: ''
+ config: ''
diff --git a/integrations/schemas/notification.json b/integrations/schemas/notification.json
new file mode 100644
index 0000000000..b837047106
--- /dev/null
+++ b/integrations/schemas/notification.json
@@ -0,0 +1,60 @@
+{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "title": "Netdata notification mechanism metadata.",
+ "oneOf": [
+ {
+ "$ref": "#/$defs/entry"
+ },
+ {
+ "type": "array",
+ "items": {
+ "$ref": "#/$defs/entry"
+ }
+ }
+ ],
+ "$def": {
+ "entry": {
+ "type": "object",
+ "description": "Data for a single notification method.",
+ "properties": {
+ "id": {
+ "$ref": "./shared.json#/$defs/id"
+ },
+ "meta": {
+ "$ref": "./shared.json#/$defs/instance"
+ },
+ "keywords": {
+ "$ref": "./shared.json#/$defs/keywords"
+ },
+ "overview": {
+ "type": "object",
+ "description": "General information about the notification method.",
+ "properties": {
+ "notification_description": {
+ "type": "string",
+ "description": "General description of what the notification method does."
+ },
+ "notification_limitations": {
+ "type": "string",
+ "description": "Explanation of any limitations of the notification method."
+ }
+ },
+ "required": [
+ "notification_description",
+ "notification_limitations"
+ ]
+ },
+ "setup": {
+ "$ref": "./shared.json#/$defs/setup"
+ }
+ },
+ "required": [
+ "id",
+ "meta",
+ "keywords",
+ "overview",
+ "setup"
+ ]
+ }
+ }
+}