344 lines
6.3 KiB
JSON
344 lines
6.3 KiB
JSON
|
|
{
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"scheme": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "https"
|
||
|
|
},
|
||
|
|
"domain": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"database": {
|
||
|
|
"anyOf": [
|
||
|
|
{
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"kind": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"enum": ["sqlite"],
|
||
|
|
"default": "sqlite"
|
||
|
|
},
|
||
|
|
"data": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"path": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "/var/synapse/data.sqlite"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"path"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"kind",
|
||
|
|
"data"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"kind": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"enum": ["postgresql"],
|
||
|
|
"default": "postgresql"
|
||
|
|
},
|
||
|
|
"data": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"host": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "localhost"
|
||
|
|
},
|
||
|
|
"port": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "integer",
|
||
|
|
"default": 5432
|
||
|
|
},
|
||
|
|
"username": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "synapse_user"
|
||
|
|
},
|
||
|
|
"password": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"schema": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "synapse"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"host",
|
||
|
|
"port",
|
||
|
|
"username",
|
||
|
|
"password",
|
||
|
|
"schema"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"kind",
|
||
|
|
"data"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"element_url": {
|
||
|
|
"nullable": true,
|
||
|
|
"type": "string",
|
||
|
|
"default": null
|
||
|
|
},
|
||
|
|
"title": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "Example | Matrix"
|
||
|
|
},
|
||
|
|
"federation": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"enable": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "boolean",
|
||
|
|
"default": false
|
||
|
|
},
|
||
|
|
"whitelist": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "array",
|
||
|
|
"items": {
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"default": []
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"enable",
|
||
|
|
"whitelist"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"password_strict_policy": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "boolean",
|
||
|
|
"default": true
|
||
|
|
},
|
||
|
|
"registration_shared_secret": {
|
||
|
|
"nullable": true,
|
||
|
|
"type": "string",
|
||
|
|
"default": null
|
||
|
|
},
|
||
|
|
"authentication": {
|
||
|
|
"anyOf": [
|
||
|
|
{
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"kind": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"enum": ["internal"],
|
||
|
|
"default": "internal"
|
||
|
|
},
|
||
|
|
"data": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
]
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"kind",
|
||
|
|
"data"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"kind": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"enum": ["authelia"],
|
||
|
|
"default": "authelia"
|
||
|
|
},
|
||
|
|
"data": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"provider_id": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "authelia"
|
||
|
|
},
|
||
|
|
"provider_name": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "Authelia"
|
||
|
|
},
|
||
|
|
"client_id": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "synapse"
|
||
|
|
},
|
||
|
|
"client_secret": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"url_base": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"provider_id",
|
||
|
|
"provider_name",
|
||
|
|
"client_id",
|
||
|
|
"client_secret",
|
||
|
|
"url_base"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"kind",
|
||
|
|
"data"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"smtp": {
|
||
|
|
"nullable": true,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"host": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"port": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "integer",
|
||
|
|
"default": 587
|
||
|
|
},
|
||
|
|
"username": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "synapse"
|
||
|
|
},
|
||
|
|
"password": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"host",
|
||
|
|
"port",
|
||
|
|
"username",
|
||
|
|
"password"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"notifications": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"source_address": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "synapse@example.org"
|
||
|
|
},
|
||
|
|
"via_email": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"enabled_by_default": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "boolean",
|
||
|
|
"default": false
|
||
|
|
},
|
||
|
|
"delay": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "1h"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"enabled_by_default",
|
||
|
|
"delay"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"source_address",
|
||
|
|
"via_email"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"admin_user": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"define": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "boolean",
|
||
|
|
"default": true
|
||
|
|
},
|
||
|
|
"name": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string",
|
||
|
|
"default": "admin"
|
||
|
|
},
|
||
|
|
"password": {
|
||
|
|
"nullable": false,
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"define",
|
||
|
|
"name",
|
||
|
|
"password"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": [
|
||
|
|
"scheme",
|
||
|
|
"domain",
|
||
|
|
"database",
|
||
|
|
"element_url",
|
||
|
|
"title",
|
||
|
|
"federation",
|
||
|
|
"password_strict_policy",
|
||
|
|
"registration_shared_secret",
|
||
|
|
"authentication",
|
||
|
|
"smtp",
|
||
|
|
"notification",
|
||
|
|
"admin_user"
|
||
|
|
]
|
||
|
|
}
|