mirror of
https://github.com/NginxProxyManager/nginx-proxy-manager.git
synced 2025-07-17 15:04:34 +00:00
Add initial support for managing Client Certificate Authority public certificates as certificate objects in the database. The new provider type 'clientca' is defined to implement this.
241 lines
4.9 KiB
JSON
241 lines
4.9 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"$id": "definitions",
|
|
"definitions": {
|
|
"id": {
|
|
"description": "Unique identifier",
|
|
"example": 123456,
|
|
"readOnly": true,
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"setting_id": {
|
|
"description": "Unique identifier for a Setting",
|
|
"example": "default-site",
|
|
"readOnly": true,
|
|
"type": "string",
|
|
"minLength": 2
|
|
},
|
|
"token": {
|
|
"type": "string",
|
|
"minLength": 10
|
|
},
|
|
"expand": {
|
|
"anyOf": [
|
|
{
|
|
"type": "null"
|
|
},
|
|
{
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"sort": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "object",
|
|
"required": [
|
|
"field",
|
|
"dir"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"field": {
|
|
"type": "string"
|
|
},
|
|
"dir": {
|
|
"type": "string",
|
|
"pattern": "^(asc|desc)$"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"query": {
|
|
"anyOf": [
|
|
{
|
|
"type": "null"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 255
|
|
}
|
|
]
|
|
},
|
|
"criteria": {
|
|
"anyOf": [
|
|
{
|
|
"type": "null"
|
|
},
|
|
{
|
|
"type": "object"
|
|
}
|
|
]
|
|
},
|
|
"fields": {
|
|
"anyOf": [
|
|
{
|
|
"type": "null"
|
|
},
|
|
{
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"omit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "null"
|
|
},
|
|
{
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"created_on": {
|
|
"description": "Date and time of creation",
|
|
"format": "date-time",
|
|
"readOnly": true,
|
|
"type": "string"
|
|
},
|
|
"modified_on": {
|
|
"description": "Date and time of last update",
|
|
"format": "date-time",
|
|
"readOnly": true,
|
|
"type": "string"
|
|
},
|
|
"user_id": {
|
|
"description": "User ID",
|
|
"example": 1234,
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"certificate_id": {
|
|
"description": "Certificate ID",
|
|
"example": 1234,
|
|
"anyOf": [
|
|
{
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
{
|
|
"type": "string",
|
|
"pattern": "^new$"
|
|
}
|
|
]
|
|
},
|
|
"access_list_id": {
|
|
"description": "Access List ID",
|
|
"example": 1234,
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 255
|
|
},
|
|
"email": {
|
|
"description": "Email Address",
|
|
"example": "john@example.com",
|
|
"format": "email",
|
|
"type": "string",
|
|
"minLength": 6,
|
|
"maxLength": 100
|
|
},
|
|
"password": {
|
|
"description": "Password",
|
|
"type": "string",
|
|
"minLength": 8,
|
|
"maxLength": 255
|
|
},
|
|
"domain_name": {
|
|
"description": "Domain Name",
|
|
"example": "jc21.com",
|
|
"type": "string",
|
|
"pattern": "^(?:[^.*]+\\.?)+[^.]$"
|
|
},
|
|
"domain_names": {
|
|
"description": "Domain Names separated by a comma",
|
|
"example": "*.jc21.com,blog.jc21.com",
|
|
"type": "array",
|
|
"maxItems": 15,
|
|
"uniqueItems": true,
|
|
"items": {
|
|
"type": "string",
|
|
"pattern": "^(?:\\*\\.)?(?:[^.*]+\\.?)+[^.]$"
|
|
}
|
|
},
|
|
"http_code": {
|
|
"description": "Redirect HTTP Status Code",
|
|
"example": 302,
|
|
"type": "integer",
|
|
"minimum": 300,
|
|
"maximum": 308
|
|
},
|
|
"scheme": {
|
|
"description": "RFC Protocol",
|
|
"example": "HTTPS or $scheme",
|
|
"type": "string",
|
|
"minLength": 4
|
|
},
|
|
"enabled": {
|
|
"description": "Is Enabled",
|
|
"example": true,
|
|
"type": "boolean"
|
|
},
|
|
"ssl_enabled": {
|
|
"description": "Is SSL Enabled",
|
|
"example": true,
|
|
"type": "boolean"
|
|
},
|
|
"ssl_forced": {
|
|
"description": "Is SSL Forced",
|
|
"example": false,
|
|
"type": "boolean"
|
|
},
|
|
"hsts_enabled": {
|
|
"description": "Is HSTS Enabled",
|
|
"example": false,
|
|
"type": "boolean"
|
|
},
|
|
"hsts_subdomains": {
|
|
"description": "Is HSTS applicable to all subdomains",
|
|
"example": false,
|
|
"type": "boolean"
|
|
},
|
|
"ssl_provider": {
|
|
"type": "string",
|
|
"pattern": "^(letsencrypt|other|clientca)$"
|
|
},
|
|
"http2_support": {
|
|
"description": "HTTP2 Protocol Support",
|
|
"example": false,
|
|
"type": "boolean"
|
|
},
|
|
"block_exploits": {
|
|
"description": "Should we block common exploits",
|
|
"example": true,
|
|
"type": "boolean"
|
|
},
|
|
"caching_enabled": {
|
|
"description": "Should we cache assets",
|
|
"example": true,
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|