{
  "type": "object",
  "$schema": "http://json-schema.org/draft-04/schema",

  "title": "Input Parameters",
  "properties": {
    "url": {
      "title": "Backend URL",
      "description": "Url of the backend",
      "type": "string",
      "pattern": "^(http|https|ftp)://"
    },
    "custom_domain": {
      "title": "Custom Domain",
      "description": "Custom Domain to use for the website",
      "type": "string",
      "pattern": "^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,6}$"
    },

    "server-alias": {
      "title": "Server Alias",
      "description": "Server Alias List separated by space",
      "type": "string",
      "default": ""
    },

    "type": {
      "title": "Backend Type",
      "description": "Type of slave. If redirect, the slave will redirect to the given url. If zope, the rewrite rules will be compatible with Virtual Host Monster",
      "type": "string",
      "default": "",
      "enum": ["", "zope", "redirect"]
    },

    "path": {
      "title": "Backend Path",
      "description": "Path to proxy to in the backend",
      "type": "string",
      "default": ""
    },

    "default-path": {
      "title": "Default Path",
      "description": "Provide default path to redirect user to when user access / (the site root)",
      "type": "string",
      "default": ""
    },

    "ssl_crt": {
      "title": "SSL Certificate",
      "description": "Content of the SSL Certificate file",
      "type": "string",
      "textarea": true,
      "default": ""
    },
    "ssl_key": {
      "title": "SSL Key",
      "description": "Content of the SSL Key file",
      "type": "string",
      "textarea": true,
      "default": ""
    },

    "ssl_ca_crt": {
      "title": "SSL Certificate Authority's Certificate",
      "description": "Content of the CA certificate file",
      "type": "string",
      "textarea": true,
      "default": ""
    },
    "https-only": {
      "title": "HTTPS Only",
      "description": "If set to true, http requests will be redirected to https",
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

    "ssl-proxy-verify": {
      "title": "Verify Backend Certificates",
      "description": "If set to true, Backend SSL Certificates will be checked and frontend will refuse to proxy if certificate is invalid",
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

    "ssl_proxy_ca_crt": {
      "title": "SSL Backend Authority's Certificate",
      "description": "Content of the SSL Certificate Authority file of the backend (to be used with ssl-proxy-verify)",
      "type": "string",
      "default": ""
    },

    "enable_cache": {
      "title": "Enable Cache",
      "description": "If set to true, http caching server (Apache Traffic Server) will be used between frontend apache and backend",
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

    "disable-no-cache-request": {
      "title": "Disable 'no-cache' requests",
      "description": "If set to true, no-cache control headers will be disabled",
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

    "disable-via-header": {
      "title": "Disable 'Via' headers from cache",
      "description": "If set to true, via headers will be disabled",
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

    "prefer-gzip-encoding-to-backend": {
      "title": "Prefer gzip Encoding for Backend",
      "description": "If set to true, if a request is made with accept encoding 'gzip', only that one will be transferred to the backend",
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

    "disabled-cookie-list": {
      "title": "Disabled Cookies",
      "description": "List of Cookies separated by space that will not be sent to the backend",
      "type": "string",
      "default": ""
    },

    "apache_custom_http": {
      "title": "HTTP configuration",
      "description": "Raw http configuration in python template format. Your site will be rejected if you use it without notification and approval of frontend administrators",
      "default": "",
      "textarea": true,
      "type": "string"
    },
    "apache_custom_https": {
      "title": "HTTPS configuration",
      "description": "Raw https configuration in python template format. Your site will be rejected if you use it without notification and approval of frontend administrators",
      "default": "",
      "textarea": true,
      "type": "string"
    }
  }
}