Module Values.RuleConditionSource

Conditions bag for a routing rule. All non-null fields must match (AND logic). At least one field must be set (enforced by CP).

Sourcetype nonrec t = {
  1. hostHeader : RuleConditionHostHeaderString.t option;
    (*

    Exact host match — RFC 3986 unreserved characters

    *)
  2. hostHeaderWildcard : RuleConditionHostHeaderWildcardString.t option;
    (*

    Wildcard host pattern (e.g., *.example.com) — RFC 3986 unreserved plus *

    *)
  3. pathPrefix : RuleConditionPathPrefixString.t option;
    (*

    Path prefix matching — strict starts-with, no wildcard (preferred for new rules). Must start with /; RFC 3986 unreserved plus /

    *)
  4. pathExact : RuleConditionPathExactString.t option;
    (*

    Exact path match — must start with /; RFC 3986 unreserved plus /

    *)
  5. queryStringEquals : QueryStringKeyValuePair.t option;
    (*

    Query string key=value pair match (single pair)

    *)
  6. queryStringExists : RuleConditionQueryStringExistsString.t option;
    (*

    Query string key presence check (any value accepted) — RFC 3986 unreserved characters

    *)
}
Sourceval make : ?hostHeader:??? -> ?hostHeaderWildcard:??? -> ?pathPrefix:??? -> ?pathExact:??? -> ?queryStringEquals:??? -> ?queryStringExists:??? -> unit -> t
Sourceval to_value : t -> [> `Structure of (string * [> `String of RuleConditionHostHeaderString.t | `Structure of (string * [> `String of QueryStringKeyValuePairKeyString.t ]) list ]) list ]
Sourceval to_query : t -> Awso.Client.Query.t
Sourceval of_xml : Awso.Xml.t -> t
Sourceval of_string : string -> t
Sourceval of_json : Yojson.Safe.t -> t
Sourceval to_json : t -> Yojson.Safe.t