{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://api-evangelist.github.io/service-mesh-interface/json-schema/http-route-group-schema.json", "title": "SMI HTTPRouteGroup", "description": "Service Mesh Interface (SMI) HTTPRouteGroup resource (specs.smi-spec.io/v1alpha4). Describes a set of HTTP match rules referenced by TrafficTarget and TrafficSplit. Source: https://github.com/servicemeshinterface/smi-spec/blob/main/apis/traffic-specs/v1alpha4/traffic-specs.md", "type": "object", "required": ["apiVersion", "kind", "metadata", "spec"], "properties": { "apiVersion": { "const": "specs.smi-spec.io/v1alpha4" }, "kind": { "const": "HTTPRouteGroup" }, "metadata": { "type": "object", "required": ["name"], "properties": { "name": { "type": "string" }, "namespace": { "type": "string" } } }, "spec": { "type": "object", "required": ["matches"], "properties": { "matches": { "type": "array", "minItems": 1, "items": { "type": "object", "required": ["name"], "properties": { "name": { "type": "string" }, "pathRegex": { "type": "string" }, "methods": { "type": "array", "items": { "oneOf": [ { "type": "string", "enum": ["GET", "HEAD", "POST", "PUT", "PATCH", "DELETE", "OPTIONS", "CONNECT", "TRACE"] }, { "const": "*" } ] } }, "headers": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Map of header name to regex pattern." } } } } } } } }