Next.js+React web interface for controlling HAProxy clusters (groups of servers), in conjunction with with https://gitgud.io/fatchan/haproxy-protection.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

1 lines
424 KiB

module.exports = Object.seal(Object.freeze(Object.preventExtensions({"components":{"parameters":{"force_reload":{"description":"If set, do a force reload, do not wait for the configured reload-delay. Cannot be used when transaction is specified, as changes in transaction are not applied directly to configuration.","in":"query","name":"force_reload","schema":{"default":false,"type":"boolean"}},"skip_reload":{"description":"If set, no reload will be initiated after update","in":"query","name":"skip_reload","schema":{"default":false,"type":"boolean"}},"transaction_id":{"description":"ID of the transaction where we want to add the operation. Cannot be used when version is specified.","in":"query","name":"transaction_id","schema":{"type":"string"},"x-nullable":false},"version":{"description":"Version used for checking configuration version. Cannot be used when transaction is specified, transaction has it's own version.","in":"query","name":"version","schema":{"type":"integer"},"x-nullable":false}},"responses":{"AlreadyExists":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}},"description":"The specified resource already exists","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"BadRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}},"description":"Bad request","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"DefaultError":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}},"description":"General Error","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"NotAcceptable":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}},"description":"The specified resource cannot be handled","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"NotFound":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}},"description":"The specified resource was not found","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}}},"schemas":{"acl":{"additionalProperties":false,"description":"The use of Access Control Lists (ACL) provides a flexible solution to perform\ncontent switching and generally to take decisions based on content extracted\nfrom the request, the response or any environmental status.\n","properties":{"acl_name":{"pattern":"^[^\\s]+$","type":"string"},"criterion":{"pattern":"^[^\\s]+$","type":"string"},"index":{"nullable":true,"type":"integer"},"value":{"type":"string"}},"required":["index","acl_name","criterion","value"],"title":"ACL Lines","type":"object"},"acl_file":{"description":"ACL File","properties":{"description":{"type":"string"},"id":{"type":"string"},"storage_name":{"type":"string"}},"title":"ACL File","type":"object"},"acl_file_entry":{"description":"One ACL File Entry","properties":{"id":{"readOnly":true,"type":"string"},"value":{"type":"string"}},"title":"One ACL File Entry","type":"object"},"acl_files":{"description":"Array of runtime acl files","items":{"$ref":"#/components/schemas/acl_file"},"title":"ACL Files Array","type":"array"},"acl_files_entries":{"description":"Array of entries of one runtime acl file","items":{"$ref":"#/components/schemas/acl_file_entry"},"title":"ACL Files Entries","type":"array"},"acls":{"description":"HAProxy ACL lines array (corresponds to acl directives)","items":{"$ref":"#/components/schemas/acl"},"title":"ACL Lines Array","type":"array"},"awsFilters":{"properties":{"key":{"description":"Key to use as filter, using the format specified at https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html#options","type":"string"},"value":{"description":"Value of the filter to use","type":"string"}},"required":["key","value"],"type":"object"},"awsRegion":{"description":"AWS region configuration","example":{"access_key_id":"****************L7GT","allowlist":[{"key":"tag-key","value":"Instance:Having:This:Tag"}],"denylist":[{"key":"tag:Environment","value":"development"}],"enabled":true,"id":"0","ipv4_address":"private","name":"frontend-service","region":"us-east-1","retry_timeout":1,"secret_access_key":"****************soLl"},"properties":{"access_key_id":{"description":"AWS Access Key ID.","type":"string"},"allowlist":{"description":"Specify the AWS filters used to filter the EC2 instances to add","items":{"$ref":"#/components/schemas/awsFilters"},"type":"array","x-omitempty":true},"denylist":{"description":"Specify the AWS filters used to filter the EC2 instances to ignore","items":{"$ref":"#/components/schemas/awsFilters"},"type":"array","x-omitempty":true},"description":{"type":"string"},"enabled":{"type":"boolean"},"id":{"description":"Auto generated ID.","nullable":true,"pattern":"^[^\\s]+$","readOnly":true,"type":"string"},"ipv4_address":{"description":"Select which IPv4 address the Service Discovery has to use for the backend server entry","enum":["private","public"],"type":"string"},"name":{"type":"string"},"region":{"type":"string"},"retry_timeout":{"description":"Duration in seconds in-between data pulling requests to the AWS region","minimum":1,"type":"integer"},"secret_access_key":{"description":"AWS Secret Access Key.","type":"string"},"server_slots_base":{"default":10,"type":"integer"},"server_slots_growth_increment":{"type":"integer"},"server_slots_growth_type":{"default":"exponential","enum":["linear","exponential"],"type":"string"}},"required":["name","region","enabled","retry_timeout","ipv4_address"],"title":"AWS region","type":"object"},"awsRegions":{"description":"AWS regions array","items":{"$ref":"#/components/schemas/awsRegion"},"title":"AWS","type":"array"},"backend":{"additionalProperties":false,"description":"HAProxy backend configuration","example":{"adv_check":"httpchk","balance":{"algorithm":"roundrobin"},"forwardfor":{"enabled":"enabled"},"httpchk_params":{"method":"GET","uri":"/check","version":"HTTP/1.1"},"mode":"http","name":"test_backend"},"properties":{"abortonclose":{"enum":["enabled","disabled"],"type":"string"},"accept_invalid_http_response":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Accept Invalid HTTP Response"},"adv_check":{"enum":["ssl-hello-chk","smtpchk","ldap-check","mysql-check","pgsql-check","tcp-check","redis-check","httpchk"],"type":"string","x-display-name":"Advanced Check"},"allbackups":{"enum":["enabled","disabled"],"type":"string","x-display-name":"All Backups"},"balance":{"$ref":"#/components/schemas/balance"},"bind_process":{"pattern":"^[^\\s]+$","type":"string"},"check_timeout":{"nullable":true,"type":"integer"},"checkcache":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Checkcache"},"compression":{"$ref":"#/components/schemas/compression"},"connect_timeout":{"nullable":true,"type":"integer"},"cookie":{"$ref":"#/components/schemas/cookie"},"default_server":{"$ref":"#/components/schemas/default_server"},"description":{"type":"string","x-display-name":"Description"},"disabled":{"type":"boolean"},"dynamic_cookie_key":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"cookie":{"dynamic":{"value":true}}}},"email_alert":{"$ref":"#/components/schemas/email_alert"},"enabled":{"type":"boolean"},"error_files":{"items":{"$ref":"#/components/schemas/errorfile"},"type":"array","x-go-name":"ErrorFiles","x-omitempty":true},"errorfiles_from_http_errors":{"items":{"$ref":"#/components/schemas/errorfiles"},"type":"array","x-go-name":"ErrorFilesFromHTTPErrors","x-omitempty":true},"errorloc302":{"$ref":"#/components/schemas/errorloc"},"errorloc303":{"$ref":"#/components/schemas/errorloc"},"external_check":{"enum":["enabled","disabled"],"type":"string","x-display-name":"External Check"},"external_check_command":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"External Check Command"},"external_check_path":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"External Check Path"},"force_persist":{"properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test"}},"required":["cond","cond_test"],"type":"object"},"forwardfor":{"$ref":"#/components/schemas/forwardfor"},"from":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"fullconn":{"nullable":true,"type":"integer"},"h1_case_adjust_bogus_server":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"H1 Adjust Bogus Server"},"hash_type":{"$ref":"#/components/schemas/hash_type"},"http-buffer-request":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP bufferrequest"},"http-check":{"$ref":"#/components/schemas/http_check"},"http-keep-alive":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP keep-alive"},"http-no-delay":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP low interactive delays"},"http-server-close":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP server close"},"http-use-htx":{"enum":["enabled","disabled"],"pattern":"^[^\\s]+$","type":"string","x-dependency":{"mode":{"value":"http"}}},"http_connection_mode":{"enum":["httpclose","http-server-close","http-keep-alive"],"type":"string","x-dependency":{"mode":{"value":"http"}}},"http_keep_alive_timeout":{"nullable":true,"type":"integer","x-dependency":{"mode":{"value":"http"}}},"http_pretend_keepalive":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}}},"http_proxy":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP proxy mode"},"http_request_timeout":{"nullable":true,"type":"integer","x-dependency":{"mode":{"value":"http"}}},"http_restrict_req_hdr_names":{"enum":["preserve","delete","reject"],"type":"string","x-display-name":"Restrict HTTP Request Header Names"},"http_reuse":{"enum":["aggressive","always","never","safe"],"type":"string","x-dependency":{"mode":{"value":"http"}}},"http_send_name_header":{"nullable":true,"type":"string","x-display-name":"The header string to use to send the server name"},"httpchk_params":{"$ref":"#/components/schemas/httpchk_params"},"httpclose":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP connection closing"},"id":{"nullable":true,"type":"integer"},"ignore_persist":{"properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test"}},"required":["cond","cond_test"],"type":"object"},"independent_streams":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Independent Streams"},"load_server_state_from_file":{"enum":["global","local","none"],"type":"string"},"log_health_checks":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Log Health Checks"},"log_tag":{"pattern":"^[^\\s]+$","type":"string"},"max_keep_alive_queue":{"nullable":true,"type":"integer","x-display-name":"Maximum keep alive queue"},"mode":{"enum":["http","tcp"],"type":"string"},"mysql_check_params":{"$ref":"#/components/schemas/mysql_check_params"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"nolinger":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Nolinger"},"originalto":{"$ref":"#/components/schemas/originalto"},"persist":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Persist"},"persist_rule":{"$ref":"#/components/schemas/persist_rule"},"pgsql_check_params":{"$ref":"#/components/schemas/pgsql_check_params"},"prefer_last_server":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Prefer Last Server"},"queue_timeout":{"nullable":true,"type":"integer"},"redispatch":{"$ref":"#/components/schemas/redispatch"},"retries":{"nullable":true,"type":"integer"},"retry_on":{"type":"string","x-display-name":"Retry on"},"server_fin_timeout":{"nullable":true,"type":"integer"},"server_state_file_name":{"type":"string","x-display-name":"Server state file"},"server_timeout":{"nullable":true,"type":"integer"},"smtpchk_params":{"$ref":"#/components/schemas/smtpchk_params"},"source":{"$ref":"#/components/schemas/source"},"splice_auto":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Auto"},"splice_request":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Request"},"splice_response":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Response"},"spop_check":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Spop Check"},"srvtcpka":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"tcp"}},"x-display-name":"Server TCP Keep Alive"},"srvtcpka_cnt":{"nullable":true,"type":"integer","x-display-name":"Srvtcpka Cnt"},"srvtcpka_idle":{"nullable":true,"type":"integer","x-display-name":"Srvtcpka Idle"},"srvtcpka_intvl":{"nullable":true,"type":"integer","x-display-name":"Srvtcpka Intvl"},"stats_options":{"$ref":"#/components/schemas/stats_options"},"stick_table":{"$ref":"#/components/schemas/config_stick_table"},"tarpit_timeout":{"nullable":true,"type":"integer"},"tcp_smart_connect":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Tcp Smart Connect"},"tcpka":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"tcp"}},"x-display-name":"TCP Keep Alive"},"transparent":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Transparent"},"tunnel_timeout":{"nullable":true,"type":"integer"},"use_fcgi_app":{"type":"string","x-display-name":"FastCGI application"}},"required":["name"],"title":"Backend","type":"object"},"backend_switching_rule":{"additionalProperties":false,"description":"HAProxy backend switching rule configuration (corresponds to use_backend directive)","example":{"cond":"if","cond_test":"{ req_ssl_sni -i www.example.com }","index":0,"name":"test_backend"},"properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"index":{"nullable":true,"type":"integer"},"name":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Backend Name","x-dynamic-enum":{"operation":"getBackends","property":"name"}}},"required":["index","name"],"title":"Backend Switching Rule","type":"object"},"backend_switching_rules":{"description":"HAProxy backend switching rules array (corresponds to use_backend directives)","items":{"$ref":"#/components/schemas/backend_switching_rule"},"title":"Backend Switching Rules Array","type":"array"},"backends":{"description":"HAProxy backends array","items":{"$ref":"#/components/schemas/backend"},"title":"Backends","type":"array"},"balance":{"properties":{"algorithm":{"enum":["roundrobin","static-rr","leastconn","first","source","uri","url_param","hdr","random","rdp-cookie","hash"],"type":"string"},"hash_expression":{"type":"string","x-dependency":{"algorithm":{"value":"hash"}},"x-display-name":"Hash Expression"},"hdr_name":{"type":"string","x-dependency":{"algorithm":{"required":true,"value":"hdr"}},"x-display-name":"Header Name"},"hdr_use_domain_only":{"type":"boolean","x-dependency":{"algorithm":{"value":"hdr"}},"x-display-name":"Header Use Domain Only"},"random_draws":{"type":"integer","x-dependency":{"algorithm":{"value":"random"}},"x-display-name":"Random Draws"},"rdp_cookie_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"algorithm":{"value":"rdp-cookie"}},"x-display-name":"Rdp Cookie Name"},"uri_depth":{"type":"integer","x-dependency":{"algorithm":{"value":"uri"}},"x-display-name":"Uri Depth"},"uri_len":{"type":"integer","x-dependency":{"algorithm":{"value":"uri"}},"x-display-name":"Uri Len"},"uri_path_only":{"type":"boolean","x-dependency":{"algorithm":{"value":"uri"}},"x-display-name":"Uri Path Only"},"uri_whole":{"type":"boolean","x-dependency":{"algorithm":{"value":"uri"}},"x-display-name":"Uri Whole"},"url_param":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"algorithm":{"required":true,"value":"url_param"}},"x-display-name":"Url Param"},"url_param_check_post":{"type":"integer","x-dependency":{"algorithm":{"value":"url_param"}},"x-display-name":"Url Param Check Post"},"url_param_max_wait":{"type":"integer","x-dependency":{"algorithm":{"value":"url_param"}},"x-display-name":"Url Param Max Weight"}},"required":["algorithm"],"type":"object"},"bind":{"allOf":[{"$ref":"#/components/schemas/bind_params"}],"description":"HAProxy frontend bind configuration","properties":{"address":{"pattern":"^[^\\s]+$","type":"string"},"port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"port-range-end":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"}},"title":"Bind","type":"object"},"bind_params":{"additionalProperties":false,"example":{"address":"127.0.0.1","name":"http","port":80},"properties":{"accept_netscaler_cip":{"type":"integer"},"accept_proxy":{"type":"boolean"},"allow_0rtt":{"type":"boolean"},"alpn":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"ALPN Protocols"},"backlog":{"type":"string"},"ca_ignore_err":{"type":"string","x-dependency":{"ssl":{"value":true}}},"ca_sign_file":{"type":"string","x-dependency":{"ssl":{"value":true}}},"ca_sign_pass":{"type":"string","x-dependency":{"ssl":{"value":true}},"x-display-name":"Passphrase"},"ca_verify_file":{"type":"string","x-dependency":{"ca_file":{"value":true}}},"ciphers":{"type":"string","x-dependency":{"ssl":{"value":true}}},"ciphersuites":{"type":"string","x-dependency":{"ssl":{"value":true}}},"crl_file":{"type":"string","x-dependency":{"ssl":{"value":true}}},"crt_ignore_err":{"type":"string","x-dependency":{"ssl":{"value":true}}},"crt_list":{"type":"string","x-dependency":{"ssl":{"value":true}}},"curves":{"type":"string","x-dependency":{"ssl":{"value":true}}},"defer_accept":{"type":"boolean"},"ecdhe":{"type":"string","x-dependency":{"ssl":{"value":true}}},"expose_fd_listeners":{"type":"boolean"},"force_sslv3":{"type":"boolean"},"force_tlsv10":{"type":"boolean"},"force_tlsv11":{"type":"boolean"},"force_tlsv12":{"type":"boolean"},"force_tlsv13":{"type":"boolean"},"generate_certificates":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"gid":{"type":"integer","x-display-name":"Group ID"},"group":{"type":"string","x-display-name":"Group name"},"id":{"type":"string","x-display-name":"Socket ID"},"interface":{"type":"string"},"level":{"enum":["user","operator","admin"],"type":"string"},"maxconn":{"type":"integer"},"mode":{"type":"string"},"mss":{"type":"string"},"name":{"pattern":"^[^\\s]+$","type":"string"},"namespace":{"type":"string"},"nice":{"type":"integer"},"no_ca_names":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"no_sslv3":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"no_tls_tickets":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"no_tlsv10":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"no_tlsv11":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"no_tlsv12":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"no_tlsv13":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"npn":{"type":"string"},"prefer_client_ciphers":{"type":"boolean"},"process":{"pattern":"^[^\\s]+$","type":"string"},"proto":{"type":"string","x-display-name":"Protocol name"},"severity_output":{"enum":["none","number","string"],"type":"string","x-display-name":"Format"},"ssl":{"type":"boolean"},"ssl_cafile":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"ssl":{"value":true}},"x-display-name":"SSL CA File"},"ssl_certificate":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"ssl":{"value":true}}},"ssl_max_ver":{"enum":["SSLv3","TLSv1.0","TLSv1.1","TLSv1.2","TLSv1.3"],"type":"string"},"ssl_min_ver":{"enum":["SSLv3","TLSv1.0","TLSv1.1","TLSv1.2","TLSv1.3"],"type":"string"},"strict_sni":{"type":"boolean","x-dependency":{"ssl":{"value":true}}},"tcp_user_timeout":{"nullable":true,"type":"integer"},"tfo":{"type":"boolean"},"tls_ticket_keys":{"type":"string"},"transparent":{"type":"boolean"},"uid":{"type":"string"},"user":{"type":"string"},"v4v6":{"type":"boolean"},"v6only":{"type":"boolean"},"verify":{"enum":["none","optional","required"],"type":"string","x-dependency":{"ssl":{"value":"enabled"}}}},"type":"object"},"binds":{"description":"HAProxy frontend binds array (corresponds to bind directives)","items":{"$ref":"#/components/schemas/bind"},"title":"Binds","type":"array"},"cache":{"description":"HAPRoxy Cache section","properties":{"max_age":{"type":"integer"},"max_object_size":{"type":"integer"},"max_secondary_entries":{"type":"integer"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"process_vary":{"nullable":true,"type":"boolean"},"total_max_size":{"maximum":4095,"minimum":1,"type":"integer"}},"required":["name"],"title":"Cache","type":"object"},"caches":{"description":"HAProxy caches array","items":{"$ref":"#/components/schemas/cache"},"title":"Cache Sections","type":"array"},"capture":{"properties":{"index":{"nullable":true,"type":"integer"},"length":{"type":"integer"},"type":{"enum":["request","response"],"type":"string"}},"required":["index","type","length"],"title":"Declare Capture","type":"object"},"captures":{"items":{"$ref":"#/components/schemas/capture"},"title":"Declare capture array","type":"array"},"cluster_settings":{"description":"Settings related to a cluster.","properties":{"bootstrap_key":{"type":"string"},"cluster":{"properties":{"address":{"pattern":"^[^\\s]+$","readOnly":true,"type":"string"},"api_base_path":{"readOnly":true,"type":"string"},"cluster_id":{"type":"string"},"description":{"readOnly":true,"type":"string"},"log_targets":{"items":{"properties":{"address":{"type":"string"},"log_format":{"type":"string"},"port":{"maximum":65535,"minimum":1,"type":"integer"},"protocol":{"enum":["tcp","udp"],"type":"string"}},"required":["address","port","protocol"],"type":"object","x-go-name":"ClusterLogTarget"},"type":"array","x-go-name":"ClusterLogTargets","x-omitempty":true},"name":{"readOnly":true,"type":"string"},"port":{"maximum":65535,"minimum":1,"nullable":true,"readOnly":true,"type":"integer"}},"title":"Cluster controller information","type":"object"},"mode":{"enum":["single","cluster"],"type":"string"},"status":{"enum":["active","unreachable","waiting_approval"],"readOnly":true,"type":"string"}},"title":"Cluster Settings","type":"object"},"compression":{"properties":{"algorithms":{"items":{"enum":["identity","gzip","deflate","raw-deflate"],"type":"string"},"type":"array","x-omitempty":true},"offload":{"type":"boolean"},"types":{"items":{"type":"string"},"type":"array","x-omitempty":true}},"type":"object"},"config_stick_table":{"properties":{"expire":{"nullable":true,"type":"integer"},"keylen":{"nullable":true,"type":"integer","x-display-name":"Key Length"},"nopurge":{"type":"boolean","x-display-name":"No Purge"},"peers":{"pattern":"^[^\\s]+$","type":"string"},"size":{"nullable":true,"type":"integer"},"store":{"pattern":"^[^\\s]+$","type":"string"},"type":{"enum":["ip","ipv6","integer","string","binary"],"type":"string"}},"type":"object"},"consul":{"additionalProperties":false,"description":"Consul server configuration","example":{"address":"127.0.0.1","enabled":true,"id":"0","port":90,"retry_timeout":10},"properties":{"address":{"pattern":"^[^\\s]+$","type":"string"},"description":{"type":"string"},"enabled":{"type":"boolean"},"id":{"description":"Auto generated ID.","nullable":true,"pattern":"^[^\\s]+$","type":"string"},"name":{"type":"string"},"namespace":{"type":"string"},"port":{"maximum":65535,"minimum":1,"type":"integer"},"retry_timeout":{"description":"Duration in seconds in-between data pulling requests to the consul server","minimum":1,"type":"integer"},"server_slots_base":{"default":10,"type":"integer"},"server_slots_growth_increment":{"type":"integer"},"server_slots_growth_type":{"default":"exponential","enum":["linear","exponential"],"type":"string"},"service-blacklist":{"description":"deprecated, use service_denylist","items":{"pattern":"^[^\\s]+$","type":"string"},"type":"array","x-omitempty":true},"service-whitelist":{"description":"deprecated, use service_allowlist","items":{"pattern":"^[^\\s]+$","type":"string"},"type":"array","x-omitempty":true},"service_allowlist":{"items":{"pattern":"^[^\\s]+$","type":"string"},"type":"array","x-omitempty":true},"service_denylist":{"items":{"pattern":"^[^\\s]+$","type":"string"},"type":"array","x-omitempty":true},"token":{"pattern":"^[^\\s]+$","type":"string"}},"required":["address","port","enabled","retry_timeout"],"title":"Consul server","type":"object"},"consuls":{"description":"Consuls array","items":{"$ref":"#/components/schemas/consul"},"title":"Consuls","type":"array"},"cookie":{"properties":{"attr":{"items":{"properties":{"value":{"pattern":"^[^\\s]+$","type":"string"}},"type":"object","x-go-name":"Attr"},"type":"array","x-go-name":"Attrs","x-omitempty":true},"domain":{"items":{"properties":{"value":{"pattern":"^[^\\s]+$","type":"string"}},"type":"object","x-go-name":"Domain"},"type":"array","x-go-name":"Domains","x-omitempty":true},"dynamic":{"type":"boolean"},"httponly":{"type":"boolean"},"indirect":{"type":"boolean"},"maxidle":{"type":"integer"},"maxlife":{"type":"integer"},"name":{"pattern":"^[^\\s]+$","type":"string"},"nocache":{"type":"boolean"},"postonly":{"type":"boolean"},"preserve":{"type":"boolean"},"secure":{"type":"boolean"},"type":{"enum":["rewrite","insert","prefix"],"type":"string"}},"required":["name"],"type":"object"},"default_bind":{"allOf":[{"$ref":"#/components/schemas/bind_params"}],"description":"HAProxy default bind configuration","title":"Default Bind","type":"object"},"default_server":{"allOf":[{"$ref":"#/components/schemas/server_params"}],"title":"Default Server","type":"object"},"defaults":{"additionalProperties":false,"description":"HAProxy defaults configuration","properties":{"abortonclose":{"enum":["enabled","disabled"],"type":"string"},"accept_invalid_http_request":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Accept Invalid HTTP Request"},"accept_invalid_http_response":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Accept Invalid HTTP Response"},"adv_check":{"enum":["ssl-hello-chk","smtpchk","ldap-check","mysql-check","pgsql-check","tcp-check","redis-check","httpchk"],"type":"string","x-display-name":"Advanced Check"},"allbackups":{"enum":["enabled","disabled"],"type":"string","x-display-name":"All Backups"},"backlog":{"nullable":true,"type":"integer","x-display-name":"Backlog"},"balance":{"$ref":"#/components/schemas/balance"},"bind_process":{"pattern":"^[^\\s]+$","type":"string"},"check_timeout":{"nullable":true,"type":"integer"},"checkcache":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Checkcache"},"clflog":{"type":"boolean","x-display-name":"CLF Log"},"client_fin_timeout":{"nullable":true,"type":"integer"},"client_timeout":{"nullable":true,"type":"integer"},"clitcpka":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Client TCP Keep Alive"},"clitcpka_cnt":{"nullable":true,"type":"integer","x-display-name":"Clitcpka Cnt"},"clitcpka_idle":{"nullable":true,"type":"integer","x-display-name":"Clitcpka Idle"},"clitcpka_intvl":{"nullable":true,"type":"integer","x-display-name":"Clitcpka Intvl"},"compression":{"$ref":"#/components/schemas/compression"},"connect_timeout":{"nullable":true,"type":"integer"},"contstats":{"enum":["enabled"],"type":"string","x-display-name":"Continuous Statistics"},"cookie":{"$ref":"#/components/schemas/cookie"},"default_backend":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string","x-dynamic-enum":{"operation":"getBackends","property":"name"}},"default_server":{"$ref":"#/components/schemas/default_server"},"disable_h2_upgrade":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Disable HTTP/2 Upgrade"},"disabled":{"type":"boolean"},"dontlog_normal":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Dontlog Normal"},"dontlognull":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Don't Log Null"},"dynamic_cookie_key":{"pattern":"^[^\\s]+$","type":"string"},"email_alert":{"$ref":"#/components/schemas/email_alert"},"enabled":{"type":"boolean"},"error_files":{"items":{"$ref":"#/components/schemas/errorfile"},"type":"array","x-go-name":"ErrorFiles","x-omitempty":true},"error_log_format":{"type":"string"},"errorfiles_from_http_errors":{"items":{"$ref":"#/components/schemas/errorfiles"},"type":"array","x-go-name":"ErrorFilesFromHTTPErrors","x-omitempty":true},"errorloc302":{"$ref":"#/components/schemas/errorloc"},"errorloc303":{"$ref":"#/components/schemas/errorloc"},"external_check":{"enum":["enabled","disabled"],"type":"string","x-display-name":"External Check"},"external_check_command":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"External Check Command"},"external_check_path":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"External Check Path"},"forwardfor":{"$ref":"#/components/schemas/forwardfor"},"from":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"fullconn":{"nullable":true,"type":"integer"},"h1_case_adjust_bogus_client":{"enum":["enabled","disabled"],"type":"string","x-display-name":"H1 Adjust Bogus Client"},"h1_case_adjust_bogus_server":{"enum":["enabled","disabled"],"type":"string","x-display-name":"H1 Adjust Bogus Server"},"hash_type":{"$ref":"#/components/schemas/hash_type"},"http-buffer-request":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP bufferrequest"},"http-check":{"$ref":"#/components/schemas/http_check"},"http-use-htx":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP Use HTX"},"http_connection_mode":{"enum":["httpclose","http-server-close","http-keep-alive"],"type":"string"},"http_ignore_probes":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP Ignore Probes"},"http_keep_alive_timeout":{"nullable":true,"type":"integer"},"http_no_delay":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP No Delay"},"http_pretend_keepalive":{"enum":["enabled","disabled"],"type":"string"},"http_request_timeout":{"nullable":true,"type":"integer"},"http_restrict_req_hdr_names":{"enum":["preserve","delete","reject"],"type":"string","x-display-name":"Restrict HTTP Request Header Names"},"http_reuse":{"enum":["aggressive","always","never","safe"],"type":"string"},"http_send_name_header":{"nullable":true,"type":"string","x-display-name":"Add the server name to a request"},"http_use_proxy_header":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP Use Proxy Header"},"httpchk_params":{"$ref":"#/components/schemas/httpchk_params"},"httplog":{"type":"boolean","x-display-name":"HTTP Log"},"httpslog":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Httpslog"},"idle_close_on_response":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Idle Close On Response"},"independent_streams":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Independent Streams"},"load_server_state_from_file":{"enum":["global","local","none"],"type":"string"},"log_format":{"type":"string"},"log_format_sd":{"type":"string","x-display-name":"Log Format SD"},"log_health_checks":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Log Health Checks"},"log_separate_errors":{"enum":["enabled","disabled"],"type":"string"},"log_tag":{"pattern":"^[^\\s]+$","type":"string"},"logasap":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Log ASAP"},"max_keep_alive_queue":{"nullable":true,"type":"integer","x-display-name":"Maximum server queue size for maintaining keep-alive connections"},"maxconn":{"nullable":true,"type":"integer","x-display-name":"Max Connections"},"mode":{"enum":["tcp","http"],"type":"string"},"monitor_uri":{"$ref":"#/components/schemas/monitor_uri"},"mysql_check_params":{"$ref":"#/components/schemas/mysql_check_params"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"nolinger":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Nolinger"},"originalto":{"$ref":"#/components/schemas/originalto"},"persist":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Persist"},"persist_rule":{"$ref":"#/components/schemas/persist_rule"},"pgsql_check_params":{"$ref":"#/components/schemas/pgsql_check_params"},"prefer_last_server":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Prefer Last Server"},"queue_timeout":{"nullable":true,"type":"integer"},"redispatch":{"$ref":"#/components/schemas/redispatch"},"retries":{"nullable":true,"type":"integer"},"retry_on":{"type":"string","x-display-name":"Specify when to attempt to automatically retry a failed request"},"server_fin_timeout":{"nullable":true,"type":"integer"},"server_timeout":{"nullable":true,"type":"integer"},"smtpchk_params":{"$ref":"#/components/schemas/smtpchk_params"},"socket_stats":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Socket Stats"},"source":{"$ref":"#/components/schemas/source"},"splice_auto":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Auto"},"splice_request":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Request"},"splice_response":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Response"},"srvtcpka":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Server TCP Keep Alive"},"srvtcpka_cnt":{"nullable":true,"type":"integer","x-display-name":"Srvtcpka Cnt"},"srvtcpka_idle":{"nullable":true,"type":"integer","x-display-name":"Srvtcpka Idle"},"srvtcpka_intvl":{"nullable":true,"type":"integer","x-display-name":"Srvtcpka Intvl"},"stats_options":{"$ref":"#/components/schemas/stats_options"},"tarpit_timeout":{"nullable":true,"type":"integer"},"tcp_smart_accept":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Tcp Smart Accept"},"tcp_smart_connect":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Tcp Smart Connect"},"tcpka":{"enum":["enabled","disabled"],"type":"string","x-display-name":"TCP Keep Alive"},"tcplog":{"type":"boolean","x-display-name":"TCP Log"},"transparent":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Transparent"},"tunnel_timeout":{"nullable":true,"type":"integer"},"unique_id_format":{"type":"string","x-display-name":"Unique ID format"},"unique_id_header":{"type":"string","x-dependency":{"unique_id_format":{"required":true}},"x-display-name":"Unique ID header"}},"title":"Defaults","type":"object"},"defaults_sections":{"description":"HAProxy defaults sections array","items":{"$ref":"#/components/schemas/defaults"},"title":"Defaults Sections","type":"array"},"dgram_bind":{"description":"HAProxy log forward dgram bind configuration","properties":{"address":{"pattern":"^[^\\s]+$","type":"string"},"interface":{"type":"string"},"name":{"pattern":"^[^\\s]+$","type":"string"},"namespace":{"type":"string"},"port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"port-range-end":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"transparent":{"type":"boolean"}},"title":"Dgram Bind","type":"object"},"dgram_binds":{"description":"HAProxy dgram bind array","items":{"$ref":"#/components/schemas/dgram_bind"},"title":"Dgram Bind","type":"array"},"email_alert":{"description":"Send emails for important log messages.","properties":{"from":{"pattern":"^\\S+@\\S+$","type":"string"},"level":{"enum":["emerg","alert","crit","err","warning","notice","info","debug"],"type":"string"},"mailers":{"type":"string","x-dynamic-enum":{"operation":"getMailersSections","property":"name"}},"myhostname":{"type":"string"},"to":{"pattern":"^\\S+@\\S+$","type":"string"}},"required":["from","mailers","to"],"title":"Email Alert","type":"object"},"endpoint":{"description":"Endpoint definition","properties":{"description":{"description":"Endpoint description","type":"string"},"title":{"description":"Endpoint title","type":"string"},"url":{"description":"Path to the endpoint","type":"string"}},"title":"Endpoint","type":"object"},"endpoints":{"description":"Collection of endpoints","items":{"$ref":"#/components/schemas/endpoint"},"title":"Endpoints Array","type":"array"},"error":{"additionalProperties":{"type":"string"},"description":"API Error","properties":{"code":{"nullable":true,"type":"integer"},"message":{"nullable":true,"type":"string"}},"required":["code","message"],"title":"Error","type":"object"},"errorfile":{"properties":{"code":{"enum":[200,400,401,403,404,405,407,408,410,413,425,429,500,501,502,503,504],"type":"integer"},"file":{"type":"string"}},"type":"object","x-display-name":"Error File"},"errorfiles":{"properties":{"codes":{"items":{"enum":[200,400,401,403,404,405,407,408,410,413,425,429,500,501,502,503,504],"type":"integer"},"type":"array","x-omitempty":true},"name":{"type":"string"}},"type":"object"},"errorloc":{"properties":{"code":{"enum":[200,400,401,403,404,405,407,408,410,413,425,429,500,501,502,503,504],"type":"integer"},"url":{"type":"string"}},"required":["url","code"],"type":"object"},"fcgiApp":{"description":"HAProxy FastCGI application configuration","properties":{"docroot":{"description":"Defines the document root on the remote host. The parameter serves to build the default value of FastCGI parameters SCRIPT_FILENAME and PATH_TRANSLATED. It is a mandatory setting.","type":"string"},"get_values":{"description":"Enables or disables the retrieval of variables related to connection management.","enum":["enabled","disabled"],"type":"string"},"index":{"description":"Defines the script name to append after a URI that ends with a slash (\"/\") to set the default value for the FastCGI parameter SCRIPT_NAME. It is an optional setting.","type":"string"},"keep_conn":{"description":"Tells the FastCGI application whether or not to keep the connection open after it sends a response. If disabled, the FastCGI application closes the connection after responding to this request.","enum":["enabled","disabled"],"type":"string"},"log_stderrs":{"items":{"$ref":"#/components/schemas/fcgiLogStderr"},"type":"array","x-omitempty":true},"max_reqs":{"default":1,"description":"Defines the maximum number of concurrent requests this application can accept. If the FastCGI application retrieves the variable FCGI_MAX_REQS during connection establishment, it can override this option. Furthermore, if the application does not do multiplexing, it will ignore this option.","minimum":1,"type":"integer"},"mpxs_conns":{"description":"Enables or disables the support of connection multiplexing. If the FastCGI application retrieves the variable FCGI_MPXS_CONNS during connection establishment, it can override this option.","enum":["enabled","disabled"],"type":"string"},"name":{"description":"Declares a FastCGI application","pattern":"^[^\\s]+$","readOnly":true,"type":"string"},"pass_headers":{"items":{"$ref":"#/components/schemas/fcgiPassHeader"},"type":"array","x-omitempty":true},"path_info":{"description":"Defines a regular expression to extract the script-name and the path-info from the URI.\nThus, \u003cregex\u003e must have two captures: the first to capture the script name, and the second to capture the path- info.\nIf not defined, it does not perform matching on the URI, and does not fill the FastCGI parameters PATH_INFO and PATH_TRANSLATED.","type":"string"},"set_params":{"items":{"$ref":"#/components/schemas/fcgiSetParam"},"type":"array","x-omitempty":true}},"required":["name","docroot"],"title":"FCGI application","type":"object"},"fcgiApps":{"items":{"$ref":"#/components/schemas/fcgiApp"},"type":"array"},"fcgiLogStderr":{"description":"Enables logging of STDERR messages that the FastCGI application reports.\nIt is an optional setting. By default, HAProxy Enterprise ignores STDERR messages.","properties":{"address":{"type":"string"},"facility":{"title":"Facility","type":"string"},"format":{"title":"Format","type":"string"},"global":{"title":"Global","type":"boolean"},"len":{"title":"Length","type":"integer"},"level":{"title":"Level","type":"string","x-dependency":{"facility":{"required":true}}},"minlevel":{"title":"Minimum level","type":"string","x-dependency":{"facility":{"required":true}}},"sample":{"properties":{"ranges":{"title":"Range","type":"string"},"size":{"title":"Size","type":"integer"}},"required":["ranges","size"],"title":"Sample","type":"object"}},"type":"object"},"fcgiPassHeader":{"description":"Specifies the name of a request header to pass to the FastCGI application.\nOptionally, you can follow it with an ACL-based condition, in which case the FastCGI application evaluates it only if the condition is true.\nMost request headers are already available to the FastCGI application with the prefix \"HTTP\".\nThus, you only need this directive to pass headers that are purposefully omitted.\nCurrently, the headers \"Authorization\", \"Proxy-Authorization\", and hop-by-hop headers are omitted.\nNote that the headers \"Content-type\" and \"Content-length\" never pass to the FastCGI application because they are already converted into parameters.","properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test"},"name":{"type":"string"}},"type":"object"},"fcgiSetParam":{"description":"Sets a FastCGI parameter to pass to this application.\nIts value, defined by \u003cformat\u003e can take a formatted string, the same as the log directive.\nOptionally, you can follow it with an ACL-based condition, in which case the FastCGI application evaluates it only if the condition is true.","properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test"},"format":{"type":"string"},"name":{"type":"string"}},"type":"object"},"filter":{"additionalProperties":false,"description":"HAProxy filters","example":{"index":0,"trace_name":"name","trace_rnd_parsing":true,"type":"trace"},"properties":{"app_name":{"description":"Name of the fcgi-app section this filter will use.","pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"fcgi-app"}}},"bandwidth_limit_name":{"description":"Filter name that will be used by 'set-bandwidth-limit' actions to reference a specific bandwidth limitation filter","pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["bwlim-in","bwlim-out"]}}},"cache_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"cache"}}},"default_limit":{"description":"The max number of bytes that can be forwarded over the period.\nThe value must be specified for per-stream and shared bandwidth limitation filters.\nIt follows the HAProxy size format and is expressed in bytes.","type":"integer","x-dependency":{"type":{"required":true,"value":["bwlim-in","bwlim-out"]}}},"default_period":{"description":"The default time period used to evaluate the bandwidth limitation rate.\nIt can be specified for per-stream bandwidth limitation filters only.\nIt follows the HAProxy time format and is expressed in milliseconds.","type":"integer","x-dependency":{"default_limit":{"required":true},"type":{"required":true,"value":["bwlim-in","bwlim-out"]}}},"index":{"nullable":true,"type":"integer"},"key":{"description":"A sample expression rule.\nIt describes what elements will be analyzed, extracted, combined, and used to select which table entry to update the counters.\nIt must be specified for shared bandwidth limitation filters only.","type":"string","x-dependency":{"limit":{"required":true},"type":{"required":true,"value":["bwlim-in","bwlim-out"]}}},"limit":{"description":"The max number of bytes that can be forwarded over the period.\nThe value must be specified for per-stream and shared bandwidth limitation filters.\nIt follows the HAProxy size format and is expressed in bytes.","type":"integer","x-dependency":{"type":{"required":true,"value":["bwlim-in","bwlim-out"]}}},"min_size":{"description":"The optional minimum number of bytes forwarded at a time by a stream excluding the last packet that may be smaller.\nThis value can be specified for per-stream and shared bandwidth limitation filters.\nIt follows the HAProxy size format and is expressed in bytes.","type":"integer","x-dependency":{"type":{"required":true,"value":["bwlim-in","bwlim-out"]}}},"spoe_config":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"spoe"}}},"spoe_engine":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"spoe"}}},"table":{"description":"An optional table to be used instead of the default one, which is the stick-table declared in the current proxy.\nIt can be specified for shared bandwidth limitation filters only.","type":"string","x-dependency":{"limit":{"required":true},"type":{"required":true,"value":["bwlim-in","bwlim-out"]}}},"trace_hexdump":{"type":"boolean","x-dependency":{"type":{"value":"trace"}}},"trace_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"trace"}}},"trace_rnd_forwarding":{"type":"boolean","x-dependency":{"type":{"value":"trace"}},"x-display-name":"Trace Random Forwarding"},"trace_rnd_parsing":{"type":"boolean","x-dependency":{"type":{"value":"trace"}},"x-display-name":"Trace Random Parsing"},"type":{"enum":["trace","compression","spoe","cache","fcgi-app","bwlim-in","bwlim-out"],"type":"string"}},"required":["index","type"],"title":"Filter","type":"object"},"filters":{"description":"HAProxy filters array (corresponds to filter directive)","items":{"$ref":"#/components/schemas/filter"},"title":"Filters Array","type":"array"},"forwardfor":{"properties":{"enabled":{"enum":["enabled"],"type":"string"},"except":{"pattern":"^[^\\s]+$","type":"string"},"header":{"pattern":"^[^\\s]+$","type":"string"},"ifnone":{"type":"boolean"}},"required":["enabled"],"type":"object","x-display-name":"ForwardFor"},"frontend":{"additionalProperties":false,"description":"HAProxy frontend configuration","example":{"default_backend":"test_backend","http_connection_mode":"http-keep-alive","maxconn":2000,"mode":"http","name":"test_frontend"},"properties":{"accept_invalid_http_request":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Accept Invalid HTTP Request"},"backlog":{"nullable":true,"type":"integer","x-display-name":"Backlog"},"bind_process":{"pattern":"^[^\\s]+$","type":"string"},"clflog":{"type":"boolean","x-dependency":{"mode":{"value":"http"}},"x-display-name":"CLF Log"},"client_fin_timeout":{"nullable":true,"type":"integer"},"client_timeout":{"nullable":true,"type":"integer"},"clitcpka":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"tcp"}},"x-display-name":"Client TCP Keep Alive"},"clitcpka_cnt":{"nullable":true,"type":"integer","x-display-name":"Clitcpka Cnt"},"clitcpka_idle":{"nullable":true,"type":"integer","x-display-name":"Clitcpka Idle"},"clitcpka_intvl":{"nullable":true,"type":"integer","x-display-name":"Clitcpka Intvl"},"compression":{"$ref":"#/components/schemas/compression"},"contstats":{"enum":["enabled"],"type":"string","x-display-name":"Continuous Statistics"},"default_backend":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string","x-dynamic-enum":{"operation":"getBackends","property":"name"}},"description":{"type":"string","x-display-name":"Description"},"disable_h2_upgrade":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Disable HTTP/2 Upgrade"},"disabled":{"type":"boolean"},"dontlog_normal":{"enum":["enabled","disabled"],"type":"string"},"dontlognull":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Don't Log Null"},"email_alert":{"$ref":"#/components/schemas/email_alert"},"enabled":{"type":"boolean"},"error_files":{"items":{"$ref":"#/components/schemas/errorfile"},"type":"array","x-go-name":"ErrorFiles","x-omitempty":true},"error_log_format":{"type":"string"},"errorfiles_from_http_errors":{"items":{"$ref":"#/components/schemas/errorfiles"},"type":"array","x-go-name":"ErrorFilesFromHTTPErrors","x-omitempty":true},"errorloc302":{"$ref":"#/components/schemas/errorloc"},"errorloc303":{"$ref":"#/components/schemas/errorloc"},"forwardfor":{"$ref":"#/components/schemas/forwardfor"},"from":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"h1_case_adjust_bogus_client":{"enum":["enabled","disabled"],"type":"string","x-display-name":"H1 Adjust Bogus Client"},"http-buffer-request":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP bufferrequest"},"http-use-htx":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP Use HTX"},"http_connection_mode":{"enum":["httpclose","http-server-close","http-keep-alive"],"type":"string","x-dependency":{"mode":{"value":"http"}}},"http_ignore_probes":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP Ignore Probes"},"http_keep_alive_timeout":{"nullable":true,"type":"integer","x-dependency":{"mode":{"value":"http"}}},"http_no_delay":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP No Delay"},"http_request_timeout":{"nullable":true,"type":"integer","x-dependency":{"mode":{"value":"http"}}},"http_restrict_req_hdr_names":{"enum":["preserve","delete","reject"],"type":"string","x-display-name":"Restrict HTTP Request Header Names"},"http_use_proxy_header":{"enum":["enabled","disabled"],"type":"string","x-display-name":"HTTP Use Proxy Header"},"httplog":{"type":"boolean","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP Log"},"httpslog":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Httpslog"},"id":{"nullable":true,"type":"integer"},"idle_close_on_response":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Idle Close On Response"},"independent_streams":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Independent Streams"},"log_format":{"type":"string"},"log_format_sd":{"type":"string","x-display-name":"Log Format SD"},"log_separate_errors":{"enum":["enabled","disabled"],"type":"string"},"log_tag":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"logasap":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Log ASAP"},"maxconn":{"nullable":true,"type":"integer","x-display-name":"Max Connections"},"mode":{"enum":["http","tcp"],"type":"string"},"monitor_fail":{"$ref":"#/components/schemas/monitor_fail"},"monitor_uri":{"$ref":"#/components/schemas/monitor_uri"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"nolinger":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Nolinger"},"originalto":{"$ref":"#/components/schemas/originalto"},"socket_stats":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Socket Stats"},"splice_auto":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Auto"},"splice_request":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Request"},"splice_response":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Splice Response"},"stats_options":{"$ref":"#/components/schemas/stats_options"},"stick_table":{"$ref":"#/components/schemas/config_stick_table"},"tarpit_timeout":{"nullable":true,"type":"integer"},"tcp_smart_accept":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Tcp Smart Accept"},"tcpka":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"mode":{"value":"tcp"}},"x-display-name":"TCP Keep Alive"},"tcplog":{"type":"boolean","x-dependency":{"mode":{"value":"tcp"}},"x-display-name":"TCP Log"},"unique_id_format":{"type":"string","x-display-name":"Unique ID format"},"unique_id_header":{"type":"string","x-dependency":{"unique_id_format":{"required":true}},"x-display-name":"Unique ID header"}},"required":["name"],"title":"Frontend","type":"object"},"frontends":{"description":"HAProxy frontends array","items":{"$ref":"#/components/schemas/frontend"},"title":"Frontends","type":"array"},"general_file":{"description":"General use file","properties":{"description":{"type":"string"},"file":{"type":"string"},"id":{"type":"string"},"storage_name":{"type":"string"}},"title":"General use file","type":"object"},"general_files":{"description":"Array of general use files","items":{"$ref":"#/components/schemas/general_file"},"title":"General Files Array","type":"array"},"global":{"additionalProperties":false,"description":"HAProxy global configuration","properties":{"anonkey":{"maximum":4294967295,"nullable":true,"type":"integer"},"busy_polling":{"type":"boolean"},"ca_base":{"type":"string","x-display-name":"SSL CA Certificates Base Directory"},"chroot":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Chroot"},"cpu_maps":{"items":{"properties":{"cpu_set":{"type":"string","x-display-name":"CPU Set"},"process":{"type":"string","x-display-name":"Process/Thread Set"}},"required":["process","cpu_set"],"type":"object","x-go-name":"CPUMap"},"type":"array","x-display-name":"CPU Maps","x-go-name":"CPUMaps","x-omitempty":true},"crt_base":{"type":"string","x-display-name":"SSL Certificates Base Directory"},"daemon":{"enum":["enabled","disabled"],"type":"string"},"default_path":{"properties":{"path":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"origin"}}},"type":{"enum":["current","config","parent","origin"],"type":"string"}},"required":["type"],"type":"object"},"description":{"type":"string","x-display-name":"Text that describes the instance"},"device_atlas_options":{"properties":{"json_file":{"type":"string","x-display-name":"JSON file"},"log_level":{"type":"string","x-display-name":"Log Level"},"properties_cookie":{"type":"string","x-display-name":"Properties Cookie"},"separator":{"type":"string","x-display-name":"Separator"}},"type":"object"},"expose_experimental_directives":{"type":"boolean"},"external_check":{"type":"boolean","x-display-name":"External Check"},"fifty_one_degrees_options":{"properties":{"cache_size":{"type":"integer","x-display-name":"Cache Size"},"data_file":{"type":"string","x-display-name":"Data File"},"property_name_list":{"type":"string","x-display-name":"Name List"},"property_separator":{"type":"string","x-display-name":"Property Separator"}},"type":"object"},"gid":{"type":"integer","x-display-name":"GID"},"grace":{"nullable":true,"type":"integer","x-display-name":"Defines a delay between SIGUSR1 and real soft-stop"},"group":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Group"},"h1_case_adjust":{"items":{"properties":{"from":{"type":"string"},"to":{"type":"string"}},"required":["from","to"],"type":"object","x-go-name":"H1CaseAdjust"},"type":"array","x-go-name":"H1CaseAdjusts","x-omitempty":true},"h1_case_adjust_file":{"type":"string"},"h2_workaround_bogus_websocket_clients":{"type":"boolean"},"hard_stop_after":{"nullable":true,"type":"integer","x-display-name":"Hard Stop After"},"insecure_fork_wanted":{"type":"boolean"},"insecure_setuid_wanted":{"type":"boolean"},"issuers_chain_path":{"type":"string"},"load_server_state_from_file":{"enum":["global","local","none"],"type":"string"},"localpeer":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Local instance's peer name."},"log_send_hostname":{"properties":{"enabled":{"enum":["enabled","disabled"],"type":"string"},"param":{"pattern":"^[^\\s]+$","type":"string"}},"required":["enabled"],"type":"object","x-display-name":"Log Send Hostname"},"lua_load_per_thread":{"type":"string"},"lua_loads":{"items":{"properties":{"file":{"pattern":"^[^\\s]+$","type":"string"}},"required":["file"],"type":"object","x-go-name":"LuaLoad"},"type":"array","x-omitempty":true},"lua_prepend_path":{"items":{"properties":{"path":{"pattern":"^[^\\s]+$","type":"string"},"type":{"enum":["path","cpath"],"type":"string"}},"required":["path"],"type":"object","x-go-name":"LuaPrependPath"},"type":"array","x-omitempty":true},"master-worker":{"type":"boolean","x-display-name":"Master Worker Mode"},"max_spread_checks":{"type":"integer"},"maxcompcpuusage":{"type":"integer","x-display-name":"Maximum HAProxy CPU usage"},"maxcomprate":{"type":"integer","x-display-name":"Maximum per-process input compression rate"},"maxconn":{"type":"integer","x-display-name":"Max Connections"},"maxconnrate":{"type":"integer","x-display-name":"Maximum per-process number of concurrent connections"},"maxpipes":{"type":"integer","x-display-name":"Maximum per-process number of pipes"},"maxsessrate":{"type":"integer","x-display-name":"Maximum per-process number of sessions per second"},"maxsslconn":{"type":"integer","x-display-name":"Maximum per-process number of concurrent SSL connections"},"maxsslrate":{"type":"integer","x-display-name":"Maximum per-process number of SSL sessions per second"},"maxzlibmem":{"type":"integer","x-display-name":"Maximum amount of RAM in megabytes per process usable by the zlib"},"mworker_max_reloads":{"nullable":true,"type":"integer","x-display-name":"The number of times a worker can survive a reload"},"nbproc":{"type":"integer","x-display-name":"Number of Processes"},"nbthread":{"type":"integer","x-display-name":"Number of Threads"},"node":{"type":"string"},"noepoll":{"type":"boolean","x-display-name":"Disable the use of the \"epoll\" event polling system on Linux"},"noevports":{"type":"boolean","x-display-name":"Disable the use of the event ports event polling system on SunOS system derived from Solaris 10 and later"},"nogetaddrinfo":{"type":"boolean","x-display-name":"Disable the use of getaddrinfo for name resolving"},"nokqueue":{"type":"boolean","x-display-name":"Disable the use of the \"kqueue\" event polling system on BSD"},"nopoll":{"type":"boolean","x-display-name":"Disable the use of the \"poll\" event polling system"},"noreuseport":{"type":"boolean","x-display-name":"Disable the use of SO_REUSEPORT"},"nosplice":{"type":"boolean","x-display-name":"Disable the use of kernel tcp splicing between sockets on Linux"},"numa_cpu_mapping":{"enum":["enabled","disabled"],"type":"string"},"pidfile":{"type":"string","x-display-name":"PID File"},"pp2_never_send_local":{"type":"boolean"},"presetenv":{"items":{"properties":{"name":{"type":"string","x-display-name":"Name"},"value":{"type":"string","x-display-name":"Value"}},"required":["name","value"],"type":"object","x-go-name":"PresetEnv"},"type":"array","x-display-name":"Preset environment variables","x-go-name":"PresetEnvs","x-omitempty":true},"profiling_tasks":{"enum":["auto","on","off"],"type":"string","x-display-name":"Enable or disables per-task CPU profiling"},"quiet":{"type":"boolean"},"resetenv":{"type":"string","x-display-name":"Remove all environment variables except the ones specified"},"runtime_apis":{"items":{"allOf":[{"$ref":"#/components/schemas/bind_params"}],"properties":{"address":{"pattern":"^[^\\s]+$","type":"string"}},"required":["address"],"type":"object","x-go-name":"RuntimeAPI"},"type":"array","x-display-name":"Runtime APIs","x-go-name":"RuntimeAPIs","x-omitempty":true},"server_state_base":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Server State Base"},"server_state_file":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Server State File"},"set_dumpable":{"type":"boolean"},"set_var":{"items":{"properties":{"expr":{"type":"string","x-display-name":"Expression"},"name":{"type":"string","x-display-name":"Name"}},"required":["name","expr"],"type":"object","x-go-name":"SetVar"},"type":"array","x-display-name":"Set variables","x-go-name":"SetVars","x-omitempty":true},"set_var_fmt":{"items":{"properties":{"format":{"type":"string","x-display-name":"Format"},"name":{"type":"string","x-display-name":"Name"}},"required":["name","format"],"type":"object","x-go-name":"SetVarFmt"},"type":"array","x-display-name":"Set variable formats","x-go-name":"SetVarFmts","x-omitempty":true},"setenv":{"items":{"properties":{"name":{"type":"string","x-display-name":"Name"},"value":{"type":"string","x-display-name":"Value"}},"required":["name","value"],"type":"object","x-go-name":"SetEnv"},"type":"array","x-display-name":"Set environment variables","x-go-name":"SetEnvs","x-omitempty":true},"spread_checks":{"type":"integer","x-display-name":"Add some randomness in the check interval"},"ssl_default_bind_ciphers":{"type":"string","x-display-name":"SSL Default Bind Ciphers"},"ssl_default_bind_ciphersuites":{"type":"string","x-display-name":"SSL Default Bind Ciphersuites"},"ssl_default_bind_curves":{"type":"string","x-display-name":"SSL Default Bind Curves"},"ssl_default_bind_options":{"type":"string","x-display-name":"SSL Default Bind Options"},"ssl_default_server_ciphers":{"type":"string","x-display-name":"SSL Default Server Ciphers"},"ssl_default_server_ciphersuites":{"type":"string","x-display-name":"SSL Default Server Ciphersuites"},"ssl_default_server_options":{"type":"string","x-display-name":"SSL Default Server Options"},"ssl_dh_param_file":{"type":"string"},"ssl_engines":{"items":{"properties":{"algorithms":{"nullable":true,"type":"string","x-display-name":"Algorithms"},"name":{"type":"string","x-display-name":"Name"}},"required":["name"],"type":"object","x-go-name":"SslEngine"},"type":"array","x-display-name":"SSL Engines","x-go-name":"SslEngines","x-omitempty":true},"ssl_load_extra_files":{"type":"string","x-display-name":"SSL Load Extra Files"},"ssl_mode_async":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Asynchronous TLS I/O operations"},"ssl_server_verify":{"enum":["none","required"],"type":"string","x-display-name":"Verify server certificates"},"ssl_skip_self_issued_ca":{"type":"boolean","x-display-name":"Self issued CA, aka x509 root CA"},"stats_maxconn":{"nullable":true,"type":"integer","x-display-name":"Stats maxconn"},"stats_timeout":{"nullable":true,"type":"integer"},"strict_limits":{"type":"boolean"},"thread_group_lines":{"items":{"properties":{"group":{"type":"string","x-display-name":"Group"},"num_or_range":{"type":"string","x-display-name":"Number or Range"}},"required":["group","num_or_range"],"type":"object","x-go-name":"ThreadGroup"},"type":"array","x-display-name":"Thread Groups","x-go-name":"ThreadGroupLines","x-omitempty":true},"thread_groups":{"type":"integer","x-display-name":"Number of Thread Groups"},"tune_options":{"properties":{"buffers_limit":{"nullable":true,"type":"integer","x-display-name":"Buffers Limit"},"buffers_reserve":{"minimum":2,"type":"integer","x-display-name":"Buffers Reserve"},"bufsize":{"type":"integer","x-display-name":"Buffer Size"},"comp_maxlevel":{"type":"integer","x-display-name":"Maximum Compression Level"},"fail_alloc":{"type":"boolean","x-display-name":"Failed Allocation Chance"},"fd_edge_triggered":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Edge-triggered polling mode"},"h2_header_table_size":{"maximum":65535,"type":"integer","x-display-name":"HTTP/2 Dynamic Header Table Size"},"h2_initial_window_size":{"nullable":true,"type":"integer","x-display-name":"HTTP/2 Initial Window Size"},"h2_max_concurrent_streams":{"type":"integer","x-display-name":"HTTP/2 Maximum Number of Concurrent Streams"},"h2_max_frame_size":{"type":"integer","x-display-name":"HTTP/2 Maximum Frame Size"},"http_cookielen":{"type":"integer","x-display-name":"Maximum Cookie Length"},"http_logurilen":{"type":"integer","x-display-name":"Maximum URI Length"},"http_maxhdr":{"maximum":32767,"minimum":1,"type":"integer","x-display-name":"Maximum Number of Headers"},"idle_pool_shared":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Share Idle Connections"},"idletimer":{"maximum":65535,"nullable":true,"type":"integer","x-display-name":"Idle Stream Duration"},"listener_multi_queue":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Listener Multi Queue Accept"},"lua_forced_yield":{"type":"integer","x-display-name":"Lua Forced Yield"},"lua_maxmem":{"type":"boolean","x-display-name":"Lua Maximum Memory Usage"},"lua_service_timeout":{"nullable":true,"type":"integer","x-display-name":"Lua Service timeout"},"lua_session_timeout":{"nullable":true,"type":"integer","x-display-name":"Lua Session Timeout"},"lua_task_timeout":{"nullable":true,"type":"integer","x-display-name":"Lua Task Timeout"},"maxaccept":{"type":"integer","x-display-name":"Maximum Accept Events"},"maxpollevents":{"type":"integer","x-display-name":"Maximum Polled Events"},"maxrewrite":{"type":"integer","x-display-name":"Maximum Rewrite Space"},"pattern_cache_size":{"nullable":true,"type":"integer","x-display-name":"Pattern Lookup Cache Size"},"peers_max_updates_at_once":{"type":"integer","x-display-name":"Maximum number of stick-table updates at once"},"pipesize":{"type":"integer","x-display-name":"Pipe Buffer Size"},"pool_high_fd_ratio":{"type":"integer","x-display-name":"Max Used High FD Ratio"},"pool_low_fd_ratio":{"type":"integer","x-display-name":"Max Used Low FD Ratio"},"rcvbuf_client":{"nullable":true,"type":"integer","x-display-name":"Receive Buffer Client Size"},"rcvbuf_server":{"nullable":true,"type":"integer","x-display-name":"Receive Buffer Server Size"},"recv_enough":{"type":"integer","x-display-name":"Recieve Enough Socket Buffer Size"},"runqueue_depth":{"type":"integer","x-display-name":"Max Tasks in Run Queue"},"sched_low_latency":{"enum":["enabled","disabled"],"type":"string","x-display-name":"Low Latency Task Scheduler"},"sndbuf_client":{"nullable":true,"type":"integer","x-display-name":"Send Buffer Client Size"},"sndbuf_server":{"nullable":true,"type":"integer","x-display-name":"Send Buffer Server Size"},"ssl_cachesize":{"nullable":true,"type":"integer","x-display-name":"SSL Cache Size"},"ssl_capture_buffer_size":{"nullable":true,"type":"integer","x-display-name":"SSL Maximum Size of Cipherlist Buffer"},"ssl_ctx_cache_size":{"type":"integer","x-display-name":"SSL Number of Certificates in Cache"},"ssl_default_dh_param":{"type":"integer","x-display-name":"SSL Default DH Parameter Size"},"ssl_force_private_cache":{"type":"boolean","x-display-name":"SSL Force Private Cache"},"ssl_keylog":{"enum":["enabled","disabled"],"type":"string","x-display-name":"SSL Log TLS Keys"},"ssl_lifetime":{"nullable":true,"type":"integer","x-display-name":"SSL Session Lifetime"},"ssl_maxrecord":{"nullable":true,"type":"integer","x-display-name":"SSL Maximum Size"},"vars_global_max_size":{"nullable":true,"type":"integer","x-display-name":"Variables Global Max Size"},"vars_proc_max_size":{"nullable":true,"type":"integer","x-display-name":"Variables Process Max Size"},"vars_reqres_max_size":{"nullable":true,"type":"integer","x-display-name":"Variables Request/Response Max Size"},"vars_sess_max_size":{"nullable":true,"type":"integer","x-display-name":"Variables Session Max Size"},"vars_txn_max_size":{"nullable":true,"type":"integer","x-display-name":"Variables Transaction Max Size"},"zlib_memlevel":{"maximum":9,"minimum":1,"type":"integer","x-display-name":"Zlib Memory Level"},"zlib_windowsize":{"maximum":15,"minimum":8,"type":"integer","x-display-name":"Zlib Window Size"}},"type":"object"},"tune_ssl_default_dh_param":{"type":"integer","x-deprecated":true,"x-display-name":"SSL Default DH Parameter Size"},"uid":{"type":"integer","x-display-name":"UID"},"ulimit_n":{"type":"integer"},"unsetenv":{"type":"string","x-display-name":"Removes environment variables specified in arguments"},"user":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"User"},"wurfl_options":{"properties":{"cache_size":{"type":"integer","x-display-name":"Sets the WURFL Useragent cache size"},"data_file":{"type":"string","x-display-name":"The path of the WURFL data file"},"information_list":{"type":"string","x-display-name":"A space-delimited list of WURFL capabilities"},"information_list_separator":{"type":"string","x-display-name":"A char that will be used to separate values in a response header containing WURFL results"},"patch_file":{"type":"string","x-display-name":"A list of WURFL patch file paths"}},"type":"object"},"zero_warning":{"type":"boolean"}},"title":"Global","type":"object"},"group":{"description":"HAProxy userlist group","properties":{"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"users":{"type":"string"}},"required":["name"],"title":"Group","type":"object"},"groups":{"description":"HAProxy userlist groups array","items":{"$ref":"#/components/schemas/group"},"title":"Groups","type":"array"},"hash_type":{"properties":{"function":{"enum":["sdbm","djb2","wt6","crc32"],"type":"string"},"method":{"enum":["map-based","consistent"],"type":"string"},"modifier":{"enum":["avalanche"],"type":"string"}},"type":"object"},"health":{"properties":{"haproxy":{"enum":["up","down","unknown"],"type":"string"}},"type":"object"},"http_after_response_rule":{"additionalProperties":false,"description":"HAProxy HTTP after response rule configuration (corresponds to http-after-response directives)","example":{"cond":"unless","cond_test":"{ src 192.168.0.0/16 }","hdr_format":"max-age=31536000","hdr_name":"Strict-Transport-Security","index":0,"type":"set-header"},"properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"hdr_format":{"type":"string","x-dependency":{"type":{"required":true,"value":["replace-header","replace-value","set-header","add-header"]}},"x-display-name":"Header Format"},"hdr_match":{"type":"string","x-dependency":{"type":{"required":true,"value":["replace-header","replace-value"]}},"x-display-name":"Header Match"},"hdr_method":{"type":"string","x-dependency":{"type":{"value":["del-header"]}},"x-display-name":"Header Match Method"},"hdr_name":{"type":"string","x-dependency":{"type":{"required":true,"value":["add-header","replace-header","del-header","set-header","replace-value"]}},"x-display-name":"Header Name"},"index":{"nullable":true,"type":"integer"},"status":{"maximum":999,"minimum":100,"type":"integer","x-dependency":{"type":{"required":true,"value":"set-status"}}},"status_reason":{"type":"string","x-dependency":{"type":{"value":"set-status"}}},"strict_mode":{"enum":["on","off"],"type":"string","x-dependency":{"type":{"required":true,"value":"strict-mode"}}},"type":{"enum":["add-header","allow","del-header","replace-header","replace-value","set-header","set-status","set-var","strict-mode","unset-var"],"type":"string"},"var_expr":{"type":"string","x-dependency":{"type":{"required":true,"value":"set-var"}},"x-display-name":"Var Expression"},"var_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-var","unset-var"]}}},"var_scope":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-var","unset-var"]}}}},"required":["index","type"],"title":"HTTP after Response Rule","type":"object"},"http_after_response_rules":{"description":"HAProxy HTTP after response rules array (corresponds to http-after-response directives)","items":{"$ref":"#/components/schemas/http_after_response_rule"},"title":"HTTP After Response Rules Array","type":"array"},"http_check":{"properties":{"addr":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"connect"}}},"alpn":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"connect"}},"x-display-name":"ALPN Protocols"},"body":{"type":"string","x-dependency":{"type":{"value":"send"}}},"body_log_format":{"type":"string","x-dependency":{"type":{"value":"send"}}},"check_comment":{"type":"string","x-dependency":{"type":{"value":["comment","connect","expect","send"]}}},"default":{"type":"boolean","x-dependency":{"type":{"value":"connect"}}},"error_status":{"enum":["L7OKC","L7RSP","L7STS","L6RSP","L4CON"],"type":"string","x-dependency":{"type":{"value":"expect"}}},"exclamation_mark":{"type":"boolean","x-dependency":{"type":{"value":"expect"}},"x-display-name":"Expect Exclamation Mark"},"headers":{"items":{"$ref":"#/components/schemas/return_header"},"type":"array","x-dependency":{"type":{"value":"send"}},"x-go-name":"CheckHeaders","x-omitempty":true},"index":{"nullable":true,"type":"integer"},"linger":{"type":"boolean","x-dependency":{"type":{"value":"connect"}}},"match":{"enum":["status","rstatus","hdr","fhdr","string","rstring"],"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"expect"}},"x-display-name":"Expect Match"},"method":{"type":"string","x-dependency":{"type":{"value":"send"}}},"min_recv":{"nullable":true,"type":"integer","x-dependency":{"type":{"value":"expect"}}},"ok_status":{"enum":["L7OK","L7OKC","L6OK","L4OK"],"type":"string","x-dependency":{"type":{"value":"expect"}}},"on_error":{"type":"string","x-dependency":{"type":{"value":"expect"}}},"on_success":{"type":"string","x-dependency":{"type":{"value":"expect"}}},"pattern":{"type":"string","x-dependency":{"type":{"required":true,"value":"expect"}}},"port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer","x-dependency":{"type":{"value":"connect"}}},"port_string":{"type":"string","x-dependency":{"type":{"value":"connect"}}},"proto":{"type":"string","x-dependency":{"type":{"value":"connect"}}},"send_proxy":{"type":"boolean","x-dependency":{"type":{"value":"connect"}}},"sni":{"type":"string","x-dependency":{"type":{"value":"connect"}}},"ssl":{"type":"boolean","x-dependency":{"type":{"value":"connect"}}},"status-code":{"type":"string","x-dependency":{"type":{"value":"expect"}}},"tout_status":{"enum":["L7TOUT","L6TOUT","L4TOUT"],"type":"string","x-dependency":{"type":{"value":"expect"}}},"type":{"enum":["comment","connect","disable-on-404","expect","send","send-state","set-var","set-var-fmt","unset-var"],"type":"string"},"uri":{"type":"string","x-dependency":{"type":{"value":"send"}}},"uri_log_format":{"type":"string","x-dependency":{"type":{"value":"send"}}},"var_expr":{"type":"string","x-dependency":{"type":{"required":true,"value":["set-var"]}},"x-display-name":"Var Expression"},"var_format":{"type":"string","x-dependency":{"type":{"required":true,"value":["set-var-fmt"]}},"x-display-name":"Var Format"},"var_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-var","set-var-fmt","unset-var"]}}},"var_scope":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-var","set-var-fmt","unset-var"]}}},"version":{"type":"string","x-dependency":{"type":{"value":"send"}}},"via_socks4":{"type":"boolean","x-dependency":{"type":{"value":"connect"}}}},"required":["index","type"],"title":"HTTP Check","type":"object"},"http_checks":{"items":{"$ref":"#/components/schemas/http_check"},"title":"HTTP Checks Array","type":"array"},"http_error_rule":{"additionalProperties":false,"description":"HAProxy HTTP error rule configuration (corresponds to http-error directives)","example":{"hdr_format":"%T","hdr_name":"X-Haproxy-Current-Date","index":0,"status":425,"type":"status"},"properties":{"index":{"nullable":true,"type":"integer"},"return_content":{"type":"string","x-dependency":{"return_content_format":{"required":true,"value":["errofile","errorfiles","file","lf-file","string","lf-string"]}}},"return_content_format":{"enum":["default-errorfile","errorfile","errorfiles","file","lf-file","string","lf-string"],"type":"string","x-dependency":{"type":{"value":"status"}}},"return_content_type":{"nullable":true,"type":"string","x-dependency":{"type":{"value":"status"}},"x-display-name":"Return content type"},"return_hdrs":{"items":{"$ref":"#/components/schemas/return_header"},"type":"array","x-dependency":{"return_content_format":{"value":["file","lf-file","string","lf-string"]}},"x-go-name":"ReturnHeaders","x-omitempty":true},"status":{"enum":[200,400,401,403,404,405,407,408,410,413,425,429,500,501,502,503,504],"type":"integer","x-dependency":{"type":{"required":true,"value":"status"}}},"type":{"enum":["status"],"type":"string"}},"required":["index","type","status"],"title":"HTTP Error Rule","type":"object"},"http_error_rules":{"description":"HAProxy HTTP error rules array (corresponds to http-error directives)","items":{"$ref":"#/components/schemas/http_error_rule"},"title":"HTTP Error Rules Array","type":"array"},"http_errors_section":{"additionalProperties":false,"description":"A globally declared group of HTTP errors","example":{"error_files":[{"code":400,"name":"/etc/haproxy/errorfiles/site1/400.http"},{"code":404,"name":"/etc/haproxy/errorfiles/site1/404.http"}],"name":"website-1"},"properties":{"error_files":{"items":{"$ref":"#/components/schemas/errorfile"},"type":"array","x-go-name":"ErrorFiles"},"name":{"pattern":"^[A-Za-z0-9-_]+$","type":"string"}},"required":["name","error_files"],"title":"http-errors section","type":"object"},"http_errors_sections":{"description":"An array of HAProxy http-error sections","items":{"$ref":"#/components/schemas/http_errors_section"},"title":"http-errors sections","type":"array"},"http_request_rule":{"additionalProperties":false,"description":"HAProxy HTTP request rule configuration (corresponds to http-request directives)","example":{"cond":"unless","cond_test":"{ src 192.168.0.0/16 }","hdr_format":"%T","hdr_name":"X-Haproxy-Current-Date","index":0,"type":"add-header"},"properties":{"acl_file":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["add-acl","del-acl"]}},"x-display-name":"ACL File"},"acl_keyfmt":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["add-acl","del-acl"]}},"x-display-name":"ACL Key Format"},"auth_realm":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"auth"}},"x-display-name":"Authentication Realm"},"bandwidth_limit_limit":{"type":"string","x-dependency":{"type":{"value":"set-bandwidth-limit"}},"x-display-name":"Standard HAProxy expression"},"bandwidth_limit_name":{"type":"string","x-dependency":{"type":{"value":"set-bandwidth-limit"}},"x-display-name":"Bandwidth limit name"},"bandwidth_limit_period":{"type":"string","x-dependency":{"type":{"value":"set-bandwidth-limit"}},"x-display-name":"Standard HAProxy expression"},"cache_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"cache-use"}},"x-display-name":"Cache Name"},"capture_id":{"nullable":true,"type":"integer","x-dependency":{"type":{"value":"capture"}},"x-display-name":"Capture SlotID"},"capture_len":{"type":"integer","x-dependency":{"type":{"required":true,"value":"capture"}},"x-display-name":"Capture Len"},"capture_sample":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"capture"}},"x-display-name":"Capture Sample"},"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"deny_status":{"maximum":599,"minimum":200,"nullable":true,"type":"integer","x-dependency":{"type":{"value":["deny","tarpit"]}}},"expr":{"type":"string","x-dependency":{"type":{"required":true,"value":["do-resolve","set-dst","set-dst-port","set-priority-class","set-priority-offset","set-src","set-src-port"]}},"x-display-name":"Standard HAProxy expression"},"hdr_format":{"type":"string","x-dependency":{"type":{"required":true,"value":["replace-header","replace-value","set-header","add-header"]}},"x-display-name":"Header Format"},"hdr_match":{"type":"string","x-dependency":{"type":{"required":true,"value":["replace-header","replace-value"]}},"x-display-name":"Header Match"},"hdr_method":{"type":"string","x-dependency":{"type":{"value":["del-header"]}},"x-display-name":"Header Match Method"},"hdr_name":{"type":"string","x-dependency":{"type":{"required":true,"value":["add-header","replace-header","del-header","set-header","replace-value"]}},"x-display-name":"Header Name"},"hint_format":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"early-hint"}},"x-display-name":"Hint Format"},"hint_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"early-hint"}},"x-display-name":"Hint Name"},"index":{"nullable":true,"type":"integer"},"log_level":{"enum":["emerg","alert","crit","err","warning","notice","info","debug","silent"],"type":"string","x-dependency":{"type":{"required":true,"value":"set-log-level"}}},"lua_action":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"lua"}}},"lua_params":{"type":"string","x-dependency":{"type":{"value":"lua"}}},"map_file":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-map","del-map"]}}},"map_keyfmt":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-map","del-map"]}},"x-display-name":"Map Key Format"},"map_valuefmt":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"set-map"}},"x-display-name":"Map Value Format"},"mark_value":{"pattern":"^(0x[0-9A-Fa-f]+|[0-9]+)$","type":"string","x-dependency":{"type":{"required":true,"value":"set-mark"}},"x-display-name":"Mark Value"},"method_fmt":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"set-method"}}},"nice_value":{"maximum":1024,"minimum":-1024,"type":"integer","x-dependency":{"type":{"required":true,"value":"set-nice"}},"x-display-name":"Nice Value"},"normalizer":{"enum":["fragment-encode","fragment-strip","path-merge-slashes","path-strip-dot","path-strip-dotdot","percent-decode-unreserved","percent-to-upercase","query-sort-by-name"],"type":"string","x-dependency":{"type":{"required":true,"value":"normalize-uri"}}},"normalizer_full":{"type":"boolean","x-dependency":{"normalizer":{"value":"path-strip-dotdot"},"type":{"value":"normalize-uri"}}},"normalizer_strict":{"type":"boolean","x-dependency":{"normalizer":{"value":["percent-decode-unreserved","percent-to-upercase"]},"type":{"value":"normalize-uri"}}},"path_fmt":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-path","set-pathq","replace-path","replace-pathq"]}}},"path_match":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-path","set-pathq","replace-path","replace-pathq"]}}},"protocol":{"enum":["ipv4","ipv6"],"type":"string","x-dependency":{"type":{"required":false,"value":"do-resolve"}},"x-display-name":"Protocol"},"query-fmt":{"type":"string","x-dependency":{"type":{"required":true,"value":"set-query"}}},"redir_code":{"enum":[301,302,303,307,308],"nullable":true,"type":"integer","x-dependency":{"type":{"value":"redirect"}},"x-display-name":"Redirect Code"},"redir_option":{"type":"string","x-dependency":{"type":{"required":true,"value":"redirect"}},"x-display-name":"Redirect Option"},"redir_type":{"enum":["location","prefix","scheme"],"type":"string","x-dependency":{"type":{"required":true,"value":"redirect"}},"x-display-name":"Redirect Type"},"redir_value":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"redirect"}},"x-display-name":"Redirect Value"},"resolvers":{"type":"string","x-dependency":{"type":{"required":true,"value":"do-resolve"}},"x-display-name":"Resolvers"},"return_content":{"type":"string","x-dependency":{"return_content_format":{"required":true,"value":["errofile","errorfiles","file","lf-file","string","lf-string"]}}},"return_content_format":{"enum":["default-errorfile","errorfile","errorfiles","file","lf-file","string","lf-string"],"type":"string","x-dependency":{"type":{"value":["deny","tarpit","return"]}}},"return_content_type":{"nullable":true,"type":"string","x-dependency":{"type":{"value":["deny","tarpit","return"]}},"x-display-name":"Return content type"},"return_hdrs":{"items":{"$ref":"#/components/schemas/return_header"},"type":"array","x-dependency":{"return_content_format":{"value":["file","lf-file","string","lf-string"]}},"x-go-name":"ReturnHeaders","x-omitempty":true},"return_status_code":{"maximum":599,"minimum":200,"nullable":true,"type":"integer","x-dependency":{"type":{"value":"return"}},"x-display-name":"Return Error Code"},"sc_expr":{"type":"string","x-dependency":{"type":{"required":true,"value":"sc-set-gpt0"}},"x-display-name":"ScSet Expression Value"},"sc_id":{"type":"integer","x-dependency":{"type":{"required":true,"value":["sc-inc-gpc0","sc-inc-gpc1","sc-set-gpt0"]}}},"sc_int":{"nullable":true,"type":"integer","x-dependency":{"type":{"required":true,"value":"sc-set-gpt0"}},"x-display-name":"ScSet Integer Value"},"service_name":{"type":"string","x-dependency":{"type":{"required":true,"value":"use-service"}}},"spoe_engine":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"send-spoe-group"}},"x-display-name":"SPOE Engine"},"spoe_group":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"send-spoe-group"}},"x-display-name":"SPOE Group"},"strict_mode":{"enum":["on","off"],"type":"string","x-dependency":{"type":{"required":true,"value":"strict-mode"}}},"timeout":{"type":"string","x-dependency":{"type":{"required":true,"value":"set-timeout"}}},"timeout_type":{"enum":["server","tunnel"],"type":"string","x-dependency":{"type":{"required":true,"value":"set-timeout"}}},"tos_value":{"pattern":"^(0x[0-9A-Fa-f]+|[0-9]+)$","type":"string","x-dependency":{"type":{"required":true,"value":"set-tos"}},"x-display-name":"Tos Value"},"track-sc0-key":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"track-sc0"}},"x-display-name":"track-sc0 Key"},"track-sc0-table":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"track-sc0"}},"x-display-name":"track-sc0 Table"},"track-sc1-key":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"track-sc1"}},"x-display-name":"track-sc1 Key"},"track-sc1-table":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"track-sc1"}},"x-display-name":"track-sc1 Table"},"track-sc2-key":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"track-sc2"}},"x-display-name":"track-sc2 Key"},"track-sc2-table":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"track-sc2"}},"x-display-name":"track-sc2 Table"},"type":{"enum":["add-acl","add-header","allow","auth","cache-use","capture","del-acl","del-header","del-map","deny","disable-l7-retry","do-resolve","early-hint","normalize-uri","redirect","reject","replace-header","replace-path","replace-pathq","replace-uri","replace-value","return","sc-inc-gpc0","sc-inc-gpc1","sc-set-gpt0","send-spoe-group","set-dst","set-dst-port","set-header","set-log-level","set-map","set-mark","set-method","set-nice","set-path","set-pathq","set-priority-class","set-priority-offset","set-query","set-src","set-src-port","set-timeout","set-tos","set-uri","set-var","silent-drop","strict-mode","tarpit","track-sc0","track-sc1","track-sc2","unset-var","use-service","wait-for-body","wait-for-handshake","set-bandwidth-limit"],"type":"string"},"uri-fmt":{"type":"string","x-dependency":{"type":{"required":true,"value":["set-uri","replace-uri"]}}},"uri-match":{"type":"string","x-dependency":{"type":{"required":true,"value":"replace-uri"}}},"var_expr":{"type":"string","x-dependency":{"type":{"required":true,"value":"set-var"}},"x-display-name":"Var Expression"},"var_format":{"type":"string","x-dependency":{"type":{"required":true,"value":"set-var-fmt"}},"x-display-name":"Var Format"},"var_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-var","set-var-fmt","do-resolve","unset-var"]}}},"var_scope":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-var","set-var-fmt","unset-var"]}}},"wait_at_least":{"nullable":true,"type":"integer","x-dependency":{"type":{"value":"wait-for-body"}}},"wait_time":{"nullable":true,"type":"integer","x-dependency":{"type":{"required":true,"value":"wait-for-body"}}}},"required":["index","type"],"title":"HTTP Request Rule","type":"object"},"http_request_rules":{"description":"HAProxy HTTP request rules array (corresponds to http-request directives)","items":{"$ref":"#/components/schemas/http_request_rule"},"title":"HTTP Request Rules Array","type":"array"},"http_response_rule":{"additionalProperties":false,"description":"HAProxy HTTP response rule configuration (corresponds to http-response directives)","example":{"cond":"unless","cond_test":"{ src 192.168.0.0/16 }","hdr_format":"%T","hdr_name":"X-Haproxy-Current-Date","index":0,"type":"add-header"},"properties":{"acl_file":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["add-acl","del-acl"]}}},"acl_keyfmt":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["add-acl","del-acl"]}},"x-display-name":"ACK Key Format"},"bandwidth_limit_limit":{"type":"string","x-dependency":{"type":{"value":"set-bandwidth-limit"}},"x-display-name":"Standard HAProxy expression"},"bandwidth_limit_name":{"type":"string","x-dependency":{"type":{"value":"set-bandwidth-limit"}},"x-display-name":"Bandwidth limit name"},"bandwidth_limit_period":{"type":"string","x-dependency":{"type":{"value":"set-bandwidth-limit"}},"x-display-name":"Standard HAProxy expression"},"cache_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"cache-store"}},"x-display-name":"Cache Name"},"capture_id":{"nullable":true,"type":"integer","x-dependency":{"type":{"required":true,"value":"capture"}},"x-display-name":"Capture SlotID"},"capture_sample":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"capture"}},"x-display-name":"Capture Sample"},"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"deny_status":{"maximum":599,"minimum":200,"nullable":true,"type":"integer","x-dependency":{"type":{"value":"deny"}}},"hdr_format":{"type":"string","x-dependency":{"type":{"required":true,"value":["replace-header","replace-value","set-header","add-header"]}},"x-display-name":"Header Format"},"hdr_match":{"type":"string","x-dependency":{"type":{"required":true,"value":["replace-header","replace-value"]}},"x-display-name":"Header Match"},"hdr_method":{"type":"string","x-dependency":{"type":{"value":["del-header"]}},"x-display-name":"Header Match Method"},"hdr_name":{"type":"string","x-dependency":{"type":{"required":true,"value":["add-header","replace-header","del-header","set-header","replace-value"]}},"x-display-name":"Header Name"},"index":{"nullable":true,"type":"integer"},"log_level":{"enum":["emerg","alert","crit","err","warning","notice","info","debug","silent"],"type":"string","x-dependency":{"type":{"required":true,"value":"set-log-level"}}},"lua_action":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"lua"}}},"lua_params":{"type":"string","x-dependency":{"type":{"value":"lua"}}},"map_file":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-map","del-map"]}}},"map_keyfmt":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-map","del-map"]}},"x-display-name":"Map Key Format"},"map_valuefmt":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"set-map"}},"x-display-name":"Map Value Format"},"mark_value":{"pattern":"^(0x[0-9A-Fa-f]+|[0-9]+)$","type":"string","x-dependency":{"type":{"required":true,"value":"set-mark"}},"x-display-name":"Mark Value"},"nice_value":{"maximum":1024,"minimum":-1024,"type":"integer","x-dependency":{"type":{"required":true,"value":"set-nice"}},"x-display-name":"Nice Value"},"redir_code":{"enum":[301,302,303,307,308],"nullable":true,"type":"integer","x-dependency":{"type":{"value":"redirect"}},"x-display-name":"Redirect Code"},"redir_option":{"type":"string","x-dependency":{"type":{"required":true,"value":"redirect"}},"x-display-name":"Redirect Option"},"redir_type":{"enum":["location","prefix","scheme"],"type":"string","x-dependency":{"type":{"required":true,"value":"redirect"}},"x-display-name":"Redirect Type"},"redir_value":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"redirect"}},"x-display-name":"Redirect Value"},"return_content":{"type":"string","x-dependency":{"return_content_format":{"required":true,"value":["errofile","errorfiles","file","lf-file","string","lf-string"]}}},"return_content_format":{"enum":["default-errorfile","errorfile","errorfiles","file","lf-file","string","lf-string"],"type":"string","x-dependency":{"type":{"value":["deny","return"]}}},"return_content_type":{"nullable":true,"type":"string","x-dependency":{"type":{"value":["deny","return"]}},"x-display-name":"Return content type"},"return_hdrs":{"items":{"$ref":"#/components/schemas/return_header"},"type":"array","x-dependency":{"return_content_format":{"value":["file","lf-file","string","lf-string"]}},"x-go-name":"ReturnHeaders","x-omitempty":true},"return_status_code":{"maximum":599,"minimum":200,"nullable":true,"type":"integer","x-dependency":{"type":{"value":"return"}},"x-display-name":"Return Error Code"},"sc_expr":{"type":"string","x-dependency":{"type":{"required":true,"value":"sc-set-gpt0"}},"x-display-name":"ScSet Expression Value"},"sc_id":{"type":"integer","x-dependency":{"type":{"required":true,"value":["sc-inc-gpc0","sc-inc-gpc1","sc-set-gpt0"]}}},"sc_int":{"nullable":true,"type":"integer","x-dependency":{"type":{"required":true,"value":"sc-set-gpt0"}},"x-display-name":"ScSet Integer Value"},"spoe_engine":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"send-spoe-group"}}},"spoe_group":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"send-spoe-group"}}},"status":{"maximum":999,"minimum":100,"type":"integer","x-dependency":{"type":{"required":true,"value":"set-status"}}},"status_reason":{"type":"string","x-dependency":{"type":{"value":"set-status"}}},"strict_mode":{"enum":["on","off"],"type":"string","x-dependency":{"type":{"required":true,"value":"strict-mode"}}},"tos_value":{"pattern":"^(0x[0-9A-Fa-f]+|[0-9]+)$","type":"string","x-dependency":{"type":{"required":true,"value":"set-tos"}},"x-display-name":"Tos Value"},"track-sc0-key":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"track-sc0"}},"x-display-name":"track-sc0 Key"},"track-sc0-table":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"track-sc0"}},"x-display-name":"track-sc0 Table"},"track-sc1-key":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"track-sc1"}},"x-display-name":"track-sc1 Key"},"track-sc1-table":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"track-sc1"}},"x-display-name":"track-sc1 Table"},"track-sc2-key":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":"track-sc2"}},"x-display-name":"track-sc2 Key"},"track-sc2-table":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"track-sc2"}},"x-display-name":"track-sc2 Table"},"type":{"enum":["add-acl","add-header","allow","cache-store","capture","del-acl","del-header","del-map","deny","redirect","replace-header","replace-value","return","sc-inc-gpc0","sc-inc-gpc1","sc-set-gpt0","send-spoe-group","set-header","set-log-level","set-map","set-mark","set-nice","set-status","set-tos","set-var","set-var-fmt","silent-drop","strict-mode","track-sc0","track-sc1","track-sc2","unset-var","wait-for-body","set-bandwidth-limit"],"type":"string"},"var_expr":{"type":"string","x-dependency":{"type":{"required":true,"value":"set-var"}},"x-display-name":"Var Expression"},"var_format":{"type":"string","x-dependency":{"type":{"required":true,"value":"set-var-fmt"}},"x-display-name":"Var Format"},"var_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-var","set-var-fmt","unset-var"]}}},"var_scope":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"required":true,"value":["set-var","set-var-fmt","unset-var"]}}},"wait_at_least":{"nullable":true,"type":"integer","x-dependency":{"type":{"value":"wait-for-body"}}},"wait_time":{"nullable":true,"type":"integer","x-dependency":{"type":{"required":true,"value":"wait-for-body"}}}},"required":["index","type"],"title":"HTTP Response Rule","type":"object"},"http_response_rules":{"description":"HAProxy HTTP response rules array (corresponds to http-response directives)","items":{"$ref":"#/components/schemas/http_response_rule"},"title":"HTTP Response Rules Array","type":"array"},"httpchk_params":{"properties":{"method":{"enum":["HEAD","PUT","POST","GET","TRACE","PATCH"],"type":"string"},"uri":{"pattern":"^[^ ]*$","type":"string"},"version":{"type":"string"}},"type":"object","x-display-name":"HTTP Check"},"info":{"description":"General API, OS and hardware information","example":{"api":{"build_date":"2019-08-21T17:31:56.000Z","version":"v1.2.1 45a3288.dev"},"system":{"cpu_info":{"model":"Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz","num_cpus":4},"hostname":"test","mem_info":{"dataplaneapi_memory":44755536,"free_memory":5790642176,"total_memory":16681517056},"os_string":"Linux 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019","time":1566401525,"uptime":87340}},"properties":{"api":{"properties":{"build_date":{"description":"HAProxy Dataplane API build date","format":"date-time","type":"string"},"version":{"description":"HAProxy Dataplane API version string","type":"string"}},"type":"object"},"system":{"properties":{"cpu_info":{"properties":{"model":{"type":"string"},"num_cpus":{"description":"Number of logical CPUs","type":"integer"}},"type":"object"},"hostname":{"description":"Hostname where the HAProxy is running","type":"string"},"mem_info":{"properties":{"dataplaneapi_memory":{"type":"integer"},"free_memory":{"type":"integer"},"total_memory":{"type":"integer"}},"type":"object"},"os_string":{"description":"OS string","type":"string"},"time":{"description":"Current time in milliseconds since Epoch.","type":"integer"},"uptime":{"description":"System uptime","nullable":true,"type":"integer"}},"type":"object"}},"title":"Information","type":"object"},"log_forward":{"additionalProperties":false,"description":"HAProxy log forward configuration","properties":{"backlog":{"nullable":true,"type":"integer"},"maxconn":{"nullable":true,"type":"integer"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"timeout_client":{"nullable":true,"type":"integer"}},"required":["name"],"title":"Log Forward","type":"object"},"log_forwards":{"description":"HAProxy log forwards array","items":{"$ref":"#/components/schemas/log_forward"},"title":"Log Forwards","type":"array"},"log_target":{"additionalProperties":false,"description":"Per-instance logging of events and traffic.","properties":{"address":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"global":{"required":true,"value":false},"nolog":{"required":true,"value":false}}},"facility":{"enum":["kern","user","mail","daemon","auth","syslog","lpr","news","uucp","cron","auth2","ftp","ntp","audit","alert","cron2","local0","local1","local2","local3","local4","local5","local6","local7"],"type":"string","x-dependency":{"global":{"required":true,"value":false},"nolog":{"required":true,"value":false}}},"format":{"enum":["rfc3164","rfc5424","short","raw"],"type":"string","x-dependency":{"global":{"value":false},"nolog":{"value":false}}},"global":{"type":"boolean"},"index":{"nullable":true,"type":"integer"},"length":{"type":"integer","x-dependency":{"global":{"value":false},"nolog":{"value":false}}},"level":{"enum":["emerg","alert","crit","err","warning","notice","info","debug"],"type":"string","x-dependency":{"global":{"value":false},"nolog":{"value":false}}},"minlevel":{"enum":["emerg","alert","crit","err","warning","notice","info","debug"],"type":"string","x-dependency":{"global":{"value":false},"level":{"required":false},"nolog":{"value":false}}},"nolog":{"type":"boolean"},"sample_range":{"type":"string","x-dependency":{"global":{"value":false},"nolog":{"value":false}}},"sample_size":{"type":"integer","x-dependency":{"global":{"value":false},"nolog":{"value":false},"sample_range":{"required":true}}}},"required":["index"],"title":"Log Target","type":"object"},"log_targets":{"description":"HAProxy log target array (corresponds to log directives)","items":{"$ref":"#/components/schemas/log_target"},"title":"Log Target Array","type":"array"},"mailer_entries":{"description":"HAProxy mailer entries","items":{"$ref":"#/components/schemas/mailer_entry"},"title":"Mailer Entries","type":"array"},"mailer_entry":{"description":"Mailer entry of a Mailers section","properties":{"address":{"pattern":"^\\S+$","type":"string"},"name":{"pattern":"^[A-Za-z0-9-_]+$","type":"string"},"port":{"maximum":65535,"minimum":1,"type":"integer"}},"required":["name","address","port"],"title":"Mailer Entry","type":"object"},"mailers_section":{"additionalProperties":false,"description":"A list of SMTP servers used by HAProxy to send emails.","properties":{"name":{"pattern":"^[A-Za-z0-9-_]+$","type":"string"},"timeout":{"nullable":true,"type":"integer","x-display-name":"Timeout to send an email in milliseconds"}},"required":["name"],"title":"Mailers Section","type":"object"},"mailers_sections":{"description":"HAProxy mailers_section array","items":{"$ref":"#/components/schemas/mailers_section"},"title":"Mailers Sections","type":"array"},"map":{"description":"Map File","properties":{"description":{"type":"string"},"file":{"type":"string"},"id":{"type":"string"},"storage_name":{"type":"string"}},"title":"Map File","type":"object"},"map_entries":{"description":"Entries of one runtime map","items":{"$ref":"#/components/schemas/map_entry"},"title":"Maps Entries","type":"array"},"map_entry":{"description":"One Map Entry","properties":{"id":{"readOnly":true,"type":"string"},"key":{"type":"string"},"value":{"type":"string"}},"title":"One Map Entry","type":"object"},"maps":{"description":"Array of runtime map files","items":{"$ref":"#/components/schemas/map"},"title":"Map Files Array","type":"array"},"monitor_fail":{"properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test"}},"required":["cond","cond_test"],"type":"object"},"monitor_uri":{"type":"string"},"mysql_check_params":{"properties":{"client_version":{"enum":["pre-41","post-41"],"type":"string"},"username":{"type":"string"}},"type":"object"},"nameserver":{"description":"Nameserver used in Runtime DNS configuration","example":{"address":"10.0.0.1","name":"ns1","port":53},"properties":{"address":{"pattern":"^[^\\s]+$","type":"string"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"}},"required":["name","address"],"title":"Nameserver","type":"object"},"nameservers":{"description":"Nameservers array","items":{"$ref":"#/components/schemas/nameserver"},"title":"Nameservers","type":"array"},"native_stat":{"description":"Current stats for one object.","properties":{"backend_name":{"type":"string","x-dependency":{"type":"server"}},"name":{"type":"string"},"stats":{"$ref":"#/components/schemas/native_stat_stats"},"type":{"enum":["backend","server","frontend"],"type":"string"}},"title":"Stats","type":"object"},"native_stat_stats":{"example":{"bin":4326578,"bout":889901290,"comp_byp":0,"comp_in":0,"comp_out":0,"comp_rsp":0,"conn_rate":12,"conn_rate_max":456,"conn_tot":45682,"dcon":0,"dreq":4,"dresp":1,"dses":0,"ereq":54,"hrsp_1xx":0,"hrsp_2xx":165,"hrsp_3xx":12,"hrsp_4xx":50,"hrsp_5xx":4,"hrsp_other":0,"iid":0,"intercepted":346,"mode":"http","pid":3204,"rate":64,"rate_lim":20000,"rate_max":4000,"req_rate":49,"req_rate_max":3965,"req_total":1254786,"scur":129,"slim":2000,"smax":2000,"status":"UP","stot":12902},"properties":{"act":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"addr":{"type":"string","x-dependency":{"type":"server"}},"agent_code":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"agent_desc":{"type":"string","x-dependency":{"type":"server"}},"agent_duration":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"agent_fall":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"agent_health":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"agent_rise":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"agent_status":{"enum":["UNK","INI","SOCKERR","L4OK","L4TOUT","L4CON","L7OK","L7STS"],"type":"string","x-dependency":{"type":"server"}},"algo":{"type":"string","x-dependency":{"type":"backend"}},"bck":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"bin":{"nullable":true,"type":"integer"},"bout":{"nullable":true,"type":"integer"},"check_code":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"check_desc":{"type":"string","x-dependency":{"type":"server"}},"check_duration":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"check_fall":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"check_health":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"check_rise":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"check_status":{"enum":["UNK","INI","SOCKERR","L4OK","L4TOUT","L4CON","L6OK","L6TOUT","L6RSP","L7OK","L7OKC","L7TOUT","L7RSP","L7STS"],"type":"string","x-dependency":{"type":"server"}},"chkdown":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"chkfail":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"cli_abrt":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"comp_byp":{"nullable":true,"type":"integer","x-dependency":{"type":["frontend","backend"]}},"comp_in":{"nullable":true,"type":"integer","x-dependency":{"type":["frontend","backend"]}},"comp_out":{"nullable":true,"type":"integer","x-dependency":{"type":["frontend","backend"]}},"comp_rsp":{"nullable":true,"type":"integer","x-dependency":{"type":["frontend","backend"]}},"conn_rate":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"conn_rate_max":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"conn_tot":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"cookie":{"type":"string","x-dependency":{"type":["server","backend"]}},"ctime":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"dcon":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"downtime":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"dreq":{"nullable":true,"type":"integer","x-dependency":{"type":["frontend","backend"]}},"dresp":{"nullable":true,"type":"integer"},"dses":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"econ":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"ereq":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"eresp":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"hanafail":{"type":"string","x-dependency":{"type":"server"}},"hrsp_1xx":{"nullable":true,"type":"integer"},"hrsp_2xx":{"nullable":true,"type":"integer"},"hrsp_3xx":{"nullable":true,"type":"integer"},"hrsp_4xx":{"nullable":true,"type":"integer"},"hrsp_5xx":{"nullable":true,"type":"integer"},"hrsp_other":{"nullable":true,"type":"integer"},"iid":{"nullable":true,"type":"integer"},"intercepted":{"nullable":true,"type":"integer","x-dependency":{"type":["frontend","backend"]}},"lastchg":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"lastsess":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"lbtot":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"mode":{"enum":["tcp","http","health","unknown"],"type":"string"},"pid":{"nullable":true,"type":"integer"},"qcur":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"qlimit":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"qmax":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"qtime":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"rate":{"nullable":true,"type":"integer"},"rate_lim":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"rate_max":{"nullable":true,"type":"integer"},"req_rate":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"req_rate_max":{"nullable":true,"type":"integer","x-dependency":{"type":"frontend"}},"req_tot":{"nullable":true,"type":"integer","x-dependency":{"type":["frontend","backend"]}},"rtime":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"scur":{"nullable":true,"type":"integer"},"sid":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"slim":{"nullable":true,"type":"integer"},"smax":{"nullable":true,"type":"integer"},"srv_abrt":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"status":{"enum":["UP","DOWN","NOLB","MAINT","no check"],"type":"string"},"stot":{"nullable":true,"type":"integer"},"throttle":{"nullable":true,"type":"integer","x-dependency":{"type":"server"}},"tracked":{"type":"string","x-dependency":{"type":"server"}},"ttime":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"weight":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"wredis":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}},"wretr":{"nullable":true,"type":"integer","x-dependency":{"type":["server","backend"]}}},"type":"object"},"native_stats":{"description":"HAProxy stats array","items":{"$ref":"#/components/schemas/native_stats_collection"},"title":"Stats Array","type":"array","x-omitempty":true},"native_stats_collection":{"description":"Stats from one runtime API","properties":{"error":{"type":"string"},"runtimeAPI":{"type":"string"},"stats":{"items":{"$ref":"#/components/schemas/native_stat"},"type":"array","x-omitempty":true}},"title":"Stats collection","type":"object"},"originalto":{"properties":{"enabled":{"enum":["enabled"],"type":"string"},"except":{"pattern":"^[^\\s]+$","type":"string"},"header":{"pattern":"^[^\\s]+$","type":"string"}},"required":["enabled"],"type":"object","x-display-name":"OriginalTo"},"peer_entries":{"description":"HAProxy peer entries array","items":{"$ref":"#/components/schemas/peer_entry"},"title":"Peer entries","type":"array"},"peer_entry":{"description":"Peer Entry from peers table","properties":{"address":{"pattern":"^[^\\s]+$","type":"string"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"shard":{"type":"integer"}},"required":["name","address","port"],"title":"Peer Entry","type":"object"},"peer_section":{"additionalProperties":false,"description":"HAProxy peer_section configuration","properties":{"default_bind":{"$ref":"#/components/schemas/default_bind"},"default_server":{"$ref":"#/components/schemas/default_server"},"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"shards":{"description":"In some configurations, one would like to distribute the stick-table contents\nto some peers in place of sending all the stick-table contents to each peer\ndeclared in the \"peers\" section. In such cases, \"shards\" specifies the\nnumber of peer involved in this stick-table contents distribution.","type":"integer"},"stick_table":{"$ref":"#/components/schemas/config_stick_table"}},"required":["name"],"title":"Peer Section","type":"object"},"peer_sections":{"description":"HAProxy peer_section array","items":{"$ref":"#/components/schemas/peer_section"},"title":"Peer_Section","type":"array"},"persist_rule":{"properties":{"rdp_cookie_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"type":{"value":"rdp-cookie"}},"x-display-name":"Rdp Cookie Name"},"type":{"enum":["rdp-cookie"],"type":"string"}},"required":["type"],"type":"object"},"pgsql_check_params":{"properties":{"username":{"type":"string"}},"type":"object"},"process_info":{"properties":{"error":{"type":"string"},"info":{"$ref":"#/components/schemas/process_info_item"},"runtimeAPI":{"type":"string"}},"type":"object"},"process_info_item":{"properties":{"active_peers":{"nullable":true,"type":"integer"},"busy_polling":{"nullable":true,"type":"integer"},"bytes_out_rate":{"nullable":true,"type":"integer"},"compress_bps_in":{"nullable":true,"type":"integer"},"compress_bps_out":{"nullable":true,"type":"integer"},"compress_bps_rate_lim":{"nullable":true,"type":"integer"},"conn_rate":{"nullable":true,"type":"integer"},"conn_rate_limit":{"nullable":true,"type":"integer"},"connected_peers":{"nullable":true,"type":"integer"},"cum_conns":{"nullable":true,"type":"integer"},"cum_req":{"nullable":true,"type":"integer"},"cum_ssl_conns":{"nullable":true,"type":"integer"},"curr_conns":{"nullable":true,"type":"integer"},"curr_ssl_conns":{"nullable":true,"type":"integer"},"dropped_logs":{"nullable":true,"type":"integer"},"failed_resolutions":{"nullable":true,"type":"integer"},"hard_max_conn":{"nullable":true,"type":"integer"},"idle_pct":{"nullable":true,"type":"integer"},"jobs":{"nullable":true,"type":"integer"},"listeners":{"nullable":true,"type":"integer"},"max_conn":{"nullable":true,"type":"integer"},"max_conn_rate":{"nullable":true,"type":"integer"},"max_pipes":{"nullable":true,"type":"integer"},"max_sess_rate":{"nullable":true,"type":"integer"},"max_sock":{"nullable":true,"type":"integer"},"max_ssl_conns":{"nullable":true,"type":"integer"},"max_ssl_rate":{"nullable":true,"type":"integer"},"max_zlib_mem_usage":{"nullable":true,"type":"integer"},"mem_max_mb":{"nullable":true,"type":"integer"},"nbthread":{"description":"Number of threads","nullable":true,"type":"integer","x-display-name":"Number of Threads"},"node":{"type":"string"},"pid":{"description":"Process id of the replying worker process","nullable":true,"type":"integer","x-display-name":"PID"},"pipes_free":{"nullable":true,"type":"integer"},"pipes_used":{"nullable":true,"type":"integer"},"pool_alloc_mb":{"nullable":true,"type":"integer"},"pool_failed":{"nullable":true,"type":"integer"},"pool_used_mb":{"nullable":true,"type":"integer"},"process_num":{"description":"Process number","nullable":true,"type":"integer","x-display-name":"Process Number"},"processes":{"description":"Number of spawned processes","nullable":true,"type":"integer","x-display-name":"Number of processes"},"release_date":{"description":"HAProxy version release date","format":"date","type":"string"},"run_queue":{"nullable":true,"type":"integer"},"sess_rate":{"nullable":true,"type":"integer"},"sess_rate_limit":{"nullable":true,"type":"integer"},"ssl_backend_key_rate":{"nullable":true,"type":"integer"},"ssl_backend_max_key_rate":{"nullable":true,"type":"integer"},"ssl_cache_lookups":{"nullable":true,"type":"integer"},"ssl_cache_misses":{"nullable":true,"type":"integer"},"ssl_frontend_key_rate":{"nullable":true,"type":"integer"},"ssl_frontend_max_key_rate":{"nullable":true,"type":"integer"},"ssl_frontend_session_reuse":{"nullable":true,"type":"integer"},"ssl_rate":{"nullable":true,"type":"integer"},"ssl_rate_limit":{"nullable":true,"type":"integer"},"stopping":{"nullable":true,"type":"integer"},"tasks":{"nullable":true,"type":"integer"},"total_bytes_out":{"nullable":true,"type":"integer"},"ulimit_n":{"nullable":true,"type":"integer"},"unstoppable":{"nullable":true,"type":"integer"},"uptime":{"description":"HAProxy uptime in s","nullable":true,"type":"integer"},"version":{"description":"HAProxy version string","type":"string"},"zlib_mem_usage":{"nullable":true,"type":"integer"}},"type":"object"},"process_infos":{"description":"General HAProxy process information","items":{"$ref":"#/components/schemas/process_info"},"title":"HAProxy Information","type":"array","x-omitempty":true},"program":{"description":"HAProxy program configuration","example":{"command":"spoa-mirror --runtime 0 --mirror-url http://test.local","group":"mygroupname","name":"mirror","start-on-reload":"enabled","user":"myusername"},"properties":{"command":{"description":"The command to be run, with flags and options.","type":"string"},"group":{"description":"The group to run the command as, if different than the HAProxy group.","type":"string"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","readOnly":true,"type":"string"},"start-on-reload":{"description":"HAProxy stops and recreates child programs at reload.","enum":["enabled","disabled"],"type":"string"},"user":{"description":"The user to run the command as, if different than the HAProxy user.","type":"string"}},"required":["name","command"],"title":"Program","type":"object"},"programs":{"items":{"$ref":"#/components/schemas/program"},"type":"array"},"redispatch":{"properties":{"enabled":{"enum":["enabled","disabled"],"type":"string"},"interval":{"type":"integer"}},"required":["enabled"],"type":"object"},"reload":{"description":"HAProxy reload","example":{"id":"2019-01-03-44","status":"in_progress"},"properties":{"id":{"pattern":"^\\d{4}-\\d{2}-\\d{2}-\\d+$","type":"string"},"reload_timestamp":{"type":"integer"},"response":{"type":"string"},"status":{"enum":["failed","in_progress","succeeded"],"type":"string"}},"title":"HAProxy reload","type":"object"},"reloads":{"description":"HAProxy reloads array","items":{"$ref":"#/components/schemas/reload"},"title":"HAProxy Reloads Array","type":"array"},"resolver":{"description":"Runtime DNS configuration","properties":{"accepted_payload_size":{"maximum":8192,"minimum":512,"type":"integer"},"hold_nx":{"nullable":true,"type":"integer"},"hold_obsolete":{"nullable":true,"type":"integer"},"hold_other":{"nullable":true,"type":"integer"},"hold_refused":{"nullable":true,"type":"integer"},"hold_timeout":{"nullable":true,"type":"integer"},"hold_valid":{"nullable":true,"type":"integer"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"parse-resolv-conf":{"type":"boolean"},"resolve_retries":{"minimum":1,"type":"integer"},"timeout_resolve":{"type":"integer"},"timeout_retry":{"type":"integer"}},"required":["name"],"title":"Resolver","type":"object"},"resolvers":{"description":"HAProxy resolvers array","items":{"$ref":"#/components/schemas/resolver"},"title":"Resolvers","type":"array"},"return_header":{"properties":{"fmt":{"type":"string"},"name":{"type":"string"}},"required":["name","fmt"],"type":"object","x-go-name":"ReturnHeader"},"ring":{"additionalProperties":false,"description":"HAProxy ring configuration","properties":{"description":{"type":"string","x-display-name":"The description is an optional description string of the ring"},"format":{"enum":["iso","local","raw","rfc3164","rfc5424","short","priority","timed"],"type":"string","x-display-name":"Format used to store events into the ring buffer"},"maxlen":{"nullable":true,"type":"integer","x-display-name":"The maximum length of an event message stored into the ring"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"size":{"nullable":true,"type":"integer","x-display-name":"Optional size in bytes for the ring-buffer"},"timeout_connect":{"nullable":true,"type":"integer"},"timeout_server":{"nullable":true,"type":"integer"}},"required":["name"],"title":"Ring","type":"object"},"rings":{"description":"HAProxy rings array","items":{"$ref":"#/components/schemas/ring"},"title":"Rings","type":"array"},"runtime_add_server":{"description":"Settable properties when adding a new server using HAProxy's runtime.","properties":{"address":{"pattern":"^[^\\s]+$","readOnly":true,"type":"string"},"agent-addr":{"pattern":"^[^\\s]+$","type":"string"},"agent-check":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"agent-port":{"required":true}}},"agent-inter":{"nullable":true,"type":"integer"},"agent-port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"agent-send":{"type":"string"},"allow_0rtt":{"type":"boolean"},"alpn":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"ALPN Protocols"},"backup":{"enum":["enabled","disabled"],"type":"string"},"check":{"enum":["enabled","disabled"],"type":"string"},"check-send-proxy":{"enum":["enabled","disabled"],"type":"string"},"check-sni":{"pattern":"^[^\\s]+$","type":"string"},"check-ssl":{"enum":["enabled","disabled"],"type":"string"},"check_alpn":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Protocols"},"check_proto":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Name"},"check_via_socks4":{"enum":["enabled","disabled"],"type":"string"},"ciphers":{"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"ciphersuites":{"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"crl_file":{"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"downinter":{"nullable":true,"type":"integer"},"error_limit":{"nullable":true,"type":"integer","x-display-name":"Healthcheck error limit"},"fall":{"nullable":true,"type":"integer","x-display-name":"Nr. of consecutive failed checks"},"fastinter":{"nullable":true,"type":"integer"},"force_sslv3":{"enum":["enabled","disabled"],"type":"string"},"force_tlsv10":{"enum":["enabled","disabled"],"type":"string"},"force_tlsv11":{"enum":["enabled","disabled"],"type":"string"},"force_tlsv12":{"enum":["enabled","disabled"],"type":"string"},"force_tlsv13":{"enum":["enabled","disabled"],"type":"string"},"health_check_address":{"pattern":"^[^\\s]+$","type":"string"},"health_check_port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"id":{"readOnly":true,"type":"string"},"inter":{"nullable":true,"type":"integer"},"maintenance":{"enum":["enabled","disabled"],"type":"string"},"maxconn":{"nullable":true,"type":"integer","x-display-name":"Max Concurrent Connections"},"maxqueue":{"nullable":true,"type":"integer","x-display-name":"Max Number of Connections"},"minconn":{"nullable":true,"type":"integer"},"name":{"readOnly":true,"type":"string"},"no_sslv3":{"enum":["enabled","disabled"],"type":"string"},"no_tlsv10":{"enum":["enabled","disabled"],"type":"string"},"no_tlsv11":{"enum":["enabled","disabled"],"type":"string"},"no_tlsv12":{"enum":["enabled","disabled"],"type":"string"},"no_tlsv13":{"enum":["enabled","disabled"],"type":"string"},"npn":{"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"observe":{"enum":["layer4","layer7"],"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"on-error":{"enum":["fastinter","fail-check","sudden-death","mark-down"],"type":"string"},"on-marked-down":{"enum":["shutdown-sessions"],"type":"string"},"on-marked-up":{"enum":["shutdown-backup-sessions"],"type":"string"},"pool_low_conn":{"nullable":true,"type":"integer"},"pool_max_conn":{"nullable":true,"type":"integer"},"pool_purge_delay":{"nullable":true,"type":"integer"},"port":{"maximum":65535,"minimum":1,"nullable":true,"readOnly":true,"type":"integer"},"proto":{"pattern":"^[^\\s]+$","type":"string"},"proxy-v2-options":{"items":{"enum":["ssl","cert-cn","ssl-cipher","cert-sig","cert-key","authority","crc32c","unique-id"],"type":"string"},"type":"array","x-omitempty":true},"rise":{"nullable":true,"type":"integer"},"send-proxy":{"enum":["enabled","disabled"],"type":"string"},"send-proxy-v2":{"enum":["enabled","disabled"],"type":"string"},"send_proxy_v2_ssl":{"enum":["enabled","disabled"],"type":"string"},"send_proxy_v2_ssl_cn":{"enum":["enabled","disabled"],"type":"string"},"slowstart":{"nullable":true,"type":"integer"},"sni":{"pattern":"^[^\\s]+$","type":"string"},"source":{"type":"string"},"ssl":{"enum":["enabled","disabled"],"type":"string"},"ssl_cafile":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"ssl":{"value":"enabled"}},"x-display-name":"SSL CA File"},"ssl_certificate":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"ssl_max_ver":{"enum":["SSLv3","TLSv1.0","TLSv1.1","TLSv1.2","TLSv1.3"],"type":"string"},"ssl_min_ver":{"enum":["SSLv3","TLSv1.0","TLSv1.1","TLSv1.2","TLSv1.3"],"type":"string"},"ssl_reuse":{"enum":["enabled","disabled"],"type":"string"},"tfo":{"enum":["enabled","disabled"],"type":"string"},"tls_tickets":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"track":{"type":"string"},"verify":{"enum":["none","required"],"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"verifyhost":{"type":"string","x-dependency":{"ssl":{"value":"enabled"},"verify":{"value":"required"}}},"weight":{"nullable":true,"type":"integer"},"ws":{"enum":["auto","h1","h2"],"type":"string","x-display-name":"Relaying websocket stream protocol"}},"title":"Runtime Add Server","type":"object"},"runtime_server":{"description":"Runtime transient server properties","example":{"address":"127.0.0.5","admin_state":"ready","operational_state":"up","port":80,"server_id":1,"server_name":"web_server"},"properties":{"address":{"pattern":"^[^\\s]+$","readOnly":true,"type":"string"},"admin_state":{"enum":["ready","maint","drain"],"type":"string"},"id":{"readOnly":true,"type":"string"},"name":{"readOnly":true,"type":"string"},"operational_state":{"enum":["up","down","stopping"],"type":"string"},"port":{"maximum":65535,"minimum":1,"nullable":true,"readOnly":true,"type":"integer"}},"title":"Runtime Server","type":"object"},"runtime_servers":{"description":"HAProxy runtime servers array","items":{"$ref":"#/components/schemas/runtime_server"},"title":"HAProxy Runtime Servers Array","type":"array"},"server":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/server_params"}],"description":"HAProxy backend server configuration","example":{"address":"10.1.1.1","check":"enabled","name":"www","port":8080,"weight":80},"properties":{"address":{"pattern":"^[^\\s]+$","type":"string"},"id":{"nullable":true,"type":"integer"},"name":{"pattern":"^[^\\s]+$","type":"string"},"port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"}},"required":["name","address"],"title":"Server","type":"object"},"server_params":{"properties":{"agent-addr":{"pattern":"^[^\\s]+$","type":"string"},"agent-check":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"agent-port":{"required":true}}},"agent-inter":{"nullable":true,"type":"integer"},"agent-port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"agent-send":{"type":"string"},"allow_0rtt":{"type":"boolean"},"alpn":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"ALPN Protocols"},"backup":{"enum":["enabled","disabled"],"type":"string"},"check":{"enum":["enabled","disabled"],"type":"string"},"check-send-proxy":{"enum":["enabled","disabled"],"type":"string"},"check-sni":{"pattern":"^[^\\s]+$","type":"string"},"check-ssl":{"enum":["enabled","disabled"],"type":"string"},"check_alpn":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Protocols"},"check_proto":{"pattern":"^[^\\s]+$","type":"string","x-display-name":"Name"},"check_via_socks4":{"enum":["enabled","disabled"],"type":"string"},"ciphers":{"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"ciphersuites":{"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"cookie":{"pattern":"^[^\\s]+$","type":"string"},"crl_file":{"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"downinter":{"nullable":true,"type":"integer"},"error_limit":{"type":"integer","x-display-name":"Error count"},"fall":{"nullable":true,"type":"integer","x-display-name":"Nr. of consecutive failed checks"},"fastinter":{"nullable":true,"type":"integer"},"force_sslv3":{"enum":["enabled","disabled"],"type":"string"},"force_tlsv10":{"enum":["enabled","disabled"],"type":"string"},"force_tlsv11":{"enum":["enabled","disabled"],"type":"string"},"force_tlsv12":{"enum":["enabled","disabled"],"type":"string"},"force_tlsv13":{"enum":["enabled","disabled"],"type":"string"},"health_check_address":{"pattern":"^[^\\s]+$","type":"string"},"health_check_port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"init-addr":{"nullable":true,"pattern":"^[^\\s]+$","type":"string"},"inter":{"nullable":true,"type":"integer"},"log_proto":{"enum":["legacy","octet-count"],"type":"string"},"maintenance":{"enum":["enabled","disabled"],"type":"string"},"max_reuse":{"nullable":true,"type":"integer"},"maxconn":{"nullable":true,"type":"integer","x-display-name":"Max Concurrent Connections"},"maxqueue":{"nullable":true,"type":"integer","x-display-name":"Max Number of Connections"},"minconn":{"nullable":true,"type":"integer"},"namespace":{"type":"string"},"no_sslv3":{"enum":["enabled","disabled"],"type":"string"},"no_tlsv10":{"enum":["enabled","disabled"],"type":"string"},"no_tlsv11":{"enum":["enabled","disabled"],"type":"string"},"no_tlsv12":{"enum":["enabled","disabled"],"type":"string"},"no_tlsv13":{"enum":["enabled","disabled"],"type":"string"},"no_verifyhost":{"enum":["enabled","disabled"],"type":"string"},"npn":{"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"observe":{"enum":["layer4","layer7"],"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"on-error":{"enum":["fastinter","fail-check","sudden-death","mark-down"],"type":"string"},"on-marked-down":{"enum":["shutdown-sessions"],"type":"string"},"on-marked-up":{"enum":["shutdown-backup-sessions"],"type":"string"},"pool_low_conn":{"nullable":true,"type":"integer"},"pool_max_conn":{"nullable":true,"type":"integer"},"pool_purge_delay":{"nullable":true,"type":"integer"},"proto":{"pattern":"^[^\\s]+$","type":"string"},"proxy-v2-options":{"items":{"enum":["ssl","cert-cn","ssl-cipher","cert-sig","cert-key","authority","crc32c","unique-id"],"type":"string"},"type":"array","x-omitempty":true},"redir":{"type":"string","x-display-name":"Prefix"},"resolve-net":{"pattern":"^[^,\\s][^\\,]*[^,\\s]*$","type":"string","x-dependency":{"resolvers":{"required":true}}},"resolve-prefer":{"enum":["ipv4","ipv6"],"type":"string","x-dependency":{"resolvers":{"required":true}}},"resolve_opts":{"pattern":"^[^,\\s][^\\,]*[^,\\s]*$","type":"string"},"resolvers":{"pattern":"^[^\\s]+$","type":"string","x-dynamic-enum":{"operation":"getResolvers","property":"name"}},"rise":{"nullable":true,"type":"integer"},"send-proxy":{"enum":["enabled","disabled"],"type":"string"},"send-proxy-v2":{"enum":["enabled","disabled"],"type":"string"},"send_proxy_v2_ssl":{"enum":["enabled","disabled"],"type":"string"},"send_proxy_v2_ssl_cn":{"enum":["enabled","disabled"],"type":"string"},"shard":{"type":"integer"},"slowstart":{"nullable":true,"type":"integer"},"sni":{"pattern":"^[^\\s]+$","type":"string"},"socks4":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"check-via-socks4":{"required":true}}},"source":{"type":"string"},"ssl":{"enum":["enabled","disabled"],"type":"string"},"ssl_cafile":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"ssl":{"value":"enabled"}},"x-display-name":"SSL CA File"},"ssl_certificate":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"ssl_max_ver":{"enum":["SSLv3","TLSv1.0","TLSv1.1","TLSv1.2","TLSv1.3"],"type":"string"},"ssl_min_ver":{"enum":["SSLv3","TLSv1.0","TLSv1.1","TLSv1.2","TLSv1.3"],"type":"string"},"ssl_reuse":{"enum":["enabled","disabled"],"type":"string"},"stick":{"enum":["enabled","disabled"],"type":"string"},"tcp_ut":{"type":"integer"},"tfo":{"enum":["enabled","disabled"],"type":"string"},"tls_tickets":{"enum":["enabled","disabled"],"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"track":{"type":"string"},"verify":{"enum":["none","required"],"type":"string","x-dependency":{"ssl":{"value":"enabled"}}},"verifyhost":{"type":"string","x-dependency":{"ssl":{"value":"enabled"},"verify":{"value":"required"}}},"weight":{"nullable":true,"type":"integer"},"ws":{"enum":["auto","h1","h2"],"type":"string","x-display-name":"Relaying websocket stream protocol"}},"type":"object"},"server_switching_rule":{"additionalProperties":false,"description":"HAProxy server switching rule configuration (corresponds to use-server directive)","example":{"cond":"if","cond_test":"{ req_ssl_sni -i www.example.com }","index":0,"target_server":"www"},"properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"index":{"nullable":true,"type":"integer"},"target_server":{"pattern":"^[^\\s]+$","type":"string","x-dynamic-enum":{"operation":"getServers","property":"name"}}},"required":["index","target_server"],"title":"Server Switching Rule","type":"object"},"server_switching_rules":{"description":"HAProxy backend server switching rules array (corresponds to use-server directives)","items":{"$ref":"#/components/schemas/server_switching_rule"},"title":"Server Switching Rules Array","type":"array"},"server_template":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/server_params"}],"description":"Set a template to initialize servers with shared parameters.","example":{"fqdn":"google.com","num_or_range":"1-3","port":80,"prefix":"srv"},"properties":{"fqdn":{"type":"string"},"id":{"nullable":true,"type":"integer"},"num_or_range":{"type":"string"},"port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer"},"prefix":{"pattern":"^[^\\s]+$","type":"string"}},"required":["prefix","num_or_range","fqdn"],"title":"Server template","type":"object"},"server_templates":{"description":"HAProxy backend server templates array","items":{"$ref":"#/components/schemas/server_template"},"title":"Server templates","type":"array"},"servers":{"description":"HAProxy backend servers array","items":{"$ref":"#/components/schemas/server"},"title":"Servers","type":"array"},"site":{"additionalProperties":false,"description":"Site configuration. Sites are considered as one service and all farms connected to that service.\nFarms are connected to service using use-backend and default_backend directives. Sites let you\nconfigure simple HAProxy configurations, for more advanced options use /haproxy/configuration\nendpoints.\n","example":{"farms":[{"balance":{"algorithm":"roundrobin"},"mode":"http","name":"www_backend","servers":[{"address":"127.0.1.1","name":"www_server","port":4567,"weight":30},{"address":"127.0.1.2","name":"www_server_new","port":4567,"weight":70}],"use_as":"default"}],"name":"test_site","service":{"http_connection_mode":"httpclose","listeners":[{"address":"127.0.0.1","name":"test_listener","port":80},{"address":"127.0.0.1","name":"test_listener_2","port":8080}],"maxconn":2000,"mode":"http"}},"properties":{"farms":{"items":{"properties":{"balance":{"$ref":"#/components/schemas/balance"},"cond":{"enum":["if","unless"],"type":"string","x-dependency":{"use_as":{"required":true,"value":"conditional"}},"x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"use_as":{"required":true,"value":"conditional"}},"x-display-name":"Condition Test"},"forwardfor":{"$ref":"#/components/schemas/forwardfor"},"mode":{"enum":["http","tcp"],"type":"string"},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"servers":{"items":{"$ref":"#/components/schemas/server"},"type":"array","x-omitempty":true},"use_as":{"enum":["default","conditional"],"type":"string"}},"required":["name","use_as"],"type":"object","x-go-name":"SiteFarm"},"type":"array","x-omitempty":true},"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"},"service":{"properties":{"http_connection_mode":{"enum":["http-tunnel","httpclose","forced-close","http-server-close","http-keep-alive"],"type":"string","x-dependency":{"mode":{"value":"http"}},"x-display-name":"HTTP Connection Mode"},"listeners":{"items":{"$ref":"#/components/schemas/bind"},"type":"array","x-omitempty":true},"maxconn":{"nullable":true,"type":"integer","x-display-name":"Max Connections"},"mode":{"enum":["http","tcp"],"type":"string"}},"type":"object"}},"required":["name"],"title":"Site","type":"object"},"sites":{"description":"Sites array. Sites are considered as one service and all farms connected to that service.\nFarms are connected to service using use-backend and default_backend directives. Sites let you\nconfigure simple HAProxy configurations, for more advanced options use /haproxy/configuration\nendpoints.\n","items":{"$ref":"#/components/schemas/site"},"title":"Sites","type":"array"},"smtpchk_params":{"properties":{"domain":{"type":"string"},"hello":{"type":"string"}},"type":"object"},"source":{"properties":{"address":{"type":"string"},"address_second":{"type":"string"},"hdr":{"type":"string","x-dependency":{"usesrc":{"value":"hdr_ip"}}},"interface":{"type":"string"},"occ":{"type":"string","x-dependency":{"usesrc":{"value":"hdr_ip"}}},"port":{"maximum":65535,"minimum":1,"type":"integer"},"port_second":{"maximum":65535,"minimum":1,"type":"integer"},"usesrc":{"enum":["address","client","clientip","hdr_ip"],"type":"string"}},"required":["address"],"type":"object"},"spoe_agent":{"description":"SPOE agent configuration","properties":{"async":{"enum":["enabled","disabled"],"type":"string"},"continue-on-error":{"enum":["enabled"],"type":"string"},"dontlog-normal":{"enum":["enabled","disabled"],"type":"string"},"engine-name":{"type":"string"},"force-set-var":{"enum":["enabled"],"type":"string"},"groups":{"type":"string"},"hello_timeout":{"type":"integer"},"idle_timeout":{"type":"integer"},"log":{"$ref":"#/components/schemas/log_targets"},"max-frame-size":{"type":"integer"},"max-waiting-frames":{"type":"integer"},"maxconnrate":{"type":"integer"},"maxerrrate":{"type":"integer"},"messages":{"type":"string"},"name":{"type":"string"},"option_set-on-error":{"pattern":"^[A-Za-z0-9-_.]+$","type":"string"},"option_set-process-time":{"pattern":"^[A-Za-z0-9-_.]+$","type":"string"},"option_set-total-time":{"pattern":"^[A-Za-z0-9-_.]+$","type":"string"},"option_var-prefix":{"pattern":"^[A-Za-z0-9-_.]+$","type":"string"},"pipelining":{"enum":["enabled","disabled"],"type":"string"},"processing_timeout":{"type":"integer"},"register-var-names":{"type":"string"},"send-frag-payload":{"enum":["enabled","disabled"],"type":"string"},"use-backend":{"type":"string"}},"required":["name"],"title":"SPOE agent","type":"object"},"spoe_agents":{"description":"SPOE Agents of one scope in SPOE file","items":{"$ref":"#/components/schemas/spoe_agent"},"title":"SPOE Agents","type":"array"},"spoe_files":{"description":"SPOE files","items":{"type":"string"},"title":"SPOE files","type":"array","x-omitempty":true},"spoe_group":{"description":"SPOE group section configuration","properties":{"messages":{"type":"string"},"name":{"type":"string"}},"required":["name"],"title":"SPOE group","type":"object"},"spoe_groups":{"description":"SPOE Groups of one scope in SPOE file","items":{"$ref":"#/components/schemas/spoe_group"},"title":"SPOE Groups","type":"array"},"spoe_message":{"description":"SPOE message section configuration","properties":{"acl":{"$ref":"#/components/schemas/acls"},"args":{"type":"string"},"event":{"properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test"},"name":{"enum":["on-client-session","on-server-session","on-frontend-tcp-request","on-backend-tcp-request","on-tcp-response","on-frontend-http-request","on-backend-http-request","on-http-response"],"type":"string"}},"required":["name"],"type":"object"},"name":{"type":"string"}},"required":["name"],"title":"SPOE message","type":"object"},"spoe_messages":{"description":"SPOE Messages of one scope in SPOE file","items":{"$ref":"#/components/schemas/spoe_message"},"title":"SPOE Messages","type":"array"},"spoe_scope":{"description":"SPOE scope name","title":"SPOE scope","type":"string"},"spoe_scopes":{"description":"All SPOE Scopes","items":{"$ref":"#/components/schemas/spoe_scope"},"title":"SPOE Scopes","type":"array"},"spoe_transaction":{"description":"SPOE configuration transaction","example":{"_version":2,"id":"273e3385-2d0c-4fb1-aa27-93cbb31ff203","status":"in_progress"},"properties":{"_version":{"type":"integer"},"id":{"pattern":"^[^\\s]+$","type":"string"},"status":{"enum":["failed","in_progress","success"],"type":"string"}},"title":"SPOE configuration transaction","type":"object"},"spoe_transactions":{"description":"SPOE Configuration transactions array","items":{"$ref":"#/components/schemas/spoe_transaction"},"title":"SPOE Transactions array","type":"array"},"ssl_cert_entry":{"description":"One SSL/TLS certificate","properties":{"algorithm":{"type":"string"},"chain_issuer":{"type":"string"},"chain_subject":{"type":"string"},"issuer":{"type":"string"},"not_after":{"format":"date","type":"string"},"not_before":{"format":"date","type":"string"},"serial":{"type":"string"},"sha1_finger_print":{"type":"string"},"status":{"type":"string"},"storage_name":{"type":"string"},"subject":{"type":"string"},"subject_alternative_names":{"items":{"type":"string"},"type":"array","x-omitempty":true}},"title":"One SSL Certificate Entry","type":"object"},"ssl_certificate":{"description":"A file containing one or more SSL/TLS certificates and keys","properties":{"description":{"type":"string"},"file":{"type":"string"},"storage_name":{"type":"string"}},"title":"SSL File","type":"object"},"ssl_certificates":{"description":"Array of ssl certificate files","items":{"$ref":"#/components/schemas/ssl_certificate"},"title":"SSL Files Array","type":"array"},"stats_auth":{"properties":{"passwd":{"type":"string"},"user":{"type":"string"}},"required":["user","passwd"],"type":"object"},"stats_http_request":{"properties":{"cond":{"type":"string"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}}},"realm":{"type":"string","x-dependency":{"type":{"value":"auth"}}},"type":{"enum":["allow","deny","auth"],"type":"string"}},"required":["type"],"type":"object"},"stats_options":{"properties":{"stats_admin":{"type":"boolean","x-display-name":"Stats Admin"},"stats_admin_cond":{"enum":["if","unless"],"type":"string","x-dependency":{"stats_admin":{"required":true,"value":true}},"x-display-name":"Stats Admin Condition"},"stats_admin_cond_test":{"type":"string","x-dependency":{"stats_admin_cond":{"required":true}},"x-display-name":"Stats Admin Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"stats_auths":{"items":{"$ref":"#/components/schemas/stats_auth"},"type":"array","x-display-name":"Stats Auths","x-omitempty":true},"stats_enable":{"type":"boolean","x-display-name":"Stats Enable"},"stats_hide_version":{"type":"boolean","x-display-name":"Stats Hide Version"},"stats_http_requests":{"items":{"$ref":"#/components/schemas/stats_http_request"},"type":"array","x-display-name":"Stats HTTP Requests","x-omitempty":true},"stats_maxconn":{"minimum":1,"type":"integer"},"stats_realm":{"type":"boolean","x-display-name":"Stats Realm"},"stats_realm_realm":{"nullable":true,"type":"string","x-dependency":{"stats_realm":{"required":true,"value":true}}},"stats_refresh_delay":{"nullable":true,"type":"integer"},"stats_show_desc":{"nullable":true,"type":"string"},"stats_show_legends":{"type":"boolean","x-display-name":"Stats Show Legends"},"stats_show_modules":{"type":"boolean","x-display-name":"Stats Show Modules"},"stats_show_node_name":{"nullable":true,"pattern":"^[^\\s]+$","type":"string"},"stats_uri_prefix":{"pattern":"^[^\\s]+$","type":"string"}},"type":"object"},"stick_rule":{"additionalProperties":false,"description":"Define a pattern used to create an entry in a stickiness table or matching condition or associate a user to a server.","example":{"index":0,"pattern":"src","type":"match"},"properties":{"cond":{"enum":["if","unless"],"type":"string","x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true}},"x-display-name":"Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"index":{"nullable":true,"type":"integer"},"pattern":{"pattern":"^[^\\s]+$","type":"string"},"table":{"pattern":"^[^\\s]+$","type":"string"},"type":{"enum":["match","on","store-request","store-response"],"type":"string"}},"required":["index","type","pattern"],"title":"Stick Rule","type":"object"},"stick_rules":{"description":"HAProxy backend stick rules array (corresponds to stick store-request, stick match, stick on, stick store-response)","items":{"$ref":"#/components/schemas/stick_rule"},"title":"Stick Rules Array","type":"array"},"stick_table":{"description":"Stick Table Information","properties":{"fields":{"items":{"properties":{"field":{"enum":["server_id","gpc0","gpc0_rate","gpc1","gpc1_rate","gpt0","conn_cnt","conn_cur","conn_rate","sess_cnt","sess_rate","http_req_cnt","http_req_rate","http_err_cnt","http_err_rate","bytes_in_cnt","bytes_in_rate","bytes_out_cnt","bytes_out_rate"],"type":"string"},"period":{"type":"integer","x-dependency":{"type":{"value":"rate"}}},"type":{"enum":["rate","counter"],"type":"string"}},"type":"object","x-go-name":"StickTableField"},"type":"array","x-omitempty":true},"name":{"type":"string"},"process":{"description":"Process number if master-worker mode","nullable":true,"type":"integer"},"size":{"nullable":true,"type":"integer"},"type":{"enum":["ip","ipv6","integer","string","binary"],"type":"string"},"used":{"nullable":true,"type":"integer"}},"title":"Stick Table","type":"object"},"stick_table_entries":{"description":"Entries of one runtime stick table","items":{"$ref":"#/components/schemas/stick_table_entry"},"title":"Stick Tables Entries","type":"array"},"stick_table_entry":{"description":"One entry in stick table","properties":{"bytes_in_cnt":{"nullable":true,"type":"integer"},"bytes_in_rate":{"nullable":true,"type":"integer"},"bytes_out_cnt":{"nullable":true,"type":"integer"},"bytes_out_rate":{"nullable":true,"type":"integer"},"conn_cnt":{"nullable":true,"type":"integer"},"conn_cur":{"nullable":true,"type":"integer"},"conn_rate":{"nullable":true,"type":"integer"},"exp":{"nullable":true,"type":"integer"},"gpc0":{"nullable":true,"type":"integer"},"gpc0_rate":{"nullable":true,"type":"integer"},"gpc1":{"nullable":true,"type":"integer"},"gpc1_rate":{"nullable":true,"type":"integer"},"gpt0":{"nullable":true,"type":"integer"},"http_err_cnt":{"nullable":true,"type":"integer"},"http_err_rate":{"nullable":true,"type":"integer"},"http_req_cnt":{"nullable":true,"type":"integer"},"http_req_rate":{"nullable":true,"type":"integer"},"id":{"type":"string"},"key":{"type":"string"},"server_id":{"nullable":true,"type":"integer"},"sess_cnt":{"nullable":true,"type":"integer"},"sess_rate":{"nullable":true,"type":"integer"},"use":{"type":"boolean"}},"title":"Stick Table Entry","type":"object"},"stick_tables":{"description":"Array of runtime stick tables","items":{"$ref":"#/components/schemas/stick_table"},"title":"Stick Tables Array","type":"array"},"tcp_check":{"properties":{"action":{"enum":["comment","connect","expect","send","send-lf","send-binary","send-binary-lf","set-var","set-var-fmt","unset-var"],"type":"string"},"addr":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"value":"connect"}}},"alpn":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"value":"connect"}},"x-display-name":"ALPN Protocols"},"check_comment":{"type":"string","x-dependency":{"action":{"value":["connect","expect","send","send-lf","send-binary","send-binary-lf"]}}},"data":{"type":"string","x-dependency":{"action":{"required":true,"value":"send"}}},"default":{"type":"boolean","x-dependency":{"action":{"value":"connect"}}},"error_status":{"enum":["L7OKC","L7RSP","L7STS","L6RSP","L4CON"],"type":"string","x-dependency":{"action":{"value":"expect"}}},"exclamation_mark":{"type":"boolean","x-dependency":{"action":{"value":"expect"}},"x-display-name":"Expect Exclamation Mark"},"fmt":{"type":"string","x-dependency":{"action":{"required":true,"value":"send-lf"}}},"hex_fmt":{"type":"string","x-dependency":{"action":{"required":true,"value":"send-binary-lf"}}},"hex_string":{"type":"string","x-dependency":{"action":{"required":true,"value":"send-binary"}}},"index":{"nullable":true,"type":"integer"},"linger":{"type":"boolean","x-dependency":{"action":{"value":"connect"}}},"log_message":{"type":"string","x-dependency":{"action":{"required":true,"value":"comment"}}},"match":{"enum":["string","rstring","string-lf","binary","rbinary","binary-lf"],"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":"expect"}},"x-display-name":"Expect Match"},"min_recv":{"type":"integer","x-dependency":{"action":{"value":"expect"}}},"ok_status":{"enum":["L7OK","L7OKC","L6OK","L4OK"],"type":"string","x-dependency":{"action":{"value":"expect"}}},"on_error":{"type":"string","x-dependency":{"action":{"value":"expect"}}},"on_success":{"type":"string","x-dependency":{"action":{"value":"expect"}}},"pattern":{"type":"string","x-dependency":{"action":{"required":true,"value":"expect"}}},"port":{"maximum":65535,"minimum":1,"nullable":true,"type":"integer","x-dependency":{"action":{"value":"connect"}}},"port_string":{"type":"string","x-dependency":{"action":{"value":"connect"}}},"proto":{"type":"string","x-dependency":{"action":{"value":"connect"}}},"send_proxy":{"type":"boolean","x-dependency":{"action":{"value":"connect"}}},"sni":{"type":"string","x-dependency":{"action":{"value":"connect"}}},"ssl":{"type":"boolean","x-dependency":{"action":{"value":"connect"}}},"status-code":{"type":"string","x-dependency":{"action":{"value":"expect"}}},"tout_status":{"enum":["L7TOUT","L6TOUT","L4TOUT"],"type":"string","x-dependency":{"action":{"value":"expect"}}},"var_expr":{"type":"string","x-dependency":{"action":{"required":true,"value":["set-var"]}},"x-display-name":"Var Expression"},"var_fmt":{"type":"string","x-dependency":{"action":{"required":true,"value":["set-var-fmt"]}},"x-display-name":"Var Log format"},"var_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":["set-var","set-var-fmt","unset-var"]}}},"var_scope":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":["set-var","set-var-fmt","unset-var"]}}},"via_socks4":{"type":"boolean","x-dependency":{"action":{"value":"connect"}}}},"required":["index","action"],"title":"TCP Check","type":"object"},"tcp_checks":{"items":{"$ref":"#/components/schemas/tcp_check"},"title":"TCP Checks Array","type":"array"},"tcp_request_rule":{"additionalProperties":false,"description":"HAProxy TCP Request Rule configuration (corresponds to tcp-request)","example":{"cond":"if","cond_test":"{ src 192.168.0.0/16 }","index":0,"type":"connection"},"properties":{"action":{"enum":["accept","capture","do-resolve","expect-netscaler-cip","expect-proxy","reject","sc-inc-gpc0","sc-inc-gpc1","sc-set-gpt0","send-spoe-group","set-dst-port","set-dst","set-priority","set-src","set-var","silent-drop","track-sc0","track-sc1","track-sc2","unset-var","use-service","lua","set-bandwidth-limit","set-src-port","set-mark","set-tos","set-var-fmt","set-log-level","set-nice","switch-mode"],"type":"string","x-dependency":{"type":{"required":true,"value":["connection","content","session"]}}},"bandwidth_limit_limit":{"type":"string","x-dependency":{"action":{"value":"set-bandwidth-limit"},"type":{"value":"content"}},"x-display-name":"Standard HAProxy expression"},"bandwidth_limit_name":{"type":"string","x-dependency":{"action":{"value":"set-bandwidth-limit"},"type":{"value":"content"}},"x-display-name":"Bandwidth limit name"},"bandwidth_limit_period":{"type":"string","x-dependency":{"action":{"value":"set-bandwidth-limit"},"type":{"value":"content"}},"x-display-name":"Standard HAProxy expression"},"capture_len":{"type":"integer","x-dependency":{"action":{"required":true,"value":"capture"},"type":{"required":true,"value":["connection","content"]}},"x-display-name":"Capture Length"},"capture_sample":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":"capture"},"type":{"required":true,"value":["connection","content"]}},"x-display-name":"Capture Sample"},"cond":{"enum":["if","unless"],"type":"string","x-dependency":{"type":{"value":["connection","content","session"]}},"x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true},"type":{"required":true,"value":["connection","content","session"]}},"x-display-name":"Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"expr":{"type":"string","x-dependency":{"action":{"required":true,"value":["do-resolve","set-var","set-src","set-priority","set-dst","set-dst-port","set-src-port"]},"type":{"value":["session","connection","content"]}},"x-display-name":"Standard HAProxy expression"},"gpt_value":{"type":"string","x-dependency":{"action":{"required":true,"value":"sc-set-gpt0"},"type":{"required":true,"value":["connection","content","session"]}},"x-display-name":"Sticky counter value"},"index":{"nullable":true,"type":"integer"},"log_level":{"enum":["emerg","alert","crit","err","warning","notice","info","debug","silent"],"type":"string","x-dependency":{"action":{"required":true,"value":"set-log-level"},"type":{"value":"content"}}},"lua_action":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":"lua"},"type":{"value":["connection","content"]}},"x-display-name":"Lua action name"},"lua_params":{"type":"string","x-dependency":{"action":{"value":"lua"},"type":{"value":["connection","content"]}},"x-display-name":"Lua action params"},"mark_value":{"pattern":"^(0x[0-9A-Fa-f]+|[0-9]+)$","type":"string","x-dependency":{"action":{"required":true,"value":"set-mark"},"type":{"value":["connection","content"]}},"x-display-name":"Mark Value"},"nice_value":{"maximum":1024,"minimum":-1024,"type":"integer","x-dependency":{"action":{"required":true,"value":"set-nice"},"type":{"value":"content"}},"x-display-name":"Nice Value"},"priority_type":{"enum":["class","offset"],"type":"string","x-dependency":{"action":{"required":true,"value":"set-priority"},"type":{"value":["content"]}}},"resolve_protocol":{"enum":["ipv4","ipv6"],"type":"string","x-dependency":{"action":{"required":false,"value":"do-resolve"},"type":{"required":true,"value":["content"]}},"x-display-name":"Protocol"},"resolve_resolvers":{"type":"string","x-dependency":{"action":{"required":true,"value":"do-resolve"},"type":{"required":true,"value":["content"]}},"x-display-name":"Resolvers"},"resolve_var":{"type":"string","x-dependency":{"action":{"required":true,"value":"do-resolve"},"type":{"required":true,"value":["content"]}},"x-display-name":"Variable name"},"sc_inc_id":{"type":"string","x-dependency":{"action":{"required":true,"value":["sc-inc-gpc0","sc-inc-gpc1","sc-set-gpt0"]},"type":{"required":true,"value":["connection","content","session"]}},"x-display-name":"Sticky counter ID"},"service_name":{"type":"string","x-dependency":{"action":{"required":true,"value":"use-service"},"type":{"value":"content"}},"x-display-name":"Service name"},"spoe_engine_name":{"type":"string","x-dependency":{"action":{"required":true,"value":"send-spoe-group"},"type":{"required":true,"value":["content"]}},"x-display-name":"Engine name"},"spoe_group_name":{"type":"string","x-dependency":{"action":{"required":true,"value":"send-spoe-group"},"type":{"required":true,"value":["content"]}},"x-display-name":"Group name"},"switch_mode_proto":{"type":"string","x-dependency":{"action":{"required":true,"value":"switch-mode"},"type":{"value":"content"}},"x-display-name":"Switch Mode Proto"},"timeout":{"nullable":true,"type":"integer","x-dependency":{"type":{"required":true,"value":"inspect-delay"}}},"tos_value":{"pattern":"^(0x[0-9A-Fa-f]+|[0-9]+)$","type":"string","x-dependency":{"action":{"required":true,"value":"set-tos"},"type":{"value":["connection","content"]}},"x-display-name":"Tos Value"},"track_key":{"type":"string","x-dependency":{"action":{"required":true,"value":["track-sc0","track-sc1","track-sc2"]},"type":{"value":["session","connection","content"]}},"x-display-name":"Sample expression rule"},"track_table":{"type":"string","x-dependency":{"action":{"required":false,"value":["track-sc0","track-sc1","track-sc2"]},"type":{"value":["session","connection","content"]}},"x-display-name":"Optional table name"},"type":{"enum":["connection","content","inspect-delay","session"],"type":"string"},"var_format":{"type":"string","x-dependency":{"action":{"required":true,"value":"set-var-fmt"},"type":{"value":["connection","content"]}},"x-display-name":"Var Format"},"var_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":["set-var","unset-var","set-var-fmt"]},"type":{"value":["session","connection","content"]}},"x-display-name":"Variable name"},"var_scope":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":["set-var","unset-var","set-var-fmt"]},"type":{"value":["session","connection","content"]}},"x-display-name":"Variable scope"}},"required":["index","type"],"title":"TCP Request Rule","type":"object"},"tcp_request_rules":{"description":"HAProxy TCP request rules array (corresponds to tcp-request directive)","items":{"$ref":"#/components/schemas/tcp_request_rule"},"title":"TCP Request Rules Array","type":"array"},"tcp_response_rule":{"additionalProperties":false,"description":"HAProxy TCP Response Rule configuration (corresponds to tcp-response)","example":{"cond":"if","cond_test":"{ src 192.168.0.0/16 }","index":0,"type":"content"},"properties":{"action":{"enum":["accept","reject","lua","set-bandwidth-limit","close","sc-inc-gpc0","sc-inc-gpc1","sc-set-gpt0","send-spoe-group","set-log-level","set-mark","set-nice","set-tos","silent-drop","unset-var"],"type":"string","x-dependency":{"type":{"required":true,"value":"content"}}},"bandwidth_limit_limit":{"type":"string","x-dependency":{"action":{"value":"set-bandwidth-limit"},"type":{"value":"content"}},"x-display-name":"Standard HAProxy expression"},"bandwidth_limit_name":{"type":"string","x-dependency":{"action":{"value":"set-bandwidth-limit"},"type":{"value":"content"}},"x-display-name":"Bandwidth limit name"},"bandwidth_limit_period":{"type":"string","x-dependency":{"action":{"value":"set-bandwidth-limit"},"type":{"value":"content"}},"x-display-name":"Standard HAProxy expression"},"cond":{"enum":["if","unless"],"type":"string","x-dependency":{"type":{"value":"content"}},"x-display-name":"Condition"},"cond_test":{"type":"string","x-dependency":{"cond":{"required":true},"type":{"value":"content"}},"x-display-name":"Condition Test","x-dynamic-enum":{"freeFormat":true,"operation":"getACLs","property":"acl_name"}},"expr":{"type":"string","x-dependency":{"action":{"required":true,"value":["set-src-port","sc-set-gpt0"]},"type":{"value":"content"}},"x-display-name":"Standard HAProxy expression"},"index":{"nullable":true,"type":"integer"},"log_level":{"enum":["emerg","alert","crit","err","warning","notice","info","debug","silent"],"type":"string","x-dependency":{"action":{"required":true,"value":"set-log-level"},"type":{"value":"content"}}},"lua_action":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":"lua"},"type":{"value":"content"}},"x-display-name":"Lua action name"},"lua_params":{"type":"string","x-dependency":{"action":{"value":"lua"},"type":{"value":"content"}},"x-display-name":"Lua action params"},"mark_value":{"pattern":"^(0x[0-9A-Fa-f]+|[0-9]+)$","type":"string","x-dependency":{"action":{"required":true,"value":"set-mark"},"type":{"value":"content"}},"x-display-name":"Mark Value"},"nice_value":{"maximum":1024,"minimum":-1024,"type":"integer","x-dependency":{"action":{"required":true,"value":"set-nice"},"type":{"value":"content"}},"x-display-name":"Nice Value"},"sc_id":{"type":"integer","x-dependency":{"action":{"required":true,"value":["sc-inc-gpc0","sc-inc-gpc1","sc-set-gpt0"]},"type":{"value":"content"}}},"sc_int":{"nullable":true,"type":"integer","x-dependency":{"action":{"required":true,"value":"sc-set-gpt0"},"type":{"value":"content"}},"x-display-name":"ScSet Integer Value"},"spoe_engine":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":"send-spoe-group"},"type":{"value":"content"}},"x-display-name":"SPOE Engine"},"spoe_group":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":"send-spoe-group"},"type":{"value":"content"}},"x-display-name":"SPOE Group"},"timeout":{"nullable":true,"type":"integer","x-dependency":{"type":{"required":true,"value":"inspect-delay"}}},"tos_value":{"pattern":"^(0x[0-9A-Fa-f]+|[0-9]+)$","type":"string","x-dependency":{"action":{"required":true,"value":"set-tos"},"type":{"value":"content"}},"x-display-name":"Tos Value"},"type":{"enum":["content","inspect-delay"],"type":"string"},"var_name":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"required":true,"value":["unset-var"]},"type":{"value":"content"}}},"var_scope":{"pattern":"^[^\\s]+$","type":"string","x-dependency":{"action":{"value":"unset-var"},"type":{"value":"content"}}}},"required":["index","type"],"title":"TCP Response Rule","type":"object"},"tcp_response_rules":{"description":"HAProxy TCP response rules array (corresponds to tcp-response directive)","items":{"$ref":"#/components/schemas/tcp_response_rule"},"title":"TCP Response Rules Array","type":"array"},"transaction":{"description":"HAProxy configuration transaction","example":{"_version":2,"id":"273e3385-2d0c-4fb1-aa27-93cbb31ff203","status":"in_progress"},"properties":{"_version":{"type":"integer"},"id":{"pattern":"^[^\\s]+$","type":"string"},"status":{"enum":["failed","outdated","in_progress","success"],"type":"string"}},"title":"Configuration transaction","type":"object"},"transactions":{"description":"Configuration transactions array","items":{"$ref":"#/components/schemas/transaction"},"title":"Transactions array","type":"array"},"user":{"description":"HAProxy userlist user","properties":{"groups":{"type":"string"},"password":{"type":"string"},"secure_password":{"type":"boolean"},"username":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"}},"required":["username","secure_password","password"],"title":"User"},"userlist":{"description":"HAProxy configuration of access control","properties":{"name":{"pattern":"^[A-Za-z0-9-_.:]+$","type":"string"}},"required":["name"],"title":"Userlist","type":"object"},"userlists":{"description":"HAProxy userlists array","items":{"$ref":"#/components/schemas/userlist"},"title":"Userlists","type":"array"},"users":{"description":"HAProxy userlist users array","items":{"$ref":"#/components/schemas/user"},"title":"Users","type":"array"}},"securitySchemes":{"basic_auth":{"scheme":"basic","type":"http"}}},"externalDocs":{"description":"HAProxy Documentation","url":"https://docs.haproxy.org/"},"info":{"contact":{"email":"support@haproxy.com","name":"HAProxy Support","url":"https://my.haproxy.com/portal/cust/login"},"description":"API for editing and managing haproxy instances. Provides process information, configuration management,\nhaproxy stats and logs.\n","title":"HAProxy Data Plane API","version":"2.7"},"openapi":"3.0.3","paths":{"/":{"get":{"description":"Returns a list of root endpoints.","operationId":"getAPIEndpoints","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/endpoints"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of root endpoints","tags":["Discovery"]}},"/cluster":{"delete":{"description":"Delete cluster settings and move the node back to single mode","operationId":"deleteCluster","parameters":[{"description":"In case of moving to single mode do we keep or clean configuration","in":"query","name":"configuration","schema":{"enum":["keep"],"type":"string"}},{"$ref":"#/components/parameters/version"}],"responses":{"204":{"description":"Cluster settings deleted and node moved to single mode"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete cluster settings","tags":["Cluster"]},"get":{"description":"Returns cluster data","operationId":"getCluster","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cluster_settings"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return cluster data","tags":["Cluster"]},"post":{"description":"Post cluster settings","operationId":"postCluster","parameters":[{"description":"In case of moving to single mode do we keep or clean configuration","in":"query","name":"configuration","schema":{"enum":["keep"],"type":"string"}},{"description":"Force the advertised address when joining a cluster","in":"query","name":"advertised_address","schema":{"type":"string"}},{"description":"Force the advertised port when joining a cluster","in":"query","name":"advertised_port","schema":{"maximum":65535,"minimum":1,"type":"integer"}},{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cluster_settings"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cluster_settings"}}},"description":"Cluster settings changed"},"400":{"$ref":"#/components/responses/BadRequest"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Post cluster settings","tags":["Cluster"]},"put":{"description":"Edit cluster settings","operationId":"editCluster","parameters":[{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cluster_settings"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cluster_settings"}}},"description":"Cluster settings changed"},"400":{"$ref":"#/components/responses/BadRequest"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Edit cluster settings","tags":["Cluster"]}},"/cluster/certificate":{"post":{"description":"Initiates a certificate refresh","operationId":"initiateCertificateRefresh","responses":{"200":{"description":"refresh activated"},"403":{"description":"refresh not possible"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Initiates a certificate refresh","tags":["Cluster"]}},"/health":{"get":{"description":"Return managed services health","operationId":"getHealth","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/health"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return managed services health","tags":["Health"]}},"/info":{"get":{"description":"Return API, hardware and OS information","operationId":"getInfo","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/info"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return API, hardware and OS information","tags":["Information"]}},"/service_discovery/aws":{"get":{"description":"Return all configured AWS regions.","operationId":"getAWSRegions","responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/awsRegions"}},"required":["data"],"type":"object"}}},"description":"Successful operation"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all configured AWS regions","tags":["ServiceDiscovery"]},"post":{"description":"Add a new AWS region.\nCredentials are not required in case Dataplane API is running in an EC2 instance with proper IAM role attached.","operationId":"createAWSRegion","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/awsRegion"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/awsRegion"}}},"description":"Resource created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new AWS region","tags":["ServiceDiscovery"]}},"/service_discovery/aws/{id}":{"delete":{"description":"Delete an AWS region configuration by it's id.","operationId":"deleteAWSRegion","parameters":[{"description":"AWS region ID","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Resource deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete an AWS region","tags":["ServiceDiscovery"]},"get":{"description":"Return one AWS Region configuration by it's id.","operationId":"getAWSRegion","parameters":[{"description":"AWS region id","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/awsRegion"}},"type":"object"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an AWS region","tags":["ServiceDiscovery"]},"put":{"description":"Replace an AWS region configuration by its id.","operationId":"replaceAWSRegion","parameters":[{"description":"AWS Region ID","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/awsRegion"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/awsRegion"}}},"description":"Resource updated"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace an AWS region","tags":["ServiceDiscovery"]}},"/service_discovery/consul":{"get":{"description":"Returns all configured Consul servers.","operationId":"getConsuls","responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/consuls"}},"required":["data"],"type":"object"}}},"description":"Successful operation"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all configured Consul servers","tags":["ServiceDiscovery"]},"post":{"description":"Adds a new Consul server.","operationId":"createConsul","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/consul"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/consul"}}},"description":"Consul created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new Consul server","tags":["ServiceDiscovery"]}},"/service_discovery/consul/{id}":{"delete":{"description":"Deletes a Consul server configuration by it's id.","operationId":"deleteConsul","parameters":[{"description":"Consul server Index","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Consul server deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a Consul server","tags":["ServiceDiscovery"]},"get":{"description":"Returns one Consul server configuration by it's id.","operationId":"getConsul","parameters":[{"description":"Consul server id","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"$ref":"#/components/schemas/consul"}},"type":"object"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one Consul server","tags":["ServiceDiscovery"]},"put":{"description":"Replaces a Consul server configuration by it's id.","operationId":"replaceConsul","parameters":[{"description":"Consul Index","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/consul"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/consul"}}},"description":"Consul server replaced"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a Consul server","tags":["ServiceDiscovery"]}},"/services":{"get":{"description":"Returns a list of API managed services endpoints.","operationId":"getServicesEndpoints","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/endpoints"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of service endpoints","tags":["Discovery"]}},"/services/haproxy":{"get":{"description":"Returns a list of HAProxy related endpoints.","operationId":"getHaproxyEndpoints","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/endpoints"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of HAProxy related endpoints","tags":["Discovery"]}},"/services/haproxy/configuration":{"get":{"description":"Returns a list of endpoints to be used for advanced configuration of HAProxy objects.","operationId":"getConfigurationEndpoints","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/endpoints"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of HAProxy advanced configuration endpoints","tags":["Discovery"]}},"/services/haproxy/configuration/acls":{"get":{"description":"Returns all ACL lines that are configured in specified parent.","operationId":"getAcls","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","fcgi-app"],"type":"string"}},{"description":"ACL name","in":"query","name":"acl_name","schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/acls"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all ACL lines","tags":["ACL"]},"post":{"description":"Adds a new ACL line of the specified type in the specified parent.","operationId":"createAcl","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl"}}},"description":"ACL line created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new ACL line","tags":["ACL"]}},"/services/haproxy/configuration/acls/{index}":{"delete":{"description":"Deletes a ACL line configuration by it's index from the specified parent.","operationId":"deleteAcl","parameters":[{"description":"ACL line Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"ACL line deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a ACL line","tags":["ACL"]},"get":{"description":"Returns one ACL line configuration by it's index in the specified parent.","operationId":"getAcl","parameters":[{"description":"ACL line Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/acl"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one ACL line","tags":["ACL"]},"put":{"description":"Replaces a ACL line configuration by it's index in the specified parent.","operationId":"replaceAcl","parameters":[{"description":"ACL line Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl"}}},"description":"ACL line replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a ACL line","tags":["ACL"]}},"/services/haproxy/configuration/backend_switching_rules":{"get":{"description":"Returns all Backend Switching Rules that are configured in specified frontend.","operationId":"getBackendSwitchingRules","parameters":[{"description":"Frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/backend_switching_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all Backend Switching Rules","tags":["BackendSwitchingRule"]},"post":{"description":"Adds a new Backend Switching Rule of the specified type in the specified frontend.","operationId":"createBackendSwitchingRule","parameters":[{"description":"Frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend_switching_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend_switching_rule"}}},"description":"Backend Switching Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend_switching_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new Backend Switching Rule","tags":["BackendSwitchingRule"]}},"/services/haproxy/configuration/backend_switching_rules/{index}":{"delete":{"description":"Deletes a Backend Switching Rule configuration by it's index from the specified frontend.","operationId":"deleteBackendSwitchingRule","parameters":[{"description":"Switching Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Backend Switching Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a Backend Switching Rule","tags":["BackendSwitchingRule"]},"get":{"description":"Returns one Backend Switching Rule configuration by it's index in the specified frontend.","operationId":"getBackendSwitchingRule","parameters":[{"description":"Switching Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/backend_switching_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one Backend Switching Rule","tags":["BackendSwitchingRule"]},"put":{"description":"Replaces a Backend Switching Rule configuration by it's index in the specified frontend.","operationId":"replaceBackendSwitchingRule","parameters":[{"description":"Switching Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend_switching_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend_switching_rule"}}},"description":"Backend Switching Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend_switching_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a Backend Switching Rule","tags":["BackendSwitchingRule"]}},"/services/haproxy/configuration/backends":{"get":{"description":"Returns an array of all configured backends.","operationId":"getBackends","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/backends"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of backends","tags":["Backend"]},"post":{"description":"Adds a new backend to the configuration file.","operationId":"createBackend","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend"}}},"description":"Backend created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a backend","tags":["Backend"]}},"/services/haproxy/configuration/backends/{name}":{"delete":{"description":"Deletes a backend from the configuration by it's name.","operationId":"deleteBackend","parameters":[{"description":"Backend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Backend deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a backend","tags":["Backend"]},"get":{"description":"Returns one backend configuration by it's name.","operationId":"getBackend","parameters":[{"description":"Backend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/backend"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a backend","tags":["Backend"]},"put":{"description":"Replaces a backend configuration by it's name.","operationId":"replaceBackend","parameters":[{"description":"Backend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend"}}},"description":"Backend replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/backend"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a backend","tags":["Backend"]}},"/services/haproxy/configuration/binds":{"get":{"description":"Returns an array of all binds that are configured in specified frontend.","operationId":"getBinds","parameters":[{"description":"Parent frontend name","in":"query","name":"frontend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["frontend","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/binds"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of binds","tags":["Bind"]},"post":{"description":"Adds a new bind in the specified frontend in the configuration file.","operationId":"createBind","parameters":[{"description":"Parent frontend name","in":"query","name":"frontend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["frontend","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/bind"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/bind"}}},"description":"Bind created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/bind"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new bind","tags":["Bind"]}},"/services/haproxy/configuration/binds/{name}":{"delete":{"description":"Deletes a bind configuration by it's name in the specified frontend.","operationId":"deleteBind","parameters":[{"description":"Bind name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent frontend name","in":"query","name":"frontend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["frontend","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Bind deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a bind","tags":["Bind"]},"get":{"description":"Returns one bind configuration by it's name in the specified frontend.","operationId":"getBind","parameters":[{"description":"Bind name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent frontend name","in":"query","name":"frontend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["frontend","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/bind"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one bind","tags":["Bind"]},"put":{"description":"Replaces a bind configuration by it's name in the specified frontend.","operationId":"replaceBind","parameters":[{"description":"Bind name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent frontend name","in":"query","name":"frontend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["frontend","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/bind"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/bind"}}},"description":"Bind replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/bind"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a bind","tags":["Bind"]}},"/services/haproxy/configuration/caches":{"get":{"description":"Returns an array of all configured caches.","operationId":"getCaches","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/caches"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of caches","tags":["Cache"]},"post":{"description":"Adds a new cache section to the configuration file.","operationId":"createCache","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cache"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cache"}}},"description":"Cache created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cache"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a cache","tags":["Cache"]}},"/services/haproxy/configuration/caches/{name}":{"delete":{"description":"Deletes a cache from the configuration by it's name.","operationId":"deleteCache","parameters":[{"description":"Cache name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Cache deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a cache","tags":["Cache"]},"get":{"description":"Returns one cache section configuration by it's name.","operationId":"getCache","parameters":[{"description":"Cache name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/cache"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a cache","tags":["Cache"]},"put":{"description":"Replaces a cache configuration by it's name.","operationId":"replaceCache","parameters":[{"description":"Cache name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cache"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cache"}}},"description":"Cache replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/cache"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a cache","tags":["Cache"]}},"/services/haproxy/configuration/captures":{"get":{"description":"Returns an array of all declare capture records that are configured in specified frontend.","operationId":"getDeclareCaptures","parameters":[{"description":"Parent frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/captures"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of declare captures","tags":["DeclareCapture"]},"post":{"description":"Adds a new declare capture in the specified frontend in the configuration file.","operationId":"createDeclareCapture","parameters":[{"description":"Parent frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/capture"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/capture"}}},"description":"Declare capture created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/capture"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new declare capture","tags":["DeclareCapture"]}},"/services/haproxy/configuration/captures/{index}":{"delete":{"description":"Deletes a declare capture configuration by it's index in the specified frontend.","operationId":"deleteDeclareCapture","parameters":[{"description":"Declare Capture Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Declare Capture deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a declare capture","tags":["DeclareCapture"]},"get":{"description":"Returns one declare capture configuration by it's index in the specified frontend.","operationId":"getDeclareCapture","parameters":[{"description":"Declare Capture Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/capture"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one declare capture","tags":["DeclareCapture"]},"put":{"description":"Replaces a declare capture configuration by it's index in the specified frontend.","operationId":"replaceDeclareCapture","parameters":[{"description":"Declare Capture Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent frontend name","in":"query","name":"frontend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/capture"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/capture"}}},"description":"Declare Capture replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/capture"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a declare capture","tags":["DeclareCapture"]}},"/services/haproxy/configuration/defaults":{"get":{"deprecated":true,"description":"Returns defaults part of configuration, this has been deprecated, use named_defaults instead.","operationId":"getDefaults","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/defaults"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return defaults part of configuration","tags":["Defaults"]},"put":{"deprecated":true,"description":"Replace defaults part of config, this has been deprecated, use named_defaults instead.","operationId":"replaceDefaults","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"description":"Defaults replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace defaults","tags":["Defaults"]}},"/services/haproxy/configuration/dgram_binds":{"get":{"description":"Returns an array of all dgram binds that are configured in specified log forward.","operationId":"getDgramBinds","parameters":[{"description":"Parent log forward name","in":"query","name":"log_forward","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/dgram_binds"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of dgram binds","tags":["DgramBind"]},"post":{"description":"Adds a new dgram bind in the specified log forward in the configuration file.","operationId":"createDgramBind","parameters":[{"description":"Parent log forward name","in":"query","name":"log_forward","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/dgram_bind"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/dgram_bind"}}},"description":"Bind created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/dgram_bind"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new dgram bind","tags":["DgramBind"]}},"/services/haproxy/configuration/dgram_binds/{name}":{"delete":{"description":"Deletes a dgram bind configuration by it's name in the specified log forward.","operationId":"deleteDgramBind","parameters":[{"description":"Bind name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent log forward name","in":"query","name":"log_forward","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Bind deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a dgram bind","tags":["DgramBind"]},"get":{"description":"Returns one dgram bind configuration by it's name in the specified log forward.","operationId":"getDgramBind","parameters":[{"description":"Bind name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent log forward name","in":"query","name":"log_forward","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/dgram_bind"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one dgram bind","tags":["DgramBind"]},"put":{"description":"Replaces a dgram bind configuration by it's name in the specified log forward.","operationId":"replaceDgramBind","parameters":[{"description":"Bind name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent log forward name","in":"query","name":"log_forward","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/dgram_bind"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/dgram_bind"}}},"description":"Bind replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/dgram_bind"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a dgram bind","tags":["DgramBind"]}},"/services/haproxy/configuration/fcgi_apps":{"get":{"description":"Returns an array of all configured FCGI applications.","operationId":"getFCGIApps","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/fcgiApps"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of FCGI apps","tags":["FCGIApp"]},"post":{"description":"Adds a new FCGI application to the configuration file.","operationId":"createFCGIApp","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fcgiApp"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fcgiApp"}}},"description":"Application created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fcgiApp"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add an FCGI app","tags":["FCGIApp"]}},"/services/haproxy/configuration/fcgi_apps/{name}":{"delete":{"description":"Deletes an FCGI application from the configuration by its name.","operationId":"deleteFCGIApp","parameters":[{"description":"Application name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Application deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete an FCGI app","tags":["FCGIApp"]},"get":{"description":"Returns one FCGI application configuration by its name.","operationId":"getFCGIApp","parameters":[{"description":"Application name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/fcgiApp"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a FCGI app","tags":["FCGIApp"]},"put":{"description":"Replaces a FCGI application configuration by its name.","operationId":"replaceFCGIApp","parameters":[{"description":"Application name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fcgiApp"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fcgiApp"}}},"description":"Application replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fcgiApp"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a FCGI app","tags":["FCGIApp"]}},"/services/haproxy/configuration/filters":{"get":{"description":"Returns all Filters that are configured in specified parent.","operationId":"getFilters","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/filters"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all Filters","tags":["Filter"]},"post":{"description":"Adds a new Filter of the specified type in the specified parent.","operationId":"createFilter","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/filter"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/filter"}}},"description":"Filter created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/filter"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new Filter","tags":["Filter"]}},"/services/haproxy/configuration/filters/{index}":{"delete":{"description":"Deletes a Filter configuration by it's index from the specified parent.","operationId":"deleteFilter","parameters":[{"description":"Filter Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Filter deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a Filter","tags":["Filter"]},"get":{"description":"Returns one Filter configuration by it's index in the specified parent.","operationId":"getFilter","parameters":[{"description":"Filter Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/filter"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one Filter","tags":["Filter"]},"put":{"description":"Replaces a Filter configuration by it's index in the specified parent.","operationId":"replaceFilter","parameters":[{"description":"Filter Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/filter"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/filter"}}},"description":"Filter replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/filter"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a Filter","tags":["Filter"]}},"/services/haproxy/configuration/frontends":{"get":{"description":"Returns an array of all configured frontends.","operationId":"getFrontends","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/frontends"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of frontends","tags":["Frontend"]},"post":{"description":"Adds a new frontend to the configuration file.","operationId":"createFrontend","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/frontend"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/frontend"}}},"description":"Frontend created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/frontend"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a frontend","tags":["Frontend"]}},"/services/haproxy/configuration/frontends/{name}":{"delete":{"description":"Deletes a frontend from the configuration by it's name.","operationId":"deleteFrontend","parameters":[{"description":"Frontend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Frontend deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a frontend","tags":["Frontend"]},"get":{"description":"Returns one frontend configuration by it's name.","operationId":"getFrontend","parameters":[{"description":"Frontend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/frontend"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a frontend","tags":["Frontend"]},"put":{"description":"Replaces a frontend configuration by it's name.","operationId":"replaceFrontend","parameters":[{"description":"Frontend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/frontend"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/frontend"}}},"description":"Frontend replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/frontend"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a frontend","tags":["Frontend"]}},"/services/haproxy/configuration/global":{"get":{"description":"Returns global part of configuration.","operationId":"getGlobal","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/global"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a global part of configuration","tags":["Global"]},"put":{"description":"Replace global part of config","operationId":"replaceGlobal","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/global"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/global"}}},"description":"Global replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/global"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace global","tags":["Global"]}},"/services/haproxy/configuration/groups":{"get":{"operationId":"getGroups","parameters":[{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/groups"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of userlist groups","tags":["Group"]},"post":{"operationId":"createGroup","parameters":[{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/group"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/group"}}},"description":"Group created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/group"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new userlist group","tags":["Group"]}},"/services/haproxy/configuration/groups/{name}":{"delete":{"operationId":"deleteGroup","parameters":[{"description":"group name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Group deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a group","tags":["Group"]},"get":{"operationId":"getGroup","parameters":[{"description":"Group name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/group"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one userlist group","tags":["Group"]},"put":{"operationId":"replaceGroup","parameters":[{"description":"group name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/group"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/group"}}},"description":"Group replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/group"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a group","tags":["Group"]}},"/services/haproxy/configuration/http_after_response_rules":{"get":{"description":"Returns all HTTP After Response Rules that are configured in specified parent.","operationId":"getHTTPAfterResponseRules","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_after_response_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all HTTP After Response Rules","tags":["HTTPAfterResponseRule"]},"post":{"description":"Adds a new HTTP After Response Rule of the specified type in the specified parent.","operationId":"createHTTPAfterResponseRule","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_after_response_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_after_response_rule"}}},"description":"HTTP Response Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_after_response_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new HTTP After Response Rule","tags":["HTTPAfterResponseRule"]}},"/services/haproxy/configuration/http_after_response_rules/{index}":{"delete":{"description":"Deletes a HTTP After Response Rule configuration by it's index from the specified parent.","operationId":"deleteHTTPAfterResponseRule","parameters":[{"description":"HTTP After Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"HTTP After Response Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a HTTP After Response Rule","tags":["HTTPAfterResponseRule"]},"get":{"description":"Returns one HTTP After Response Rule configuration by it's index in the specified parent.","operationId":"getHTTPAfterResponseRule","parameters":[{"description":"HTTP After Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_after_response_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one HTTP After Response Rule","tags":["HTTPAfterResponseRule"]},"put":{"description":"Replaces a HTTP After Response Rule configuration by it's index in the specified parent.","operationId":"replaceHTTPAfterResponseRule","parameters":[{"description":"HTTP After Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_after_response_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_after_response_rule"}}},"description":"HTTP After Response Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_after_response_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a HTTP After Response Rule","tags":["HTTPAfterResponseRule"]}},"/services/haproxy/configuration/http_checks":{"get":{"description":"Returns all HTTP checks that are configured in specified parent.","operationId":"getHTTPChecks","parameters":[{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_checks"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of HTTP checks","tags":["HTTPCheck"]},"post":{"description":"Adds a new HTTP check of the specified type in the specified parent.","operationId":"createHTTPCheck","parameters":[{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_check"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_check"}}},"description":"HTTP check created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_check"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new HTTP check","tags":["HTTPCheck"]}},"/services/haproxy/configuration/http_checks/{index}":{"delete":{"description":"Deletes a HTTP check configuration by it's index from the specified parent.","operationId":"deleteHTTPCheck","parameters":[{"description":"HTTP check Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"HTTP check deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a HTTP check","tags":["HTTPCheck"]},"get":{"description":"Returns one HTTP check configuration by it's index in the specified parent.","operationId":"getHTTPCheck","parameters":[{"description":"HTTP Check Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_check"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one HTTP check","tags":["HTTPCheck"]},"put":{"description":"Replaces a HTTP Check configuration by it's index in the specified parent.","operationId":"replaceHTTPCheck","parameters":[{"description":"HTTP Check Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_check"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_check"}}},"description":"HTTP check replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_check"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a HTTP check","tags":["HTTPCheck"]}},"/services/haproxy/configuration/http_error_rules":{"get":{"description":"Returns all HTTP Error Rules that are configured in the specified parent.","operationId":"getHTTPErrorRules","parameters":[{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_error_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all HTTP Error Rules","tags":["HTTPErrorRule"]},"post":{"description":"Adds a new HTTP Error Rule of the specified type in the specified parent.","operationId":"createHTTPErrorRule","parameters":[{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_error_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_error_rule"}}},"description":"HTTP Error Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_error_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new HTTP Error Rule","tags":["HTTPErrorRule"]}},"/services/haproxy/configuration/http_error_rules/{index}":{"delete":{"description":"Deletes a HTTP Error Rule configuration by its index from the specified parent.","operationId":"deleteHTTPErrorRule","parameters":[{"description":"HTTP Error Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"HTTP Error Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a HTTP Error Rule","tags":["HTTPErrorRule"]},"get":{"description":"Returns one HTTP Error Rule configuration by its index in the specified parent.","operationId":"getHTTPErrorRule","parameters":[{"description":"HTTP Error Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_error_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one HTTP Error Rule","tags":["HTTPErrorRule"]},"put":{"description":"Replaces a HTTP Error Rule configuration by its index in the specified parent.","operationId":"replaceHTTPErrorRule","parameters":[{"description":"HTTP Error Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_error_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_error_rule"}}},"description":"HTTP Error Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_error_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a HTTP Error Rule","tags":["HTTPErrorRule"]}},"/services/haproxy/configuration/http_errors_sections":{"get":{"description":"Returns an array of all configured http-error sections.","operationId":"getHTTPErrorsSections","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_errors_sections"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of http-error sections","tags":["HTTPErrors"]},"post":{"description":"Adds a new http-error section to the configuration.","operationId":"createHTTPErrorsSection","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_errors_section"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_errors_section"}}},"description":"http-error section created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_errors_section"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new http-error section","tags":["HTTPErrors"]}},"/services/haproxy/configuration/http_errors_sections/{name}":{"delete":{"description":"Deletes a http-error section with a given name from the configuration.","operationId":"deleteHTTPErrorsSection","parameters":[{"description":"http-error section name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"http-error section deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a http-error section","tags":["HTTPErrors"]},"get":{"description":"Returns one http-error section with a given name from the configuration.","operationId":"getHTTPErrorsSection","parameters":[{"description":"http-error section name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_errors_section"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a http-error section","tags":["HTTPErrors"]},"put":{"description":"Replaces a http-error section with a given name in the configuration.","operationId":"replaceHTTPErrorsSection","parameters":[{"description":"http-error section name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_errors_section"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_errors_section"}}},"description":"http-error section updated"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_errors_section"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a http-error section","tags":["HTTPErrors"]}},"/services/haproxy/configuration/http_request_rules":{"get":{"description":"Returns all HTTP Request Rules that are configured in specified parent.","operationId":"getHTTPRequestRules","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_request_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all HTTP Request Rules","tags":["HTTPRequestRule"]},"post":{"description":"Adds a new HTTP Request Rule of the specified type in the specified parent.","operationId":"createHTTPRequestRule","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_request_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_request_rule"}}},"description":"HTTP Request Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_request_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new HTTP Request Rule","tags":["HTTPRequestRule"]}},"/services/haproxy/configuration/http_request_rules/{index}":{"delete":{"description":"Deletes a HTTP Request Rule configuration by it's index from the specified parent.","operationId":"deleteHTTPRequestRule","parameters":[{"description":"HTTP Request Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"HTTP Request Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a HTTP Request Rule","tags":["HTTPRequestRule"]},"get":{"description":"Returns one HTTP Request Rule configuration by it's index in the specified parent.","operationId":"getHTTPRequestRule","parameters":[{"description":"HTTP Request Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_request_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one HTTP Request Rule","tags":["HTTPRequestRule"]},"put":{"description":"Replaces a HTTP Request Rule configuration by it's index in the specified parent.","operationId":"replaceHTTPRequestRule","parameters":[{"description":"HTTP Request Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_request_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_request_rule"}}},"description":"HTTP Request Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_request_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a HTTP Request Rule","tags":["HTTPRequestRule"]}},"/services/haproxy/configuration/http_response_rules":{"get":{"description":"Returns all HTTP Response Rules that are configured in specified parent.","operationId":"getHTTPResponseRules","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_response_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all HTTP Response Rules","tags":["HTTPResponseRule"]},"post":{"description":"Adds a new HTTP Response Rule of the specified type in the specified parent.","operationId":"createHTTPResponseRule","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_response_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_response_rule"}}},"description":"HTTP Response Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_response_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new HTTP Response Rule","tags":["HTTPResponseRule"]}},"/services/haproxy/configuration/http_response_rules/{index}":{"delete":{"description":"Deletes a HTTP Response Rule configuration by it's index from the specified parent.","operationId":"deleteHTTPResponseRule","parameters":[{"description":"HTTP Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"HTTP Response Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a HTTP Response Rule","tags":["HTTPResponseRule"]},"get":{"description":"Returns one HTTP Response Rule configuration by it's index in the specified parent.","operationId":"getHTTPResponseRule","parameters":[{"description":"HTTP Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/http_response_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one HTTP Response Rule","tags":["HTTPResponseRule"]},"put":{"description":"Replaces a HTTP Response Rule configuration by it's index in the specified parent.","operationId":"replaceHTTPResponseRule","parameters":[{"description":"HTTP Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_response_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_response_rule"}}},"description":"HTTP Response Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/http_response_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a HTTP Response Rule","tags":["HTTPResponseRule"]}},"/services/haproxy/configuration/log_forwards":{"get":{"description":"Returns an array of all configured log forwards.","operationId":"getLogForwards","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/log_forwards"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of log forwards","tags":["LogForward"]},"post":{"description":"Adds a new log_forward to the configuration file.","operationId":"createLogForward","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_forward"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_forward"}}},"description":"Log Forward created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_forward"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a log forward","tags":["LogForward"]}},"/services/haproxy/configuration/log_forwards/{name}":{"delete":{"description":"Deletes a log forward from the configuration by it's name.","operationId":"deleteLogForward","parameters":[{"description":"Log Forward name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Log Forward deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a log forward","tags":["LogForward"]},"get":{"description":"Returns one log forward configuration by it's name.","operationId":"getLogForward","parameters":[{"description":"Log Forward name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/log_forward"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a log forward","tags":["LogForward"]},"put":{"description":"Replaces a log forward configuration by it's name.","operationId":"replaceLogForward","parameters":[{"description":"Log Forward name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_forward"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_forward"}}},"description":"Log Forward replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_forward"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a log forward","tags":["LogForward"]}},"/services/haproxy/configuration/log_targets":{"get":{"description":"Returns all Log Targets that are configured in specified parent.","operationId":"getLogTargets","parameters":[{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults","global","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/log_targets"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all Log Targets","tags":["LogTarget"]},"post":{"description":"Adds a new Log Target of the specified type in the specified parent.","operationId":"createLogTarget","parameters":[{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults","global","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_target"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_target"}}},"description":"Log Target created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_target"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new Log Target","tags":["LogTarget"]}},"/services/haproxy/configuration/log_targets/{index}":{"delete":{"description":"Deletes a Log Target configuration by it's index from the specified parent.","operationId":"deleteLogTarget","parameters":[{"description":"Log Target Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults","global","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Log Target deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a Log Target","tags":["LogTarget"]},"get":{"description":"Returns one Log Target configuration by it's index in the specified parent.","operationId":"getLogTarget","parameters":[{"description":"Log Target Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults","global","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/log_target"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one Log Target","tags":["LogTarget"]},"put":{"description":"Replaces a Log Target configuration by it's index in the specified parent.","operationId":"replaceLogTarget","parameters":[{"description":"Log Target Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend","defaults","global","log_forward","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_target"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_target"}}},"description":"Log Target replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/log_target"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a Log Target","tags":["LogTarget"]}},"/services/haproxy/configuration/mailer_entries":{"get":{"description":"Returns an array of all the mailer_entries configured in the specified mailers section.","operationId":"getMailerEntries","parameters":[{"description":"Parent mailers section name","in":"query","name":"mailers_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/mailer_entries"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of mailer_entries","tags":["MailerEntry"]},"post":{"description":"Adds a new mailer entry to the specified mailers section in the configuration file.","operationId":"createMailerEntry","parameters":[{"description":"Parent mailers section name","in":"query","name":"mailers_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailer_entry"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailer_entry"}}},"description":"MailerEntry created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailer_entry"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new mailer_entry","tags":["MailerEntry"]}},"/services/haproxy/configuration/mailer_entries/{name}":{"delete":{"description":"Deletes a mailer entry configuration by it's name in the specified mailers section.","operationId":"deleteMailerEntry","parameters":[{"description":"MailerEntry name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent mailers section name","in":"query","name":"mailers_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"MailerEntry deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a mailer_entry","tags":["MailerEntry"]},"get":{"description":"Returns one mailer_entry configuration by it's name in the specified mailers section.","operationId":"getMailerEntry","parameters":[{"description":"MailerEntry name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent mailers name","in":"query","name":"mailers_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/mailer_entry"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one mailer_entry","tags":["MailerEntry"]},"put":{"description":"Replaces a mailer entry configuration by it's name in the specified mailers section.","operationId":"replaceMailerEntry","parameters":[{"description":"MailerEntry name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent mailers section name","in":"query","name":"mailers_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailer_entry"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailer_entry"}}},"description":"MailerEntry replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailer_entry"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a mailer_entry","tags":["MailerEntry"]}},"/services/haproxy/configuration/mailers_section":{"get":{"description":"Returns an array of all the configured mailers in HAProxy","operationId":"getMailersSections","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/mailers_sections"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of mailers sections","tags":["Mailers"]},"post":{"description":"Creates a new empty Mailers section","operationId":"createMailersSection","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailers_section"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailers_section"}}},"description":"Mailers created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailers_section"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new Mailers section","tags":["Mailers"]}},"/services/haproxy/configuration/mailers_section/{name}":{"delete":{"description":"Deletes a mailers from the configuration by it's name.","operationId":"deleteMailersSection","parameters":[{"description":"Mailers name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Mailers deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a Mailers section","tags":["Mailers"]},"get":{"description":"Returns one mailers configuration by it's name.","operationId":"getMailersSection","parameters":[{"description":"Mailers name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/mailers_section"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a Mailers section","tags":["Mailers"]},"put":{"description":"Modifies a mailers configuration by it's name.","operationId":"editMailersSection","parameters":[{"description":"Mailers name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailers_section"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailers_section"}}},"description":"Mailers configuration updated"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/mailers_section"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Modify a Mailers section","tags":["Mailers"]}},"/services/haproxy/configuration/named_defaults":{"get":{"description":"Returns an array of all configured defaults.","operationId":"getDefaultsSections","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/defaults_sections"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of defaults","tags":["Defaults"]},"post":{"description":"Adds a new defaults section to the configuration file.","operationId":"createDefaultsSection","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"description":"Defaults created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a defaults section","tags":["Defaults"]}},"/services/haproxy/configuration/named_defaults/{name}":{"delete":{"description":"Deletes a defaults section from the configuration by it's name.","operationId":"deleteDefaultsSection","parameters":[{"description":"Defaults name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Defaults section deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a defaults section","tags":["Defaults"]},"get":{"description":"Returns one defautls section configuration by it's name.","operationId":"getDefaultsSection","parameters":[{"description":"Defaults name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/defaults"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a defautls section","tags":["Defaults"]},"put":{"description":"Replaces a defatults section configuration by it's name.","operationId":"replaceDefaultsSection","parameters":[{"description":"Defaults name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"description":"Defaults section replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/defaults"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a defatults section","tags":["Defaults"]}},"/services/haproxy/configuration/nameservers":{"get":{"description":"Returns an array of all configured nameservers.","operationId":"getNameservers","parameters":[{"description":"Parent resolver name","in":"query","name":"resolver","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/nameservers"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of nameservers","tags":["Nameserver"]},"post":{"description":"Adds a new nameserver to the resolvers section.","operationId":"createNameserver","parameters":[{"description":"Parent resolver name","in":"query","name":"resolver","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/nameserver"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/nameserver"}}},"description":"Nameserver created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/nameserver"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a nameserver","tags":["Nameserver"]}},"/services/haproxy/configuration/nameservers/{name}":{"delete":{"description":"Deletes a nameserver from the resolvers section by it's name.","operationId":"deleteNameserver","parameters":[{"description":"Nameserver name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent resolver name","in":"query","name":"resolver","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Nameserver deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a nameserver","tags":["Nameserver"]},"get":{"description":"Returns one nameserver configuration by it's name.","operationId":"getNameserver","parameters":[{"description":"Nameserver name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent resolver name","in":"query","name":"resolver","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/nameserver"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a nameserver","tags":["Nameserver"]},"put":{"description":"Replaces a nameserver configuration by it's name.","operationId":"replaceNameserver","parameters":[{"description":"Nameserver name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent resolver name","in":"query","name":"resolver","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/nameserver"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/nameserver"}}},"description":"Nameserver replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/nameserver"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a nameserver","tags":["Nameserver"]}},"/services/haproxy/configuration/peer_entries":{"get":{"description":"Returns an array of all peer_entries that are configured in specified peer section.","operationId":"getPeerEntries","parameters":[{"description":"Parent peer section name","in":"query","name":"peer_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/peer_entries"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of peer_entries","tags":["PeerEntry"]},"post":{"description":"Adds a new peer entry in the specified peer section in the configuration file.","operationId":"createPeerEntry","parameters":[{"description":"Parent peer section name","in":"query","name":"peer_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_entry"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_entry"}}},"description":"PeerEntry created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_entry"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new peer_entry","tags":["PeerEntry"]}},"/services/haproxy/configuration/peer_entries/{name}":{"delete":{"description":"Deletes a peer entry configuration by it's name in the specified peer section.","operationId":"deletePeerEntry","parameters":[{"description":"PeerEntry name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent peers name","in":"query","name":"peer_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"PeerEntry deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a peer_entry","tags":["PeerEntry"]},"get":{"description":"Returns one peer_entry configuration by it's name in the specified peer section.","operationId":"getPeerEntry","parameters":[{"description":"PeerEntry name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent peers name","in":"query","name":"peer_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/peer_entry"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one peer_entry","tags":["PeerEntry"]},"put":{"description":"Replaces a peer entry configuration by it's name in the specified peer section.","operationId":"replacePeerEntry","parameters":[{"description":"PeerEntry name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent peers name","in":"query","name":"peer_section","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_entry"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_entry"}}},"description":"PeerEntry replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_entry"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a peer_entry","tags":["PeerEntry"]}},"/services/haproxy/configuration/peer_section":{"get":{"description":"Returns an array of all configured peer_section.","operationId":"getPeerSections","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/peer_sections"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of peer_section","tags":["Peer"]},"post":{"description":"Adds a new peer to the configuration file.","operationId":"createPeer","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_section"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_section"}}},"description":"Peer created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/peer_section"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a peer","tags":["Peer"]}},"/services/haproxy/configuration/peer_section/{name}":{"delete":{"description":"Deletes a peer from the configuration by it's name.","operationId":"deletePeer","parameters":[{"description":"Peer name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Peer deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a peer","tags":["Peer"]},"get":{"description":"Returns one peer configuration by it's name.","operationId":"getPeerSection","parameters":[{"description":"Peer name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/peer_section"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a peer","tags":["Peer"]}},"/services/haproxy/configuration/programs":{"get":{"description":"Returns an array of all configured programs in the process-manager configuration file.","operationId":"getPrograms","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/programs"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of programs","tags":["ProcessManager"]},"post":{"description":"Adds a new program to the process-manager configuration file.","operationId":"createProgram","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/program"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/program"}}},"description":"Program created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/program"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a program","tags":["ProcessManager"]}},"/services/haproxy/configuration/programs/{name}":{"delete":{"description":"Deletes a program from the process-manager configuration file by its name.","operationId":"deleteProgram","parameters":[{"description":"Program name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Program deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a program","tags":["ProcessManager"]},"get":{"description":"Returns one program by its name from the process-manager configuration file.","operationId":"getProgram","parameters":[{"description":"Program name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/program"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a program","tags":["ProcessManager"]},"put":{"description":"Replaces a program from the process-manager configuration by its name.","operationId":"replaceProgram","parameters":[{"description":"Program name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/program"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/program"}}},"description":"Program replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/program"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a program","tags":["ProcessManager"]}},"/services/haproxy/configuration/raw":{"get":{"description":"Returns HAProxy configuration file in plain text","operationId":"getHAProxyConfiguration","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"type":"string"}},"required":["data"],"type":"object"}}},"description":"Operation successful","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return HAProxy configuration","tags":["Configuration"]},"post":{"description":"Push a new haproxy configuration file in plain text","operationId":"postHAProxyConfiguration","parameters":[{"description":"If set, no version check will be done and the pushed config will be enforced","in":"query","name":"skip_version","schema":{"default":false,"type":"boolean"}},{"description":"If set, no reload will be initiated and runtime actions from X-Runtime-Actions will be applied","in":"query","name":"skip_reload","schema":{"default":false,"type":"boolean"}},{"description":"If set, only validates configuration, without applying it","in":"query","name":"only_validate","schema":{"default":false,"type":"boolean"}},{"description":"List of Runtime API commands with parameters separated by ';'","in":"header","name":"X-Runtime-Actions","schema":{"type":"string"}},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"text/plain":{"schema":{"type":"string"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"type":"string"}}},"description":"New HAProxy configuration pushed"},"202":{"content":{"application/json":{"schema":{"type":"string"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Push new haproxy configuration","tags":["Configuration"]}},"/services/haproxy/configuration/resolvers":{"get":{"description":"Returns an array of all configured resolvers.","operationId":"getResolvers","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/resolvers"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of resolvers","tags":["Resolver"]},"post":{"description":"Adds a new resolver section to the configuration file.","operationId":"createResolver","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/resolver"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/resolver"}}},"description":"Resolver created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/resolver"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a resolver","tags":["Resolver"]}},"/services/haproxy/configuration/resolvers/{name}":{"delete":{"description":"Deletes a resolver from the configuration by it's name.","operationId":"deleteResolver","parameters":[{"description":"Resolver name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Resolver deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a resolver","tags":["Resolver"]},"get":{"description":"Returns one resolver section configuration by it's name.","operationId":"getResolver","parameters":[{"description":"Resolver name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/resolver"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a resolver","tags":["Resolver"]},"put":{"description":"Replaces a resolver configuration by it's name.","operationId":"replaceResolver","parameters":[{"description":"Resolver name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/resolver"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/resolver"}}},"description":"Resolver replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/resolver"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a resolver","tags":["Resolver"]}},"/services/haproxy/configuration/rings":{"get":{"description":"Returns an array of all configured rings.","operationId":"getRings","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/rings"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of rings","tags":["Ring"]},"post":{"description":"Adds a new ring to the configuration file.","operationId":"createRing","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ring"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ring"}}},"description":"Ring created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ring"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a ring","tags":["Ring"]}},"/services/haproxy/configuration/rings/{name}":{"delete":{"description":"Deletes a ring from the configuration by it's name.","operationId":"deleteRing","parameters":[{"description":"Ring name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Ring deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a ring","tags":["Ring"]},"get":{"description":"Returns one ring configuration by it's name.","operationId":"getRing","parameters":[{"description":"Ring name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/ring"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a ring","tags":["Ring"]},"put":{"description":"Replaces a ring configuration by it's name.","operationId":"replaceRing","parameters":[{"description":"Ring name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ring"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ring"}}},"description":"Ring replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ring"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a ring","tags":["Ring"]}},"/services/haproxy/configuration/server_switching_rules":{"get":{"description":"Returns all Backend Switching Rules that are configured in specified backend.","operationId":"getServerSwitchingRules","parameters":[{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/server_switching_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all Server Switching Rules","tags":["ServerSwitchingRule"]},"post":{"description":"Adds a new Server Switching Rule of the specified type in the specified backend.","operationId":"createServerSwitchingRule","parameters":[{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_switching_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_switching_rule"}}},"description":"Server Switching Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_switching_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new Server Switching Rule","tags":["ServerSwitchingRule"]}},"/services/haproxy/configuration/server_switching_rules/{index}":{"delete":{"description":"Deletes a Server Switching Rule configuration by it's index from the specified backend.","operationId":"deleteServerSwitchingRule","parameters":[{"description":"Switching Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Server Switching Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a Server Switching Rule","tags":["ServerSwitchingRule"]},"get":{"description":"Returns one Server Switching Rule configuration by it's index in the specified backend.","operationId":"getServerSwitchingRule","parameters":[{"description":"Switching Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/server_switching_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one Server Switching Rule","tags":["ServerSwitchingRule"]},"put":{"description":"Replaces a Server Switching Rule configuration by it's index in the specified backend.","operationId":"replaceServerSwitchingRule","parameters":[{"description":"Switching Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_switching_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_switching_rule"}}},"description":"Server Switching Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_switching_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a Server Switching Rule","tags":["ServerSwitchingRule"]}},"/services/haproxy/configuration/server_templates":{"get":{"description":"Returns an array of all server templates that are configured in specified backend.","operationId":"getServerTemplates","parameters":[{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/server_templates"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"integer"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of server templates","tags":["ServerTemplate"]},"post":{"description":"Adds a new server template in the specified backend in the configuration file.","operationId":"createServerTemplate","parameters":[{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_template"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_template"}}},"description":"Server template created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_template"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new server template","tags":["ServerTemplate"]}},"/services/haproxy/configuration/server_templates/{prefix}":{"delete":{"description":"Deletes a server template configuration by it's prefix in the specified backend.","operationId":"deleteServerTemplate","parameters":[{"description":"Server template prefix","in":"path","name":"prefix","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Server template deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a server template","tags":["ServerTemplate"]},"get":{"description":"Returns one server template configuration by it's prefix in the specified backend.","operationId":"getServerTemplate","parameters":[{"description":"Server template prefix","in":"path","name":"prefix","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/server_template"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"integer"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one server template","tags":["ServerTemplate"]},"put":{"description":"Replaces a server template configuration by it's prefix in the specified backend.","operationId":"replaceServerTemplate","parameters":[{"description":"Server template prefix","in":"path","name":"prefix","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_template"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_template"}}},"description":"Server template replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server_template"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a server template","tags":["ServerTemplate"]}},"/services/haproxy/configuration/servers":{"get":{"description":"Returns an array of all servers that are configured in specified backend.","operationId":"getServers","parameters":[{"description":"Parent backend name","in":"query","name":"backend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["backend","ring","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/servers"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of servers","tags":["Server"]},"post":{"description":"Adds a new server in the specified backend in the configuration file.","operationId":"createServer","parameters":[{"description":"Parent backend name","in":"query","name":"backend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["backend","ring","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server"}}},"description":"Server created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new server","tags":["Server"]}},"/services/haproxy/configuration/servers/{name}":{"delete":{"description":"Deletes a server configuration by it's name in the specified backend.","operationId":"deleteServer","parameters":[{"description":"Server name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["backend","ring","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Server deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a server","tags":["Server"]},"get":{"description":"Returns one server configuration by it's name in the specified backend.","operationId":"getServer","parameters":[{"description":"Server name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["backend","ring","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/server"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one server","tags":["Server"]},"put":{"description":"Replaces a server configuration by it's name in the specified backend.","operationId":"replaceServer","parameters":[{"description":"Server name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","schema":{"type":"string"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","schema":{"enum":["backend","ring","peers"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server"}}},"description":"Server replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/server"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a server","tags":["Server"]}},"/services/haproxy/configuration/stick_rules":{"get":{"description":"Returns all Stick Rules that are configured in specified backend.","operationId":"getStickRules","parameters":[{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/stick_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all Stick Rules","tags":["StickRule"]},"post":{"description":"Adds a new Stick Rule of the specified type in the specified backend.","operationId":"createStickRule","parameters":[{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_rule"}}},"description":"Stick Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new Stick Rule","tags":["StickRule"]}},"/services/haproxy/configuration/stick_rules/{index}":{"delete":{"description":"Deletes a Stick Rule configuration by it's index from the specified backend.","operationId":"deleteStickRule","parameters":[{"description":"Stick Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Stick Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a Stick Rule","tags":["StickRule"]},"get":{"description":"Returns one Stick Rule configuration by it's index in the specified backend.","operationId":"getStickRule","parameters":[{"description":"Stick Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/stick_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one Stick Rule","tags":["StickRule"]},"put":{"description":"Replaces a Stick Rule configuration by it's index in the specified backend.","operationId":"replaceStickRule","parameters":[{"description":"Stick Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_rule"}}},"description":"Stick Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a Stick Rule","tags":["StickRule"]}},"/services/haproxy/configuration/tcp_checks":{"get":{"description":"Returns all TCP checks that are configured in specified parent.","operationId":"getTCPChecks","parameters":[{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/tcp_checks"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of TCP checks","tags":["TCPCheck"]},"post":{"description":"Adds a new TCP check of the specified type in the specified parent.","operationId":"createTCPCheck","parameters":[{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_check"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_check"}}},"description":"TCP check created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_check"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new TCP check","tags":["TCPCheck"]}},"/services/haproxy/configuration/tcp_checks/{index}":{"delete":{"description":"Deletes a TCP check configuration by it's index from the specified parent.","operationId":"deleteTCPCheck","parameters":[{"description":"TCP check Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"TCP check deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a TCP check","tags":["TCPCheck"]},"get":{"description":"Returns one TCP check configuration by it's index in the specified parent.","operationId":"getTCPCheck","parameters":[{"description":"TCP Check Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/tcp_check"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one TCP check","tags":["TCPCheck"]},"put":{"description":"Replaces a TCP Check configuration by it's index in the specified parent.","operationId":"replaceTCPCheck","parameters":[{"description":"TCP Check Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["backend","defaults"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_check"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_check"}}},"description":"TCP check replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_check"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a TCP check","tags":["TCPCheck"]}},"/services/haproxy/configuration/tcp_request_rules":{"get":{"description":"Returns all TCP Request Rules that are configured in specified parent and parent type.","operationId":"getTCPRequestRules","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/tcp_request_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all TCP Request Rules","tags":["TCPRequestRule"]},"post":{"description":"Adds a new TCP Request Rule of the specified type in the specified parent.","operationId":"createTCPRequestRule","parameters":[{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_request_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_request_rule"}}},"description":"TCP Request Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_request_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new TCP Request Rule","tags":["TCPRequestRule"]}},"/services/haproxy/configuration/tcp_request_rules/{index}":{"delete":{"description":"Deletes a TCP Request Rule configuration by it's index from the specified parent.","operationId":"deleteTCPRequestRule","parameters":[{"description":"TCP Request Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"TCP Request Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a TCP Request Rule","tags":["TCPRequestRule"]},"get":{"description":"Returns one TCP Request Rule configuration by it's index in the specified parent.","operationId":"getTCPRequestRule","parameters":[{"description":"TCP Request Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/tcp_request_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one TCP Request Rule","tags":["TCPRequestRule"]},"put":{"description":"Replaces a TCP Request Rule configuration by it's index in the specified parent.","operationId":"replaceTCPRequestRule","parameters":[{"description":"TCP Request Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent name","in":"query","name":"parent_name","required":true,"schema":{"type":"string"}},{"description":"Parent type","in":"query","name":"parent_type","required":true,"schema":{"enum":["frontend","backend"],"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_request_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_request_rule"}}},"description":"TCP Request Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_request_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a TCP Request Rule","tags":["TCPRequestRule"]}},"/services/haproxy/configuration/tcp_response_rules":{"get":{"description":"Returns all TCP Response Rules that are configured in specified backend.","operationId":"getTCPResponseRules","parameters":[{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/tcp_response_rules"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all TCP Response Rules","tags":["TCPResponseRule"]},"post":{"description":"Adds a new TCP Response Rule of the specified type in the specified backend.","operationId":"createTCPResponseRule","parameters":[{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_response_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_response_rule"}}},"description":"TCP Response Rule created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_response_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new TCP Response Rule","tags":["TCPResponseRule"]}},"/services/haproxy/configuration/tcp_response_rules/{index}":{"delete":{"description":"Deletes a TCP Response Rule configuration by it's index from the specified backend.","operationId":"deleteTCPResponseRule","parameters":[{"description":"TCP Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"TCP Response Rule deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a TCP Response Rule","tags":["TCPResponseRule"]},"get":{"description":"Returns one TCP Response Rule configuration by it's index in the specified backend.","operationId":"getTCPResponseRule","parameters":[{"description":"TCP Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/tcp_response_rule"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one TCP Response Rule","tags":["TCPResponseRule"]},"put":{"description":"Replaces a TCP Response Rule configuration by it's Index in the specified backend.","operationId":"replaceTCPResponseRule","parameters":[{"description":"TCP Response Rule Index","in":"path","name":"index","required":true,"schema":{"type":"integer"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_response_rule"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_response_rule"}}},"description":"TCP Response Rule replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/tcp_response_rule"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a TCP Response Rule","tags":["TCPResponseRule"]}},"/services/haproxy/configuration/userlists":{"get":{"description":"Returns an array of all configured userlists.","operationId":"getUserlists","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/userlists"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of userlists","tags":["Userlist"]},"post":{"description":"Adds a new userlist to the configuration file.","operationId":"createUserlist","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/userlist"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/userlist"}}},"description":"Userlist created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/userlist"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new userlist","tags":["Userlist"]}},"/services/haproxy/configuration/userlists/{name}":{"delete":{"description":"Deletes a userlist configuration by it's name.","operationId":"deleteUserlist","parameters":[{"description":"Userlist name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Userlist deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a userlist","tags":["Userlist"]},"get":{"description":"Returns one userlist configuration by it's name.","operationId":"getUserlist","parameters":[{"description":"Userlist name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/userlist"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one userlist","tags":["Userlist"]}},"/services/haproxy/configuration/users":{"get":{"operationId":"getUsers","parameters":[{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/users"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of userlist users","tags":["User"]},"post":{"operationId":"createUser","parameters":[{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/user"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/user"}}},"description":"User created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/user"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new userlist user","tags":["User"]}},"/services/haproxy/configuration/users/{username}":{"delete":{"operationId":"deleteUser","parameters":[{"description":"User username","in":"path","name":"username","required":true,"schema":{"type":"string"}},{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"User deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a user","tags":["User"]},"get":{"operationId":"getUser","parameters":[{"description":"User username","in":"path","name":"username","required":true,"schema":{"type":"string"}},{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/user"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one userlist user","tags":["User"]},"put":{"operationId":"replaceUser","parameters":[{"description":"User username","in":"path","name":"username","required":true,"schema":{"type":"string"}},{"description":"Parent userlist name","in":"query","name":"userlist","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/user"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/user"}}},"description":"User replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/user"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a user","tags":["User"]}},"/services/haproxy/configuration/version":{"get":{"description":"Returns configuration version.","operationId":"getConfigurationVersion","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"integer"}}},"description":"Configuration version"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a configuration version","tags":["Configuration"]}},"/services/haproxy/reloads":{"get":{"description":"Returns a list of HAProxy reloads.","operationId":"getReloads","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reloads"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of HAProxy Reloads.","tags":["Reloads"]}},"/services/haproxy/reloads/{id}":{"get":{"description":"Returns one HAProxy reload status.","operationId":"getReload","parameters":[{"description":"Reload id","in":"path","name":"id","required":true,"schema":{"pattern":"^\\d{4}-\\d{2}-\\d{2}-\\d+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reload"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one HAProxy reload status","tags":["Reloads"]}},"/services/haproxy/runtime":{"get":{"description":"Returns a list of endpoints to be used for advanced runtime settings of HAProxy objects.","operationId":"getRuntimeEndpoints","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/endpoints"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of HAProxy advanced runtime endpoints","tags":["Discovery"]}},"/services/haproxy/runtime/acl_file_entries":{"get":{"description":"Returns an ACL runtime setting using the runtime socket.","parameters":[{"description":"ACL ID","in":"query","name":"acl_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl_files_entries"}}},"description":"Successful operation"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an ACL entries","tags":["ACL Runtime"]},"post":{"description":"Adds an entry into the ACL file using the runtime socket.","parameters":[{"description":"ACL ID","in":"query","name":"acl_id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl_file_entry"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl_file_entry"}}},"description":"ACL entry created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add entry to an ACL file","tags":["ACL Runtime"]},"put":{"description":"Adds a new ACL payload.","operationId":"addPayloadRuntimeACL","parameters":[{"description":"ACL ID","in":"query","name":"acl_id","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl_files_entries"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl_files_entries"}}},"description":"ACL payload added"},"400":{"$ref":"#/components/responses/BadRequest"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new ACL payload","tags":["ACL Runtime"]}},"/services/haproxy/runtime/acl_file_entries/{id}":{"delete":{"description":"Deletes the entry from the ACL by its value using the runtime socket.","parameters":[{"description":"ACL ID","in":"query","name":"acl_id","required":true,"schema":{"type":"string"}},{"description":"File entry ID","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Successful operation"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete an ACL entry","tags":["ACL Runtime"]},"get":{"description":"Returns the ACL entry by its ID using the runtime socket.","parameters":[{"description":"ACL ID","in":"query","name":"acl_id","required":true,"schema":{"type":"string"}},{"description":"File entry ID","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl_file_entry"}}},"description":"Successful operation"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an ACL entry","tags":["ACL Runtime"]}},"/services/haproxy/runtime/acls":{"get":{"description":"Returns all ACL files using the runtime socket.","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl_files"}}},"description":"Successful operation"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of all ACL files","tags":["ACL Runtime"]}},"/services/haproxy/runtime/acls/{id}":{"get":{"description":"Returns an ACL file by id using the runtime socket.","parameters":[{"description":"ACL file entry ID","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/acl_file"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an ACL file","tags":["ACL Runtime"]}},"/services/haproxy/runtime/info":{"get":{"description":"Return HAProxy process information","operationId":"getHaproxyProcessInfo","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/process_infos"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return HAProxy process information","tags":["Information"]}},"/services/haproxy/runtime/maps":{"get":{"description":"Returns runtime map files.","operationId":"getAllRuntimeMapFiles","parameters":[{"description":"If true, also show unmanaged map files loaded in haproxy","in":"query","name":"include_unmanaged","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/maps"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return runtime map files","tags":["Maps"]}},"/services/haproxy/runtime/maps/{name}":{"delete":{"description":"Remove all map entries from the map file.","operationId":"clearRuntimeMap","parameters":[{"description":"Map file name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"If true, deletes file from disk","in":"query","name":"forceDelete","schema":{"type":"boolean"}},{"description":"If true, immediately syncs changes to disk","in":"query","name":"force_sync","schema":{"default":false,"type":"boolean"}}],"responses":{"204":{"description":"All map entries deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Remove all map entries from the map file","tags":["Maps"]},"get":{"description":"Returns one runtime map file.","operationId":"getOneRuntimeMap","parameters":[{"description":"Map file name","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one runtime map file","tags":["Maps"]},"put":{"description":"Adds a new map payload.","operationId":"addPayloadRuntimeMap","parameters":[{"description":"Map file name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"If true, immediately syncs changes to disk","in":"query","name":"force_sync","schema":{"default":false,"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map_entries"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map_entries"}}},"description":"Map payload added"},"400":{"$ref":"#/components/responses/BadRequest"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new map payload","tags":["Maps"]}},"/services/haproxy/runtime/maps_entries":{"get":{"description":"Returns an array of all entries in a given runtime map file.","operationId":"showRuntimeMap","parameters":[{"description":"Mapfile attribute storage_name","in":"query","name":"map","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map_entries"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one map runtime entries","tags":["Maps"]},"post":{"description":"Adds an entry into the map file.","operationId":"addMapEntry","parameters":[{"description":"Mapfile attribute storage_name","in":"query","name":"map","required":true,"schema":{"type":"string"}},{"description":"If true, immediately syncs changes to disk","in":"query","name":"force_sync","schema":{"default":false,"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map_entry"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map_entry"}}},"description":"Map entry created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Adds an entry into the map file","tags":["Maps"]}},"/services/haproxy/runtime/maps_entries/{id}":{"delete":{"description":"Delete all the map entries from the map by its id.","operationId":"deleteRuntimeMapEntry","parameters":[{"description":"Map id","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Mapfile attribute storage_name","in":"query","name":"map","required":true,"schema":{"type":"string"}},{"description":"If true, immediately syncs changes to disk","in":"query","name":"force_sync","schema":{"default":false,"type":"boolean"}}],"responses":{"204":{"description":"Map key/value deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Deletes all the map entries from the map by its id","tags":["Maps"]},"get":{"description":"Returns one map runtime setting by it's id.","operationId":"getRuntimeMapEntry","parameters":[{"description":"Map id","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Mapfile attribute storage_name","in":"query","name":"map","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map_entry"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one map runtime setting","tags":["Maps"]},"put":{"description":"Replaces the value corresponding to each id in a map.","operationId":"replaceRuntimeMapEntry","parameters":[{"description":"Map id","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Mapfile attribute storage_name","in":"query","name":"map","required":true,"schema":{"type":"string"}},{"description":"If true, immediately syncs changes to disk","in":"query","name":"force_sync","schema":{"default":false,"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"properties":{"value":{"description":"Map value","type":"string"}},"required":["value"],"type":"object"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map_entry"}}},"description":"Map value replaced"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace the value corresponding to each id in a map","tags":["Maps"]}},"/services/haproxy/runtime/servers":{"get":{"description":"Returns an array of all servers' runtime settings.","operationId":"getRuntimeServers","parameters":[{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/runtime_servers"}}},"description":"Successful operation"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of runtime servers' settings","tags":["Server"]},"post":{"description":"Adds a new server to the specified backend","operationId":"addRuntimeServer","parameters":[{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/runtime_add_server"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/runtime_add_server"}}},"description":"Server added"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Adds a new server to a backend","tags":["Server"]}},"/services/haproxy/runtime/servers/{name}":{"delete":{"description":"Deletes a server from the specified backend","operationId":"deleteRuntimeServer","parameters":[{"description":"Server name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Server deleted"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Deletes a server from a backend","tags":["Server"]},"get":{"description":"Returns one server runtime settings by it's name in the specified backend.","operationId":"getRuntimeServer","parameters":[{"description":"Server name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/runtime_server"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one server runtime settings","tags":["Server"]},"put":{"description":"Replaces a server transient settings by it's name in the specified backend.","operationId":"replaceRuntimeServer","parameters":[{"description":"Server name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Parent backend name","in":"query","name":"backend","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/runtime_server"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/runtime_server"}}},"description":"Server transient settings replaced"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace server transient settings","tags":["Server"]}},"/services/haproxy/runtime/stick_table_entries":{"get":{"description":"Returns an array of all entries in a given stick tables.","operationId":"getStickTableEntries","parameters":[{"description":"Stick table name","in":"query","name":"stick_table","required":true,"schema":{"type":"string"}},{"description":"Process number if master-worker mode, if not only first process is returned","in":"query","name":"process","required":true,"schema":{"type":"integer"}},{"description":"A list of filters in format data.\u003ctype\u003e \u003coperator\u003e \u003cvalue\u003e separated by comma","in":"query","name":"filter","schema":{"type":"string"}},{"description":"Key which we want the entries for","in":"query","name":"key","schema":{"type":"string"}},{"description":"Max number of entries to be returned for pagination","in":"query","name":"count","schema":{"type":"integer"}},{"description":"Offset which indicates how many items we skip in pagination","in":"query","name":"offset","schema":{"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_table_entries"}}},"description":"Successful operation"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return Stick Table Entries","tags":["StickTable"]},"post":{"description":"Create or update a stick-table entry in the table.","operationId":"setStickTableEntries","parameters":[{"description":"Stick table name","in":"query","name":"stick_table","required":true,"schema":{"type":"string"}},{"description":"Process number if master-worker mode, if not only first process is returned","in":"query","name":"process","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"properties":{"data_type":{"$ref":"#/components/schemas/stick_table_entry"},"key":{"type":"string"}},"required":["key","data_type"],"type":"object"}}},"description":"Stick table entry","x-originalParamName":"stick_table_entry"},"responses":{"204":{"description":"Successful operation"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Set Entry to Stick Table","tags":["StickTable"]}},"/services/haproxy/runtime/stick_tables":{"get":{"description":"Returns an array of all stick tables.","operationId":"getStickTables","parameters":[{"description":"Process number if master-worker mode, if not all processes are returned","in":"query","name":"process","schema":{"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_tables"}}},"description":"Successful operation"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return Stick Tables","tags":["StickTable"]}},"/services/haproxy/runtime/stick_tables/{name}":{"get":{"description":"Returns one stick table from runtime.","operationId":"getStickTable","parameters":[{"description":"Stick table name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"Process number if master-worker mode, if not only first process is returned","in":"query","name":"process","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/stick_table"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return Stick Table","tags":["StickTable"]}},"/services/haproxy/sites":{"get":{"description":"Returns an array of all configured sites.","operationId":"getSites","parameters":[{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/sites"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of sites","tags":["Sites"]},"post":{"description":"Adds a new site to the configuration file.","operationId":"createSite","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/site"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/site"}}},"description":"Site created"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/site"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a site","tags":["Sites"]}},"/services/haproxy/sites/{name}":{"delete":{"description":"Deletes a site from the configuration by it's name.","operationId":"deleteSite","parameters":[{"description":"Site frontend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Site deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a site","tags":["Sites"]},"get":{"description":"Returns one site configuration by it's name.","operationId":"getSite","parameters":[{"description":"Site frontend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/site"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a site","tags":["Sites"]},"put":{"description":"Replaces a site configuration by it's name.","operationId":"replaceSite","parameters":[{"description":"Site frontend name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/site"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/site"}}},"description":"Site replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/site"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a site","tags":["Sites"]}},"/services/haproxy/spoe":{"get":{"description":"Returns a list of endpoints to be used for SPOE settings of HAProxy.","operationId":"getSpoeEndpoints","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/endpoints"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of HAProxy SPOE endpoints","tags":["Discovery"]}},"/services/haproxy/spoe/spoe_agents":{"get":{"description":"Returns an array of all configured spoe agents in one scope.","operationId":"getSpoeAgents","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/spoe_agents"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of spoe agents in one scope","tags":["Spoe"]},"post":{"description":"Adds a new spoe agent to the spoe scope.","operationId":"createSpoeAgent","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_agent"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_agent"}}},"description":"Spoe agent created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new spoe agent to scope","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_agents/{name}":{"delete":{"description":"Deletes a SPOE agent from the configuration in one SPOE scope.","operationId":"deleteSpoeAgent","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe agent name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"responses":{"204":{"description":"Spoe agent deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a SPOE agent","tags":["Spoe"]},"get":{"description":"Returns one spoe agent configuration in one SPOE scope.","operationId":"getSpoeAgent","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe agent name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/spoe_agent"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a spoe agent","tags":["Spoe"]},"put":{"description":"Replaces a SPOE agent configuration in one SPOE scope.","operationId":"replaceSpoeAgent","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe agent name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_agent"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_agent"}}},"description":"Spoe agent replaced"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a SPOE agent","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_files":{"get":{"description":"Returns all available SPOE files.","operationId":"getAllSpoeFiles","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_files"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return all available SPOE files","tags":["Spoe"]},"post":{"description":"Creates SPOE file with its entries.","operationId":"createSpoe","requestBody":{"content":{"multipart/form-data":{"schema":{"properties":{"file_upload":{"description":"The spoe file to upload","format":"binary","type":"string","x-formData-name":"file_upload","x-mimetype":"text/plain"}},"type":"object"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"type":"string"}}},"description":"SPOE file created with its entries"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Creates SPOE file with its entries","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_files/{name}":{"delete":{"description":"Deletes SPOE file.","operationId":"deleteSpoeFile","parameters":[{"description":"SPOE file name","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"SPOE file deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete SPOE file","tags":["Spoe"]},"get":{"description":"Returns one SPOE file.","operationId":"getOneSpoeFile","parameters":[{"description":"SPOE file name","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"type":"string"}},"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one SPOE file","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_groups":{"get":{"description":"Returns an array of all configured SPOE groups in one SPOE scope.","operationId":"getSpoeGroups","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/spoe_groups"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of SPOE groups","tags":["Spoe"]},"post":{"description":"Adds a new SPOE groups to the SPOE scope.","operationId":"createSpoeGroup","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_group"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_group"}}},"description":"Spoe groups created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new SPOE groups","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_groups/{name}":{"delete":{"description":"Deletes a SPOE groups from the one SPOE scope.","operationId":"deleteSpoeGroup","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe group name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"responses":{"204":{"description":"Spoe group deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a SPOE groups","tags":["Spoe"]},"get":{"description":"Returns one SPOE groups configuration in one SPOE scope.","operationId":"getSpoeGroup","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe group name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/spoe_group"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a SPOE groups","tags":["Spoe"]},"put":{"description":"Replaces a SPOE groups configuration in one SPOE scope.","operationId":"replaceSpoeGroup","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe group name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_group"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_group"}}},"description":"Spoe groups replaced"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a SPOE groups","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_messages":{"get":{"description":"Returns an array of all configured spoe messages in one scope.","operationId":"getSpoeMessages","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/spoe_messages"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of spoe messages in one scope","tags":["Spoe"]},"post":{"description":"Adds a new spoe message to the spoe scope.","operationId":"createSpoeMessage","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_message"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_message"}}},"description":"Spoe message created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new spoe message to scope","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_messages/{name}":{"delete":{"description":"Deletes a spoe message from the SPOE scope.","operationId":"deleteSpoeMessage","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe message name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"responses":{"204":{"description":"Spoe message deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a spoe message","tags":["Spoe"]},"get":{"description":"Returns one spoe message configuration in SPOE scope.","operationId":"getSpoeMessage","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe message name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/spoe_message"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a spoe message","tags":["Spoe"]},"put":{"description":"Replaces a spoe message configuration in one SPOE scope.","operationId":"replaceSpoeMessage","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"query","name":"scope","required":true,"schema":{"type":"string"}},{"description":"Spoe message name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_message"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_message"}}},"description":"Spoe message replaced"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace a spoe message","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_scopes":{"get":{"description":"Returns an array of all configured spoe scopes.","operationId":"getSpoeScopes","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/spoe_scopes"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return an array of spoe scopes","tags":["Spoe"]},"post":{"description":"Adds a new spoe scope.","operationId":"createSpoeScope","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_scope"}}},"required":true,"x-originalParamName":"data"},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_scope"}}},"description":"Spoe scope created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Add a new spoe scope","tags":["Spoe"]}},"/services/haproxy/spoe/spoe_scopes/{name}":{"delete":{"description":"Deletes a SPOE scope from the configuration file.","operationId":"deleteSpoeScope","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"},{"$ref":"#/components/parameters/version"}],"responses":{"204":{"description":"Spoe scope deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a SPOE scope","tags":["Spoe"]},"get":{"description":"Returns one SPOE scope in one SPOE file.","operationId":"getSpoeScope","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Spoe scope","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/transaction_id"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"_version":{"type":"integer"},"data":{"$ref":"#/components/schemas/spoe_scope"}},"required":["data"],"type":"object"}}},"description":"Successful operation","headers":{"Configuration-Version":{"description":"Spoe configuration file version","schema":{"type":"string"}}}},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one SPOE scope","tags":["Spoe"]}},"/services/haproxy/spoe/version":{"get":{"description":"Returns SPOE configuration version.","operationId":"getSpoeConfigurationVersion","parameters":[{"$ref":"#/components/parameters/transaction_id"},{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"integer"}}},"description":"SPOE configuration version"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a SPOE configuration version","tags":["Spoe"]}},"/services/haproxy/spoe_transactions":{"get":{"description":"Returns a list of SPOE configuration transactions. Transactions can be filtered by their status.","operationId":"getSpoeTransactions","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Filter by transaction status","in":"query","name":"status","schema":{"enum":["failed","in_progress"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_transactions"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of SPOE configuration transactions.","tags":["SpoeTransactions"]},"post":{"description":"Starts a new transaction and returns it's id","operationId":"startSpoeTransaction","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Configuration version on which to work on","in":"query","name":"version","required":true,"schema":{"type":"integer"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_transaction"}}},"description":"Transaction started"},"429":{"content":{"application/json":{"schema":{"example":{"code":429,"message":"cannot start a new transaction, reached the maximum amount of 20 active transactions available"},"properties":{"code":{"type":"integer"},"message":{"type":"string"}},"type":"object"}}},"description":"Too many open transactions"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Start a new transaction","tags":["SpoeTransactions"]}},"/services/haproxy/spoe_transactions/{id}":{"delete":{"description":"Deletes a transaction.","operationId":"deleteSpoeTransaction","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Transaction id","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Transaction deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a transaction","tags":["SpoeTransactions"]},"get":{"description":"Returns one SPOE configuration transactions.","operationId":"getSpoeTransaction","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Transaction id","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_transaction"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one SPOE configuration transactions","tags":["SpoeTransactions"]},"put":{"description":"Commit transaction, execute all operations in transaction and return msg","operationId":"commitSpoeTransaction","parameters":[{"description":"Spoe file name","in":"query","name":"spoe","required":true,"schema":{"type":"string"}},{"description":"Transaction id","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/force_reload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_transaction"}}},"description":"Transaction successfully committed"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/spoe_transaction"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Commit transaction","tags":["SpoeTransactions"]}},"/services/haproxy/stats":{"get":{"description":"Returns a list of HAProxy stats endpoints.","operationId":"getStatsEndpoints","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/endpoints"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of HAProxy stats endpoints","tags":["Discovery"]}},"/services/haproxy/stats/native":{"get":{"description":"Getting stats from the HAProxy.","operationId":"getStats","parameters":[{"description":"Object type to get stats for (one of frontend, backend, server)","in":"query","name":"type","schema":{"enum":["frontend","backend","server"],"type":"string"}},{"description":"Object name to get stats for","in":"query","name":"name","schema":{"type":"string"}},{"description":"Object parent name to get stats for, in case the object is a server","in":"query","name":"parent","schema":{"type":"string"},"x-dependency":{"query.type":"server"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/native_stats"}}},"description":"Success"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/native_stats"}}},"description":"Internal Server Error"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Gets stats","tags":["Stats"]}},"/services/haproxy/storage":{"get":{"description":"Returns a list of endpoints that use HAProxy storage for persistency, e.g. maps, ssl certificates...","operationId":"getStorageEndpoints","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/endpoints"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of HAProxy storage endpoints","tags":["Discovery"]}},"/services/haproxy/storage/general":{"get":{"description":"Returns a list of all managed general use files","operationId":"getAllStorageGeneralFiles","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/general_files"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a list of all managed general use files","tags":["Storage"]},"post":{"description":"Creates a managed storage general use file with contents.","operationId":"createStorageGeneralFile","requestBody":{"content":{"multipart/form-data":{"schema":{"properties":{"file_upload":{"description":"General use file content","format":"binary","type":"string","x-formData-name":"file_upload","x-mimetype":"text/plain"}},"type":"object"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/general_file"}}},"description":"General use file created with its contents"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Creates a managed storage general use file with contents","tags":["Storage"]}},"/services/haproxy/storage/general/{name}":{"delete":{"description":"Deletes a managed general use file from disk.","operationId":"deleteStorageGeneralFile","parameters":[{"description":"General use file storage_name","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"General use file deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Deletes a managed general use file from disk","tags":["Storage"]},"get":{"description":"Returns the contents of one managed general use file from disk","operationId":"getOneStorageGeneralFile","parameters":[{"description":"General use file storage_name","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/octet-stream":{"schema":{"type":"file"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return the contents of one managed general use file from disk","tags":["Storage"]},"put":{"description":"Replaces the contents of a managed general use file on disk","operationId":"replaceStorageGeneralFile","parameters":[{"description":"General use file storage_name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/skip_reload"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"text/plain":{"schema":{"type":"string"}}},"required":true,"x-originalParamName":"data"},"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"General use file replaced"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace contents of a managed general use file on disk","tags":["Storage"]}},"/services/haproxy/storage/maps":{"get":{"description":"Returns a list of all managed map files","operationId":"getAllStorageMapFiles","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/maps"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return a list of all managed map files","tags":["Storage"]},"post":{"description":"Creates a managed storage map file with its entries.","operationId":"createStorageMapFile","requestBody":{"content":{"multipart/form-data":{"schema":{"properties":{"file_upload":{"description":"The map file contents","format":"binary","type":"string","x-formData-name":"file_upload","x-mimetype":"text/plain"}},"type":"object"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/map"}}},"description":"Map file created with its entries"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Creates a managed storage map file with its entries","tags":["Storage"]}},"/services/haproxy/storage/maps/{name}":{"delete":{"description":"Deletes a managed map file from disk.","operationId":"deleteStorageMap","parameters":[{"description":"Map file storage_name","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Map file deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Deletes a managed map file from disk","tags":["Storage"]},"get":{"description":"Returns the contents of one managed map file from disk","operationId":"getOneStorageMap","parameters":[{"description":"Map file storage_name","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/octet-stream":{"schema":{"type":"file"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return the contents of one managed map file from disk","tags":["Storage"]},"put":{"description":"Replaces the contents of a managed map file on disk","operationId":"replaceStorageMapFile","parameters":[{"description":"Map file storage_name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/skip_reload"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"text/plain":{"schema":{"type":"string"}}},"required":true,"x-originalParamName":"data"},"responses":{"202":{"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"Map file replaced"},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace contents of a managed map file on disk","tags":["Storage"]}},"/services/haproxy/storage/ssl_certificates":{"get":{"description":"Returns all available SSL certificates on disk.","operationId":"getAllStorageSSLCertificates","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ssl_certificates"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return all available SSL certificates on disk","tags":["Storage"]},"post":{"description":"Creates SSL certificate.","operationId":"createStorageSSLCertificate","parameters":[{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"multipart/form-data":{"schema":{"properties":{"file_upload":{"description":"The SSL certificate to upload","format":"binary","type":"string","x-formData-name":"file_upload","x-mimetype":"text/plain"}},"type":"object"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ssl_certificate"}}},"description":"SSL certificate created"},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/AlreadyExists"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Create SSL certificate","tags":["Storage"]}},"/services/haproxy/storage/ssl_certificates/{name}":{"delete":{"description":"Deletes SSL certificate from disk.","operationId":"deleteStorageSSLCertificate","parameters":[{"description":"SSL certificate name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/skip_reload"},{"$ref":"#/components/parameters/force_reload"}],"responses":{"202":{"description":"SSL certificate deleted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"204":{"description":"SSL certificate deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete SSL certificate from disk","tags":["Storage"]},"get":{"description":"Returns one SSL certificate from disk.","operationId":"getOneStorageSSLCertificate","parameters":[{"description":"SSL certificate name","in":"path","name":"name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ssl_certificate"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one SSL certificate from disk","tags":["Storage"]},"put":{"description":"Replaces SSL certificate on disk.","operationId":"replaceStorageSSLCertificate","parameters":[{"description":"SSL certificate name","in":"path","name":"name","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/skip_reload"},{"$ref":"#/components/parameters/force_reload"}],"requestBody":{"content":{"text/plain":{"schema":{"type":"string"}}},"required":true,"x-originalParamName":"data"},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ssl_certificate"}}},"description":"SSL certificate replaced"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ssl_certificate"}}},"description":"SSL certificate replaced and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Replace SSL certificates on disk","tags":["Storage"]}},"/services/haproxy/transactions":{"get":{"description":"Returns a list of HAProxy configuration transactions. Transactions can be filtered by their status.","operationId":"getTransactions","parameters":[{"description":"Filter by transaction status","in":"query","name":"status","schema":{"enum":["failed","in_progress"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/transactions"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return list of HAProxy configuration transactions.","tags":["Transactions"]},"post":{"description":"Starts a new transaction and returns it's id","operationId":"startTransaction","parameters":[{"description":"Configuration version on which to work on","in":"query","name":"version","required":true,"schema":{"type":"integer"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/transaction"}}},"description":"Transaction started"},"429":{"content":{"application/json":{"schema":{"example":{"code":429,"message":"cannot start a new transaction, reached the maximum amount of 20 active transactions available"},"properties":{"code":{"type":"integer"},"message":{"type":"string"}},"type":"object"}}},"description":"Too many open transactions"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Start a new transaction","tags":["Transactions"]}},"/services/haproxy/transactions/{id}":{"delete":{"description":"Deletes a transaction.","operationId":"deleteTransaction","parameters":[{"description":"Transaction id","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Transaction deleted"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Delete a transaction","tags":["Transactions"]},"get":{"description":"Returns one HAProxy configuration transactions.","operationId":"getTransaction","parameters":[{"description":"Transaction id","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/transaction"}}},"description":"Successful operation"},"404":{"$ref":"#/components/responses/NotFound"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Return one HAProxy configuration transactions","tags":["Transactions"]},"put":{"description":"Commit transaction, execute all operations in transaction and return msg","operationId":"commitTransaction","parameters":[{"description":"Transaction id","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/force_reload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/transaction"}}},"description":"Transaction successfully committed"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/transaction"}}},"description":"Configuration change accepted and reload requested","headers":{"Reload-ID":{"description":"ID of the requested reload","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"406":{"$ref":"#/components/responses/NotAcceptable"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Commit transaction","tags":["Transactions"]}},"/specification":{"get":{"description":"Return Data Plane API OpenAPI specification","operationId":"getSpecification","responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Data Plane API Specification","tags":["Specification"]}},"/specification_openapiv3":{"get":{"description":"Return Data Plane API OpenAPI v3 specification","operationId":"getOpenapiv3Specification","responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Success"},"default":{"$ref":"#/components/responses/DefaultError"}},"summary":"Data Plane API v3 Specification","tags":["SpecificationOpenapiv3"]}}},"security":[{"basic_auth":[]}],"servers":[{"url":"http://0.0.0.0/v2"}],"tags":[{"name":"ACL"},{"description":"Managing backend configurations (advanced mode)","name":"Backend"},{"name":"BackendSwitchingRule"},{"description":"Managing frontend bind configurations (advanced mode)","name":"Bind"},{"name":"Cache"},{"name":"Cluster"},{"description":"Raw HAProxy configuration management (advanced mode)","name":"Configuration"},{"name":"DeclareCapture"},{"description":"Managing defaults configuration (advanced mode)","name":"Defaults"},{"name":"DgramBind"},{"description":"API autodiscover endpoints","name":"Discovery"},{"name":"FCGIApp"},{"name":"Filter"},{"description":"Managing frontend configuration (advanced mode)","name":"Frontend"},{"description":"Managing global configuration (advanced mode)","name":"Global"},{"name":"HTTPCheck"},{"name":"HTTPErrorRule"},{"name":"HTTPErrors"},{"name":"HTTPRequestRule"},{"name":"HTTPResponseRule"},{"name":"Information"},{"name":"LogForward"},{"name":"LogTarget"},{"name":"MailerEntry"},{"name":"Mailers"},{"name":"Maps"},{"name":"Nameserver"},{"name":"Peer"},{"name":"PeerEntry"},{"name":"ProcessManager"},{"description":"Checking reload success. To avoid constant reloading we reload in intervals that are configurable when\nwith reload-delay option. When a change to configuration is made and force_reload url query string\nparameter is false we issue a request for reload, and return the reload ID in response header. You can\nthen use reloads endpoints to check the status of that reload ID. If force_reload is true, we override all\nof this and reload immediately.\n","name":"Reloads"},{"name":"Resolver"},{"name":"Ring"},{"description":"Managing backend server configurations (advanced mode)","name":"Server"},{"name":"ServerSwitchingRule"},{"name":"ServerTemplate"},{"name":"ServiceDiscovery"},{"description":"Managing sites (simple configuration mode). Sites are considered as one frontend with multiple backends\nconnected to it via default_backend or use-backend directives.\n","name":"Sites"},{"name":"Specification"},{"name":"SpecificationOpenapiv3"},{"name":"Spoe"},{"name":"SpoeTransactions"},{"description":"Stats container","name":"Stats"},{"name":"StickRule"},{"name":"StickTable"},{"name":"Storage"},{"name":"TCPCheck"},{"name":"TCPRequestRule"},{"name":"TCPResponseRule"},{"description":"Managing transactions. Configuration changes can be grouped in the transaction. You start the\ntransaction with trasactions POST, and call the configuration changes you need with parameter\ntransaction_id. When you want to commit the transaction, you call the transactions PUT and all changes\nin that transaction is commited. If you call a configuration change without the transaction_id,\ntransaction mechanism is implicitly called with one operation in transaction.\n","name":"Transactions"},{"name":"Userlist"}]})));