Kvindo™ Cloud Docs


Language

HTTP Rule

An HTTP Listener Rule matches inbound requests on an HTTP Listener and applies an action. Rules are evaluated by order (lowest first) and the first match wins. A rule sets its match plus one response action (a static response, or a forward to a target group — static wins if both are set), optionally combined with header set/delete and path-rewrite actions.

Key concepts

Listener — the HTTP listener this rule belongs to (spec.httpListenerId)

Match — the request path and how it is compared (spec.match)

Action — forward to a Target Group, return a static response, rewrite the path, or add/remove headers

Parameters
UI Name API / kc name Terraform name Optional Format Default Is read only Description
Listener spec.httpListenerId spec.http_listener_id No ULID — references an HTTP Listener No The listener this rule belongs to
Order spec.order spec.order Yes integer 0 No Evaluation order; lower is checked first
Match spec.match spec.match No object No Request match criteria
Path spec.match.path path No string No Path to compare against
Path match type spec.match.pathMatchType path_match_type No string — prefix / exact / regex No How the path is compared
Forward to HTTP spec.forwardToHttpResponseAction spec.forward_to_http_response_action Yes object (nullable) No Forward the request to a Target Group over plain HTTP; checked before Forward to HTTPS if both are set
Target group spec.forwardToHttpResponseAction.targetGroupId target_group_id Yes ULID (nullable) — references a Target Group No Target Group to forward to
Port mapping type spec.forwardToHttpResponseAction.portMappingType port_mapping_type Yes string — ANY_TO_ANY / ONE_TO_ONE ANY_TO_ANY No How listener ports map to target group ports
To ports spec.forwardToHttpResponseAction.toPorts to_ports No list of string No Target ports to forward to
Forward to HTTPS spec.forwardToHttpsResponseAction spec.forward_to_https_response_action Yes object (nullable) No Forward the request to a Target Group, re-encrypting to the backends; only used if Static response and Forward to HTTP are both unset
Target group spec.forwardToHttpsResponseAction.targetGroupId target_group_id Yes ULID (nullable) — references a Target Group No Target Group to forward to
Port mapping type spec.forwardToHttpsResponseAction.portMappingType port_mapping_type Yes string — ANY_TO_ANY / ONE_TO_ONE ANY_TO_ANY No How listener ports map to target group ports
To ports spec.forwardToHttpsResponseAction.toPorts to_ports No list of string No Target ports to forward to
TLS spec.forwardToHttpsResponseAction.tls tls Yes object (nullable) No Backend TLS re-encryption config
mTLS certificate spec.forwardToHttpsResponseAction.tls.mTlsCertificateId m_tls_certificate_id Yes ULID (nullable) — references a Certificate No Client certificate presented to the backend for mutual TLS
CA certificate spec.forwardToHttpsResponseAction.tls.caCertificateId ca_certificate_id Yes ULID (nullable) — references a Certificate No CA certificate used to verify the backend's certificate
Verify spec.forwardToHttpsResponseAction.tls.verify verify Yes boolean (nullable) No Whether to verify the backend's certificate
SNI server name spec.forwardToHttpsResponseAction.tls.sniServerName sni_server_name Yes string (nullable, up to 128 chars) No SNI hostname sent to the backend during the TLS handshake
Static response spec.staticResponseAction spec.static_response_action Yes object (nullable) No Return a fixed response without touching a backend; takes priority over any forward action set on the same rule (checked first: Static response, then Forward to HTTP, then Forward to HTTPS) and disables Path rewrite for this rule
Status code spec.staticResponseAction.statusCode status_code No integer No HTTP status code to return
Body spec.staticResponseAction.bodyString body_string No string No Response body
Content type spec.staticResponseAction.contentType content_type Yes string (nullable) No Value of the Content-Type response header
Headers spec.staticResponseAction.headers headers Yes map of string to string (nullable) No Additional response headers to include
Path rewrite spec.pathRewriteAction spec.path_rewrite_action Yes object (nullable) No Rewrite the request path before forwarding; only applies when a forward action ends up handling the request — has no effect if Static response is what's actually selected
Source path spec.pathRewriteAction.sourcePath source_path No string No Path (or pattern, depending on Path type) to match against the request
Destination path spec.pathRewriteAction.destinationPath destination_path No string No Path to rewrite the request to
Path type spec.pathRewriteAction.pathType path_type No string — exact / regex / prefix No How Source path is matched
Set request headers spec.setRequestHeadersAction spec.set_request_headers_action Yes object (nullable) No Add or overwrite request headers before forwarding; composes with a forward action
Headers spec.setRequestHeadersAction.headers headers No map of string to string No Header name → value pairs to set on the request
Set response headers spec.setResponseHeadersAction spec.set_response_headers_action Yes object (nullable) No Add or overwrite response headers before returning to the client; composes with a forward action
Headers spec.setResponseHeadersAction.headers headers No map of string to string No Header name → value pairs to set on the response
Delete request headers spec.deleteRequestHeadersAction spec.delete_request_headers_action Yes object (nullable) No Remove request headers before forwarding; composes with a forward action
Headers spec.deleteRequestHeadersAction.headers headers No list of string No Header names to remove from the request
Delete response headers spec.deleteResponseHeadersAction spec.delete_response_headers_action Yes object (nullable) No Remove response headers before returning to the client; composes with a forward action
Headers spec.deleteResponseHeadersAction.headers headers No list of string No Header names to remove from the response
Examples

A rule that forwards all paths to a Target Group's backends on port 8080.

Terraform

Python SDK

kc CLI


Related pages

Resource docs

Examples

More in this section

An unhandled error has occurred. Reload
Произошла непредвиденная ошибка. Перезагрузить 🗙