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

208 lines
5.0 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-07-17 18:35:49 -04:00
"forward_ip": {
2018-07-08 21:22:10 -04:00
"type": "string",
2018-07-17 18:35:49 -04:00
"format": "ipv4"
},
"forward_port": {
"type": "integer",
"minimum": 1,
"maximum": 65535
},
"ssl_enabled": {
"$ref": "../definitions.json#/definitions/ssl_enabled"
},
"ssl_forced": {
"$ref": "../definitions.json#/definitions/ssl_forced"
},
"ssl_provider": {
"$ref": "../definitions.json#/definitions/ssl_provider"
},
"meta": {
"type": "object",
"additionalProperties": false,
"properties": {
"letsencrypt_email": {
"type": "string",
"format": "email"
},
"letsencrypt_agree": {
"type": "boolean"
}
}
}
},
"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"
},
"forward_ip": {
"$ref": "#/definitions/forward_ip"
},
"forward_port": {
"$ref": "#/definitions/forward_port"
},
"ssl_enabled": {
"$ref": "#/definitions/ssl_enabled"
},
"ssl_forced": {
"$ref": "#/definitions/ssl_forced"
},
"ssl_provider": {
"$ref": "#/definitions/ssl_provider"
},
"meta": {
"$ref": "#/definitions/meta"
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",
"required": [
2018-07-17 18:35:49 -04:00
"domain_names",
"forward_ip",
"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-07-17 18:35:49 -04:00
"forward_ip": {
"$ref": "#/definitions/forward_ip"
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-07-17 18:35:49 -04:00
"ssl_enabled": {
"$ref": "#/definitions/ssl_enabled"
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
},
2018-07-17 18:35:49 -04:00
"ssl_provider": {
"$ref": "#/definitions/ssl_provider"
},
"meta": {
"$ref": "#/definitions/meta"
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",
"properties": {
2018-07-17 18:35:49 -04:00
"domain_names": {
"$ref": "#/definitions/domain_names"
},
"forward_ip": {
"$ref": "#/definitions/forward_ip"
},
"forward_port": {
"$ref": "#/definitions/forward_port"
2018-07-08 21:22:10 -04:00
},
2018-07-17 18:35:49 -04:00
"ssl_enabled": {
"$ref": "#/definitions/ssl_enabled"
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
},
2018-07-17 18:35:49 -04:00
"ssl_provider": {
"$ref": "#/definitions/ssl_provider"
2018-07-08 21:22:10 -04:00
},
2018-07-17 18:35:49 -04:00
"meta": {
"$ref": "#/definitions/meta"
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"
}
}
2018-07-17 18:35:49 -04:00
]
2018-07-08 21:22:10 -04:00
}