|
@@ -1,387 +0,0 @@
|
|
|
-{
|
|
|
- "$schema": "http://json-schema.org/draft-07/schema#",
|
|
|
- "$id": "endpoints/proxy-hosts",
|
|
|
- "title": "Proxy Hosts",
|
|
|
- "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"
|
|
|
- },
|
|
|
- "domain_names": {
|
|
|
- "$ref": "../definitions.json#/definitions/domain_names"
|
|
|
- },
|
|
|
- "forward_scheme": {
|
|
|
- "type": "string",
|
|
|
- "enum": ["http", "https"]
|
|
|
- },
|
|
|
- "forward_host": {
|
|
|
- "type": "string",
|
|
|
- "minLength": 1,
|
|
|
- "maxLength": 255
|
|
|
- },
|
|
|
- "forward_port": {
|
|
|
- "type": "integer",
|
|
|
- "minimum": 1,
|
|
|
- "maximum": 65535
|
|
|
- },
|
|
|
- "certificate_id": {
|
|
|
- "$ref": "../definitions.json#/definitions/certificate_id"
|
|
|
- },
|
|
|
- "ssl_forced": {
|
|
|
- "$ref": "../definitions.json#/definitions/ssl_forced"
|
|
|
- },
|
|
|
- "hsts_enabled": {
|
|
|
- "$ref": "../definitions.json#/definitions/hsts_enabled"
|
|
|
- },
|
|
|
- "hsts_subdomains": {
|
|
|
- "$ref": "../definitions.json#/definitions/hsts_subdomains"
|
|
|
- },
|
|
|
- "http2_support": {
|
|
|
- "$ref": "../definitions.json#/definitions/http2_support"
|
|
|
- },
|
|
|
- "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"
|
|
|
- },
|
|
|
- "access_list_id": {
|
|
|
- "$ref": "../definitions.json#/definitions/access_list_id"
|
|
|
- },
|
|
|
- "advanced_config": {
|
|
|
- "type": "string"
|
|
|
- },
|
|
|
- "enabled": {
|
|
|
- "$ref": "../definitions.json#/definitions/enabled"
|
|
|
- },
|
|
|
- "meta": {
|
|
|
- "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"
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- "properties": {
|
|
|
- "id": {
|
|
|
- "$ref": "#/definitions/id"
|
|
|
- },
|
|
|
- "created_on": {
|
|
|
- "$ref": "#/definitions/created_on"
|
|
|
- },
|
|
|
- "modified_on": {
|
|
|
- "$ref": "#/definitions/modified_on"
|
|
|
- },
|
|
|
- "domain_names": {
|
|
|
- "$ref": "#/definitions/domain_names"
|
|
|
- },
|
|
|
- "forward_scheme": {
|
|
|
- "$ref": "#/definitions/forward_scheme"
|
|
|
- },
|
|
|
- "forward_host": {
|
|
|
- "$ref": "#/definitions/forward_host"
|
|
|
- },
|
|
|
- "forward_port": {
|
|
|
- "$ref": "#/definitions/forward_port"
|
|
|
- },
|
|
|
- "certificate_id": {
|
|
|
- "$ref": "#/definitions/certificate_id"
|
|
|
- },
|
|
|
- "ssl_forced": {
|
|
|
- "$ref": "#/definitions/ssl_forced"
|
|
|
- },
|
|
|
- "hsts_enabled": {
|
|
|
- "$ref": "#/definitions/hsts_enabled"
|
|
|
- },
|
|
|
- "hsts_subdomains": {
|
|
|
- "$ref": "#/definitions/hsts_subdomains"
|
|
|
- },
|
|
|
- "http2_support": {
|
|
|
- "$ref": "#/definitions/http2_support"
|
|
|
- },
|
|
|
- "block_exploits": {
|
|
|
- "$ref": "#/definitions/block_exploits"
|
|
|
- },
|
|
|
- "caching_enabled": {
|
|
|
- "$ref": "#/definitions/caching_enabled"
|
|
|
- },
|
|
|
- "allow_websocket_upgrade": {
|
|
|
- "$ref": "#/definitions/allow_websocket_upgrade"
|
|
|
- },
|
|
|
- "access_list_id": {
|
|
|
- "$ref": "#/definitions/access_list_id"
|
|
|
- },
|
|
|
- "advanced_config": {
|
|
|
- "$ref": "#/definitions/advanced_config"
|
|
|
- },
|
|
|
- "enabled": {
|
|
|
- "$ref": "#/definitions/enabled"
|
|
|
- },
|
|
|
- "meta": {
|
|
|
- "$ref": "#/definitions/meta"
|
|
|
- },
|
|
|
- "locations": {
|
|
|
- "$ref": "#/definitions/locations"
|
|
|
- }
|
|
|
- },
|
|
|
- "links": [
|
|
|
- {
|
|
|
- "title": "List",
|
|
|
- "description": "Returns a list of Proxy Hosts",
|
|
|
- "href": "/nginx/proxy-hosts",
|
|
|
- "access": "private",
|
|
|
- "method": "GET",
|
|
|
- "rel": "self",
|
|
|
- "http_header": {
|
|
|
- "$ref": "../examples.json#/definitions/auth_header"
|
|
|
- },
|
|
|
- "targetSchema": {
|
|
|
- "type": "array",
|
|
|
- "items": {
|
|
|
- "$ref": "#/properties"
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- "title": "Create",
|
|
|
- "description": "Creates a new Proxy Host",
|
|
|
- "href": "/nginx/proxy-hosts",
|
|
|
- "access": "private",
|
|
|
- "method": "POST",
|
|
|
- "rel": "create",
|
|
|
- "http_header": {
|
|
|
- "$ref": "../examples.json#/definitions/auth_header"
|
|
|
- },
|
|
|
- "schema": {
|
|
|
- "type": "object",
|
|
|
- "additionalProperties": false,
|
|
|
- "required": [
|
|
|
- "domain_names",
|
|
|
- "forward_scheme",
|
|
|
- "forward_host",
|
|
|
- "forward_port"
|
|
|
- ],
|
|
|
- "properties": {
|
|
|
- "domain_names": {
|
|
|
- "$ref": "#/definitions/domain_names"
|
|
|
- },
|
|
|
- "forward_scheme": {
|
|
|
- "$ref": "#/definitions/forward_scheme"
|
|
|
- },
|
|
|
- "forward_host": {
|
|
|
- "$ref": "#/definitions/forward_host"
|
|
|
- },
|
|
|
- "forward_port": {
|
|
|
- "$ref": "#/definitions/forward_port"
|
|
|
- },
|
|
|
- "certificate_id": {
|
|
|
- "$ref": "#/definitions/certificate_id"
|
|
|
- },
|
|
|
- "ssl_forced": {
|
|
|
- "$ref": "#/definitions/ssl_forced"
|
|
|
- },
|
|
|
- "hsts_enabled": {
|
|
|
- "$ref": "#/definitions/hsts_enabled"
|
|
|
- },
|
|
|
- "hsts_subdomains": {
|
|
|
- "$ref": "#/definitions/hsts_enabled"
|
|
|
- },
|
|
|
- "http2_support": {
|
|
|
- "$ref": "#/definitions/http2_support"
|
|
|
- },
|
|
|
- "block_exploits": {
|
|
|
- "$ref": "#/definitions/block_exploits"
|
|
|
- },
|
|
|
- "caching_enabled": {
|
|
|
- "$ref": "#/definitions/caching_enabled"
|
|
|
- },
|
|
|
- "allow_websocket_upgrade": {
|
|
|
- "$ref": "#/definitions/allow_websocket_upgrade"
|
|
|
- },
|
|
|
- "access_list_id": {
|
|
|
- "$ref": "#/definitions/access_list_id"
|
|
|
- },
|
|
|
- "advanced_config": {
|
|
|
- "$ref": "#/definitions/advanced_config"
|
|
|
- },
|
|
|
- "enabled": {
|
|
|
- "$ref": "#/definitions/enabled"
|
|
|
- },
|
|
|
- "meta": {
|
|
|
- "$ref": "#/definitions/meta"
|
|
|
- },
|
|
|
- "locations": {
|
|
|
- "$ref": "#/definitions/locations"
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- "targetSchema": {
|
|
|
- "properties": {
|
|
|
- "$ref": "#/properties"
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- "title": "Update",
|
|
|
- "description": "Updates a existing Proxy Host",
|
|
|
- "href": "/nginx/proxy-hosts/{definitions.identity.example}",
|
|
|
- "access": "private",
|
|
|
- "method": "PUT",
|
|
|
- "rel": "update",
|
|
|
- "http_header": {
|
|
|
- "$ref": "../examples.json#/definitions/auth_header"
|
|
|
- },
|
|
|
- "schema": {
|
|
|
- "type": "object",
|
|
|
- "additionalProperties": false,
|
|
|
- "properties": {
|
|
|
- "domain_names": {
|
|
|
- "$ref": "#/definitions/domain_names"
|
|
|
- },
|
|
|
- "forward_scheme": {
|
|
|
- "$ref": "#/definitions/forward_scheme"
|
|
|
- },
|
|
|
- "forward_host": {
|
|
|
- "$ref": "#/definitions/forward_host"
|
|
|
- },
|
|
|
- "forward_port": {
|
|
|
- "$ref": "#/definitions/forward_port"
|
|
|
- },
|
|
|
- "certificate_id": {
|
|
|
- "$ref": "#/definitions/certificate_id"
|
|
|
- },
|
|
|
- "ssl_forced": {
|
|
|
- "$ref": "#/definitions/ssl_forced"
|
|
|
- },
|
|
|
- "hsts_enabled": {
|
|
|
- "$ref": "#/definitions/hsts_enabled"
|
|
|
- },
|
|
|
- "hsts_subdomains": {
|
|
|
- "$ref": "#/definitions/hsts_enabled"
|
|
|
- },
|
|
|
- "http2_support": {
|
|
|
- "$ref": "#/definitions/http2_support"
|
|
|
- },
|
|
|
- "block_exploits": {
|
|
|
- "$ref": "#/definitions/block_exploits"
|
|
|
- },
|
|
|
- "caching_enabled": {
|
|
|
- "$ref": "#/definitions/caching_enabled"
|
|
|
- },
|
|
|
- "allow_websocket_upgrade": {
|
|
|
- "$ref": "#/definitions/allow_websocket_upgrade"
|
|
|
- },
|
|
|
- "access_list_id": {
|
|
|
- "$ref": "#/definitions/access_list_id"
|
|
|
- },
|
|
|
- "advanced_config": {
|
|
|
- "$ref": "#/definitions/advanced_config"
|
|
|
- },
|
|
|
- "enabled": {
|
|
|
- "$ref": "#/definitions/enabled"
|
|
|
- },
|
|
|
- "meta": {
|
|
|
- "$ref": "#/definitions/meta"
|
|
|
- },
|
|
|
- "locations": {
|
|
|
- "$ref": "#/definitions/locations"
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- "targetSchema": {
|
|
|
- "properties": {
|
|
|
- "$ref": "#/properties"
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- "title": "Delete",
|
|
|
- "description": "Deletes a existing Proxy Host",
|
|
|
- "href": "/nginx/proxy-hosts/{definitions.identity.example}",
|
|
|
- "access": "private",
|
|
|
- "method": "DELETE",
|
|
|
- "rel": "delete",
|
|
|
- "http_header": {
|
|
|
- "$ref": "../examples.json#/definitions/auth_header"
|
|
|
- },
|
|
|
- "targetSchema": {
|
|
|
- "type": "boolean"
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- "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"
|
|
|
- }
|
|
|
- }
|
|
|
- ]
|
|
|
-}
|