nginx-proxy-manager/backend/schema/endpoints/proxy-hosts.json

388 lines
9.9 KiB
JSON
Raw Normal View History

2018-07-08 21:22:10 -04:00
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "endpoints/proxy-hosts",
2018-07-17 18:35:49 -04:00
"title": "Proxy Hosts",
2018-07-08 21:22:10 -04:00
"description": "Endpoints relating to Proxy Hosts",
"stability": "stable",
"type": "object",
"definitions": {
"id": {
"$ref": "../definitions.json#/definitions/id"
},
"created_on": {
"$ref": "../definitions.json#/definitions/created_on"
},
"modified_on": {
"$ref": "../definitions.json#/definitions/modified_on"
},
2018-07-17 18:35:49 -04:00
"domain_names": {
"$ref": "../definitions.json#/definitions/domain_names"
2018-07-08 21:22:10 -04:00
},
2018-12-11 18:47:12 -05:00
"forward_scheme": {
"type": "string",
"enum": ["http", "https"]
},
"forward_host": {
2018-07-08 21:22:10 -04:00
"type": "string",
"minLength": 1,
"maxLength": 50
2018-07-17 18:35:49 -04:00
},
"forward_port": {
"type": "integer",
"minimum": 1,
"maximum": 65535
},
2018-08-13 08:51:36 -04:00
"certificate_id": {
"$ref": "../definitions.json#/definitions/certificate_id"
2018-07-17 18:35:49 -04:00
},
"ssl_forced": {
"$ref": "../definitions.json#/definitions/ssl_forced"
},
2019-02-18 03:21:45 -05:00
"hsts_enabled": {
"$ref": "../definitions.json#/definitions/hsts_enabled"
},
"hsts_subdomains": {
"$ref": "../definitions.json#/definitions/hsts_subdomains"
},
"http2_support": {
"$ref": "../definitions.json#/definitions/http2_support"
},
2018-07-24 02:56:39 -04:00
"block_exploits": {
"$ref": "../definitions.json#/definitions/block_exploits"
},
"caching_enabled": {
"$ref": "../definitions.json#/definitions/caching_enabled"
},
"allow_websocket_upgrade": {
"description": "Allow Websocket Upgrade for all paths",
"example": true,
"type": "boolean"
},
2018-07-24 02:56:39 -04:00
"access_list_id": {
"$ref": "../definitions.json#/definitions/access_list_id"
},
"advanced_config": {
"type": "string"
},
2019-01-03 05:27:43 -05:00
"enabled": {
"$ref": "../definitions.json#/definitions/enabled"
},
2018-07-17 18:35:49 -04:00
"meta": {
2018-08-13 08:51:36 -04:00
"type": "object"
},
"locations": {
"type": "array",
"minItems": 0,
"items": {
"type": "object",
"required": [
"forward_scheme",
"forward_host",
"forward_port",
"path"
],
"additionalProperties": false,
"properties": {
"id": {
"type": ["integer", "null"]
},
"path": {
"type": "string",
"minLength": 1
},
"forward_scheme": {
"$ref": "#/definitions/forward_scheme"
},
"forward_host": {
"$ref": "#/definitions/forward_host"
},
"forward_port": {
"$ref": "#/definitions/forward_port"
},
"forward_path": {
"type": "string"
},
"advanced_config": {
"type": "string"
}
}
}
2018-07-17 18:35:49 -04:00
}
},
"properties": {
"id": {
"$ref": "#/definitions/id"
},
"created_on": {
"$ref": "#/definitions/created_on"
2018-07-08 21:22:10 -04:00
},
2018-07-17 18:35:49 -04:00
"modified_on": {
"$ref": "#/definitions/modified_on"
2018-07-08 21:22:10 -04:00
},
2018-07-17 18:35:49 -04:00
"domain_names": {
"$ref": "#/definitions/domain_names"
},
2018-12-11 18:47:12 -05:00
"forward_scheme": {
"$ref": "#/definitions/forward_scheme"
},
"forward_host": {
"$ref": "#/definitions/forward_host"
2018-07-17 18:35:49 -04:00
},
"forward_port": {
"$ref": "#/definitions/forward_port"
},
2018-08-13 08:51:36 -04:00
"certificate_id": {
"$ref": "#/definitions/certificate_id"
2018-07-17 18:35:49 -04:00
},
"ssl_forced": {
"$ref": "#/definitions/ssl_forced"
},
2019-02-18 03:21:45 -05:00
"hsts_enabled": {
"$ref": "#/definitions/hsts_enabled"
},
"hsts_subdomains": {
"$ref": "#/definitions/hsts_subdomains"
},
"http2_support": {
"$ref": "#/definitions/http2_support"
},
2018-07-24 02:56:39 -04:00
"block_exploits": {
"$ref": "#/definitions/block_exploits"
},
"caching_enabled": {
"$ref": "#/definitions/caching_enabled"
},
"allow_websocket_upgrade": {
"$ref": "#/definitions/allow_websocket_upgrade"
},
2018-07-24 02:56:39 -04:00
"access_list_id": {
"$ref": "#/definitions/access_list_id"
},
"advanced_config": {
"$ref": "#/definitions/advanced_config"
},
2019-01-03 05:27:43 -05:00
"enabled": {
"$ref": "#/definitions/enabled"
},
2018-07-17 18:35:49 -04:00
"meta": {
"$ref": "#/definitions/meta"
},
"locations": {
"$ref": "#/definitions/locations"
2018-07-08 21:22:10 -04:00
}
},
"links": [
{
"title": "List",
2018-07-17 18:35:49 -04:00
"description": "Returns a list of Proxy Hosts",
"href": "/nginx/proxy-hosts",
2018-07-08 21:22:10 -04:00
"access": "private",
"method": "GET",
"rel": "self",
"http_header": {
"$ref": "../examples.json#/definitions/auth_header"
},
"targetSchema": {
"type": "array",
"items": {
"$ref": "#/properties"
}
}
},
{
"title": "Create",
2018-07-17 18:35:49 -04:00
"description": "Creates a new Proxy Host",
"href": "/nginx/proxy-hosts",
2018-07-08 21:22:10 -04:00
"access": "private",
"method": "POST",
"rel": "create",
"http_header": {
"$ref": "../examples.json#/definitions/auth_header"
},
"schema": {
"type": "object",
2018-07-25 18:23:32 -04:00
"additionalProperties": false,
2018-07-08 21:22:10 -04:00
"required": [
2018-07-17 18:35:49 -04:00
"domain_names",
2018-12-11 18:47:12 -05:00
"forward_scheme",
"forward_host",
2018-07-17 18:35:49 -04:00
"forward_port"
2018-07-08 21:22:10 -04:00
],
"properties": {
2018-07-17 18:35:49 -04:00
"domain_names": {
"$ref": "#/definitions/domain_names"
2018-07-08 21:22:10 -04:00
},
2018-12-11 18:47:12 -05:00
"forward_scheme": {
"$ref": "#/definitions/forward_scheme"
},
"forward_host": {
"$ref": "#/definitions/forward_host"
2018-07-08 21:22:10 -04:00
},
2018-07-17 18:35:49 -04:00
"forward_port": {
"$ref": "#/definitions/forward_port"
2018-07-08 21:22:10 -04:00
},
2018-08-13 08:51:36 -04:00
"certificate_id": {
"$ref": "#/definitions/certificate_id"
2018-07-08 21:22:10 -04:00
},
2018-07-17 18:35:49 -04:00
"ssl_forced": {
"$ref": "#/definitions/ssl_forced"
2018-07-08 21:22:10 -04:00
},
2019-02-18 03:21:45 -05:00
"hsts_enabled": {
"$ref": "#/definitions/hsts_enabled"
},
"hsts_subdomains": {
"$ref": "#/definitions/hsts_enabled"
},
"http2_support": {
"$ref": "#/definitions/http2_support"
},
2018-07-24 02:56:39 -04:00
"block_exploits": {
"$ref": "#/definitions/block_exploits"
},
"caching_enabled": {
"$ref": "#/definitions/caching_enabled"
},
"allow_websocket_upgrade": {
"$ref": "#/definitions/allow_websocket_upgrade"
},
2018-07-24 02:56:39 -04:00
"access_list_id": {
"$ref": "#/definitions/access_list_id"
},
"advanced_config": {
"$ref": "#/definitions/advanced_config"
},
2019-01-03 05:27:43 -05:00
"enabled": {
"$ref": "#/definitions/enabled"
},
2018-07-17 18:35:49 -04:00
"meta": {
"$ref": "#/definitions/meta"
},
"locations": {
"$ref": "#/definitions/locations"
2018-07-08 21:22:10 -04:00
}
}
},
"targetSchema": {
"properties": {
"$ref": "#/properties"
}
}
},
{
"title": "Update",
2018-07-17 18:35:49 -04:00
"description": "Updates a existing Proxy Host",
"href": "/nginx/proxy-hosts/{definitions.identity.example}",
2018-07-08 21:22:10 -04:00
"access": "private",
"method": "PUT",
"rel": "update",
"http_header": {
"$ref": "../examples.json#/definitions/auth_header"
},
"schema": {
"type": "object",
2018-07-25 18:23:32 -04:00
"additionalProperties": false,
2018-07-08 21:22:10 -04:00
"properties": {
2018-07-17 18:35:49 -04:00
"domain_names": {
"$ref": "#/definitions/domain_names"
},
2018-12-11 18:47:12 -05:00
"forward_scheme": {
"$ref": "#/definitions/forward_scheme"
},
"forward_host": {
"$ref": "#/definitions/forward_host"
2018-07-17 18:35:49 -04:00
},
"forward_port": {
"$ref": "#/definitions/forward_port"
2018-07-08 21:22:10 -04:00
},
2018-08-13 08:51:36 -04:00
"certificate_id": {
"$ref": "#/definitions/certificate_id"
2018-07-08 21:22:10 -04:00
},
2018-07-17 18:35:49 -04:00
"ssl_forced": {
"$ref": "#/definitions/ssl_forced"
2018-07-08 21:22:10 -04:00
},
2019-02-18 03:21:45 -05:00
"hsts_enabled": {
"$ref": "#/definitions/hsts_enabled"
},
"hsts_subdomains": {
"$ref": "#/definitions/hsts_enabled"
},
"http2_support": {
"$ref": "#/definitions/http2_support"
},
2018-07-24 02:56:39 -04:00
"block_exploits": {
"$ref": "#/definitions/block_exploits"
},
"caching_enabled": {
"$ref": "#/definitions/caching_enabled"
},
"allow_websocket_upgrade": {
"$ref": "#/definitions/allow_websocket_upgrade"
},
2018-07-24 02:56:39 -04:00
"access_list_id": {
"$ref": "#/definitions/access_list_id"
},
"advanced_config": {
"$ref": "#/definitions/advanced_config"
},
2019-01-03 05:27:43 -05:00
"enabled": {
"$ref": "#/definitions/enabled"
},
2018-07-17 18:35:49 -04:00
"meta": {
"$ref": "#/definitions/meta"
},
"locations": {
"$ref": "#/definitions/locations"
2018-07-08 21:22:10 -04:00
}
}
},
"targetSchema": {
"properties": {
"$ref": "#/properties"
}
}
},
{
"title": "Delete",
2018-07-17 18:35:49 -04:00
"description": "Deletes a existing Proxy Host",
"href": "/nginx/proxy-hosts/{definitions.identity.example}",
2018-07-08 21:22:10 -04:00
"access": "private",
"method": "DELETE",
"rel": "delete",
"http_header": {
"$ref": "../examples.json#/definitions/auth_header"
},
"targetSchema": {
"type": "boolean"
}
2019-01-03 05:27:43 -05:00
},
{
"title": "Enable",
"description": "Enables a existing Proxy Host",
"href": "/nginx/proxy-hosts/{definitions.identity.example}/enable",
"access": "private",
"method": "POST",
"rel": "update",
"http_header": {
"$ref": "../examples.json#/definitions/auth_header"
},
"targetSchema": {
"type": "boolean"
}
},
{
"title": "Disable",
"description": "Disables a existing Proxy Host",
"href": "/nginx/proxy-hosts/{definitions.identity.example}/disable",
"access": "private",
"method": "POST",
"rel": "update",
"http_header": {
"$ref": "../examples.json#/definitions/auth_header"
},
"targetSchema": {
"type": "boolean"
}
2018-07-08 21:22:10 -04:00
}
2018-07-17 18:35:49 -04:00
]
2018-07-08 21:22:10 -04:00
}