@apistudio/apim-cli
Version:
CLI for API Management Products
1,659 lines • 51.1 kB
JavaScript
export default {
"rules": {
"invalid-kind-value-combined": {
"description": "Kind must be one of 'API' | 'Scope' | 'Project' | 'StagedPolicySequence' | 'InvokeAWSLambda' | 'ValidateAPISpecification' | 'CORS' | 'Quota' | 'Plan' | 'Product' | 'URISchemes' | 'properties' | 'Telemetry' | 'Properties' | 'LoadBalancer' | 'SetAuthorization' | 'Invoke' | 'GlobalPolicy' | 'InboundBulkHead' | 'SetMediaType' | 'InboundMessaging' | 'IAM' | 'AuthorizeUser' | 'SetContextVariable' | 'WebMethodsISService' | 'Log' | 'MonitorTraffic' | 'CacheServiceResult' | 'OutboundAlias' | 'OutboundAnonymous' | 'HTTPInvoke' | 'InvokeMessagingExtension' | 'DataMasking' | 'TransformRequest' | 'TransformResponse' | 'Route' | 'MessageConfig' | 'HTTPEndpoint' | 'MockEndpoint' | 'MockResponse' | 'ErrorProcessing' | 'Set' | 'RateLimitDef' | 'RateLimit' | 'Redact' | 'Remove' | 'Transform' | 'DataPowerAssembly' | 'Switch' | 'If' | 'OperationSwitch' | 'Try' | 'IBMCloudLogin' | 'WatsonXAIInvoke' | 'OpenAIInvoke' | 'FreeFlowPolicySequence' | 'Block' | 'TokenMediation' | 'EnforceCircuitBreaker' | 'JavaScript' | 'LuaScript' | 'Cache' | 'Antivirus' | 'SQLInjectionFilter' | 'CountLimit' | 'CountLimitDef' | 'Return' | 'Retry' | 'Throw' | 'HandlebarsTemplate' | 'ExtractIdentity' | 'Authorize' | 'Authenticate' | 'Parse' | 'test' | 'assertion' | 'environment' | 'MCPTool' | 'MCPServerConfig'",
"severity": "error",
"given": "$",
"then": {
"field": "kind",
"function": "schema",
"functionOptions": {
"schema": {
"type": "string",
"enum": [
"API",
"Scope",
"Project",
"StagedPolicySequence",
"InvokeAWSLambda",
"ValidateAPISpecification",
"CORS",
"Quota",
"Plan",
"Product",
"URISchemes",
"properties",
"Telemetry",
"Properties",
"LoadBalancer",
"SetAuthorization",
"Invoke",
"GlobalPolicy",
"InboundBulkHead",
"SetMediaType",
"InboundMessaging",
"IAM",
"AuthorizeUser",
"SetContextVariable",
"WebMethodsISService",
"Log",
"MonitorTraffic",
"CacheServiceResult",
"OutboundAlias",
"OutboundAnonymous",
"HTTPInvoke",
"InvokeMessagingExtension",
"DataMasking",
"TransformRequest",
"TransformResponse",
"Route",
"MessageConfig",
"HTTPEndpoint",
"MockEndpoint",
"MockResponse",
"ErrorProcessing",
"Set",
"RateLimitDef",
"RateLimit",
"Redact",
"Remove",
"Transform",
"DataPowerAssembly",
"Switch",
"If",
"OperationSwitch",
"Try",
"IBMCloudLogin",
"WatsonXAIInvoke",
"OpenAIInvoke",
"FreeFlowPolicySequence",
"Block",
"TokenMediation",
"EnforceCircuitBreaker",
"JavaScript",
"LuaScript",
"Cache",
"Antivirus",
"SQLInjectionFilter",
"CountLimit",
"CountLimitDef",
"Return",
"Retry",
"Throw",
"HandlebarsTemplate",
"ExtractIdentity",
"Authorize",
"Authenticate",
"Parse",
"test",
"assertion",
"environment",
"MCPTool",
"MCPServerConfig"
]
}
}
}
},
"kind-not-exist": {
"description": "Kind does not exist.",
"severity": "error",
"given": "$",
"resolved": false,
"then": {
"field": "kind",
"function": "truthy"
}
},
"invalid-kind-value": {
"description": "Kind must be 'Transform'",
"severity": "error",
"given": "$",
"then": {
"field": "kind",
"function": "schema",
"functionOptions": {
"schema": {
"type": "string",
"enum": [
"Transform"
]
}
}
}
},
"invalid-kind-spl-character": {
"description": "kind should not be having empty or special characters",
"severity": "error",
"given": "$",
"resolved": false,
"then": {
"field": "kind",
"function": "pattern",
"functionOptions": {
"match": "^(?![\\s\\W_]+$).+$"
}
}
},
"invalid-api-version": {
"description": "apiVersion must be one of the valid values 'api.ibm.com/v1'",
"severity": "error",
"given": "$",
"resolved": false,
"then": {
"field": "apiVersion",
"function": "schema",
"functionOptions": {
"schema": {
"type": "string",
"enum": [
"api.ibm.com/v1"
]
}
}
}
},
"api-version-not-exist": {
"description": "apiVersion does not exist.",
"severity": "error",
"given": "$",
"resolved": false,
"then": {
"field": "apiVersion",
"function": "truthy"
}
},
"metadata-not-exist": {
"description": "Metadata does not exist.",
"severity": "error",
"given": "$",
"resolved": false,
"then": {
"field": "metadata",
"function": "truthy"
}
},
"metadata-whitelist-check": {
"description": "Metadata should not be having empty or special characters",
"severity": "error",
"given": "$",
"resolved": false,
"then": {
"field": "metadata",
"function": "pattern",
"functionOptions": {
"match": "^(?![\\s\\W_]+$).+$"
}
}
},
"metadata-name-not-exist": {
"description": "Metadata name does not exist",
"severity": "error",
"given": "$.metadata",
"resolved": false,
"then": {
"field": "name",
"function": "truthy"
}
},
"metadata-name-whitelist-check": {
"description": "Metadata name should not be having empty or special characters",
"severity": "error",
"given": "$.metadata",
"resolved": false,
"then": {
"field": "name",
"function": "pattern",
"functionOptions": {
"match": "^(?![\\s\\W_]+$).+$"
}
}
},
"metadata-version-not-exist": {
"description": "Metadata version does not exist",
"severity": "error",
"given": "$.metadata",
"resolved": false,
"then": {
"field": "version",
"function": "truthy"
}
},
"metadata-version-whitelist-check": {
"description": "Metadata version should not be having empty or special characters",
"severity": "error",
"given": "$.metadata",
"resolved": false,
"then": {
"field": "version",
"function": "pattern",
"functionOptions": {
"match": "^(?![\\s\\W_]+$).+$"
}
}
},
"metadata-namespace-not-exist": {
"description": "Metadata namespace does not exist",
"severity": "warn",
"given": "$.metadata",
"resolved": false,
"then": {
"field": "namespace",
"function": "truthy"
}
},
"metadata-namespace-whitelist-check": {
"description": "Metadata namespace should not be having empty or special characters",
"severity": "warn",
"given": "$.metadata",
"resolved": false,
"then": {
"field": "namespace",
"function": "pattern",
"functionOptions": {
"match": "^(?![\\s\\W_]+$).+$"
}
}
},
"spec-details-not-exist": {
"description": "Spec details does not exist",
"severity": "error",
"given": "$",
"resolved": false,
"then": {
"field": "spec",
"function": "truthy"
}
},
"spec-details-whitelist-check": {
"description": "Spec should not be having empty or special characters",
"severity": "error",
"given": "$",
"resolved": false,
"then": {
"field": "spec",
"function": "pattern",
"functionOptions": {
"match": "^(?![\\s\\W_]+$).+$"
}
}
},
"tags-not-exist": {
"description": "Tag does not exist",
"severity": "warn",
"given": "$.metadata",
"resolved": false,
"then": {
"field": "tags",
"function": "truthy"
}
},
"invalid-tag-type": {
"description": "Invalid Tag Type",
"severity": "error",
"given": "$.metadata.tags",
"resolved": false,
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-metadata-description-type": {
"description": "The description field must be of type string",
"severity": "error",
"given": "$.metadata.description",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-metadata-name-required": {
"description": "The name field is required in the $.metadata",
"severity": "error",
"given": "$.metadata",
"then": {
"field": "name",
"function": "defined"
}
},
"$-metadata-name-type": {
"description": "The name field must be of type string",
"severity": "error",
"given": "$.metadata.name",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-metadata-namespace-type": {
"description": "The namespace field must be of type string",
"severity": "error",
"given": "$.metadata.namespace",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-metadata-tags-type": {
"description": "The tags field must be of type array",
"severity": "error",
"given": "$.metadata.tags",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-metadata-tags-items-type": {
"description": "Items in the tags array must be of type string",
"severity": "error",
"given": "$.metadata.tags[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-metadata-type-type": {
"description": "The type field must be of type string",
"severity": "error",
"given": "$.metadata.type",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-metadata-type-enum": {
"description": "The type field must be one of: REST, SWAGGER, SOAP, GRAPHQL, ODATA",
"severity": "error",
"given": "$.metadata.type",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"enum": [
"REST",
"SWAGGER",
"SOAP",
"GRAPHQL",
"ODATA"
]
}
}
}
},
"$-metadata-version-required": {
"description": "The version field is required in the $.metadata",
"severity": "error",
"given": "$.metadata",
"then": {
"field": "version",
"function": "defined"
}
},
"$-metadata-version-type": {
"description": "The version field must be of type string",
"severity": "error",
"given": "$.metadata.version",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-metadata-labels-type": {
"description": "The labels field must be of type object",
"severity": "error",
"given": "$.metadata.labels",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-metadata-labels-gatewayTypes-type": {
"description": "The gatewayTypes field must be of type array",
"severity": "error",
"given": "$.metadata.labels.gatewayTypes",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-metadata-labels-gatewayTypes-items-type": {
"description": "Items in the gatewayTypes array must be of type string",
"severity": "error",
"given": "$.metadata.labels.gatewayTypes[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"spec-oneOf": {
"description": "The spec field must match the oneOf schema definition",
"severity": "error",
"given": "$.spec",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"oneOf": [
{
"type": "object",
"required": [
"messageBody"
],
"properties": {
"messageBody": {
"type": "object",
"required": [
"messageName",
"jsonataTransforms"
],
"properties": {
"messageName": {
"type": "string"
},
"jsonataTransforms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"capture": {
"type": "string"
},
"transform": {
"type": "string"
}
}
}
}
}
}
}
},
{
"type": "object",
"required": [
"messageHeader"
],
"properties": {
"messageHeader": {
"type": "object",
"required": [
"messageName",
"jsonataTransforms"
],
"properties": {
"messageName": {
"type": "string"
},
"jsonataTransforms": {
"type": "array",
"items": {
"type": "object",
"required": [
"headerNames",
"transform"
],
"properties": {
"headerNames": {
"type": "array",
"items": {
"type": "string"
}
},
"transform": {
"type": "string"
}
}
}
}
}
}
}
},
{
"type": "object",
"required": [
"messageUriQuery"
],
"properties": {
"messageUriQuery": {
"type": "object",
"required": [
"messageName",
"jsonataTransforms"
],
"properties": {
"messageName": {
"type": "string"
},
"jsonataTransforms": {
"type": "array",
"items": {
"type": "object",
"required": [
"queryNames",
"action",
"transform"
],
"properties": {
"queryNames": {
"type": "array",
"items": {
"type": "string"
}
},
"action": {
"type": "string",
"enum": [
"add",
"update",
"set"
]
},
"transform": {
"type": "string"
}
}
}
}
}
}
}
},
{
"type": "object",
"required": [
"messageUriPath"
],
"properties": {
"messageUriPath": {
"type": "object",
"required": [
"messageName",
"jsonataTransforms"
],
"properties": {
"messageName": {
"type": "string"
},
"jsonataTransforms": {
"oneOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "object",
"properties": {
"capture": {
"type": "string"
},
"transform": {
"type": "string"
}
}
}
}
]
}
}
}
}
},
{
"type": "object",
"required": [
"variable"
],
"properties": {
"variable": {
"type": "object",
"required": [
"name",
"jsonataTransforms"
],
"properties": {
"name": {
"type": "string"
},
"jsonataTransforms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"capture": {
"type": "string"
},
"transform": {
"type": "string"
}
}
}
}
}
}
}
},
{
"type": "object",
"required": [
"distributedVariable"
],
"properties": {
"distributedVariable": {
"type": "object",
"required": [
"name",
"expireIn",
"jsonataTransforms"
],
"properties": {
"name": {
"type": "string"
},
"expireIn": {
"type": "integer",
"description": "Expiry in seconds"
},
"jsonataTransforms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"capture": {
"type": "string"
},
"transform": {
"type": "string"
}
}
}
}
}
}
}
},
{
"type": "object",
"required": [
"telemetry"
],
"properties": {
"telemetry": {
"type": "object",
"required": [
"keys",
"span",
"jsonataTransforms"
],
"properties": {
"keys": {
"type": "object",
"properties": {
"keyLiterals": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"span": {
"oneOf": [
{
"type": "string",
"enum": [
"rootSpan"
]
},
{
"type": "object",
"properties": {
"policySpan": {
"type": "string"
},
"httpSpan": {
"type": "string"
}
}
}
]
},
"jsonataTransforms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"capture": {
"type": "string"
},
"transform": {
"type": "string"
}
}
}
}
}
}
}
}
]
}
}
}
},
"spec-messageBody-type": {
"description": "The spec.messageBody field must be of type object",
"severity": "error",
"given": "$.spec.messageBody",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-messageBody-messageName-type": {
"description": "The messageName field must be of type string",
"severity": "error",
"given": "$.spec.messageBody.messageName",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-messageBody-jsonataTransforms-type": {
"description": "The jsonataTransforms field must be of type array",
"severity": "error",
"given": "$.spec.messageBody.jsonataTransforms",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-messageBody-jsonataTransforms-items-type": {
"description": "Items in the jsonataTransforms array must be of type object",
"severity": "error",
"given": "$.spec.messageBody.jsonataTransforms[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-messageBody-jsonataTransforms[*]-capture-type": {
"description": "The capture field must be of type string",
"severity": "error",
"given": "$.spec.messageBody.jsonataTransforms[*].capture",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-messageBody-jsonataTransforms[*]-transform-type": {
"description": "The transform field must be of type string",
"severity": "error",
"given": "$.spec.messageBody.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"type:$.spec.messageBody.jsonataTransforms[*].capture:string": {
"description": "The capture field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.messageBody.jsonataTransforms[*].capture",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"type:$.spec.messageBody.jsonataTransforms[*].transform:string": {
"description": "The transform field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.messageBody.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"spec-messageHeader-type": {
"description": "The spec.messageHeader field must be of type object",
"severity": "error",
"given": "$.spec.messageHeader",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-messageHeader-messageName-type": {
"description": "The messageName field must be of type string",
"severity": "error",
"given": "$.spec.messageHeader.messageName",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-messageHeader-jsonataTransforms-type": {
"description": "The jsonataTransforms field must be of type array",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-messageHeader-jsonataTransforms-items-type": {
"description": "Items in the jsonataTransforms array must be of type object",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-messageHeader-jsonataTransforms[*]-headerNames-type": {
"description": "The headerNames field must be of type array",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms[*].headerNames",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-messageHeader-jsonataTransforms[*]-headerNames-items-type": {
"description": "Items in the headerNames array must be of type string",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms[*].headerNames[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-messageHeader-jsonataTransforms[*]-transform-type": {
"description": "The transform field must be of type string",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"required:$.spec.messageHeader.jsonataTransforms[*]:headerNames": {
"description": "The headerNames field is required in jsonataTransforms array items",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms[*]",
"then": {
"field": "headerNames",
"function": "defined"
}
},
"type:$.spec.messageHeader.jsonataTransforms[*].headerNames:array": {
"description": "The headerNames field in jsonataTransforms array items must be of type array",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms[*].headerNames",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"required:$.spec.messageHeader.jsonataTransforms[*]:transform": {
"description": "The transform field is required in jsonataTransforms array items",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms[*]",
"then": {
"field": "transform",
"function": "defined"
}
},
"type:$.spec.messageHeader.jsonataTransforms[*].transform:string": {
"description": "The transform field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.messageHeader.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"spec-messageUriQuery-type": {
"description": "The spec.messageUriQuery field must be of type object",
"severity": "error",
"given": "$.spec.messageUriQuery",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-messageUriQuery-messageName-type": {
"description": "The messageName field must be of type string",
"severity": "error",
"given": "$.spec.messageUriQuery.messageName",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-messageUriQuery-jsonataTransforms-type": {
"description": "The jsonataTransforms field must be of type array",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-messageUriQuery-jsonataTransforms-items-type": {
"description": "Items in the jsonataTransforms array must be of type object",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-messageUriQuery-jsonataTransforms[*]-queryNames-type": {
"description": "The queryNames field must be of type array",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].queryNames",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-messageUriQuery-jsonataTransforms[*]-queryNames-items-type": {
"description": "Items in the queryNames array must be of type string",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].queryNames[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-messageUriQuery-jsonataTransforms[*]-action-type": {
"description": "The action field must be of type string",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].action",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-messageUriQuery-jsonataTransforms[*]-action-enum": {
"description": "The action field must be one of: add, update, set",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].action",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"enum": [
"add",
"update",
"set"
]
}
}
}
},
"$-spec-messageUriQuery-jsonataTransforms[*]-transform-type": {
"description": "The transform field must be of type string",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"required:$.spec.messageUriQuery.jsonataTransforms[*]:queryNames": {
"description": "The queryNames field is required in jsonataTransforms array items",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*]",
"then": {
"field": "queryNames",
"function": "defined"
}
},
"type:$.spec.messageUriQuery.jsonataTransforms[*].queryNames:array": {
"description": "The queryNames field in jsonataTransforms array items must be of type array",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].queryNames",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"required:$.spec.messageUriQuery.jsonataTransforms[*]:action": {
"description": "The action field is required in jsonataTransforms array items",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*]",
"then": {
"field": "action",
"function": "defined"
}
},
"type:$.spec.messageUriQuery.jsonataTransforms[*].action:string": {
"description": "The action field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].action",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"enum:$.spec.messageUriQuery.jsonataTransforms[*].action:add,update,set": {
"description": "The action field in jsonataTransforms array items must be one of: add, update, set",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].action",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"enum": [
"add",
"update",
"set"
]
}
}
}
},
"required:$.spec.messageUriQuery.jsonataTransforms[*]:transform": {
"description": "The transform field is required in jsonataTransforms array items",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*]",
"then": {
"field": "transform",
"function": "defined"
}
},
"type:$.spec.messageUriQuery.jsonataTransforms[*].transform:string": {
"description": "The transform field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.messageUriQuery.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"spec-messageUriPath-type": {
"description": "The spec.messageUriPath field must be of type object",
"severity": "error",
"given": "$.spec.messageUriPath",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-messageUriPath-messageName-type": {
"description": "The messageName field must be of type string",
"severity": "error",
"given": "$.spec.messageUriPath.messageName",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-messageUriPath-jsonataTransforms-oneOf": {
"description": "The jsonataTransforms field must match the oneOf schema definition",
"severity": "error",
"given": "$.spec.messageUriPath.jsonataTransforms",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"oneOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "object",
"properties": {
"capture": {
"type": "string"
},
"transform": {
"type": "string"
}
}
}
}
]
}
}
}
},
"spec-variable-type": {
"description": "The spec.variable field must be of type object",
"severity": "error",
"given": "$.spec.variable",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-variable-name-type": {
"description": "The name field must be of type string",
"severity": "error",
"given": "$.spec.variable.name",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-variable-jsonataTransforms-type": {
"description": "The jsonataTransforms field must be of type array",
"severity": "error",
"given": "$.spec.variable.jsonataTransforms",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-variable-jsonataTransforms-items-type": {
"description": "Items in the jsonataTransforms array must be of type object",
"severity": "error",
"given": "$.spec.variable.jsonataTransforms[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-variable-jsonataTransforms[*]-capture-type": {
"description": "The capture field must be of type string",
"severity": "error",
"given": "$.spec.variable.jsonataTransforms[*].capture",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-variable-jsonataTransforms[*]-transform-type": {
"description": "The transform field must be of type string",
"severity": "error",
"given": "$.spec.variable.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"type:$.spec.variable.jsonataTransforms[*].capture:string": {
"description": "The capture field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.variable.jsonataTransforms[*].capture",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"type:$.spec.variable.jsonataTransforms[*].transform:string": {
"description": "The transform field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.variable.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"spec-distributedVariable-type": {
"description": "The spec.distributedVariable field must be of type object",
"severity": "error",
"given": "$.spec.distributedVariable",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-distributedVariable-name-type": {
"description": "The name field must be of type string",
"severity": "error",
"given": "$.spec.distributedVariable.name",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-distributedVariable-expireIn-type": {
"description": "The expireIn field must be of type integer",
"severity": "error",
"given": "$.spec.distributedVariable.expireIn",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "integer"
}
}
}
},
"$-spec-distributedVariable-jsonataTransforms-type": {
"description": "The jsonataTransforms field must be of type array",
"severity": "error",
"given": "$.spec.distributedVariable.jsonataTransforms",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-distributedVariable-jsonataTransforms-items-type": {
"description": "Items in the jsonataTransforms array must be of type object",
"severity": "error",
"given": "$.spec.distributedVariable.jsonataTransforms[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-distributedVariable-jsonataTransforms[*]-capture-type": {
"description": "The capture field must be of type string",
"severity": "error",
"given": "$.spec.distributedVariable.jsonataTransforms[*].capture",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-distributedVariable-jsonataTransforms[*]-transform-type": {
"description": "The transform field must be of type string",
"severity": "error",
"given": "$.spec.distributedVariable.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"type:$.spec.distributedVariable.jsonataTransforms[*].capture:string": {
"description": "The capture field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.distributedVariable.jsonataTransforms[*].capture",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"type:$.spec.distributedVariable.jsonataTransforms[*].transform:string": {
"description": "The transform field in jsonataTransforms array items must be of type string",
"severity": "error",
"given": "$.spec.distributedVariable.jsonataTransforms[*].transform",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"spec-telemetry-type": {
"description": "The spec.telemetry field must be of type object",
"severity": "error",
"given": "$.spec.telemetry",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-telemetry-keys-type": {
"description": "The keys field must be of type object",
"severity": "error",
"given": "$.spec.telemetry.keys",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-telemetry-keys-keyLiterals-type": {
"description": "The keyLiterals field must be of type array",
"severity": "error",
"given": "$.spec.telemetry.keys.keyLiterals",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-telemetry-keys-keyLiterals-items-type": {
"description": "Items in the keyLiterals array must be of type string",
"severity": "error",
"given": "$.spec.telemetry.keys.keyLiterals[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-telemetry-span-oneOf": {
"description": "The span field must match the oneOf schema definition",
"severity": "error",
"given": "$.spec.telemetry.span",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"oneOf": [
{
"type": "string",
"enum": [
"rootSpan"
]
},
{
"type": "object",
"properties": {
"policySpan": {
"type": "string"
},
"httpSpan": {
"type": "string"
}
}
}
]
}
}
}
},
"$-spec-telemetry-span-policySpan-type": {
"description": "The policySpan field must be of type string",
"severity": "error",
"given": "$.spec.telemetry.span.policySpan",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-telemetry-span-httpSpan-type": {
"description": "The httpSpan field must be of type string",
"severity": "error",
"given": "$.spec.telemetry.span.httpSpan",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-telemetry-jsonataTransforms-type": {
"description": "The jsonataTransforms field must be of type array",
"severity": "error",
"given": "$.spec.telemetry.jsonataTransforms",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "array"
}
}
}
},
"$-spec-telemetry-jsonataTransforms-items-type": {
"description": "Items in the jsonataTransforms array must be of type object",
"severity": "error",
"given": "$.spec.telemetry.jsonataTransforms[*]",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "object"
}
}
}
},
"$-spec-telemetry-jsonataTransforms[*]-capture-type": {
"description": "The capture field must be of type string",
"severity": "error",
"given": "$.spec.telemetry.jsonataTransforms[*].capture",
"then": {
"function": "schema",
"functionOptions": {
"schema": {
"type": "string"
}
}
}
},
"$-spec-telemetry-jsonataTransforms[*]-transform-type": {
"description": "The transform field must be of type string"