schemas.openapi-forms.json Maven / Gradle / Ivy
{
"PluginDescription" : {
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"default_config" : {
"label" : "default_config",
"type" : "string"
},
"config_schema" : {
"label" : "config_schema",
"type" : "string"
},
"config_flow" : {
"label" : "config_flow",
"type" : "array",
"array" : true,
"format" : null
},
"plugin_visibility" : {
"label" : "plugin_visibility",
"type" : "string"
},
"plugin_categories" : {
"label" : "plugin_categories",
"type" : "array",
"array" : true,
"format" : null
},
"plugin_steps" : {
"label" : "plugin_steps",
"type" : "array",
"array" : true,
"format" : null
},
"plugin_tags" : {
"label" : "plugin_tags",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "plugin_tags", "plugin_steps", "plugin_categories", "plugin_visibility", "config_flow", "config_schema", "default_config", "description", "name", "id" ]
},
"otoroshi.next.plugins.MissingHeadersIn" : {
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers" ]
},
"otoroshi.auth.Credential" : {
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "useOtoroshiCertificate", "certId", "privateKey", "certificate" ]
},
"otoroshi.next.plugins.NgResponseCacheCleanupJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.CustomHeadersAuthConstraints" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "clientSecretHeaderName", "clientIdHeaderName", "enabled" ]
},
"otoroshi.models.OtoroshiAdmin" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "simple", "webauthn" ]
}
},
"username" : {
"label" : "username",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"label" : {
"label" : "label",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"typ" : {
"type" : "select",
"props" : {
"label" : "typ",
"options" : [ "SIMPLE", "WEBAUTHN" ]
}
},
"createdAt" : {
"label" : "createdAt",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"password" : {
"label" : "password",
"type" : "string"
},
"credentials" : {
"label" : "credentials",
"type" : "object"
},
"handle" : {
"label" : "handle",
"type" : "string"
}
},
"flow" : [ "handle", "credentials", "password", "metadata", "createdAt", "typ", "label", "tags", "username", "type", "_loc", "rights" ]
},
"otoroshi.script.Script" : {
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"code" : {
"label" : "code",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "app", "transformer", "validator", "preroute", "sink", "listener", "job", "exporter" ]
}
}
},
"flow" : [ "type", "id", "code", "desc", "tags", "metadata", "name", "_loc" ]
},
"otoroshi.models.GlobalScripts" : {
"schema" : {
"jobConfig" : {
"label" : "jobConfig",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"transformersConfig" : {
"label" : "transformersConfig",
"type" : "object"
},
"transformersRefs" : {
"label" : "transformersRefs",
"type" : "array",
"array" : true,
"format" : null
},
"preRouteRefs" : {
"label" : "preRouteRefs",
"type" : "array",
"array" : true,
"format" : null
},
"sinkConfig" : {
"label" : "sinkConfig",
"type" : "object"
},
"jobRefs" : {
"label" : "jobRefs",
"type" : "array",
"array" : true,
"format" : null
},
"validatorRefs" : {
"label" : "validatorRefs",
"type" : "array",
"array" : true,
"format" : null
},
"sinkRefs" : {
"label" : "sinkRefs",
"type" : "array",
"array" : true,
"format" : null
},
"preRouteConfig" : {
"label" : "preRouteConfig",
"type" : "object"
},
"validatorConfig" : {
"label" : "validatorConfig",
"type" : "object"
}
},
"flow" : [ "validatorConfig", "preRouteConfig", "sinkRefs", "validatorRefs", "jobRefs", "sinkConfig", "preRouteRefs", "transformersRefs", "transformersConfig", "enabled", "jobConfig" ]
},
"otoroshi.next.plugins.NgHasClientCertMatchingValidator" : {
"schema" : {
"subject_dns" : {
"label" : "subject_dns",
"type" : "array",
"array" : true,
"format" : null
},
"serial_numbers" : {
"label" : "serial_numbers",
"type" : "array",
"array" : true,
"format" : null
},
"issuer_dns" : {
"label" : "issuer_dns",
"type" : "array",
"array" : true,
"format" : null
},
"regex_issuer_dns" : {
"label" : "regex_issuer_dns",
"type" : "array",
"array" : true,
"format" : null
},
"regex_subject_dns" : {
"label" : "regex_subject_dns",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "regex_subject_dns", "regex_issuer_dns", "issuer_dns", "serial_numbers", "subject_dns" ]
},
"otoroshi.models.UserRights" : {
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"otoroshi.next.plugins.EurekaTarget" : {
"schema" : {
"eureka_server" : {
"label" : "eureka_server",
"type" : "string"
},
"eureka_app" : {
"label" : "eureka_app",
"type" : "string"
}
},
"flow" : [ "eureka_app", "eureka_server" ]
},
"otoroshi.plugins.jobs.kubernetes.ClientSupport" : {
"schema" : {
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"templates" : {
"label" : "templates",
"type" : "object"
},
"token" : {
"label" : "token",
"type" : "string"
},
"restartDependantDeployments" : {
"label" : "restartDependantDeployments",
"type" : "bool"
},
"watchGracePeriodSeconds" : {
"label" : "watchGracePeriodSeconds",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"crds" : {
"label" : "crds",
"type" : "bool"
},
"watch" : {
"label" : "watch",
"type" : "bool"
},
"labels" : {
"label" : "labels",
"type" : "object"
},
"openshiftDnsOperatorCoreDnsName" : {
"label" : "openshiftDnsOperatorCoreDnsName",
"type" : "string"
},
"syncIntervalSeconds" : {
"label" : "syncIntervalSeconds",
"type" : "number"
},
"kubeDnsOperatorCoreDnsName" : {
"label" : "kubeDnsOperatorCoreDnsName",
"type" : "string"
},
"defaultGroup" : {
"label" : "defaultGroup",
"type" : "string"
},
"kubeDnsOperatorCoreDnsNamespace" : {
"label" : "kubeDnsOperatorCoreDnsNamespace",
"type" : "string"
},
"triggerKey" : {
"label" : "triggerKey",
"type" : "string"
},
"otoroshiNamespace" : {
"label" : "otoroshiNamespace",
"type" : "string"
},
"watchTimeoutSeconds" : {
"label" : "watchTimeoutSeconds",
"type" : "number"
},
"openshiftDnsOperatorCleanupDomains" : {
"label" : "openshiftDnsOperatorCleanupDomains",
"type" : "array",
"array" : true,
"format" : null
},
"namespaces" : {
"label" : "namespaces",
"type" : "array",
"array" : true,
"format" : null
},
"openshiftDnsOperatorCoreDnsPort" : {
"label" : "openshiftDnsOperatorCoreDnsPort",
"type" : "number"
},
"coreDnsEnv" : {
"label" : "coreDnsEnv",
"type" : "string"
},
"triggerPath" : {
"label" : "triggerPath",
"type" : "string"
},
"image" : {
"label" : "image",
"type" : "string"
},
"coreDnsConfigMapName" : {
"label" : "coreDnsConfigMapName",
"type" : "string"
},
"clusterDomain" : {
"label" : "clusterDomain",
"type" : "string"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"caCert" : {
"label" : "caCert",
"type" : "string"
},
"trust" : {
"label" : "trust",
"type" : "bool"
},
"ingressClasses" : {
"label" : "ingressClasses",
"type" : "array",
"array" : true,
"format" : null
},
"userPassword" : {
"label" : "userPassword",
"type" : "string"
},
"syncDaikokuApikeysOnly" : {
"label" : "syncDaikokuApikeysOnly",
"type" : "bool"
},
"openshiftDnsOperatorCleanup" : {
"label" : "openshiftDnsOperatorCleanup",
"type" : "bool"
},
"kubeSystemNamespace" : {
"label" : "kubeSystemNamespace",
"type" : "string"
},
"ingressEndpointIp" : {
"label" : "ingressEndpointIp",
"type" : "string"
},
"namespacesLabels" : {
"label" : "namespacesLabels",
"type" : "object"
},
"openshiftDnsOperatorCleanupNames" : {
"label" : "openshiftDnsOperatorCleanupNames",
"type" : "array",
"array" : true,
"format" : null
},
"kubeDnsOperatorCoreDnsPort" : {
"label" : "kubeDnsOperatorCoreDnsPort",
"type" : "number"
},
"mutatingWebhookName" : {
"label" : "mutatingWebhookName",
"type" : "string"
},
"kubeLeader" : {
"label" : "kubeLeader",
"type" : "bool"
},
"ingressEndpointHostname" : {
"label" : "ingressEndpointHostname",
"type" : "string"
},
"openshiftDnsOperatorIntegration" : {
"label" : "openshiftDnsOperatorIntegration",
"type" : "bool"
},
"validatingWebhookName" : {
"label" : "validatingWebhookName",
"type" : "string"
},
"coreDnsDeploymentName" : {
"label" : "coreDnsDeploymentName",
"type" : "string"
},
"ingresses" : {
"label" : "ingresses",
"type" : "bool"
},
"useProxyState" : {
"label" : "useProxyState",
"type" : "bool"
},
"coreDnsIntegrationDryRun" : {
"label" : "coreDnsIntegrationDryRun",
"type" : "bool"
},
"ingressEndpointPublishedService" : {
"label" : "ingressEndpointPublishedService",
"type" : "string"
},
"coreDnsAzure" : {
"label" : "coreDnsAzure",
"type" : "bool"
},
"corednsPort" : {
"label" : "corednsPort",
"type" : "number"
},
"coreDnsIntegration" : {
"label" : "coreDnsIntegration",
"type" : "bool"
},
"otoroshiServiceName" : {
"label" : "otoroshiServiceName",
"type" : "string"
},
"meshDomain" : {
"label" : "meshDomain",
"type" : "string"
},
"kubeDnsOperatorIntegration" : {
"label" : "kubeDnsOperatorIntegration",
"type" : "bool"
},
"triggerHost" : {
"label" : "triggerHost",
"type" : "string"
},
"openshiftDnsOperatorCoreDnsNamespace" : {
"label" : "openshiftDnsOperatorCoreDnsNamespace",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
}
},
"flow" : [ "endpoint", "templates", "token", "restartDependantDeployments", "watchGracePeriodSeconds", "connectionTimeout", "crds", "watch", "labels", "openshiftDnsOperatorCoreDnsName", "syncIntervalSeconds", "kubeDnsOperatorCoreDnsName", "defaultGroup", "kubeDnsOperatorCoreDnsNamespace", "triggerKey", "otoroshiNamespace", "watchTimeoutSeconds", "openshiftDnsOperatorCleanupDomains", "namespaces", "openshiftDnsOperatorCoreDnsPort", "coreDnsEnv", "triggerPath", "image", "coreDnsConfigMapName", "clusterDomain", "idleTimeout", "caCert", "trust", "ingressClasses", "userPassword", "syncDaikokuApikeysOnly", "openshiftDnsOperatorCleanup", "kubeSystemNamespace", "ingressEndpointIp", "namespacesLabels", "openshiftDnsOperatorCleanupNames", "kubeDnsOperatorCoreDnsPort", "mutatingWebhookName", "kubeLeader", "ingressEndpointHostname", "openshiftDnsOperatorIntegration", "validatingWebhookName", "coreDnsDeploymentName", "ingresses", "useProxyState", "coreDnsIntegrationDryRun", "ingressEndpointPublishedService", "coreDnsAzure", "corednsPort", "coreDnsIntegration", "otoroshiServiceName", "meshDomain", "kubeDnsOperatorIntegration", "triggerHost", "openshiftDnsOperatorCoreDnsNamespace", "callAndStreamTimeout" ]
},
"env" : {
"label" : "env",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"circuitBeakersHolder" : {
"label" : "circuitBeakersHolder",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "circuitBeakersHolder" ]
}
},
"flow" : [ "config", "env" ]
},
"env" : {
"label" : "env",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"circuitBeakersHolder" : {
"label" : "circuitBeakersHolder",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "circuitBeakersHolder" ]
}
},
"flow" : [ "client", "env" ]
},
"otoroshi.plugins.authcallers.ForceRetryException" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.W3CTracingConfigKind" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgBiscuitValidator" : {
"schema" : {
"legacy" : {
"label" : "legacy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"facts" : {
"label" : "facts",
"type" : "array",
"array" : true,
"format" : null
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"resources" : {
"label" : "resources",
"type" : "array",
"array" : true,
"format" : null
},
"enforce" : {
"label" : "enforce",
"type" : "bool"
},
"extractorName" : {
"label" : "extractorName",
"type" : "string"
},
"checks" : {
"label" : "checks",
"type" : "array",
"array" : true,
"format" : null
},
"extractor" : {
"label" : "extractor",
"type" : "string"
},
"revocation_ids" : {
"label" : "revocation_ids",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "facts", "publicKey", "resources", "enforce", "extractorName", "checks", "extractor", "revocation_ids", "rules" ]
}
},
"flow" : [ "legacy" ]
},
"otoroshi.tcp.TlsMode" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.WasmSink" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.next.models.NgTarget" : {
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "hostname", "weight", "id", "port", "tls", "protocol", "ip_address", "predicate", "tls_config" ]
},
"otoroshi.models.DataExporterConfigType" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.RSAKPAlgoSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"certId" : {
"label" : "certId",
"type" : "string"
}
},
"flow" : [ "certId", "size", "type" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesAdmissionWebhookCRDValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.wrappers.AccessValidatorWrapper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.OAuth2Caller" : {
"schema" : {
"cache_token_seconds" : {
"label" : "cache_token_seconds",
"type" : "number"
},
"client_id" : {
"label" : "client_id",
"type" : "string"
},
"client_secret" : {
"label" : "client_secret",
"type" : "string"
},
"scope" : {
"label" : "scope",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
},
"user" : {
"label" : "user",
"type" : "string"
},
"kind" : {
"type" : "select",
"props" : {
"label" : "kind",
"options" : [ "client_credentials", "password" ]
}
},
"header_value_format" : {
"label" : "header_value_format",
"type" : "string"
},
"json_payload" : {
"label" : "json_payload",
"type" : "bool"
},
"audience" : {
"label" : "audience",
"type" : "string"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "url", "audience", "json_payload", "header_value_format", "kind", "user", "method", "header_name", "password", "scope", "client_secret", "client_id", "cache_token_seconds", "tls_config" ]
},
"otoroshi.next.plugins.SnowMonkeyChaos" : {
"schema" : {
"large_request_fault_config" : {
"label" : "large_request_fault_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additional_request_size" : {
"label" : "additional_request_size",
"type" : "number"
}
},
"flow" : [ "ratio", "additional_request_size" ]
},
"large_response_fault_config" : {
"label" : "large_response_fault_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additional_response_size" : {
"label" : "additional_response_size",
"type" : "number"
}
},
"flow" : [ "ratio", "additional_response_size" ]
},
"latency_injection_fault_config" : {
"label" : "latency_injection_fault_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"bad_responses_fault_config" : {
"label" : "bad_responses_fault_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
}
},
"flow" : [ "large_request_fault_config", "large_response_fault_config", "latency_injection_fault_config", "bad_responses_fault_config" ]
},
"otoroshi.next.plugins.MissingMockResponsesException" : {
"schema" : {
"message" : {
"label" : "message",
"type" : "string"
}
},
"flow" : [ "message" ]
},
"otoroshi.next.plugins.OIDCAccessTokenAsApikey" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"at_least_one" : {
"label" : "at_least_one",
"type" : "bool"
},
"config" : {
"label" : "config",
"type" : "string"
}
},
"flow" : [ "config", "at_least_one", "enabled" ]
},
"otoroshi.plugins.discovery.DiscoveryTargetsSelector" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.TailscaleStatusPeer" : {
"schema" : {
"raw" : {
"type" : "code",
"props" : {
"label" : "raw",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "raw" ]
},
"otoroshi.plugins.log4j.Log4jExpressionText" : {
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"otoroshi.auth.NameIDFormat" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgIpStackGeolocationInfoExtractor" : {
"schema" : {
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"log" : {
"label" : "log",
"type" : "bool"
}
},
"flow" : [ "log", "timeout", "apikey" ]
},
"otoroshi.next.plugins.NgGeolocationInfoHeaderConfig" : {
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "header_name" ]
},
"otoroshi.next.plugins.ApikeyQuotas" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.accesslog.AccessLogJson" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.EurekaTargetConfig" : {
"schema" : {
"eureka_server" : {
"label" : "eureka_server",
"type" : "string"
},
"eureka_app" : {
"label" : "eureka_app",
"type" : "string"
}
},
"flow" : [ "eureka_app", "eureka_server" ]
},
"otoroshi.models.FileSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"path" : {
"label" : "path",
"type" : "string"
},
"maxFileSize" : {
"label" : "maxFileSize",
"type" : "number"
}
},
"flow" : [ "maxFileSize", "path", "type" ]
},
"otoroshi.plugins.apikeys.ClientCredentialFlow" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgResponseCacheFilterConfig" : {
"schema" : {
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"not_methods" : {
"label" : "not_methods",
"type" : "array",
"array" : true,
"format" : null
},
"not_paths" : {
"label" : "not_paths",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "not_paths", "not_methods", "methods", "paths" ]
},
"otoroshi.plugins.external.ExternalHttpValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgServiceQuotas" : {
"schema" : {
"throttling_quota" : {
"label" : "throttling_quota",
"type" : "number"
},
"daily_quota" : {
"label" : "daily_quota",
"type" : "number"
},
"monthly_quota" : {
"label" : "monthly_quota",
"type" : "number"
}
},
"flow" : [ "monthly_quota", "daily_quota", "throttling_quota" ]
},
"HealthCheckEventList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.GraphQLProxyConfig" : {
"schema" : {
"max_complexity" : {
"label" : "max_complexity",
"type" : "number"
},
"schema" : {
"label" : "schema",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"max_depth" : {
"label" : "max_depth",
"type" : "number"
}
},
"flow" : [ "max_depth", "endpoint", "headers", "path", "schema", "max_complexity" ]
},
"otoroshi.next.plugins.WasmJobsConfig" : {
"schema" : {
"unique_id" : {
"label" : "unique_id",
"type" : "string"
},
"instantiation" : {
"label" : "instantiation",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"cron_expression" : {
"label" : "cron_expression",
"type" : "string"
},
"kind" : {
"label" : "kind",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "allowedHosts", "memoryPages", "allowedPaths", "instances", "config", "authorizations", "opa", "wasi", "functionName" ]
},
"interval" : {
"label" : "interval",
"type" : "string"
},
"initial_delay" : {
"label" : "initial_delay",
"type" : "string"
},
"raw_config" : {
"label" : "raw_config",
"type" : "object"
}
},
"flow" : [ "raw_config", "initial_delay", "interval", "cron_expression", "unique_id", "instantiation", "kind", "config" ]
},
"otoroshi.models.RefJwtVerifier" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "ids", "enabled", "excludedPatterns", "type" ]
},
"otoroshi.plugins.cache.ResponseCacheFilterConfig" : {
"schema" : {
"json" : {
"label" : "json",
"type" : "object"
}
},
"flow" : [ "json" ]
},
"otoroshi.next.plugins.StaticBackendConfig" : {
"schema" : {
"root_path" : {
"label" : "root_path",
"type" : "string"
}
},
"flow" : [ "root_path" ]
},
"otoroshi.plugins.oidc.OIDCAccessTokenAsApikey" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.ssl.pki.models.GenCsrQuery" : {
"schema" : {
"client" : {
"label" : "client",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"key" : {
"label" : "key",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"algo" : {
"label" : "algo",
"type" : "string"
},
"size" : {
"label" : "size",
"type" : "number"
}
},
"flow" : [ "algo", "size" ]
},
"includeAIA" : {
"label" : "includeAIA",
"type" : "bool"
},
"signatureAlg" : {
"label" : "signatureAlg",
"type" : "string"
},
"existingSerialNumber" : {
"label" : "existingSerialNumber",
"type" : "string"
},
"duration" : {
"label" : "duration",
"type" : "number"
},
"digestAlg" : {
"label" : "digestAlg",
"type" : "string"
},
"ca" : {
"label" : "ca",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "object"
},
"subject" : {
"label" : "subject",
"type" : "string"
}
},
"flow" : [ "subject", "name", "ca", "digestAlg", "duration", "existingSerialNumber", "signatureAlg", "includeAIA", "hosts", "client", "key" ]
},
"BulkPatchBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.WebAuthnOtoroshiAdmin" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "simple", "webauthn" ]
}
},
"username" : {
"label" : "username",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"label" : {
"label" : "label",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"typ" : {
"type" : "select",
"props" : {
"label" : "typ",
"options" : [ "SIMPLE", "WEBAUTHN" ]
}
},
"createdAt" : {
"label" : "createdAt",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"credentials" : {
"label" : "credentials",
"type" : "object"
},
"handle" : {
"label" : "handle",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "password", "handle", "credentials", "metadata", "createdAt", "typ", "label", "tags", "username", "type", "_loc", "rights" ]
},
"otoroshi.next.plugins.TailscaleStatus" : {
"schema" : {
"raw" : {
"type" : "code",
"props" : {
"label" : "raw",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "raw" ]
},
"otoroshi.models.ApiDescriptor" : {
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "openApiDescriptorUrl", "exposeApi" ]
},
"otoroshi.greenscore.RuleId" : {
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"otoroshi.next.plugins.WasmBackend" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"PemCsrBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.FakeEntityLocationSupport" : {
"schema" : {
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "_loc" ]
},
"otoroshi.plugins.clientcert.HasClientCertValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.LdapAuthModuleConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "saml", "oauth1", "oauth2", "ldap", "basic" ]
}
},
"extraMetadata" : {
"label" : "extraMetadata",
"type" : "object"
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"allowEmptyPassword" : {
"label" : "allowEmptyPassword",
"type" : "bool"
},
"groupFilters" : {
"label" : "groupFilters",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"group" : {
"label" : "group",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"team" : {
"label" : "team",
"type" : "string"
}
},
"flow" : [ "group", "tenant", "team" ]
},
"rightsOverride" : {
"label" : "rightsOverride",
"type" : "object"
},
"serverUrls" : {
"label" : "serverUrls",
"type" : "array",
"array" : true,
"format" : null
},
"clientSideSessionEnabled" : {
"label" : "clientSideSessionEnabled",
"type" : "bool"
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "bool"
},
"searchBase" : {
"label" : "searchBase",
"type" : "string"
},
"groupRights" : {
"label" : "groupRights",
"type" : "object"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"superAdmins" : {
"label" : "superAdmins",
"type" : "bool"
},
"sessionMaxAge" : {
"label" : "sessionMaxAge",
"type" : "number"
},
"metadataField" : {
"label" : "metadataField",
"type" : "string"
},
"searchFilter" : {
"label" : "searchFilter",
"type" : "string"
},
"adminUsername" : {
"label" : "adminUsername",
"type" : "string"
},
"userValidators" : {
"label" : "userValidators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
},
"emailField" : {
"label" : "emailField",
"type" : "string"
},
"extractProfileFilter" : {
"label" : "extractProfileFilter",
"type" : "array",
"array" : true,
"format" : null
},
"userBase" : {
"label" : "userBase",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"adminPassword" : {
"label" : "adminPassword",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"extractProfileFilterNot" : {
"label" : "extractProfileFilterNot",
"type" : "array",
"array" : true,
"format" : null
},
"nameField" : {
"label" : "nameField",
"type" : "string"
},
"extractProfile" : {
"label" : "extractProfile",
"type" : "bool"
},
"dataOverride" : {
"label" : "dataOverride",
"type" : "object"
},
"sessionCookieValues" : {
"label" : "sessionCookieValues",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "httpOnly", "secure" ]
}
},
"flow" : [ "dataOverride", "extractProfile", "nameField", "extractProfileFilterNot", "metadata", "adminPassword", "id", "userBase", "extractProfileFilter", "emailField", "userValidators", "adminUsername", "searchFilter", "metadataField", "sessionMaxAge", "superAdmins", "tags", "groupRights", "searchBase", "basicAuth", "clientSideSessionEnabled", "serverUrls", "rightsOverride", "groupFilters", "allowEmptyPassword", "name", "desc", "extraMetadata", "type", "_loc", "sessionCookieValues" ]
},
"otoroshi.next.plugins.EurekaServerSink" : {
"schema" : {
"eviction_timeout" : {
"label" : "eviction_timeout",
"type" : "number"
}
},
"flow" : [ "eviction_timeout" ]
},
"otoroshi.next.plugins.NgApikeyExtractorClientId" : {
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled", "query_name", "header_name" ]
},
"otoroshi.next.plugins.ContextValidation" : {
"schema" : {
"validators" : {
"label" : "validators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
}
},
"flow" : [ "validators" ]
},
"otoroshi.models.LargeRequestFaultConfig" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "additionalRequestSize", "ratio" ]
},
"otoroshi.plugins.biscuit.PubKeyBiscuitToken" : {
"schema" : {
"token" : {
"label" : "token",
"type" : "string"
}
},
"flow" : [ "token" ]
},
"otoroshi.next.plugins.NgIzanamiV1Canary" : {
"schema" : {
"client_id" : {
"label" : "client_id",
"type" : "string"
},
"experiment_id" : {
"label" : "experiment_id",
"type" : "string"
},
"route_config" : {
"label" : "route_config",
"type" : "string"
},
"tls" : {
"label" : "tls",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"izanami_url" : {
"label" : "izanami_url",
"type" : "string"
},
"client_secret" : {
"label" : "client_secret",
"type" : "string"
},
"config_id" : {
"label" : "config_id",
"type" : "string"
}
},
"flow" : [ "config_id", "client_secret", "izanami_url", "timeout", "route_config", "experiment_id", "client_id", "tls" ]
},
"otoroshi.plugins.hmac.HMACUtils" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgPluginInstanceConfig" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgIpAddressesConfig" : {
"schema" : {
"addresses" : {
"label" : "addresses",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "addresses" ]
},
"otoroshi.next.plugins.AllowHttpMethods" : {
"schema" : {
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : null
},
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "forbidden", "allowed" ]
},
"otoroshi.plugins.core.DefaultPlugins" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.greenscore.GreenScoreConfig" : {
"schema" : {
"sections" : {
"label" : "sections",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"sectionWeight" : {
"label" : "sectionWeight",
"type" : "number"
},
"advice" : {
"label" : "advice",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"description" : {
"label" : "description",
"type" : "string"
}
},
"flow" : [ "sectionWeight", "advice", "weight", "enabled", "id", "description" ]
}
},
"flow" : [ "id", "rules" ]
},
"thresholds" : {
"label" : "thresholds",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
},
"dataOut" : {
"label" : "dataOut",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
},
"headersOut" : {
"label" : "headersOut",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
}
},
"flow" : [ "plugins", "dataOut", "headersOut" ]
}
},
"flow" : [ "sections", "thresholds" ]
},
"otoroshi.next.plugins.OAuth2CallerConfig" : {
"schema" : {
"cache_token_seconds" : {
"label" : "cache_token_seconds",
"type" : "number"
},
"client_id" : {
"label" : "client_id",
"type" : "string"
},
"client_secret" : {
"label" : "client_secret",
"type" : "string"
},
"scope" : {
"label" : "scope",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
},
"user" : {
"label" : "user",
"type" : "string"
},
"kind" : {
"type" : "select",
"props" : {
"label" : "kind",
"options" : [ "client_credentials", "password" ]
}
},
"header_value_format" : {
"label" : "header_value_format",
"type" : "string"
},
"json_payload" : {
"label" : "json_payload",
"type" : "bool"
},
"audience" : {
"label" : "audience",
"type" : "string"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "url", "audience", "json_payload", "header_value_format", "kind", "user", "method", "header_name", "password", "scope", "client_secret", "client_id", "cache_token_seconds", "tls_config" ]
},
"otoroshi.next.plugins.NgCertificateAsApikeyConfig" : {
"schema" : {
"daily_quota" : {
"label" : "daily_quota",
"type" : "number"
},
"monthly_quota" : {
"label" : "monthly_quota",
"type" : "number"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"read_only" : {
"label" : "read_only",
"type" : "bool"
},
"allow_client_id_only" : {
"label" : "allow_client_id_only",
"type" : "bool"
},
"throttling_quota" : {
"label" : "throttling_quota",
"type" : "number"
},
"constrained_services_only" : {
"label" : "constrained_services_only",
"type" : "bool"
}
},
"flow" : [ "constrained_services_only", "throttling_quota", "allow_client_id_only", "read_only", "metadata", "tags", "monthly_quota", "daily_quota" ]
},
"otoroshi.plugins.geoloc.IpStackGeolocationInfoExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.RemoveHeadersIn" : {
"schema" : {
"names" : {
"label" : "names",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "names" ]
},
"otoroshi.wasm.WasmDataRights" : {
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "write", "read" ]
},
"otoroshi.plugins.clientcert.HasClientCertMatchingValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.apikeys.ApikeyAuthModule" : {
"schema" : { },
"flow" : [ ]
},
"HostMetrics" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.AttributeSetter" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgPlugins" : {
"schema" : {
"slots" : {
"label" : "slots",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"instance_id" : {
"label" : "instance_id",
"type" : "number"
},
"debug" : {
"label" : "debug",
"type" : "bool"
},
"config" : {
"label" : "config",
"type" : "object"
},
"exclude" : {
"label" : "exclude",
"type" : "array",
"array" : true,
"format" : null
},
"plugin_index" : {
"label" : "plugin_index",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"include" : {
"label" : "include",
"type" : "array",
"array" : true,
"format" : null
},
"plugin" : {
"label" : "plugin",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "instance_id", "debug", "exclude", "plugin_index", "include", "plugin", "enabled", "config" ]
}
},
"flow" : [ "slots" ]
},
"WebauthnAdminList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.SessionCookieValues" : {
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "secure", "httpOnly" ]
},
"otoroshi.plugins.discovery.DiscoverySelfRegistrationSink" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.utils.ConcurrentMutableTypedMap" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.storage.drivers.inmemory.S3Configuration" : {
"schema" : {
"writeEvery" : {
"label" : "writeEvery",
"type" : "number"
},
"chunkSize" : {
"label" : "chunkSize",
"type" : "number"
},
"bucket" : {
"label" : "bucket",
"type" : "string"
},
"key" : {
"label" : "key",
"type" : "string"
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"v4auth" : {
"label" : "v4auth",
"type" : "bool"
},
"access" : {
"label" : "access",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
}
},
"flow" : [ "region", "secret", "access", "v4auth", "endpoint", "key", "bucket", "chunkSize", "writeEvery" ]
},
"otoroshi.models.Target" : {
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "scheme", "ipAddress", "protocol", "metadata", "weight", "host", "tags", "predicate", "mtlsConfig" ]
},
"otoroshi.plugins.authcallers.OAuth2CallerConfig" : {
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kind" : {
"type" : "select",
"props" : {
"label" : "kind",
"options" : [ "client_credentials", "password" ]
}
},
"password" : {
"label" : "password",
"type" : "string"
},
"cacheTokenSeconds" : {
"label" : "cacheTokenSeconds",
"type" : "number"
},
"headerValueFormat" : {
"label" : "headerValueFormat",
"type" : "string"
},
"user" : {
"label" : "user",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"scope" : {
"label" : "scope",
"type" : "string"
},
"jsonPayload" : {
"label" : "jsonPayload",
"type" : "bool"
},
"clientId" : {
"label" : "clientId",
"type" : "string"
},
"audience" : {
"label" : "audience",
"type" : "string"
}
},
"flow" : [ "audience", "clientId", "jsonPayload", "scope", "clientSecret", "headerName", "user", "headerValueFormat", "cacheTokenSeconds", "password", "kind", "url", "method", "tlsConfig" ]
},
"otoroshi.next.plugins.TailscaleCert" : {
"schema" : {
"raw" : {
"label" : "raw",
"type" : "string"
}
},
"flow" : [ "raw" ]
},
"otoroshi.models.DataExporterConfigFiltering" : {
"schema" : {
"include" : {
"label" : "include",
"type" : "array",
"array" : true,
"format" : "form"
},
"exclude" : {
"label" : "exclude",
"type" : "array",
"array" : true,
"format" : "form"
}
},
"flow" : [ "exclude", "include" ]
},
"otoroshi.models.LoadBalancing" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "ratio", "type" ]
},
"otoroshi.next.plugins.NgMaxMindGeolocationInfoExtractor" : {
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"log" : {
"label" : "log",
"type" : "bool"
}
},
"flow" : [ "log", "path" ]
},
"TargetsList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.WasmPreRoute" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.models.RouteIdentifier" : {
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "id" ]
},
"otoroshi.next.plugins.NgLegacyAuthModuleCallConfig" : {
"schema" : {
"public_patterns" : {
"label" : "public_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"private_patterns" : {
"label" : "private_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"module" : {
"label" : "module",
"type" : "string"
},
"pass_with_apikey" : {
"label" : "pass_with_apikey",
"type" : "bool"
}
},
"flow" : [ "module", "pass_with_apikey" ]
}
},
"flow" : [ "private_patterns", "public_patterns", "config" ]
},
"otoroshi.models.WeightedBestResponseTime" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "ratio" ]
},
"otoroshi.models.Team" : {
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"name" : {
"label" : "name",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "id", "metadata", "tenant", "description", "name", "tags" ]
},
"otoroshi.models.CorsSettings" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "allowOrigin", "exposeHeaders", "excludedPatterns", "allowHeaders", "allowMethods", "maxAge", "allowCredentials", "enabled" ]
},
"StringList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.loggers.BodyLoggerConfig" : {
"schema" : {
"json" : {
"label" : "json",
"type" : "object"
}
},
"flow" : [ "json" ]
},
"otoroshi.auth.BasicAuthModuleConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "saml", "oauth1", "oauth2", "ldap", "basic" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"clientSideSessionEnabled" : {
"label" : "clientSideSessionEnabled",
"type" : "bool"
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "bool"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"users" : {
"label" : "users",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"password" : {
"label" : "password",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"email" : {
"label" : "email",
"type" : "string"
},
"webauthn" : {
"label" : "webauthn",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"handle" : {
"label" : "handle",
"type" : "string"
},
"credentials" : {
"label" : "credentials",
"type" : "object"
}
},
"flow" : [ "handle", "credentials" ]
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"name" : {
"label" : "name",
"type" : "string"
}
},
"flow" : [ "password", "tags", "email", "webauthn", "rights", "name", "metadata" ]
},
"sessionMaxAge" : {
"label" : "sessionMaxAge",
"type" : "number"
},
"webauthn" : {
"label" : "webauthn",
"type" : "bool"
},
"userValidators" : {
"label" : "userValidators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"sessionCookieValues" : {
"label" : "sessionCookieValues",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "httpOnly", "secure" ]
}
},
"flow" : [ "metadata", "id", "userValidators", "webauthn", "sessionMaxAge", "users", "tags", "basicAuth", "clientSideSessionEnabled", "name", "desc", "type", "_loc", "sessionCookieValues" ]
},
"otoroshi.next.plugins.FileUtils" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.InCookie" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
}
},
"flow" : [ "name", "type" ]
},
"otoroshi.next.models.KvNgRouteCompositionDataStore" : {
"schema" : {
"_env" : {
"label" : "_env",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"circuitBeakersHolder" : {
"label" : "circuitBeakersHolder",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "circuitBeakersHolder" ]
}
},
"flow" : [ "_env" ]
},
"otoroshi.plugins.useragent.UserAgentInfoHeader" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.geoloc.MaxMindGeolocationInfoExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.izanami.IzanamiCanaryRoutingConfigRoute" : {
"schema" : {
"variants" : {
"label" : "variants",
"type" : "object"
},
"wildcard" : {
"label" : "wildcard",
"type" : "bool"
},
"default" : {
"label" : "default",
"type" : "string"
},
"regex" : {
"label" : "regex",
"type" : "bool"
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"route" : {
"label" : "route",
"type" : "string"
}
},
"flow" : [ "route", "exact", "regex", "default", "wildcard", "variants" ]
},
"otoroshi.plugins.biscuit.BiscuitExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.events.AlertEvent" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.HeadersValidation" : {
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers" ]
},
"otoroshi.next.plugins.wrappers.RequestTransformerWrapper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgClientConfig" : {
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "max_errors", "retries", "backoff_factor", "retry_initial_delay", "global_timeout", "call_timeout", "connection_timeout", "custom_timeouts", "call_and_stream_timeout", "sample_interval", "idle_timeout", "cache_connection_settings", "proxy" ]
},
"otoroshi.next.plugins.NgEndlessHttpResponseConfig" : {
"schema" : {
"finger" : {
"label" : "finger",
"type" : "bool"
},
"addresses" : {
"label" : "addresses",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "addresses", "finger" ]
},
"otoroshi.auth.SAMLCanocalizationMethod" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.core.apikeys.ClientIdApikeyExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.JwtSigner" : {
"schema" : {
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"replace_if_present" : {
"label" : "replace_if_present",
"type" : "bool"
},
"fail_if_present" : {
"label" : "fail_if_present",
"type" : "bool"
}
},
"flow" : [ "fail_if_present", "replace_if_present", "verifier" ]
},
"otoroshi.next.plugins.NgHasClientCertMatchingHttpValidator" : {
"schema" : {
"subject_dns" : {
"label" : "subject_dns",
"type" : "array",
"array" : true,
"format" : null
},
"serial_numbers" : {
"label" : "serial_numbers",
"type" : "array",
"array" : true,
"format" : null
},
"issuer_dns" : {
"label" : "issuer_dns",
"type" : "array",
"array" : true,
"format" : null
},
"regex_issuer_dns" : {
"label" : "regex_issuer_dns",
"type" : "array",
"array" : true,
"format" : null
},
"regex_subject_dns" : {
"label" : "regex_subject_dns",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "regex_subject_dns", "regex_issuer_dns", "issuer_dns", "serial_numbers", "subject_dns" ]
},
"otoroshi.next.plugins.MultiAuthModule" : {
"schema" : {
"modules" : {
"label" : "modules",
"type" : "array",
"array" : true,
"format" : null
},
"pass_with_apikey" : {
"label" : "pass_with_apikey",
"type" : "bool"
},
"use_email_prompt" : {
"label" : "use_email_prompt",
"type" : "bool"
},
"users_groups" : {
"label" : "users_groups",
"type" : "object"
}
},
"flow" : [ "users_groups", "use_email_prompt", "pass_with_apikey", "modules" ]
},
"otoroshi.models.BasicAuthConstraints" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "queryName", "headerName", "enabled" ]
},
"otoroshi.next.plugins.EurekaInstance" : {
"schema" : {
"hostname" : {
"label" : "hostname",
"type" : "string"
},
"vip_address" : {
"label" : "vip_address",
"type" : "string"
},
"home_page_url" : {
"label" : "home_page_url",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"last_dirty_timestamp" : {
"label" : "last_dirty_timestamp",
"type" : "number"
},
"is_secured" : {
"label" : "is_secured",
"type" : "bool"
},
"ip_addr" : {
"label" : "ip_addr",
"type" : "string"
},
"last_updated_timestamp" : {
"label" : "last_updated_timestamp",
"type" : "number"
},
"app" : {
"label" : "app",
"type" : "string"
},
"overridden_status" : {
"label" : "overridden_status",
"type" : "string"
},
"status_page_url" : {
"label" : "status_page_url",
"type" : "string"
},
"is_coordinating_discovery_server" : {
"label" : "is_coordinating_discovery_server",
"type" : "string"
},
"instance_id" : {
"label" : "instance_id",
"type" : "string"
},
"secure_vip_address" : {
"label" : "secure_vip_address",
"type" : "string"
},
"status" : {
"label" : "status",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"secure_port" : {
"label" : "secure_port",
"type" : "number"
},
"health_check_url" : {
"label" : "health_check_url",
"type" : "string"
}
},
"flow" : [ "health_check_url", "secure_port", "port", "status", "secure_vip_address", "instance_id", "is_coordinating_discovery_server", "status_page_url", "overridden_status", "app", "last_updated_timestamp", "ip_addr", "is_secured", "last_dirty_timestamp", "metadata", "home_page_url", "vip_address", "hostname" ]
},
"otoroshi.models.SimpleOtoroshiAdmin" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "simple", "webauthn" ]
}
},
"username" : {
"label" : "username",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"label" : {
"label" : "label",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"typ" : {
"type" : "select",
"props" : {
"label" : "typ",
"options" : [ "SIMPLE", "WEBAUTHN" ]
}
},
"createdAt" : {
"label" : "createdAt",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "password", "metadata", "createdAt", "typ", "label", "tags", "username", "type", "_loc", "rights" ]
},
"otoroshi.next.plugins.IpAddressBlockList" : {
"schema" : {
"addresses" : {
"label" : "addresses",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "addresses" ]
},
"otoroshi.script.PreRoutingContext" : {
"schema" : {
"globalConfig" : {
"label" : "globalConfig",
"type" : "object"
},
"snowflake" : {
"label" : "snowflake",
"type" : "string"
},
"descriptor" : {
"label" : "descriptor",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"buildMode" : {
"label" : "buildMode",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"privateApp" : {
"label" : "privateApp",
"type" : "bool"
},
"localScheme" : {
"label" : "localScheme",
"type" : "string"
},
"authConfigRef" : {
"label" : "authConfigRef",
"type" : "string"
},
"issueCertCA" : {
"label" : "issueCertCA",
"type" : "string"
},
"root" : {
"label" : "root",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"additionalHeaders" : {
"label" : "additionalHeaders",
"type" : "object"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"clientConfig" : {
"label" : "clientConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "useCircuitBreaker", "retryInitialDelay", "cacheConnectionSettings", "proxy", "callTimeout", "callAndStreamTimeout", "globalTimeout", "maxErrors", "retries", "backoffFactor", "customTimeouts", "idleTimeout", "sampleInterval" ]
},
"matchingRoot" : {
"label" : "matchingRoot",
"type" : "string"
},
"forceHttps" : {
"label" : "forceHttps",
"type" : "bool"
},
"localHost" : {
"label" : "localHost",
"type" : "string"
},
"sendOtoroshiHeadersBack" : {
"label" : "sendOtoroshiHeadersBack",
"type" : "bool"
},
"healthCheck" : {
"label" : "healthCheck",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"strictlyPrivate" : {
"label" : "strictlyPrivate",
"type" : "bool"
},
"detectApiKeySooner" : {
"label" : "detectApiKeySooner",
"type" : "bool"
},
"allowHttp10" : {
"label" : "allowHttp10",
"type" : "bool"
},
"subdomain" : {
"label" : "subdomain",
"type" : "string"
},
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"stripPath" : {
"label" : "stripPath",
"type" : "bool"
},
"secComAlgoChallengeOtoToBack" : {
"label" : "secComAlgoChallengeOtoToBack",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"apiKeyConstraints" : {
"label" : "apiKeyConstraints",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"env" : {
"label" : "env",
"type" : "string"
},
"xForwardedHeaders" : {
"label" : "xForwardedHeaders",
"type" : "bool"
},
"transformerRefs" : {
"label" : "transformerRefs",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"gzip" : {
"label" : "gzip",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "compressionLevel", "blackList", "chunkedThreshold", "excludedPatterns", "bufferSize", "whiteList", "enabled" ]
},
"sendInfoToken" : {
"label" : "sendInfoToken",
"type" : "bool"
},
"tcpUdpTunneling" : {
"label" : "tcpUdpTunneling",
"type" : "bool"
},
"removeHeadersOut" : {
"label" : "removeHeadersOut",
"type" : "array",
"array" : true,
"format" : null
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"removeHeadersIn" : {
"label" : "removeHeadersIn",
"type" : "array",
"array" : true,
"format" : null
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"secComAlgoInfoToken" : {
"label" : "secComAlgoInfoToken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"userFacing" : {
"label" : "userFacing",
"type" : "bool"
},
"transformerConfig" : {
"label" : "transformerConfig",
"type" : "object"
},
"clientValidatorRef" : {
"label" : "clientValidatorRef",
"type" : "string"
},
"securityExcludedPatterns" : {
"label" : "securityExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"redirection" : {
"label" : "redirection",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "enabled", "code", "to" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"overrideHost" : {
"label" : "overrideHost",
"type" : "bool"
},
"accessValidator" : {
"label" : "accessValidator",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"sendStateChallenge" : {
"label" : "sendStateChallenge",
"type" : "bool"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"secComInfoTokenVersion" : {
"type" : "select",
"props" : {
"label" : "secComInfoTokenVersion",
"options" : [ "Legacy", "Latest" ]
}
},
"additionalHeadersOut" : {
"label" : "additionalHeadersOut",
"type" : "object"
},
"secComHeaders" : {
"label" : "secComHeaders",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "claimRequestName", "stateRequestName", "stateResponseName" ]
},
"matchingHeaders" : {
"label" : "matchingHeaders",
"type" : "object"
},
"secComAlgoChallengeBackToOto" : {
"label" : "secComAlgoChallengeBackToOto",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"secComUseSameAlgo" : {
"label" : "secComUseSameAlgo",
"type" : "bool"
},
"useNewWSClient" : {
"label" : "useNewWSClient",
"type" : "bool"
},
"secComExcludedPatterns" : {
"label" : "secComExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"redirectToLocal" : {
"label" : "redirectToLocal",
"type" : "bool"
},
"enforceSecureCommunication" : {
"label" : "enforceSecureCommunication",
"type" : "bool"
},
"missingOnlyHeadersOut" : {
"label" : "missingOnlyHeadersOut",
"type" : "object"
},
"secComSettings" : {
"label" : "secComSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"handleLegacyDomain" : {
"label" : "handleLegacyDomain",
"type" : "bool"
},
"canary" : {
"label" : "canary",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "enabled", "traffic", "targets", "root" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"secComVersion" : {
"type" : "select",
"props" : {
"label" : "secComVersion",
"options" : [ "V1", "v2" ]
}
},
"preRouting" : {
"label" : "preRouting",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"privatePatterns" : {
"label" : "privatePatterns",
"type" : "array",
"array" : true,
"format" : null
},
"targetsLoadBalancing" : {
"label" : "targetsLoadBalancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"cors" : {
"label" : "cors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "enabled", "allowCredentials", "maxAge", "allowMethods", "allowHeaders", "excludedPatterns", "exposeHeaders", "allowOrigin" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"publicPatterns" : {
"label" : "publicPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"api" : {
"label" : "api",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "exposeApi", "openApiDescriptorUrl" ]
},
"missingOnlyHeadersIn" : {
"label" : "missingOnlyHeadersIn",
"type" : "object"
},
"issueCert" : {
"label" : "issueCert",
"type" : "bool"
},
"headersVerification" : {
"label" : "headersVerification",
"type" : "object"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata", "enabled", "excludedPatterns", "ids" ]
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
}
},
"flow" : [ "buildMode", "hosts", "privateApp", "localScheme", "authConfigRef", "issueCertCA", "root", "name", "additionalHeaders", "domain", "clientConfig", "matchingRoot", "forceHttps", "localHost", "sendOtoroshiHeadersBack", "healthCheck", "strictlyPrivate", "detectApiKeySooner", "allowHttp10", "subdomain", "paths", "stripPath", "secComAlgoChallengeOtoToBack", "apiKeyConstraints", "env", "xForwardedHeaders", "transformerRefs", "enabled", "gzip", "sendInfoToken", "tcpUdpTunneling", "removeHeadersOut", "useAkkaHttpClient", "maintenanceMode", "id", "removeHeadersIn", "logAnalyticsOnServer", "secComAlgoInfoToken", "userFacing", "transformerConfig", "clientValidatorRef", "securityExcludedPatterns", "ipFiltering", "targets", "redirection", "tags", "restrictions", "overrideHost", "accessValidator", "sendStateChallenge", "chaosConfig", "secComInfoTokenVersion", "additionalHeadersOut", "secComHeaders", "matchingHeaders", "secComAlgoChallengeBackToOto", "secComUseSameAlgo", "useNewWSClient", "secComExcludedPatterns", "redirectToLocal", "enforceSecureCommunication", "missingOnlyHeadersOut", "secComSettings", "handleLegacyDomain", "canary", "_loc", "plugins", "secComTtl", "description", "secComVersion", "preRouting", "groups", "readOnly", "privatePatterns", "targetsLoadBalancing", "cors", "metadata", "publicPatterns", "api", "missingOnlyHeadersIn", "issueCert", "headersVerification", "jwtVerifier", "letsEncrypt" ]
},
"config" : {
"label" : "config",
"type" : "object"
},
"index" : {
"label" : "index",
"type" : "number"
},
"attrs" : {
"label" : "attrs",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "index", "config", "snowflake", "globalConfig", "descriptor", "attrs" ]
},
"otoroshi.models.SecComInfoTokenVersion" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgTrafficMirroringConfig" : {
"schema" : {
"legacy" : {
"label" : "legacy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"conf" : {
"label" : "conf",
"type" : "object"
}
},
"flow" : [ "conf" ]
}
},
"flow" : [ "legacy" ]
},
"otoroshi.models.SnowMonkeyConfig" : {
"schema" : {
"dryRun" : {
"label" : "dryRun",
"type" : "bool"
},
"outageDurationTo" : {
"label" : "outageDurationTo",
"type" : "number"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"timesPerDay" : {
"label" : "timesPerDay",
"type" : "number"
},
"outageDurationFrom" : {
"label" : "outageDurationFrom",
"type" : "number"
},
"startTime" : {
"label" : "startTime",
"type" : "string"
},
"includeUserFacingDescriptors" : {
"label" : "includeUserFacingDescriptors",
"type" : "bool"
},
"targetGroups" : {
"label" : "targetGroups",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"stopTime" : {
"label" : "stopTime",
"type" : "string"
},
"outageStrategy" : {
"type" : "select",
"props" : {
"label" : "outageStrategy",
"options" : [ "AllServicesPerGroup", "OneServicePerGroup" ]
}
}
},
"flow" : [ "outageStrategy", "stopTime", "enabled", "targetGroups", "includeUserFacingDescriptors", "startTime", "outageDurationFrom", "timesPerDay", "outageDurationTo", "dryRun", "chaosConfig" ]
},
"otoroshi.next.plugins.ForwardedHeader" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.TcpTunnel" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.ServiceDescriptorIdentifier" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.QueryTransformerConfig" : {
"schema" : {
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
},
"rename" : {
"label" : "rename",
"type" : "object"
}
},
"flow" : [ "rename", "remove" ]
},
"otoroshi.models.ApiKeyRotation" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"rotationEvery" : {
"label" : "rotationEvery",
"type" : "number"
},
"gracePeriod" : {
"label" : "gracePeriod",
"type" : "number"
},
"nextSecret" : {
"label" : "nextSecret",
"type" : "string"
}
},
"flow" : [ "nextSecret", "gracePeriod", "rotationEvery", "enabled" ]
},
"otoroshi.next.plugins.FakeWasmContext" : {
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"idx" : {
"label" : "idx",
"type" : "number"
}
},
"flow" : [ "idx", "config" ]
},
"otoroshi.plugins.izanami.IzanamiProxyConfig" : {
"schema" : {
"izanamiClientId" : {
"label" : "izanamiClientId",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
},
"mtls" : {
"label" : "mtls",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"featuresEnabled" : {
"label" : "featuresEnabled",
"type" : "bool"
},
"featuresWithContextEnabled" : {
"label" : "featuresWithContextEnabled",
"type" : "bool"
},
"izanamiClientSecret" : {
"label" : "izanamiClientSecret",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"configurationEnabled" : {
"label" : "configurationEnabled",
"type" : "bool"
},
"featurePattern" : {
"label" : "featurePattern",
"type" : "string"
},
"izanamiUrl" : {
"label" : "izanamiUrl",
"type" : "string"
},
"autoContext" : {
"label" : "autoContext",
"type" : "bool"
},
"configPattern" : {
"label" : "configPattern",
"type" : "string"
}
},
"flow" : [ "configPattern", "autoContext", "izanamiUrl", "featurePattern", "configurationEnabled", "timeout", "izanamiClientSecret", "featuresWithContextEnabled", "featuresEnabled", "path", "izanamiClientId", "mtls" ]
},
"otoroshi.plugins.izanami.IzanamiCanaryConfig" : {
"schema" : {
"izanamiClientId" : {
"label" : "izanamiClientId",
"type" : "string"
},
"configId" : {
"label" : "configId",
"type" : "string"
},
"experimentId" : {
"label" : "experimentId",
"type" : "string"
},
"mtls" : {
"label" : "mtls",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"izanamiUrl" : {
"label" : "izanamiUrl",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"izanamiClientSecret" : {
"label" : "izanamiClientSecret",
"type" : "string"
},
"routeConfig" : {
"label" : "routeConfig",
"type" : "string"
}
},
"flow" : [ "routeConfig", "izanamiClientSecret", "timeout", "izanamiUrl", "experimentId", "configId", "izanamiClientId", "mtls" ]
},
"otoroshi.greenscore.SectionId" : {
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"otoroshi.utils.http.MtlsConfig" : {
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "certs", "trustedCerts", "trustAll", "loose", "mtls" ]
},
"otoroshi.next.plugins.XForwardedHeaders" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgLegacyApikeyCall" : {
"schema" : {
"public_patterns" : {
"label" : "public_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"private_patterns" : {
"label" : "private_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mandatory" : {
"label" : "mandatory",
"type" : "bool"
},
"extractors" : {
"label" : "extractors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"basic" : {
"label" : "basic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
}
},
"flow" : [ "enabled", "header_name", "query_name" ]
},
"custom_headers" : {
"label" : "custom_headers",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"client_id_header_name" : {
"label" : "client_id_header_name",
"type" : "string"
},
"client_secret_header_name" : {
"label" : "client_secret_header_name",
"type" : "string"
}
},
"flow" : [ "enabled", "client_id_header_name", "client_secret_header_name" ]
},
"client_id" : {
"label" : "client_id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "header_name", "query_name", "enabled" ]
},
"jwt" : {
"label" : "jwt",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"cookie_name" : {
"label" : "cookie_name",
"type" : "string"
},
"key_pair_signed" : {
"label" : "key_pair_signed",
"type" : "bool"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"secret_signed" : {
"label" : "secret_signed",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"include_request_attrs" : {
"label" : "include_request_attrs",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "cookie_name", "key_pair_signed", "query_name", "secret_signed", "enabled", "include_request_attrs", "header_name" ]
}
},
"flow" : [ "basic", "custom_headers", "client_id", "jwt" ]
},
"pass_with_user" : {
"label" : "pass_with_user",
"type" : "bool"
},
"wipe_backend_request" : {
"label" : "wipe_backend_request",
"type" : "bool"
},
"validate" : {
"label" : "validate",
"type" : "bool"
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"none_meta_keys_in" : {
"label" : "none_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_keys_in" : {
"label" : "all_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_in" : {
"label" : "all_meta_in",
"type" : "object"
},
"none_meta_in" : {
"label" : "none_meta_in",
"type" : "object"
},
"one_tag_in" : {
"label" : "one_tag_in",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"one_meta_in" : {
"label" : "one_meta_in",
"type" : "object"
},
"all_tags_in" : {
"label" : "all_tags_in",
"type" : "array",
"array" : true,
"format" : null
},
"one_meta_key_in" : {
"label" : "one_meta_key_in",
"type" : "array",
"array" : true,
"format" : null
},
"none_tag_in" : {
"label" : "none_tag_in",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "none_meta_keys_in", "all_meta_keys_in", "all_meta_in", "none_meta_in", "one_tag_in", "enabled", "one_meta_in", "all_tags_in", "one_meta_key_in", "none_tag_in" ]
},
"update_quotas" : {
"label" : "update_quotas",
"type" : "bool"
}
},
"flow" : [ "mandatory", "extractors", "pass_with_user", "wipe_backend_request", "validate", "routing", "update_quotas" ]
}
},
"flow" : [ "private_patterns", "public_patterns", "config" ]
},
"otoroshi.next.plugins.UdpTunnel" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.IpAddressAllowedList" : {
"schema" : {
"addresses" : {
"label" : "addresses",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "addresses" ]
},
"otoroshi.plugins.log4j.Log4jExpressionParser" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgMinimalBackend" : {
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
}
},
"flow" : [ "rewrite", "targets", "root", "load_balancing" ]
},
"otoroshi.utils.letsencrypt.LetsEncryptSettings" : {
"schema" : {
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"contacts" : {
"label" : "contacts",
"type" : "array",
"array" : true,
"format" : null
},
"emails" : {
"label" : "emails",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"server" : {
"label" : "server",
"type" : "string"
}
},
"flow" : [ "server", "publicKey", "enabled", "emails", "contacts", "privateKey" ]
},
"otoroshi.next.plugins.NgBrotliConfig" : {
"schema" : {
"buffer_size" : {
"label" : "buffer_size",
"type" : "number"
},
"black_list" : {
"label" : "black_list",
"type" : "array",
"array" : true,
"format" : null
},
"white_list" : {
"label" : "white_list",
"type" : "array",
"array" : true,
"format" : null
},
"compression_level" : {
"label" : "compression_level",
"type" : "number"
},
"chunked_threshold" : {
"label" : "chunked_threshold",
"type" : "number"
}
},
"flow" : [ "chunked_threshold", "compression_level", "white_list", "black_list", "buffer_size" ]
},
"otoroshi.next.plugins.NgHtmlPatcher" : {
"schema" : {
"append_head" : {
"label" : "append_head",
"type" : "array",
"array" : true,
"format" : null
},
"append_body" : {
"label" : "append_body",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "append_body", "append_head" ]
},
"otoroshi.ssl.pki.models.SignCertResponse" : {
"schema" : {
"cert" : {
"label" : "cert",
"type" : "string"
},
"csr" : {
"label" : "csr",
"type" : "string"
},
"ca" : {
"label" : "ca",
"type" : "string"
}
},
"flow" : [ "ca", "csr", "cert" ]
},
"otoroshi.greenscore.RouteScreenScore" : {
"schema" : {
"routeId" : {
"label" : "routeId",
"type" : "string"
},
"rulesConfig" : {
"label" : "rulesConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"sections" : {
"label" : "sections",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"sectionWeight" : {
"label" : "sectionWeight",
"type" : "number"
},
"advice" : {
"label" : "advice",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"description" : {
"label" : "description",
"type" : "string"
}
},
"flow" : [ "sectionWeight", "advice", "weight", "enabled", "id", "description" ]
}
},
"flow" : [ "id", "rules" ]
},
"thresholds" : {
"label" : "thresholds",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
},
"dataOut" : {
"label" : "dataOut",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
},
"headersOut" : {
"label" : "headersOut",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
}
},
"flow" : [ "plugins", "dataOut", "headersOut" ]
}
},
"flow" : [ "sections", "thresholds" ]
}
},
"flow" : [ "routeId", "rulesConfig" ]
},
"otoroshi.next.plugins.RBACConfig" : {
"schema" : {
"roles" : {
"label" : "roles",
"type" : "string"
},
"allow" : {
"label" : "allow",
"type" : "array",
"array" : true,
"format" : null
},
"allow_all" : {
"label" : "allow_all",
"type" : "bool"
},
"role_prefix" : {
"label" : "role_prefix",
"type" : "string"
},
"jwt_path" : {
"label" : "jwt_path",
"type" : "string"
},
"apikey_path" : {
"label" : "apikey_path",
"type" : "string"
},
"deny" : {
"label" : "deny",
"type" : "array",
"array" : true,
"format" : null
},
"user_path" : {
"label" : "user_path",
"type" : "string"
},
"deny_all" : {
"label" : "deny_all",
"type" : "bool"
}
},
"flow" : [ "deny_all", "user_path", "deny", "apikey_path", "jwt_path", "role_prefix", "allow_all", "allow", "roles" ]
},
"otoroshi.events.SaslConfig" : {
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"mechanism" : {
"label" : "mechanism",
"type" : "string"
}
},
"flow" : [ "mechanism", "password", "username" ]
},
"otoroshi.next.plugins.NgResponseCacheConfig" : {
"schema" : {
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"max_size" : {
"label" : "max_size",
"type" : "number"
},
"auto_clean" : {
"label" : "auto_clean",
"type" : "bool"
},
"filter" : {
"label" : "filter",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"not_methods" : {
"label" : "not_methods",
"type" : "array",
"array" : true,
"format" : null
},
"not_paths" : {
"label" : "not_paths",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "paths", "methods", "not_methods", "not_paths" ]
}
},
"flow" : [ "auto_clean", "max_size", "ttl", "filter" ]
},
"otoroshi.plugins.geoloc.GeolocationInfoHeader" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.external.ExternalHttpValidatorConfig" : {
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "config" ]
},
"otoroshi.next.models.NgRouteComposition" : {
"schema" : {
"capture" : {
"label" : "capture",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"routes" : {
"label" : "routes",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"override_plugins" : {
"label" : "override_plugins",
"type" : "bool"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
}
},
"flow" : [ "root", "targets", "load_balancing", "rewrite" ]
}
},
"flow" : [ "backend_ref", "frontend", "override_plugins", "backend" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"description" : {
"label" : "description",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"name" : {
"label" : "name",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "groups", "name", "tags", "export_reporting", "metadata", "description", "enabled", "routes", "debug_flow", "id", "capture", "_loc", "client" ]
},
"otoroshi.plugins.mirror.MirroringPlugin" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.S3ExporterSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"maxFileSize" : {
"label" : "maxFileSize",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"writeEvery" : {
"label" : "writeEvery",
"type" : "number"
},
"chunkSize" : {
"label" : "chunkSize",
"type" : "number"
},
"bucket" : {
"label" : "bucket",
"type" : "string"
},
"key" : {
"label" : "key",
"type" : "string"
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"v4auth" : {
"label" : "v4auth",
"type" : "bool"
},
"access" : {
"label" : "access",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
}
},
"flow" : [ "writeEvery", "chunkSize", "bucket", "key", "endpoint", "v4auth", "access", "secret", "region" ]
}
},
"flow" : [ "maxFileSize", "type", "config" ]
},
"otoroshi.next.models.NgTlsConfig" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "trusted_certs", "trust_all", "loose", "certs", "enabled" ]
},
"otoroshi.next.plugins.JwtVerificationOnly" : {
"schema" : {
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"fail_if_absent" : {
"label" : "fail_if_absent",
"type" : "bool"
}
},
"flow" : [ "fail_if_absent", "verifier" ]
},
"otoroshi.models.SecComHeaders" : {
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "stateResponseName", "stateRequestName", "claimRequestName" ]
},
"otoroshi.next.models.NgDomainAndPath" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.JwtVerification" : {
"schema" : {
"verifiers" : {
"label" : "verifiers",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "verifiers" ]
},
"otoroshi.next.plugins.NgAuthModuleConfig" : {
"schema" : {
"module" : {
"label" : "module",
"type" : "string"
},
"pass_with_apikey" : {
"label" : "pass_with_apikey",
"type" : "bool"
}
},
"flow" : [ "pass_with_apikey", "module" ]
},
"otoroshi.next.models.RoutingStrategy" : {
"schema" : { },
"flow" : [ ]
},
"LiveStats" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.apikeys.HasAllowedApiKeyValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgDefaultRequestBodyConfig" : {
"schema" : {
"content_type" : {
"label" : "content_type",
"type" : "string"
},
"content_encoding" : {
"label" : "content_encoding",
"type" : "string"
}
},
"flow" : [ "content_encoding", "content_type" ]
},
"otoroshi.next.plugins.OIDCAccessTokenValidator" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"at_least_one" : {
"label" : "at_least_one",
"type" : "bool"
},
"config" : {
"label" : "config",
"type" : "string"
}
},
"flow" : [ "config", "at_least_one", "enabled" ]
},
"otoroshi.next.plugins.NgLegacyApikeyCallConfig" : {
"schema" : {
"public_patterns" : {
"label" : "public_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"private_patterns" : {
"label" : "private_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mandatory" : {
"label" : "mandatory",
"type" : "bool"
},
"extractors" : {
"label" : "extractors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"basic" : {
"label" : "basic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
}
},
"flow" : [ "enabled", "header_name", "query_name" ]
},
"custom_headers" : {
"label" : "custom_headers",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"client_id_header_name" : {
"label" : "client_id_header_name",
"type" : "string"
},
"client_secret_header_name" : {
"label" : "client_secret_header_name",
"type" : "string"
}
},
"flow" : [ "enabled", "client_id_header_name", "client_secret_header_name" ]
},
"client_id" : {
"label" : "client_id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "header_name", "query_name", "enabled" ]
},
"jwt" : {
"label" : "jwt",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"cookie_name" : {
"label" : "cookie_name",
"type" : "string"
},
"key_pair_signed" : {
"label" : "key_pair_signed",
"type" : "bool"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"secret_signed" : {
"label" : "secret_signed",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"include_request_attrs" : {
"label" : "include_request_attrs",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "cookie_name", "key_pair_signed", "query_name", "secret_signed", "enabled", "include_request_attrs", "header_name" ]
}
},
"flow" : [ "basic", "custom_headers", "client_id", "jwt" ]
},
"pass_with_user" : {
"label" : "pass_with_user",
"type" : "bool"
},
"wipe_backend_request" : {
"label" : "wipe_backend_request",
"type" : "bool"
},
"validate" : {
"label" : "validate",
"type" : "bool"
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"none_meta_keys_in" : {
"label" : "none_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_keys_in" : {
"label" : "all_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_in" : {
"label" : "all_meta_in",
"type" : "object"
},
"none_meta_in" : {
"label" : "none_meta_in",
"type" : "object"
},
"one_tag_in" : {
"label" : "one_tag_in",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"one_meta_in" : {
"label" : "one_meta_in",
"type" : "object"
},
"all_tags_in" : {
"label" : "all_tags_in",
"type" : "array",
"array" : true,
"format" : null
},
"one_meta_key_in" : {
"label" : "one_meta_key_in",
"type" : "array",
"array" : true,
"format" : null
},
"none_tag_in" : {
"label" : "none_tag_in",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "none_meta_keys_in", "all_meta_keys_in", "all_meta_in", "none_meta_in", "one_tag_in", "enabled", "one_meta_in", "all_tags_in", "one_meta_key_in", "none_tag_in" ]
},
"update_quotas" : {
"label" : "update_quotas",
"type" : "bool"
}
},
"flow" : [ "mandatory", "extractors", "pass_with_user", "wipe_backend_request", "validate", "routing", "update_quotas" ]
}
},
"flow" : [ "private_patterns", "public_patterns", "config" ]
},
"otoroshi.next.plugins.MockFormData" : {
"schema" : {
"resources" : {
"label" : "resources",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"schema" : {
"label" : "schema",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"field_name" : {
"label" : "field_name",
"type" : "string"
},
"field_type" : {
"label" : "field_type",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
}
},
"flow" : [ "field_name", "field_type", "value" ]
},
"additional_data" : {
"label" : "additional_data",
"type" : "string"
}
},
"flow" : [ "name", "schema", "additional_data" ]
},
"endpoints" : {
"label" : "endpoints",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"path" : {
"label" : "path",
"type" : "string"
},
"resource" : {
"label" : "resource",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
},
"resource_list" : {
"label" : "resource_list",
"type" : "bool"
}
},
"flow" : [ "status", "body", "path", "resource", "headers", "method", "resource_list" ]
}
},
"flow" : [ "endpoints", "resources" ]
},
"otoroshi.plugins.biscuit.BiscuitHelper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.AdditionalHeadersOut" : {
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers" ]
},
"otoroshi.models.Tenant" : {
"schema" : {
"description" : {
"label" : "description",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"name" : {
"label" : "name",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "id", "tags", "name", "metadata", "description" ]
},
"ScriptsList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.geoloc.IpStackGeolocationHelper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgHeaderValuesConfig" : {
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers" ]
},
"otoroshi.next.plugins.BasicAuthCallerConfig" : {
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"header_value_format" : {
"label" : "header_value_format",
"type" : "string"
}
},
"flow" : [ "header_value_format", "header_name", "password", "username" ]
},
"otoroshi.events.KafkaConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendEvents" : {
"label" : "sendEvents",
"type" : "bool"
},
"truststore" : {
"label" : "truststore",
"type" : "string"
},
"hostValidation" : {
"label" : "hostValidation",
"type" : "bool"
},
"servers" : {
"label" : "servers",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"securityProtocol" : {
"label" : "securityProtocol",
"type" : "string"
},
"keystore" : {
"label" : "keystore",
"type" : "string"
},
"topic" : {
"label" : "topic",
"type" : "string"
},
"keyPass" : {
"label" : "keyPass",
"type" : "string"
},
"saslConfig" : {
"label" : "saslConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"mechanism" : {
"label" : "mechanism",
"type" : "string"
}
},
"flow" : [ "username", "password", "mechanism" ]
}
},
"flow" : [ "keyPass", "topic", "keystore", "securityProtocol", "servers", "hostValidation", "truststore", "sendEvents", "type", "mtlsConfig", "saslConfig" ]
},
"otoroshi.models.GoReplayS3Settings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"s3" : {
"label" : "s3",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"writeEvery" : {
"label" : "writeEvery",
"type" : "number"
},
"chunkSize" : {
"label" : "chunkSize",
"type" : "number"
},
"bucket" : {
"label" : "bucket",
"type" : "string"
},
"key" : {
"label" : "key",
"type" : "string"
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"v4auth" : {
"label" : "v4auth",
"type" : "bool"
},
"access" : {
"label" : "access",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
}
},
"flow" : [ "writeEvery", "chunkSize", "bucket", "key", "endpoint", "v4auth", "access", "secret", "region" ]
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"captureResponses" : {
"label" : "captureResponses",
"type" : "bool"
},
"preferBackendResponse" : {
"label" : "preferBackendResponse",
"type" : "bool"
},
"maxFileSize" : {
"label" : "maxFileSize",
"type" : "number"
},
"captureRequests" : {
"label" : "captureRequests",
"type" : "bool"
},
"preferBackendRequest" : {
"label" : "preferBackendRequest",
"type" : "bool"
}
},
"flow" : [ "preferBackendRequest", "captureRequests", "maxFileSize", "preferBackendResponse", "captureResponses", "methods", "type", "s3" ]
},
"otoroshi.next.plugins.TailscaleLocalApiClient" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.GlobalConfig" : {
"schema" : {
"geolocationSettings" : {
"label" : "geolocationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "none" ]
}
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "type", "enabled", "apikey", "timeout", "path" ]
},
"alertsEmails" : {
"label" : "alertsEmails",
"type" : "array",
"array" : true,
"format" : null
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"anonymousReporting" : {
"label" : "anonymousReporting",
"type" : "bool"
},
"maxWebhookSize" : {
"label" : "maxWebhookSize",
"type" : "number"
},
"env" : {
"label" : "env",
"type" : "object"
},
"maxConcurrentRequests" : {
"label" : "maxConcurrentRequests",
"type" : "number"
},
"cleverSettings" : {
"label" : "cleverSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"consumerSecret" : {
"label" : "consumerSecret",
"type" : "string"
},
"consumerKey" : {
"label" : "consumerKey",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "string"
},
"orgaId" : {
"label" : "orgaId",
"type" : "string"
}
},
"flow" : [ "consumerSecret", "consumerKey", "secret", "token", "orgaId" ]
},
"templates" : {
"label" : "templates",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"team" : {
"label" : "team",
"type" : "string"
},
"script" : {
"label" : "script",
"type" : "string"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"group" : {
"label" : "group",
"type" : "string"
},
"tcpService" : {
"label" : "tcpService",
"type" : "string"
},
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"service" : {
"label" : "service",
"type" : "string"
},
"target" : {
"label" : "target",
"type" : "string"
},
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"dataExporter" : {
"label" : "dataExporter",
"type" : "string"
},
"route" : {
"label" : "route",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "string"
},
"template" : {
"label" : "template",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"authConfig" : {
"label" : "authConfig",
"type" : "string"
},
"descriptor" : {
"label" : "descriptor",
"type" : "string"
}
},
"flow" : [ "team", "script", "apikey", "group", "tcpService", "verifier", "service", "target", "certificate", "dataExporter", "route", "backend", "template", "tenant", "authConfig", "descriptor" ]
},
"endlessIpAddresses" : {
"label" : "endlessIpAddresses",
"type" : "array",
"array" : true,
"format" : null
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"kafkaConfig" : {
"label" : "kafkaConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendEvents" : {
"label" : "sendEvents",
"type" : "bool"
},
"truststore" : {
"label" : "truststore",
"type" : "string"
},
"hostValidation" : {
"label" : "hostValidation",
"type" : "bool"
},
"servers" : {
"label" : "servers",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"securityProtocol" : {
"label" : "securityProtocol",
"type" : "string"
},
"keystore" : {
"label" : "keystore",
"type" : "string"
},
"topic" : {
"label" : "topic",
"type" : "string"
},
"keyPass" : {
"label" : "keyPass",
"type" : "string"
},
"saslConfig" : {
"label" : "saslConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"mechanism" : {
"label" : "mechanism",
"type" : "string"
}
},
"flow" : [ "username", "password", "mechanism" ]
}
},
"flow" : [ "type", "sendEvents", "truststore", "hostValidation", "servers", "mtlsConfig", "securityProtocol", "keystore", "topic", "keyPass", "saslConfig" ]
},
"maxLogsSize" : {
"label" : "maxLogsSize",
"type" : "number"
},
"proxies" : {
"label" : "proxies",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"elastic" : {
"label" : "elastic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"eventsWebhooks" : {
"label" : "eventsWebhooks",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"jwk" : {
"label" : "jwk",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"auth" : {
"label" : "auth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"clevercloud" : {
"label" : "clevercloud",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"alertEmails" : {
"label" : "alertEmails",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"authority" : {
"label" : "authority",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"services" : {
"label" : "services",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
}
},
"flow" : [ "elastic", "eventsWebhooks", "jwk", "auth", "clevercloud", "alertEmails", "authority", "services" ]
},
"enableEmbeddedMetrics" : {
"label" : "enableEmbeddedMetrics",
"type" : "bool"
},
"elasticReadsConfig" : {
"label" : "elasticReadsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "type", "sendWorkers", "applyTemplate", "uris", "mtlsConfig", "version", "maxBulkSize", "headers", "indexSettings", "user", "index", "password" ]
},
"trustXForwarded" : {
"label" : "trustXForwarded",
"type" : "bool"
},
"quotasSettings" : {
"label" : "quotasSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"dailyQuotasThreshold" : {
"label" : "dailyQuotasThreshold",
"type" : "number"
},
"monthlyQuotasThreshold" : {
"label" : "monthlyQuotasThreshold",
"type" : "number"
}
},
"flow" : [ "enabled", "dailyQuotasThreshold", "monthlyQuotasThreshold" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"limitConcurrentRequests" : {
"label" : "limitConcurrentRequests",
"type" : "bool"
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"elasticWritesConfigs" : {
"label" : "elasticWritesConfigs",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "type", "sendWorkers", "applyTemplate", "uris", "mtlsConfig", "version", "maxBulkSize", "indexSettings", "user", "index", "password", "headers" ]
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"apiReadOnly" : {
"label" : "apiReadOnly",
"type" : "bool"
},
"backOfficeAuthRef" : {
"label" : "backOfficeAuthRef",
"type" : "string"
},
"streamEntityOnly" : {
"label" : "streamEntityOnly",
"type" : "bool"
},
"otoroshiId" : {
"label" : "otoroshiId",
"type" : "string"
},
"mailerSettings" : {
"label" : "mailerSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
},
"eu" : {
"label" : "eu",
"type" : "bool"
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"apiKeyPublic" : {
"label" : "apiKeyPublic",
"type" : "string"
},
"apiKeyPrivate" : {
"label" : "apiKeyPrivate",
"type" : "string"
}
},
"flow" : [ "type", "url", "headers", "to", "eu", "apiKey", "domain", "apiKeyPublic", "apiKeyPrivate" ]
},
"lines" : {
"label" : "lines",
"type" : "array",
"array" : true,
"format" : null
},
"extensions" : {
"label" : "extensions",
"type" : "object"
},
"middleFingers" : {
"label" : "middleFingers",
"type" : "bool"
},
"analyticsWebhooks" : {
"label" : "analyticsWebhooks",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "type", "url", "mtlsConfig", "headers" ]
},
"autoCert" : {
"label" : "autoCert",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"replyNicely" : {
"label" : "replyNicely",
"type" : "bool"
},
"notAllowed" : {
"label" : "notAllowed",
"type" : "array",
"array" : true,
"format" : null
},
"caRef" : {
"label" : "caRef",
"type" : "string"
}
},
"flow" : [ "allowed", "enabled", "replyNicely", "notAllowed", "caRef" ]
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"initWithNewEngine" : {
"label" : "initWithNewEngine",
"type" : "bool"
},
"letsEncryptSettings" : {
"label" : "letsEncryptSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"contacts" : {
"label" : "contacts",
"type" : "array",
"array" : true,
"format" : null
},
"emails" : {
"label" : "emails",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"server" : {
"label" : "server",
"type" : "string"
}
},
"flow" : [ "privateKey", "contacts", "emails", "enabled", "publicKey", "server" ]
},
"snowMonkeyConfig" : {
"label" : "snowMonkeyConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"dryRun" : {
"label" : "dryRun",
"type" : "bool"
},
"outageDurationTo" : {
"label" : "outageDurationTo",
"type" : "number"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"timesPerDay" : {
"label" : "timesPerDay",
"type" : "number"
},
"outageDurationFrom" : {
"label" : "outageDurationFrom",
"type" : "number"
},
"startTime" : {
"label" : "startTime",
"type" : "string"
},
"includeUserFacingDescriptors" : {
"label" : "includeUserFacingDescriptors",
"type" : "bool"
},
"targetGroups" : {
"label" : "targetGroups",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"stopTime" : {
"label" : "stopTime",
"type" : "string"
},
"outageStrategy" : {
"type" : "select",
"props" : {
"label" : "outageStrategy",
"options" : [ "AllServicesPerGroup", "OneServicePerGroup" ]
}
}
},
"flow" : [ "dryRun", "outageDurationTo", "chaosConfig", "timesPerDay", "outageDurationFrom", "startTime", "includeUserFacingDescriptors", "targetGroups", "enabled", "stopTime", "outageStrategy" ]
},
"scripts" : {
"label" : "scripts",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"jobConfig" : {
"label" : "jobConfig",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"transformersConfig" : {
"label" : "transformersConfig",
"type" : "object"
},
"transformersRefs" : {
"label" : "transformersRefs",
"type" : "array",
"array" : true,
"format" : null
},
"preRouteRefs" : {
"label" : "preRouteRefs",
"type" : "array",
"array" : true,
"format" : null
},
"sinkConfig" : {
"label" : "sinkConfig",
"type" : "object"
},
"jobRefs" : {
"label" : "jobRefs",
"type" : "array",
"array" : true,
"format" : null
},
"validatorRefs" : {
"label" : "validatorRefs",
"type" : "array",
"array" : true,
"format" : null
},
"sinkRefs" : {
"label" : "sinkRefs",
"type" : "array",
"array" : true,
"format" : null
},
"preRouteConfig" : {
"label" : "preRouteConfig",
"type" : "object"
},
"validatorConfig" : {
"label" : "validatorConfig",
"type" : "object"
}
},
"flow" : [ "jobConfig", "enabled", "transformersConfig", "transformersRefs", "preRouteRefs", "sinkConfig", "jobRefs", "validatorRefs", "sinkRefs", "preRouteConfig", "validatorConfig" ]
},
"perIpThrottlingQuota" : {
"label" : "perIpThrottlingQuota",
"type" : "number"
},
"useCircuitBreakers" : {
"label" : "useCircuitBreakers",
"type" : "bool"
},
"maxHttp10ResponseSize" : {
"label" : "maxHttp10ResponseSize",
"type" : "number"
},
"tlsSettings" : {
"label" : "tlsSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"trustedCAsServer" : {
"label" : "trustedCAsServer",
"type" : "array",
"array" : true,
"format" : null
},
"includeJdkCaClient" : {
"label" : "includeJdkCaClient",
"type" : "bool"
},
"randomIfNotFound" : {
"label" : "randomIfNotFound",
"type" : "bool"
},
"defaultDomain" : {
"label" : "defaultDomain",
"type" : "string"
},
"includeJdkCaServer" : {
"label" : "includeJdkCaServer",
"type" : "bool"
}
},
"flow" : [ "trustedCAsServer", "includeJdkCaClient", "randomIfNotFound", "defaultDomain", "includeJdkCaServer" ]
},
"statsdConfig" : {
"label" : "statsdConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"datadog" : {
"label" : "datadog",
"type" : "bool"
},
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
}
},
"flow" : [ "datadog", "host", "port" ]
},
"autoLinkToDefaultGroup" : {
"label" : "autoLinkToDefaultGroup",
"type" : "bool"
},
"alertsWebhooks" : {
"label" : "alertsWebhooks",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "type", "url", "mtlsConfig", "headers" ]
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"u2fLoginOnly" : {
"label" : "u2fLoginOnly",
"type" : "bool"
},
"userAgentSettings" : {
"label" : "userAgentSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled" ]
}
},
"flow" : [ "u2fLoginOnly", "alertsWebhooks", "autoLinkToDefaultGroup", "maxHttp10ResponseSize", "useCircuitBreakers", "perIpThrottlingQuota", "initWithNewEngine", "maintenanceMode", "analyticsWebhooks", "middleFingers", "extensions", "lines", "otoroshiId", "streamEntityOnly", "backOfficeAuthRef", "apiReadOnly", "metadata", "logAnalyticsOnServer", "elasticWritesConfigs", "useAkkaHttpClient", "limitConcurrentRequests", "tags", "trustXForwarded", "enableEmbeddedMetrics", "maxLogsSize", "endlessIpAddresses", "maxConcurrentRequests", "env", "maxWebhookSize", "anonymousReporting", "throttlingQuota", "alertsEmails", "geolocationSettings", "cleverSettings", "templates", "plugins", "kafkaConfig", "proxies", "elasticReadsConfig", "quotasSettings", "mailerSettings", "autoCert", "letsEncryptSettings", "snowMonkeyConfig", "scripts", "tlsSettings", "statsdConfig", "ipFiltering", "userAgentSettings" ]
},
"otoroshi.plugins.users.HasAllowedUsersValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.EntityLocation" : {
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "teams", "tenant" ]
},
"otoroshi.next.plugins.StaticResponse" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "body", "headers", "status" ]
},
"otoroshi.next.plugins.EurekaApp" : {
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"instances" : {
"label" : "instances",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"hostname" : {
"label" : "hostname",
"type" : "string"
},
"vip_address" : {
"label" : "vip_address",
"type" : "string"
},
"home_page_url" : {
"label" : "home_page_url",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"last_dirty_timestamp" : {
"label" : "last_dirty_timestamp",
"type" : "number"
},
"is_secured" : {
"label" : "is_secured",
"type" : "bool"
},
"ip_addr" : {
"label" : "ip_addr",
"type" : "string"
},
"last_updated_timestamp" : {
"label" : "last_updated_timestamp",
"type" : "number"
},
"app" : {
"label" : "app",
"type" : "string"
},
"overridden_status" : {
"label" : "overridden_status",
"type" : "string"
},
"status_page_url" : {
"label" : "status_page_url",
"type" : "string"
},
"is_coordinating_discovery_server" : {
"label" : "is_coordinating_discovery_server",
"type" : "string"
},
"instance_id" : {
"label" : "instance_id",
"type" : "string"
},
"secure_vip_address" : {
"label" : "secure_vip_address",
"type" : "string"
},
"status" : {
"label" : "status",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"secure_port" : {
"label" : "secure_port",
"type" : "number"
},
"health_check_url" : {
"label" : "health_check_url",
"type" : "string"
}
},
"flow" : [ "hostname", "vip_address", "home_page_url", "last_dirty_timestamp", "is_secured", "ip_addr", "last_updated_timestamp", "app", "overridden_status", "status_page_url", "is_coordinating_discovery_server", "instance_id", "secure_vip_address", "status", "port", "secure_port", "health_check_url", "metadata" ]
}
},
"flow" : [ "instances", "name" ]
},
"otoroshi.models.ChaosConfig" : {
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled", "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig" ]
},
"otoroshi.models.ServiceGroupIdentifier" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgUserAgentExtractorConfig" : {
"schema" : {
"log" : {
"label" : "log",
"type" : "bool"
}
},
"flow" : [ "log" ]
},
"otoroshi.next.plugins.NgBadResponse" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "body", "headers", "status" ]
},
"otoroshi.plugins.jobs.kubernetes.FailedCrdParsing" : {
"schema" : {
"crd" : {
"label" : "crd",
"type" : "object"
},
"namespace" : {
"label" : "namespace",
"type" : "string"
},
"pluralName" : {
"label" : "pluralName",
"type" : "string"
},
"error" : {
"label" : "error",
"type" : "string"
},
"customizedSpec" : {
"label" : "customizedSpec",
"type" : "object"
}
},
"flow" : [ "customizedSpec", "error", "pluralName", "namespace", "crd" ]
},
"otoroshi.next.plugins.NgOtoroshiChallengeKeys" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.MockResponseNotFoundException" : {
"schema" : {
"message" : {
"label" : "message",
"type" : "string"
}
},
"flow" : [ "message" ]
},
"otoroshi.next.plugins.GraphlCallException" : {
"schema" : {
"message" : {
"label" : "message",
"type" : "string"
}
},
"flow" : [ "message" ]
},
"otoroshi.utils.JsonPathValidator" : {
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "error", "value", "path" ]
},
"otoroshi.models.MappingSettings" : {
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "remove", "values", "map" ]
},
"otoroshi.plugins.biscuit.BiscuitValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.JQRequestConfig" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"otoroshi.next.models.NgFrontend" : {
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "strip_path", "exact", "methods", "domains", "query", "headers" ]
},
"otoroshi.next.plugins.ApikeyAuthModuleConfig" : {
"schema" : {
"realm" : {
"label" : "realm",
"type" : "string"
},
"matcher" : {
"label" : "matcher",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
}
},
"flow" : [ "realm", "matcher" ]
},
"OutagesList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.authcallers.BasicAuthCallerConfig" : {
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"headerValueFormat" : {
"label" : "headerValueFormat",
"type" : "string"
}
},
"flow" : [ "headerValueFormat", "headerName", "password", "username" ]
},
"WebAuthnRegistrationStartBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.useragent.UserAgentHelper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.utils.mailer.ConsoleMailerSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
}
},
"flow" : [ "type" ]
},
"otoroshi.plugins.log4j.Log4ShellFilter" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.env.Env" : {
"schema" : {
"circuitBeakersHolder" : {
"label" : "circuitBeakersHolder",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "circuitBeakersHolder" ]
},
"otoroshi.next.plugins.NgJwtVerificationConfig" : {
"schema" : {
"verifiers" : {
"label" : "verifiers",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "verifiers" ]
},
"otoroshi.greenscore.TripleBounds" : {
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "poor", "sufficient", "excellent" ]
},
"otoroshi.next.plugins.RBAC" : {
"schema" : {
"roles" : {
"label" : "roles",
"type" : "string"
},
"allow" : {
"label" : "allow",
"type" : "array",
"array" : true,
"format" : null
},
"allow_all" : {
"label" : "allow_all",
"type" : "bool"
},
"role_prefix" : {
"label" : "role_prefix",
"type" : "string"
},
"jwt_path" : {
"label" : "jwt_path",
"type" : "string"
},
"apikey_path" : {
"label" : "apikey_path",
"type" : "string"
},
"deny" : {
"label" : "deny",
"type" : "array",
"array" : true,
"format" : null
},
"user_path" : {
"label" : "user_path",
"type" : "string"
},
"deny_all" : {
"label" : "deny_all",
"type" : "bool"
}
},
"flow" : [ "deny_all", "user_path", "deny", "apikey_path", "jwt_path", "role_prefix", "allow_all", "allow", "roles" ]
},
"otoroshi.next.plugins.NgUserAgentInfoEndpoint" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.StoredNgBackend" : {
"schema" : {
"description" : {
"label" : "description",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
},
"name" : {
"label" : "name",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "id", "name", "metadata", "tags", "description", "backend", "_loc" ]
},
"otoroshi.plugins.quotas.InstanceQuotas" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.Http3Switch" : {
"schema" : {
"ma" : {
"label" : "ma",
"type" : "number"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"protocols" : {
"label" : "protocols",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "protocols", "domain", "ma" ]
},
"otoroshi.next.plugins.WasmException" : {
"schema" : {
"message" : {
"label" : "message",
"type" : "string"
}
},
"flow" : [ "message" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesIngressToDescriptor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgGeolocationInfoEndpoint" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgHasClientCertMatchingApikeyValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgBiscuitExtractor" : {
"schema" : {
"legacy" : {
"label" : "legacy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"facts" : {
"label" : "facts",
"type" : "array",
"array" : true,
"format" : null
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"resources" : {
"label" : "resources",
"type" : "array",
"array" : true,
"format" : null
},
"enforce" : {
"label" : "enforce",
"type" : "bool"
},
"extractorName" : {
"label" : "extractorName",
"type" : "string"
},
"checks" : {
"label" : "checks",
"type" : "array",
"array" : true,
"format" : null
},
"extractor" : {
"label" : "extractor",
"type" : "string"
},
"revocation_ids" : {
"label" : "revocation_ids",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "facts", "publicKey", "resources", "enforce", "extractorName", "checks", "extractor", "revocation_ids", "rules" ]
}
},
"flow" : [ "legacy" ]
},
"otoroshi.models.OutageStrategy" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.events.StatsdConfig" : {
"schema" : {
"datadog" : {
"label" : "datadog",
"type" : "bool"
},
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
}
},
"flow" : [ "port", "host", "datadog" ]
},
"otoroshi.next.plugins.MockResource" : {
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"schema" : {
"label" : "schema",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"field_name" : {
"label" : "field_name",
"type" : "string"
},
"field_type" : {
"label" : "field_type",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
}
},
"flow" : [ "field_name", "field_type", "value" ]
},
"additional_data" : {
"label" : "additional_data",
"type" : "string"
}
},
"flow" : [ "additional_data", "schema", "name" ]
},
"otoroshi.next.plugins.GlobalPerIpAddressThrottlingQuotas" : {
"schema" : {
"within" : {
"label" : "within",
"type" : "bool"
},
"sec_calls" : {
"label" : "sec_calls",
"type" : "number"
}
},
"flow" : [ "sec_calls", "within" ]
},
"otoroshi.next.plugins.StaticResponseConfig" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "body", "headers", "status" ]
},
"otoroshi.utils.mailer.GenericMailerSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
}
},
"flow" : [ "to", "headers", "url", "type" ]
},
"otoroshi.models.QuotasAlmostExceededSettings" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"dailyQuotasThreshold" : {
"label" : "dailyQuotasThreshold",
"type" : "number"
},
"monthlyQuotasThreshold" : {
"label" : "monthlyQuotasThreshold",
"type" : "number"
}
},
"flow" : [ "monthlyQuotasThreshold", "dailyQuotasThreshold", "enabled" ]
},
"otoroshi.next.plugins.Http3SwitchConfig" : {
"schema" : {
"ma" : {
"label" : "ma",
"type" : "number"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"protocols" : {
"label" : "protocols",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "protocols", "domain", "ma" ]
},
"otoroshi.models.ESKPAlgoSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"certId" : {
"label" : "certId",
"type" : "string"
}
},
"flow" : [ "certId", "size", "type" ]
},
"otoroshi.next.plugins.NgClientCredentialsConfig" : {
"schema" : {
"default_key_pair" : {
"label" : "default_key_pair",
"type" : "string"
},
"expiration" : {
"label" : "expiration",
"type" : "number"
},
"secure" : {
"label" : "secure",
"type" : "bool"
},
"biscuit" : {
"label" : "biscuit",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"privkey" : {
"label" : "privkey",
"type" : "string"
},
"checks" : {
"label" : "checks",
"type" : "array",
"array" : true,
"format" : null
},
"facts" : {
"label" : "facts",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "privkey", "checks", "facts", "rules" ]
},
"domain" : {
"label" : "domain",
"type" : "string"
}
},
"flow" : [ "domain", "secure", "expiration", "default_key_pair", "biscuit" ]
},
"otoroshi.plugins.biscuit.vavr_implicits" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesClient" : {
"schema" : {
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"templates" : {
"label" : "templates",
"type" : "object"
},
"token" : {
"label" : "token",
"type" : "string"
},
"restartDependantDeployments" : {
"label" : "restartDependantDeployments",
"type" : "bool"
},
"watchGracePeriodSeconds" : {
"label" : "watchGracePeriodSeconds",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"crds" : {
"label" : "crds",
"type" : "bool"
},
"watch" : {
"label" : "watch",
"type" : "bool"
},
"labels" : {
"label" : "labels",
"type" : "object"
},
"openshiftDnsOperatorCoreDnsName" : {
"label" : "openshiftDnsOperatorCoreDnsName",
"type" : "string"
},
"syncIntervalSeconds" : {
"label" : "syncIntervalSeconds",
"type" : "number"
},
"kubeDnsOperatorCoreDnsName" : {
"label" : "kubeDnsOperatorCoreDnsName",
"type" : "string"
},
"defaultGroup" : {
"label" : "defaultGroup",
"type" : "string"
},
"kubeDnsOperatorCoreDnsNamespace" : {
"label" : "kubeDnsOperatorCoreDnsNamespace",
"type" : "string"
},
"triggerKey" : {
"label" : "triggerKey",
"type" : "string"
},
"otoroshiNamespace" : {
"label" : "otoroshiNamespace",
"type" : "string"
},
"watchTimeoutSeconds" : {
"label" : "watchTimeoutSeconds",
"type" : "number"
},
"openshiftDnsOperatorCleanupDomains" : {
"label" : "openshiftDnsOperatorCleanupDomains",
"type" : "array",
"array" : true,
"format" : null
},
"namespaces" : {
"label" : "namespaces",
"type" : "array",
"array" : true,
"format" : null
},
"openshiftDnsOperatorCoreDnsPort" : {
"label" : "openshiftDnsOperatorCoreDnsPort",
"type" : "number"
},
"coreDnsEnv" : {
"label" : "coreDnsEnv",
"type" : "string"
},
"triggerPath" : {
"label" : "triggerPath",
"type" : "string"
},
"image" : {
"label" : "image",
"type" : "string"
},
"coreDnsConfigMapName" : {
"label" : "coreDnsConfigMapName",
"type" : "string"
},
"clusterDomain" : {
"label" : "clusterDomain",
"type" : "string"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"caCert" : {
"label" : "caCert",
"type" : "string"
},
"trust" : {
"label" : "trust",
"type" : "bool"
},
"ingressClasses" : {
"label" : "ingressClasses",
"type" : "array",
"array" : true,
"format" : null
},
"userPassword" : {
"label" : "userPassword",
"type" : "string"
},
"syncDaikokuApikeysOnly" : {
"label" : "syncDaikokuApikeysOnly",
"type" : "bool"
},
"openshiftDnsOperatorCleanup" : {
"label" : "openshiftDnsOperatorCleanup",
"type" : "bool"
},
"kubeSystemNamespace" : {
"label" : "kubeSystemNamespace",
"type" : "string"
},
"ingressEndpointIp" : {
"label" : "ingressEndpointIp",
"type" : "string"
},
"namespacesLabels" : {
"label" : "namespacesLabels",
"type" : "object"
},
"openshiftDnsOperatorCleanupNames" : {
"label" : "openshiftDnsOperatorCleanupNames",
"type" : "array",
"array" : true,
"format" : null
},
"kubeDnsOperatorCoreDnsPort" : {
"label" : "kubeDnsOperatorCoreDnsPort",
"type" : "number"
},
"mutatingWebhookName" : {
"label" : "mutatingWebhookName",
"type" : "string"
},
"kubeLeader" : {
"label" : "kubeLeader",
"type" : "bool"
},
"ingressEndpointHostname" : {
"label" : "ingressEndpointHostname",
"type" : "string"
},
"openshiftDnsOperatorIntegration" : {
"label" : "openshiftDnsOperatorIntegration",
"type" : "bool"
},
"validatingWebhookName" : {
"label" : "validatingWebhookName",
"type" : "string"
},
"coreDnsDeploymentName" : {
"label" : "coreDnsDeploymentName",
"type" : "string"
},
"ingresses" : {
"label" : "ingresses",
"type" : "bool"
},
"useProxyState" : {
"label" : "useProxyState",
"type" : "bool"
},
"coreDnsIntegrationDryRun" : {
"label" : "coreDnsIntegrationDryRun",
"type" : "bool"
},
"ingressEndpointPublishedService" : {
"label" : "ingressEndpointPublishedService",
"type" : "string"
},
"coreDnsAzure" : {
"label" : "coreDnsAzure",
"type" : "bool"
},
"corednsPort" : {
"label" : "corednsPort",
"type" : "number"
},
"coreDnsIntegration" : {
"label" : "coreDnsIntegration",
"type" : "bool"
},
"otoroshiServiceName" : {
"label" : "otoroshiServiceName",
"type" : "string"
},
"meshDomain" : {
"label" : "meshDomain",
"type" : "string"
},
"kubeDnsOperatorIntegration" : {
"label" : "kubeDnsOperatorIntegration",
"type" : "bool"
},
"triggerHost" : {
"label" : "triggerHost",
"type" : "string"
},
"openshiftDnsOperatorCoreDnsNamespace" : {
"label" : "openshiftDnsOperatorCoreDnsNamespace",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
}
},
"flow" : [ "endpoint", "templates", "token", "restartDependantDeployments", "watchGracePeriodSeconds", "connectionTimeout", "crds", "watch", "labels", "openshiftDnsOperatorCoreDnsName", "syncIntervalSeconds", "kubeDnsOperatorCoreDnsName", "defaultGroup", "kubeDnsOperatorCoreDnsNamespace", "triggerKey", "otoroshiNamespace", "watchTimeoutSeconds", "openshiftDnsOperatorCleanupDomains", "namespaces", "openshiftDnsOperatorCoreDnsPort", "coreDnsEnv", "triggerPath", "image", "coreDnsConfigMapName", "clusterDomain", "idleTimeout", "caCert", "trust", "ingressClasses", "userPassword", "syncDaikokuApikeysOnly", "openshiftDnsOperatorCleanup", "kubeSystemNamespace", "ingressEndpointIp", "namespacesLabels", "openshiftDnsOperatorCleanupNames", "kubeDnsOperatorCoreDnsPort", "mutatingWebhookName", "kubeLeader", "ingressEndpointHostname", "openshiftDnsOperatorIntegration", "validatingWebhookName", "coreDnsDeploymentName", "ingresses", "useProxyState", "coreDnsIntegrationDryRun", "ingressEndpointPublishedService", "coreDnsAzure", "corednsPort", "coreDnsIntegration", "otoroshiServiceName", "meshDomain", "kubeDnsOperatorIntegration", "triggerHost", "openshiftDnsOperatorCoreDnsNamespace", "callAndStreamTimeout" ]
},
"env" : {
"label" : "env",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"circuitBeakersHolder" : {
"label" : "circuitBeakersHolder",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "circuitBeakersHolder" ]
}
},
"flow" : [ "config", "env" ]
},
"otoroshi.tcp.SniSettings" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"forwardIfNoMatch" : {
"label" : "forwardIfNoMatch",
"type" : "bool"
},
"forwardsTo" : {
"label" : "forwardsTo",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"ip" : {
"label" : "ip",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tls" : {
"label" : "tls",
"type" : "bool"
}
},
"flow" : [ "host", "ip", "port", "tls" ]
}
},
"flow" : [ "forwardIfNoMatch", "enabled", "forwardsTo" ]
},
"otoroshi.plugins.apikeys.CertificateAsApikey" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.utils.mailer.EmailLocation" : {
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "email", "name" ]
},
"otoroshi.plugins.metrics.PrometheusEndpoint" : {
"schema" : { },
"flow" : [ ]
},
"AlertEventList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.Transform" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
}
},
"flow" : [ "type", "verificationSettings", "transformSettings", "algoSettings" ]
},
"otoroshi.plugins.biscuit.BiscuitToken" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.KidAlgoSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "onlyExposedCerts", "type" ]
},
"otoroshi.models.PassThrough" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
}
},
"flow" : [ "type", "verificationSettings" ]
},
"otoroshi.plugins.security.SecurityTxt" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.LargeResponseFaultConfig" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "additionalResponseSize", "ratio" ]
},
"otoroshi.next.plugins.BrotliResponseCompressor" : {
"schema" : {
"compression_level" : {
"label" : "compression_level",
"type" : "number"
},
"buffer_size" : {
"label" : "buffer_size",
"type" : "number"
},
"chunked_threshold" : {
"label" : "chunked_threshold",
"type" : "number"
},
"excluded_patterns" : {
"label" : "excluded_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"white_list" : {
"label" : "white_list",
"type" : "array",
"array" : true,
"format" : null
},
"black_list" : {
"label" : "black_list",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "black_list", "white_list", "excluded_patterns", "chunked_threshold", "buffer_size", "compression_level" ]
},
"otoroshi.models.RegionMatch" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"region" : {
"label" : "region",
"type" : "string"
}
},
"flow" : [ "region", "type" ]
},
"otoroshi.next.plugins.WasmJob" : {
"schema" : {
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"unique_id" : {
"label" : "unique_id",
"type" : "string"
},
"instantiation" : {
"label" : "instantiation",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"cron_expression" : {
"label" : "cron_expression",
"type" : "string"
},
"kind" : {
"label" : "kind",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "allowedHosts", "memoryPages", "allowedPaths", "instances", "config", "authorizations", "opa", "wasi", "functionName" ]
},
"interval" : {
"label" : "interval",
"type" : "string"
},
"initial_delay" : {
"label" : "initial_delay",
"type" : "string"
},
"raw_config" : {
"label" : "raw_config",
"type" : "object"
}
},
"flow" : [ "unique_id", "instantiation", "cron_expression", "kind", "config", "interval", "initial_delay", "raw_config" ]
}
},
"flow" : [ "config" ]
},
"otoroshi.models.AutoCert" : {
"schema" : {
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"replyNicely" : {
"label" : "replyNicely",
"type" : "bool"
},
"notAllowed" : {
"label" : "notAllowed",
"type" : "array",
"array" : true,
"format" : null
},
"caRef" : {
"label" : "caRef",
"type" : "string"
}
},
"flow" : [ "caRef", "notAllowed", "replyNicely", "enabled", "allowed" ]
},
"otoroshi.plugins.discovery.DiscoveryHelper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.SOAPActionConfig" : {
"schema" : {
"jq_response_filter" : {
"label" : "jq_response_filter",
"type" : "string"
},
"jq_request_filter" : {
"label" : "jq_request_filter",
"type" : "string"
},
"preserve_query" : {
"label" : "preserve_query",
"type" : "bool"
},
"convert_request_body_to_xml" : {
"label" : "convert_request_body_to_xml",
"type" : "bool"
},
"charset" : {
"label" : "charset",
"type" : "string"
},
"url" : {
"label" : "url",
"type" : "string"
},
"action" : {
"label" : "action",
"type" : "string"
},
"envelope" : {
"label" : "envelope",
"type" : "string"
}
},
"flow" : [ "envelope", "action", "url", "charset", "convert_request_body_to_xml", "preserve_query", "jq_request_filter", "jq_response_filter" ]
},
"otoroshi.next.plugins.OAuth1Caller" : {
"schema" : {
"token_secret" : {
"label" : "token_secret",
"type" : "string"
},
"consumer_secret" : {
"label" : "consumer_secret",
"type" : "string"
},
"algo" : {
"label" : "algo",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "string"
},
"consumer_key" : {
"label" : "consumer_key",
"type" : "string"
}
},
"flow" : [ "consumer_key", "token", "algo", "consumer_secret", "token_secret" ]
},
"otoroshi.next.plugins.EurekaServerConfig" : {
"schema" : {
"eviction_timeout" : {
"label" : "eviction_timeout",
"type" : "number"
}
},
"flow" : [ "eviction_timeout" ]
},
"otoroshi.plugins.hmac.HMACValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.SubIss" : {
"schema" : {
"sn" : {
"label" : "sn",
"type" : "string"
},
"subject" : {
"label" : "subject",
"type" : "string"
},
"issuer" : {
"label" : "issuer",
"type" : "string"
}
},
"flow" : [ "issuer", "subject", "sn" ]
},
"otoroshi.models.DataExporterConfig" : {
"schema" : {
"desc" : {
"label" : "desc",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"jsonWorkers" : {
"label" : "jsonWorkers",
"type" : "number"
},
"groupDuration" : {
"label" : "groupDuration",
"type" : "number"
},
"groupSize" : {
"label" : "groupSize",
"type" : "number"
},
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "kafka", "pulsar", "elastic", "webhook", "file", "mailer", "custom", "none", "console", "metrics" ]
}
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendEvents" : {
"label" : "sendEvents",
"type" : "bool"
},
"truststore" : {
"label" : "truststore",
"type" : "string"
},
"hostValidation" : {
"label" : "hostValidation",
"type" : "bool"
},
"servers" : {
"label" : "servers",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"securityProtocol" : {
"label" : "securityProtocol",
"type" : "string"
},
"keystore" : {
"label" : "keystore",
"type" : "string"
},
"topic" : {
"label" : "topic",
"type" : "string"
},
"keyPass" : {
"label" : "keyPass",
"type" : "string"
},
"saslConfig" : {
"label" : "saslConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"mechanism" : {
"label" : "mechanism",
"type" : "string"
}
},
"flow" : [ "username", "password", "mechanism" ]
},
"tlsTrustCertsFilePath" : {
"label" : "tlsTrustCertsFilePath",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"uri" : {
"label" : "uri",
"type" : "string"
},
"namespace" : {
"label" : "namespace",
"type" : "string"
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ref" : {
"label" : "ref",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "object"
},
"path" : {
"label" : "path",
"type" : "string"
},
"maxFileSize" : {
"label" : "maxFileSize",
"type" : "number"
},
"labels" : {
"label" : "labels",
"type" : "object"
},
"url" : {
"label" : "url",
"type" : "string"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
},
"eu" : {
"label" : "eu",
"type" : "bool"
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"apiKeyPublic" : {
"label" : "apiKeyPublic",
"type" : "string"
},
"apiKeyPrivate" : {
"label" : "apiKeyPrivate",
"type" : "string"
}
},
"flow" : [ "type", "sendEvents", "truststore", "hostValidation", "servers", "mtlsConfig", "securityProtocol", "keystore", "topic", "keyPass", "saslConfig", "tlsTrustCertsFilePath", "tenant", "uri", "namespace", "sendWorkers", "applyTemplate", "uris", "version", "maxBulkSize", "headers", "indexSettings", "user", "index", "password", "ref", "config", "path", "maxFileSize", "labels", "url", "to", "eu", "apiKey", "domain", "apiKeyPublic", "apiKeyPrivate" ]
},
"projection" : {
"label" : "projection",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"filtering" : {
"label" : "filtering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"include" : {
"label" : "include",
"type" : "array",
"array" : true,
"format" : "form"
},
"exclude" : {
"label" : "exclude",
"type" : "array",
"array" : true,
"format" : "form"
}
},
"flow" : [ "include", "exclude" ]
}
},
"flow" : [ "enabled", "projection", "metadata", "name", "id", "sendWorkers", "tags", "type", "groupSize", "groupDuration", "jsonWorkers", "bufferSize", "desc", "_loc", "config", "filtering" ]
},
"otoroshi.plugins.jobs.kubernetes.OtoroshiToKubernetesCertSyncJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.OIDCHeadersConfig" : {
"schema" : {
"profile" : {
"label" : "profile",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "send", "header_name" ]
},
"idtoken" : {
"label" : "idtoken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"jwt" : {
"label" : "jwt",
"type" : "bool"
}
},
"flow" : [ "send", "name", "header_name", "jwt" ]
},
"access_token" : {
"label" : "access_token",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"jwt" : {
"label" : "jwt",
"type" : "bool"
}
},
"flow" : [ "send", "name", "header_name", "jwt" ]
}
},
"flow" : [ "profile", "idtoken", "access_token" ]
},
"otoroshi.plugins.biscuit.SealedBiscuitToken" : {
"schema" : {
"token" : {
"label" : "token",
"type" : "string"
}
},
"flow" : [ "token" ]
},
"otoroshi.models.IndexSettings" : {
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "numberOfReplicas", "numberOfShards", "clientSide", "interval" ]
},
"otoroshi.next.plugins.wrappers.RequestSinkWrapper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.ApikeyCalls" : {
"schema" : {
"mandatory" : {
"label" : "mandatory",
"type" : "bool"
},
"extractors" : {
"label" : "extractors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"basic" : {
"label" : "basic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
}
},
"flow" : [ "enabled", "header_name", "query_name" ]
},
"custom_headers" : {
"label" : "custom_headers",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"client_id_header_name" : {
"label" : "client_id_header_name",
"type" : "string"
},
"client_secret_header_name" : {
"label" : "client_secret_header_name",
"type" : "string"
}
},
"flow" : [ "enabled", "client_id_header_name", "client_secret_header_name" ]
},
"client_id" : {
"label" : "client_id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "header_name", "query_name", "enabled" ]
},
"jwt" : {
"label" : "jwt",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"cookie_name" : {
"label" : "cookie_name",
"type" : "string"
},
"key_pair_signed" : {
"label" : "key_pair_signed",
"type" : "bool"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"secret_signed" : {
"label" : "secret_signed",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"include_request_attrs" : {
"label" : "include_request_attrs",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "cookie_name", "key_pair_signed", "query_name", "secret_signed", "enabled", "include_request_attrs", "header_name" ]
}
},
"flow" : [ "basic", "custom_headers", "client_id", "jwt" ]
},
"pass_with_user" : {
"label" : "pass_with_user",
"type" : "bool"
},
"wipe_backend_request" : {
"label" : "wipe_backend_request",
"type" : "bool"
},
"validate" : {
"label" : "validate",
"type" : "bool"
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"none_meta_keys_in" : {
"label" : "none_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_keys_in" : {
"label" : "all_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_in" : {
"label" : "all_meta_in",
"type" : "object"
},
"none_meta_in" : {
"label" : "none_meta_in",
"type" : "object"
},
"one_tag_in" : {
"label" : "one_tag_in",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"one_meta_in" : {
"label" : "one_meta_in",
"type" : "object"
},
"all_tags_in" : {
"label" : "all_tags_in",
"type" : "array",
"array" : true,
"format" : null
},
"one_meta_key_in" : {
"label" : "one_meta_key_in",
"type" : "array",
"array" : true,
"format" : null
},
"none_tag_in" : {
"label" : "none_tag_in",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "none_meta_keys_in", "all_meta_keys_in", "all_meta_in", "none_meta_in", "one_tag_in", "enabled", "one_meta_in", "all_tags_in", "one_meta_key_in", "none_tag_in" ]
},
"update_quotas" : {
"label" : "update_quotas",
"type" : "bool"
}
},
"flow" : [ "update_quotas", "validate", "wipe_backend_request", "pass_with_user", "mandatory", "extractors", "routing" ]
},
"otoroshi.plugins.oauth1.OAuth1CallerPlugin" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.ESAlgoSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
}
},
"flow" : [ "privateKey", "publicKey", "size", "type" ]
},
"otoroshi.next.plugins.TailscaleTargetsJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgMatchedRoute" : {
"schema" : {
"route" : {
"label" : "route",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"capture" : {
"label" : "capture",
"type" : "bool"
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
}
},
"flow" : [ "debug_flow", "enabled", "name", "id", "export_reporting", "metadata", "frontend", "_loc", "tags", "capture", "groups", "backend_ref", "description", "backend" ]
},
"path" : {
"label" : "path",
"type" : "string"
},
"no_more_segments" : {
"label" : "no_more_segments",
"type" : "bool"
}
},
"flow" : [ "no_more_segments", "path", "route" ]
},
"otoroshi.plugins.izanami.IzanamiCanaryRoutingConfig" : {
"schema" : {
"routes" : {
"label" : "routes",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"variants" : {
"label" : "variants",
"type" : "object"
},
"wildcard" : {
"label" : "wildcard",
"type" : "bool"
},
"default" : {
"label" : "default",
"type" : "string"
},
"regex" : {
"label" : "regex",
"type" : "bool"
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"route" : {
"label" : "route",
"type" : "string"
}
},
"flow" : [ "wildcard", "default", "regex", "exact", "route", "variants" ]
}
},
"flow" : [ "routes" ]
},
"otoroshi.next.models.NgRouteDomainAndPathWrapper" : {
"schema" : {
"route" : {
"label" : "route",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"capture" : {
"label" : "capture",
"type" : "bool"
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
}
},
"flow" : [ "debug_flow", "enabled", "name", "id", "export_reporting", "metadata", "frontend", "_loc", "tags", "capture", "groups", "backend_ref", "description", "backend" ]
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "path", "domain", "route" ]
},
"otoroshi.next.plugins.ReactorResponse" : {
"schema" : {
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "body" ]
},
"otoroshi.plugins.oidc.ThirdPartyApiKeyConfigType" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.OAuth1CallerConfig" : {
"schema" : {
"token_secret" : {
"label" : "token_secret",
"type" : "string"
},
"consumer_secret" : {
"label" : "consumer_secret",
"type" : "string"
},
"algo" : {
"label" : "algo",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "string"
},
"consumer_key" : {
"label" : "consumer_key",
"type" : "string"
}
},
"flow" : [ "consumer_key", "token", "algo", "consumer_secret", "token_secret" ]
},
"otoroshi.plugins.clientcert.ClientCertChainHeader" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.GraphQLProxy" : {
"schema" : {
"max_complexity" : {
"label" : "max_complexity",
"type" : "number"
},
"schema" : {
"label" : "schema",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"max_depth" : {
"label" : "max_depth",
"type" : "number"
}
},
"flow" : [ "max_depth", "endpoint", "headers", "path", "schema", "max_complexity" ]
},
"otoroshi.models.IndexSettingsInterval" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.hmac.HMACCallerPlugin" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.TlsSettings" : {
"schema" : {
"trustedCAsServer" : {
"label" : "trustedCAsServer",
"type" : "array",
"array" : true,
"format" : null
},
"includeJdkCaClient" : {
"label" : "includeJdkCaClient",
"type" : "bool"
},
"randomIfNotFound" : {
"label" : "randomIfNotFound",
"type" : "bool"
},
"defaultDomain" : {
"label" : "defaultDomain",
"type" : "string"
},
"includeJdkCaServer" : {
"label" : "includeJdkCaServer",
"type" : "bool"
}
},
"flow" : [ "includeJdkCaServer", "defaultDomain", "randomIfNotFound", "includeJdkCaClient", "trustedCAsServer" ]
},
"otoroshi.next.plugins.W3CTracing" : {
"schema" : {
"kind" : {
"type" : "select",
"props" : {
"label" : "kind",
"options" : [ "jaeger", "zipkin", "logger", "noop" ]
}
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"baggage" : {
"label" : "baggage",
"type" : "object"
}
},
"flow" : [ "baggage", "timeout", "endpoint", "kind" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesAdmissionWebhookSidecarInjector" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.GroupRights" : {
"schema" : {
"userRights" : {
"label" : "userRights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"users" : {
"label" : "users",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "users", "userRights" ]
},
"otoroshi.plugins.mirror.MirroringPluginConfig" : {
"schema" : {
"conf" : {
"label" : "conf",
"type" : "object"
}
},
"flow" : [ "conf" ]
},
"otoroshi.next.plugins.NgServiceQuotasConfig" : {
"schema" : {
"throttling_quota" : {
"label" : "throttling_quota",
"type" : "number"
},
"daily_quota" : {
"label" : "daily_quota",
"type" : "number"
},
"monthly_quota" : {
"label" : "monthly_quota",
"type" : "number"
}
},
"flow" : [ "monthly_quota", "daily_quota", "throttling_quota" ]
},
"otoroshi.next.plugins.QueryTransformer" : {
"schema" : {
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
},
"rename" : {
"label" : "rename",
"type" : "object"
}
},
"flow" : [ "rename", "remove" ]
},
"otoroshi.next.models.NgRoute" : {
"schema" : {
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"capture" : {
"label" : "capture",
"type" : "bool"
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
}
},
"flow" : [ "description", "backend_ref", "groups", "capture", "tags", "metadata", "export_reporting", "id", "name", "enabled", "debug_flow", "frontend", "_loc", "backend" ]
},
"otoroshi.next.plugins.NgMultiAuthModuleConfig" : {
"schema" : {
"modules" : {
"label" : "modules",
"type" : "array",
"array" : true,
"format" : null
},
"pass_with_apikey" : {
"label" : "pass_with_apikey",
"type" : "bool"
},
"use_email_prompt" : {
"label" : "use_email_prompt",
"type" : "bool"
},
"users_groups" : {
"label" : "users_groups",
"type" : "object"
}
},
"flow" : [ "users_groups", "use_email_prompt", "pass_with_apikey", "modules" ]
},
"otoroshi.next.plugins.NgSecurityTxtConfig" : {
"schema" : {
"preferred_languages" : {
"label" : "preferred_languages",
"type" : "string"
},
"encryption" : {
"label" : "encryption",
"type" : "string"
},
"policy" : {
"label" : "policy",
"type" : "string"
},
"acknowledgments" : {
"label" : "acknowledgments",
"type" : "string"
},
"hiring" : {
"label" : "hiring",
"type" : "string"
},
"contact" : {
"label" : "contact",
"type" : "string"
}
},
"flow" : [ "contact", "hiring", "acknowledgments", "policy", "encryption", "preferred_languages" ]
},
"otoroshi.next.plugins.NgJwtUserExtractor" : {
"schema" : {
"meta_path" : {
"label" : "meta_path",
"type" : "string"
},
"strip" : {
"label" : "strip",
"type" : "bool"
},
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"email_path" : {
"label" : "email_path",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"name_path" : {
"label" : "name_path",
"type" : "string"
}
},
"flow" : [ "name_path", "strict", "email_path", "verifier", "strip", "meta_path" ]
},
"otoroshi.next.plugins.NgApikeyExtractors" : {
"schema" : {
"basic" : {
"label" : "basic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
}
},
"flow" : [ "enabled", "header_name", "query_name" ]
},
"custom_headers" : {
"label" : "custom_headers",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"client_id_header_name" : {
"label" : "client_id_header_name",
"type" : "string"
},
"client_secret_header_name" : {
"label" : "client_secret_header_name",
"type" : "string"
}
},
"flow" : [ "enabled", "client_id_header_name", "client_secret_header_name" ]
},
"client_id" : {
"label" : "client_id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "header_name", "query_name", "enabled" ]
},
"jwt" : {
"label" : "jwt",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"cookie_name" : {
"label" : "cookie_name",
"type" : "string"
},
"key_pair_signed" : {
"label" : "key_pair_signed",
"type" : "bool"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"secret_signed" : {
"label" : "secret_signed",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"include_request_attrs" : {
"label" : "include_request_attrs",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "cookie_name", "key_pair_signed", "query_name", "secret_signed", "enabled", "include_request_attrs", "header_name" ]
}
},
"flow" : [ "basic", "custom_headers", "client_id", "jwt" ]
},
"otoroshi.next.plugins.NgIzanamiV1CanaryConfig" : {
"schema" : {
"client_id" : {
"label" : "client_id",
"type" : "string"
},
"experiment_id" : {
"label" : "experiment_id",
"type" : "string"
},
"route_config" : {
"label" : "route_config",
"type" : "string"
},
"tls" : {
"label" : "tls",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"izanami_url" : {
"label" : "izanami_url",
"type" : "string"
},
"client_secret" : {
"label" : "client_secret",
"type" : "string"
},
"config_id" : {
"label" : "config_id",
"type" : "string"
}
},
"flow" : [ "config_id", "client_secret", "izanami_url", "timeout", "route_config", "experiment_id", "client_id", "tls" ]
},
"PatchBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.Canary" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "root", "targets", "traffic", "enabled" ]
},
"otoroshi.events.HealthCheckEvent" : {
"schema" : {
"error" : {
"label" : "error",
"type" : "string"
},
"health" : {
"label" : "health",
"type" : "string"
},
"logicCheck" : {
"label" : "logicCheck",
"type" : "bool"
},
"status" : {
"label" : "status",
"type" : "number"
},
"url" : {
"label" : "url",
"type" : "string"
},
"duration" : {
"label" : "duration",
"type" : "number"
}
},
"flow" : [ "duration", "url", "status", "logicCheck", "health", "error" ]
},
"otoroshi.plugins.jq.JqBodyTransformer" : {
"schema" : { },
"flow" : [ ]
},
"play.api.libs.ws.DefaultWSProxyServer" : {
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "nonProxyHosts", "encoding", "ntlmDomain", "password", "principal", "protocol", "port", "host" ]
},
"otoroshi.models.MetricsSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"labels" : {
"label" : "labels",
"type" : "object"
}
},
"flow" : [ "labels", "type" ]
},
"otoroshi.tcp.TcpRule" : {
"schema" : {
"domain" : {
"label" : "domain",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"ip" : {
"label" : "ip",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tls" : {
"label" : "tls",
"type" : "bool"
}
},
"flow" : [ "host", "ip", "port", "tls" ]
}
},
"flow" : [ "targets", "domain" ]
},
"otoroshi.next.plugins.ReadOnlyCalls" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgLegacyAuthModuleCall" : {
"schema" : {
"public_patterns" : {
"label" : "public_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"private_patterns" : {
"label" : "private_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"module" : {
"label" : "module",
"type" : "string"
},
"pass_with_apikey" : {
"label" : "pass_with_apikey",
"type" : "bool"
}
},
"flow" : [ "module", "pass_with_apikey" ]
}
},
"flow" : [ "private_patterns", "public_patterns", "config" ]
},
"otoroshi.next.plugins.NoopSpanExporter" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgUserAgentInfoHeaderConfig" : {
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "header_name" ]
},
"otoroshi.next.plugins.TailscaleSelectTargetByName" : {
"schema" : {
"machine_name" : {
"label" : "machine_name",
"type" : "string"
},
"use_ip_address" : {
"label" : "use_ip_address",
"type" : "bool"
}
},
"flow" : [ "use_ip_address", "machine_name" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesCRDsJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.biscuit.AccessValidatorContext" : {
"schema" : {
"ctx" : {
"label" : "ctx",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"attrs" : {
"label" : "attrs",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"config" : {
"label" : "config",
"type" : "object"
},
"descriptor" : {
"label" : "descriptor",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"buildMode" : {
"label" : "buildMode",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"privateApp" : {
"label" : "privateApp",
"type" : "bool"
},
"localScheme" : {
"label" : "localScheme",
"type" : "string"
},
"authConfigRef" : {
"label" : "authConfigRef",
"type" : "string"
},
"issueCertCA" : {
"label" : "issueCertCA",
"type" : "string"
},
"root" : {
"label" : "root",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"additionalHeaders" : {
"label" : "additionalHeaders",
"type" : "object"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"clientConfig" : {
"label" : "clientConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "useCircuitBreaker", "retryInitialDelay", "cacheConnectionSettings", "proxy", "callTimeout", "callAndStreamTimeout", "globalTimeout", "maxErrors", "retries", "backoffFactor", "customTimeouts", "idleTimeout", "sampleInterval" ]
},
"matchingRoot" : {
"label" : "matchingRoot",
"type" : "string"
},
"forceHttps" : {
"label" : "forceHttps",
"type" : "bool"
},
"localHost" : {
"label" : "localHost",
"type" : "string"
},
"sendOtoroshiHeadersBack" : {
"label" : "sendOtoroshiHeadersBack",
"type" : "bool"
},
"healthCheck" : {
"label" : "healthCheck",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"strictlyPrivate" : {
"label" : "strictlyPrivate",
"type" : "bool"
},
"detectApiKeySooner" : {
"label" : "detectApiKeySooner",
"type" : "bool"
},
"allowHttp10" : {
"label" : "allowHttp10",
"type" : "bool"
},
"subdomain" : {
"label" : "subdomain",
"type" : "string"
},
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"stripPath" : {
"label" : "stripPath",
"type" : "bool"
},
"secComAlgoChallengeOtoToBack" : {
"label" : "secComAlgoChallengeOtoToBack",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"apiKeyConstraints" : {
"label" : "apiKeyConstraints",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"env" : {
"label" : "env",
"type" : "string"
},
"xForwardedHeaders" : {
"label" : "xForwardedHeaders",
"type" : "bool"
},
"transformerRefs" : {
"label" : "transformerRefs",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"gzip" : {
"label" : "gzip",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "compressionLevel", "blackList", "chunkedThreshold", "excludedPatterns", "bufferSize", "whiteList", "enabled" ]
},
"sendInfoToken" : {
"label" : "sendInfoToken",
"type" : "bool"
},
"tcpUdpTunneling" : {
"label" : "tcpUdpTunneling",
"type" : "bool"
},
"removeHeadersOut" : {
"label" : "removeHeadersOut",
"type" : "array",
"array" : true,
"format" : null
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"removeHeadersIn" : {
"label" : "removeHeadersIn",
"type" : "array",
"array" : true,
"format" : null
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"secComAlgoInfoToken" : {
"label" : "secComAlgoInfoToken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"userFacing" : {
"label" : "userFacing",
"type" : "bool"
},
"transformerConfig" : {
"label" : "transformerConfig",
"type" : "object"
},
"clientValidatorRef" : {
"label" : "clientValidatorRef",
"type" : "string"
},
"securityExcludedPatterns" : {
"label" : "securityExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"redirection" : {
"label" : "redirection",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "enabled", "code", "to" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"overrideHost" : {
"label" : "overrideHost",
"type" : "bool"
},
"accessValidator" : {
"label" : "accessValidator",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"sendStateChallenge" : {
"label" : "sendStateChallenge",
"type" : "bool"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"secComInfoTokenVersion" : {
"type" : "select",
"props" : {
"label" : "secComInfoTokenVersion",
"options" : [ "Legacy", "Latest" ]
}
},
"additionalHeadersOut" : {
"label" : "additionalHeadersOut",
"type" : "object"
},
"secComHeaders" : {
"label" : "secComHeaders",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "claimRequestName", "stateRequestName", "stateResponseName" ]
},
"matchingHeaders" : {
"label" : "matchingHeaders",
"type" : "object"
},
"secComAlgoChallengeBackToOto" : {
"label" : "secComAlgoChallengeBackToOto",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"secComUseSameAlgo" : {
"label" : "secComUseSameAlgo",
"type" : "bool"
},
"useNewWSClient" : {
"label" : "useNewWSClient",
"type" : "bool"
},
"secComExcludedPatterns" : {
"label" : "secComExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"redirectToLocal" : {
"label" : "redirectToLocal",
"type" : "bool"
},
"enforceSecureCommunication" : {
"label" : "enforceSecureCommunication",
"type" : "bool"
},
"missingOnlyHeadersOut" : {
"label" : "missingOnlyHeadersOut",
"type" : "object"
},
"secComSettings" : {
"label" : "secComSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"handleLegacyDomain" : {
"label" : "handleLegacyDomain",
"type" : "bool"
},
"canary" : {
"label" : "canary",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "enabled", "traffic", "targets", "root" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"secComVersion" : {
"type" : "select",
"props" : {
"label" : "secComVersion",
"options" : [ "V1", "v2" ]
}
},
"preRouting" : {
"label" : "preRouting",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"privatePatterns" : {
"label" : "privatePatterns",
"type" : "array",
"array" : true,
"format" : null
},
"targetsLoadBalancing" : {
"label" : "targetsLoadBalancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"cors" : {
"label" : "cors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "enabled", "allowCredentials", "maxAge", "allowMethods", "allowHeaders", "excludedPatterns", "exposeHeaders", "allowOrigin" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"publicPatterns" : {
"label" : "publicPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"api" : {
"label" : "api",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "exposeApi", "openApiDescriptorUrl" ]
},
"missingOnlyHeadersIn" : {
"label" : "missingOnlyHeadersIn",
"type" : "object"
},
"issueCert" : {
"label" : "issueCert",
"type" : "bool"
},
"headersVerification" : {
"label" : "headersVerification",
"type" : "object"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata", "enabled", "excludedPatterns", "ids" ]
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
}
},
"flow" : [ "buildMode", "hosts", "privateApp", "localScheme", "authConfigRef", "issueCertCA", "root", "name", "additionalHeaders", "domain", "clientConfig", "matchingRoot", "forceHttps", "localHost", "sendOtoroshiHeadersBack", "healthCheck", "strictlyPrivate", "detectApiKeySooner", "allowHttp10", "subdomain", "paths", "stripPath", "secComAlgoChallengeOtoToBack", "apiKeyConstraints", "env", "xForwardedHeaders", "transformerRefs", "enabled", "gzip", "sendInfoToken", "tcpUdpTunneling", "removeHeadersOut", "useAkkaHttpClient", "maintenanceMode", "id", "removeHeadersIn", "logAnalyticsOnServer", "secComAlgoInfoToken", "userFacing", "transformerConfig", "clientValidatorRef", "securityExcludedPatterns", "ipFiltering", "targets", "redirection", "tags", "restrictions", "overrideHost", "accessValidator", "sendStateChallenge", "chaosConfig", "secComInfoTokenVersion", "additionalHeadersOut", "secComHeaders", "matchingHeaders", "secComAlgoChallengeBackToOto", "secComUseSameAlgo", "useNewWSClient", "secComExcludedPatterns", "redirectToLocal", "enforceSecureCommunication", "missingOnlyHeadersOut", "secComSettings", "handleLegacyDomain", "canary", "_loc", "plugins", "secComTtl", "description", "secComVersion", "preRouting", "groups", "readOnly", "privatePatterns", "targetsLoadBalancing", "cors", "metadata", "publicPatterns", "api", "missingOnlyHeadersIn", "issueCert", "headersVerification", "jwtVerifier", "letsEncrypt" ]
},
"index" : {
"label" : "index",
"type" : "number"
},
"globalConfig" : {
"label" : "globalConfig",
"type" : "object"
},
"apikey" : {
"label" : "apikey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"dailyQuota" : {
"label" : "dailyQuota",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"constrainedServicesOnly" : {
"label" : "constrainedServicesOnly",
"type" : "bool"
},
"allowClientIdOnly" : {
"label" : "allowClientIdOnly",
"type" : "bool"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"validUntil" : {
"label" : "validUntil",
"type" : "string"
},
"clientName" : {
"label" : "clientName",
"type" : "string"
},
"monthlyQuota" : {
"label" : "monthlyQuota",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"rotation" : {
"label" : "rotation",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"rotationEvery" : {
"label" : "rotationEvery",
"type" : "number"
},
"gracePeriod" : {
"label" : "gracePeriod",
"type" : "number"
},
"nextSecret" : {
"label" : "nextSecret",
"type" : "string"
}
},
"flow" : [ "enabled", "rotationEvery", "gracePeriod", "nextSecret" ]
},
"authorizedEntities" : {
"label" : "authorizedEntities",
"type" : "array",
"array" : true,
"format" : null
},
"clientId" : {
"label" : "clientId",
"type" : "string"
}
},
"flow" : [ "dailyQuota", "metadata", "throttlingQuota", "constrainedServicesOnly", "allowClientIdOnly", "_loc", "restrictions", "tags", "enabled", "readOnly", "clientSecret", "validUntil", "clientName", "monthlyQuota", "description", "rotation", "authorizedEntities", "clientId" ]
},
"snowflake" : {
"label" : "snowflake",
"type" : "string"
},
"user" : {
"label" : "user",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"realm" : {
"label" : "realm",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "object"
},
"expiredAt" : {
"label" : "expiredAt",
"type" : "number"
},
"profile" : {
"label" : "profile",
"type" : "object"
},
"lastRefresh" : {
"label" : "lastRefresh",
"type" : "number"
},
"randomId" : {
"label" : "randomId",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
},
"createdAt" : {
"label" : "createdAt",
"type" : "number"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"authConfigId" : {
"label" : "authConfigId",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"name" : {
"label" : "name",
"type" : "string"
},
"otoroshiData" : {
"label" : "otoroshiData",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
}
},
"flow" : [ "realm", "token", "expiredAt", "profile", "lastRefresh", "randomId", "email", "createdAt", "_loc", "authConfigId", "tags", "name", "otoroshiData", "metadata" ]
}
},
"flow" : [ "attrs", "config", "descriptor", "index", "globalConfig", "apikey", "snowflake", "user" ]
}
},
"flow" : [ "ctx" ]
},
"otoroshi.models.ElasticAnalyticsConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "password", "index", "user", "headers", "maxBulkSize", "version", "uris", "applyTemplate", "sendWorkers", "type", "mtlsConfig", "indexSettings" ]
},
"otoroshi.models.ApiKeyConstraints" : {
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"otoroshi.next.models.NgCustomTimeouts" : {
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "global_timeout", "idle_timeout", "call_timeout", "path", "call_and_stream_timeout", "connection_timeout" ]
},
"otoroshi.next.plugins.Robots" : {
"schema" : {
"robot_txt_content" : {
"label" : "robot_txt_content",
"type" : "string"
},
"meta_content" : {
"label" : "meta_content",
"type" : "string"
},
"robot_enabled" : {
"label" : "robot_enabled",
"type" : "bool"
},
"header_content" : {
"label" : "header_content",
"type" : "string"
},
"header_enabled" : {
"label" : "header_enabled",
"type" : "bool"
},
"meta_enabled" : {
"label" : "meta_enabled",
"type" : "bool"
}
},
"flow" : [ "meta_enabled", "header_enabled", "header_content", "robot_enabled", "meta_content", "robot_txt_content" ]
},
"otoroshi.plugins.quotas.ServiceQuotasConfig" : {
"schema" : {
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"dailyQuota" : {
"label" : "dailyQuota",
"type" : "number"
},
"monthlyQuota" : {
"label" : "monthlyQuota",
"type" : "number"
}
},
"flow" : [ "monthlyQuota", "dailyQuota", "throttlingQuota" ]
},
"otoroshi.auth.WebAuthnDetails" : {
"schema" : {
"handle" : {
"label" : "handle",
"type" : "string"
},
"credentials" : {
"label" : "credentials",
"type" : "object"
}
},
"flow" : [ "credentials", "handle" ]
},
"otoroshi.next.plugins.GzipResponseCompressor" : {
"schema" : {
"compression_level" : {
"label" : "compression_level",
"type" : "number"
},
"buffer_size" : {
"label" : "buffer_size",
"type" : "number"
},
"chunked_threshold" : {
"label" : "chunked_threshold",
"type" : "number"
},
"excluded_patterns" : {
"label" : "excluded_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"white_list" : {
"label" : "white_list",
"type" : "array",
"array" : true,
"format" : null
},
"black_list" : {
"label" : "black_list",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "black_list", "white_list", "excluded_patterns", "chunked_threshold", "buffer_size", "compression_level" ]
},
"otoroshi.next.models.PluginIndex" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.wrappers.PreRoutingWrapper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgLargeRequestFaultConfig" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additional_request_size" : {
"label" : "additional_request_size",
"type" : "number"
}
},
"flow" : [ "additional_request_size", "ratio" ]
},
"UserTokenBody" : {
"schema" : {
"token" : {
"label" : "token",
"type" : "string"
}
},
"flow" : [ "token" ]
},
"otoroshi.next.plugins.NgLatencyInjectionFaultConfig" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "to", "from", "ratio" ]
},
"otoroshi.models.CleverCloudSettings" : {
"schema" : {
"consumerSecret" : {
"label" : "consumerSecret",
"type" : "string"
},
"consumerKey" : {
"label" : "consumerKey",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "string"
},
"orgaId" : {
"label" : "orgaId",
"type" : "string"
}
},
"flow" : [ "orgaId", "token", "secret", "consumerKey", "consumerSecret" ]
},
"otoroshi.script.AccessContext" : {
"schema" : {
"attrs" : {
"label" : "attrs",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"config" : {
"label" : "config",
"type" : "object"
},
"descriptor" : {
"label" : "descriptor",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"buildMode" : {
"label" : "buildMode",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"privateApp" : {
"label" : "privateApp",
"type" : "bool"
},
"localScheme" : {
"label" : "localScheme",
"type" : "string"
},
"authConfigRef" : {
"label" : "authConfigRef",
"type" : "string"
},
"issueCertCA" : {
"label" : "issueCertCA",
"type" : "string"
},
"root" : {
"label" : "root",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"additionalHeaders" : {
"label" : "additionalHeaders",
"type" : "object"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"clientConfig" : {
"label" : "clientConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "useCircuitBreaker", "retryInitialDelay", "cacheConnectionSettings", "proxy", "callTimeout", "callAndStreamTimeout", "globalTimeout", "maxErrors", "retries", "backoffFactor", "customTimeouts", "idleTimeout", "sampleInterval" ]
},
"matchingRoot" : {
"label" : "matchingRoot",
"type" : "string"
},
"forceHttps" : {
"label" : "forceHttps",
"type" : "bool"
},
"localHost" : {
"label" : "localHost",
"type" : "string"
},
"sendOtoroshiHeadersBack" : {
"label" : "sendOtoroshiHeadersBack",
"type" : "bool"
},
"healthCheck" : {
"label" : "healthCheck",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"strictlyPrivate" : {
"label" : "strictlyPrivate",
"type" : "bool"
},
"detectApiKeySooner" : {
"label" : "detectApiKeySooner",
"type" : "bool"
},
"allowHttp10" : {
"label" : "allowHttp10",
"type" : "bool"
},
"subdomain" : {
"label" : "subdomain",
"type" : "string"
},
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"stripPath" : {
"label" : "stripPath",
"type" : "bool"
},
"secComAlgoChallengeOtoToBack" : {
"label" : "secComAlgoChallengeOtoToBack",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"apiKeyConstraints" : {
"label" : "apiKeyConstraints",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"env" : {
"label" : "env",
"type" : "string"
},
"xForwardedHeaders" : {
"label" : "xForwardedHeaders",
"type" : "bool"
},
"transformerRefs" : {
"label" : "transformerRefs",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"gzip" : {
"label" : "gzip",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "compressionLevel", "blackList", "chunkedThreshold", "excludedPatterns", "bufferSize", "whiteList", "enabled" ]
},
"sendInfoToken" : {
"label" : "sendInfoToken",
"type" : "bool"
},
"tcpUdpTunneling" : {
"label" : "tcpUdpTunneling",
"type" : "bool"
},
"removeHeadersOut" : {
"label" : "removeHeadersOut",
"type" : "array",
"array" : true,
"format" : null
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"removeHeadersIn" : {
"label" : "removeHeadersIn",
"type" : "array",
"array" : true,
"format" : null
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"secComAlgoInfoToken" : {
"label" : "secComAlgoInfoToken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"userFacing" : {
"label" : "userFacing",
"type" : "bool"
},
"transformerConfig" : {
"label" : "transformerConfig",
"type" : "object"
},
"clientValidatorRef" : {
"label" : "clientValidatorRef",
"type" : "string"
},
"securityExcludedPatterns" : {
"label" : "securityExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"redirection" : {
"label" : "redirection",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "enabled", "code", "to" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"overrideHost" : {
"label" : "overrideHost",
"type" : "bool"
},
"accessValidator" : {
"label" : "accessValidator",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"sendStateChallenge" : {
"label" : "sendStateChallenge",
"type" : "bool"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"secComInfoTokenVersion" : {
"type" : "select",
"props" : {
"label" : "secComInfoTokenVersion",
"options" : [ "Legacy", "Latest" ]
}
},
"additionalHeadersOut" : {
"label" : "additionalHeadersOut",
"type" : "object"
},
"secComHeaders" : {
"label" : "secComHeaders",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "claimRequestName", "stateRequestName", "stateResponseName" ]
},
"matchingHeaders" : {
"label" : "matchingHeaders",
"type" : "object"
},
"secComAlgoChallengeBackToOto" : {
"label" : "secComAlgoChallengeBackToOto",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"secComUseSameAlgo" : {
"label" : "secComUseSameAlgo",
"type" : "bool"
},
"useNewWSClient" : {
"label" : "useNewWSClient",
"type" : "bool"
},
"secComExcludedPatterns" : {
"label" : "secComExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"redirectToLocal" : {
"label" : "redirectToLocal",
"type" : "bool"
},
"enforceSecureCommunication" : {
"label" : "enforceSecureCommunication",
"type" : "bool"
},
"missingOnlyHeadersOut" : {
"label" : "missingOnlyHeadersOut",
"type" : "object"
},
"secComSettings" : {
"label" : "secComSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"handleLegacyDomain" : {
"label" : "handleLegacyDomain",
"type" : "bool"
},
"canary" : {
"label" : "canary",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "enabled", "traffic", "targets", "root" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"secComVersion" : {
"type" : "select",
"props" : {
"label" : "secComVersion",
"options" : [ "V1", "v2" ]
}
},
"preRouting" : {
"label" : "preRouting",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"privatePatterns" : {
"label" : "privatePatterns",
"type" : "array",
"array" : true,
"format" : null
},
"targetsLoadBalancing" : {
"label" : "targetsLoadBalancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"cors" : {
"label" : "cors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "enabled", "allowCredentials", "maxAge", "allowMethods", "allowHeaders", "excludedPatterns", "exposeHeaders", "allowOrigin" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"publicPatterns" : {
"label" : "publicPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"api" : {
"label" : "api",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "exposeApi", "openApiDescriptorUrl" ]
},
"missingOnlyHeadersIn" : {
"label" : "missingOnlyHeadersIn",
"type" : "object"
},
"issueCert" : {
"label" : "issueCert",
"type" : "bool"
},
"headersVerification" : {
"label" : "headersVerification",
"type" : "object"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata", "enabled", "excludedPatterns", "ids" ]
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
}
},
"flow" : [ "buildMode", "hosts", "privateApp", "localScheme", "authConfigRef", "issueCertCA", "root", "name", "additionalHeaders", "domain", "clientConfig", "matchingRoot", "forceHttps", "localHost", "sendOtoroshiHeadersBack", "healthCheck", "strictlyPrivate", "detectApiKeySooner", "allowHttp10", "subdomain", "paths", "stripPath", "secComAlgoChallengeOtoToBack", "apiKeyConstraints", "env", "xForwardedHeaders", "transformerRefs", "enabled", "gzip", "sendInfoToken", "tcpUdpTunneling", "removeHeadersOut", "useAkkaHttpClient", "maintenanceMode", "id", "removeHeadersIn", "logAnalyticsOnServer", "secComAlgoInfoToken", "userFacing", "transformerConfig", "clientValidatorRef", "securityExcludedPatterns", "ipFiltering", "targets", "redirection", "tags", "restrictions", "overrideHost", "accessValidator", "sendStateChallenge", "chaosConfig", "secComInfoTokenVersion", "additionalHeadersOut", "secComHeaders", "matchingHeaders", "secComAlgoChallengeBackToOto", "secComUseSameAlgo", "useNewWSClient", "secComExcludedPatterns", "redirectToLocal", "enforceSecureCommunication", "missingOnlyHeadersOut", "secComSettings", "handleLegacyDomain", "canary", "_loc", "plugins", "secComTtl", "description", "secComVersion", "preRouting", "groups", "readOnly", "privatePatterns", "targetsLoadBalancing", "cors", "metadata", "publicPatterns", "api", "missingOnlyHeadersIn", "issueCert", "headersVerification", "jwtVerifier", "letsEncrypt" ]
},
"index" : {
"label" : "index",
"type" : "number"
},
"globalConfig" : {
"label" : "globalConfig",
"type" : "object"
},
"apikey" : {
"label" : "apikey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"dailyQuota" : {
"label" : "dailyQuota",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"constrainedServicesOnly" : {
"label" : "constrainedServicesOnly",
"type" : "bool"
},
"allowClientIdOnly" : {
"label" : "allowClientIdOnly",
"type" : "bool"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"validUntil" : {
"label" : "validUntil",
"type" : "string"
},
"clientName" : {
"label" : "clientName",
"type" : "string"
},
"monthlyQuota" : {
"label" : "monthlyQuota",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"rotation" : {
"label" : "rotation",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"rotationEvery" : {
"label" : "rotationEvery",
"type" : "number"
},
"gracePeriod" : {
"label" : "gracePeriod",
"type" : "number"
},
"nextSecret" : {
"label" : "nextSecret",
"type" : "string"
}
},
"flow" : [ "enabled", "rotationEvery", "gracePeriod", "nextSecret" ]
},
"authorizedEntities" : {
"label" : "authorizedEntities",
"type" : "array",
"array" : true,
"format" : null
},
"clientId" : {
"label" : "clientId",
"type" : "string"
}
},
"flow" : [ "dailyQuota", "metadata", "throttlingQuota", "constrainedServicesOnly", "allowClientIdOnly", "_loc", "restrictions", "tags", "enabled", "readOnly", "clientSecret", "validUntil", "clientName", "monthlyQuota", "description", "rotation", "authorizedEntities", "clientId" ]
},
"snowflake" : {
"label" : "snowflake",
"type" : "string"
},
"user" : {
"label" : "user",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"realm" : {
"label" : "realm",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "object"
},
"expiredAt" : {
"label" : "expiredAt",
"type" : "number"
},
"profile" : {
"label" : "profile",
"type" : "object"
},
"lastRefresh" : {
"label" : "lastRefresh",
"type" : "number"
},
"randomId" : {
"label" : "randomId",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
},
"createdAt" : {
"label" : "createdAt",
"type" : "number"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"authConfigId" : {
"label" : "authConfigId",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"name" : {
"label" : "name",
"type" : "string"
},
"otoroshiData" : {
"label" : "otoroshiData",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
}
},
"flow" : [ "realm", "token", "expiredAt", "profile", "lastRefresh", "randomId", "email", "createdAt", "_loc", "authConfigId", "tags", "name", "otoroshiData", "metadata" ]
}
},
"flow" : [ "snowflake", "globalConfig", "index", "config", "attrs", "descriptor", "apikey", "user" ]
},
"otoroshi.models.AlgoSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "onlyExposedCerts", "timeout", "ttl", "headers", "kty", "url", "base64", "secret", "certId", "privateKey", "publicKey", "size", "type", "tlsConfig", "proxy" ]
},
"otoroshi.next.plugins.SendOtoroshiHeadersBack" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.WasmAuthModuleConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "saml", "oauth1", "oauth2", "ldap", "basic" ]
}
},
"wasmRef" : {
"label" : "wasmRef",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"clientSideSessionEnabled" : {
"label" : "clientSideSessionEnabled",
"type" : "bool"
},
"description" : {
"label" : "description",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"sessionMaxAge" : {
"label" : "sessionMaxAge",
"type" : "number"
},
"userValidators" : {
"label" : "userValidators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"sessionCookieValues" : {
"label" : "sessionCookieValues",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "httpOnly", "secure" ]
}
},
"flow" : [ "metadata", "id", "userValidators", "sessionMaxAge", "tags", "description", "clientSideSessionEnabled", "name", "wasmRef", "type", "_loc", "sessionCookieValues" ]
},
"otoroshi.utils.gzip.GzipConfig" : {
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled", "whiteList", "bufferSize", "excludedPatterns", "chunkedThreshold", "blackList", "compressionLevel" ]
},
"PluginDescriptionsResponse" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgHasClientCertValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.TeamId" : {
"schema" : { },
"flow" : [ ]
},
"WebAuthnRegistrationFinishBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.TenantId" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.ApikeyAuthModule" : {
"schema" : {
"realm" : {
"label" : "realm",
"type" : "string"
},
"matcher" : {
"label" : "matcher",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
}
},
"flow" : [ "realm", "matcher" ]
},
"otoroshi.next.plugins.NgAuthModuleExpectedUserConfig" : {
"schema" : {
"only_from" : {
"label" : "only_from",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "only_from" ]
},
"PatchDocument" : {
"schema" : {
"op" : {
"type" : "select",
"props" : {
"label" : "op",
"options" : [ "add", "remove", "replace", "move", "copy", "test" ]
}
},
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"from" : {
"label" : "from",
"type" : "string"
}
},
"flow" : [ "from", "value", "path", "op" ]
},
"ServiceDescriptorList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.oidc.OIDCThirdPartyApiKeyConfig" : {
"schema" : {
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"localVerificationOnly" : {
"label" : "localVerificationOnly",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"uniqueApiKey" : {
"label" : "uniqueApiKey",
"type" : "bool"
},
"rolesPath" : {
"label" : "rolesPath",
"type" : "array",
"array" : true,
"format" : null
},
"mode" : {
"label" : "mode",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"quotasEnabled" : {
"label" : "quotasEnabled",
"type" : "bool"
},
"monthlyQuota" : {
"label" : "monthlyQuota",
"type" : "number"
},
"scopes" : {
"label" : "scopes",
"type" : "array",
"array" : true,
"format" : null
},
"roles" : {
"label" : "roles",
"type" : "array",
"array" : true,
"format" : null
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"dailyQuota" : {
"label" : "dailyQuota",
"type" : "number"
},
"oidcConfigRef" : {
"label" : "oidcConfigRef",
"type" : "string"
}
},
"flow" : [ "oidcConfigRef", "dailyQuota", "throttlingQuota", "roles", "scopes", "monthlyQuota", "quotasEnabled", "rolesPath", "uniqueApiKey", "ttl", "enabled", "localVerificationOnly", "headerName", "excludedPatterns", "mode" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesOtoroshiCRDsControllerJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.GlobalPerIpAddressThrottling" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgClientCredentials" : {
"schema" : {
"default_key_pair" : {
"label" : "default_key_pair",
"type" : "string"
},
"expiration" : {
"label" : "expiration",
"type" : "number"
},
"secure" : {
"label" : "secure",
"type" : "bool"
},
"biscuit" : {
"label" : "biscuit",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"privkey" : {
"label" : "privkey",
"type" : "string"
},
"checks" : {
"label" : "checks",
"type" : "array",
"array" : true,
"format" : null
},
"facts" : {
"label" : "facts",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "privkey", "checks", "facts", "rules" ]
},
"domain" : {
"label" : "domain",
"type" : "string"
}
},
"flow" : [ "domain", "secure", "expiration", "default_key_pair", "biscuit" ]
},
"otoroshi.plugins.accesslog.AccessLog" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesConfig" : {
"schema" : {
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"templates" : {
"label" : "templates",
"type" : "object"
},
"token" : {
"label" : "token",
"type" : "string"
},
"restartDependantDeployments" : {
"label" : "restartDependantDeployments",
"type" : "bool"
},
"watchGracePeriodSeconds" : {
"label" : "watchGracePeriodSeconds",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"crds" : {
"label" : "crds",
"type" : "bool"
},
"watch" : {
"label" : "watch",
"type" : "bool"
},
"labels" : {
"label" : "labels",
"type" : "object"
},
"openshiftDnsOperatorCoreDnsName" : {
"label" : "openshiftDnsOperatorCoreDnsName",
"type" : "string"
},
"syncIntervalSeconds" : {
"label" : "syncIntervalSeconds",
"type" : "number"
},
"kubeDnsOperatorCoreDnsName" : {
"label" : "kubeDnsOperatorCoreDnsName",
"type" : "string"
},
"defaultGroup" : {
"label" : "defaultGroup",
"type" : "string"
},
"kubeDnsOperatorCoreDnsNamespace" : {
"label" : "kubeDnsOperatorCoreDnsNamespace",
"type" : "string"
},
"triggerKey" : {
"label" : "triggerKey",
"type" : "string"
},
"otoroshiNamespace" : {
"label" : "otoroshiNamespace",
"type" : "string"
},
"watchTimeoutSeconds" : {
"label" : "watchTimeoutSeconds",
"type" : "number"
},
"openshiftDnsOperatorCleanupDomains" : {
"label" : "openshiftDnsOperatorCleanupDomains",
"type" : "array",
"array" : true,
"format" : null
},
"namespaces" : {
"label" : "namespaces",
"type" : "array",
"array" : true,
"format" : null
},
"openshiftDnsOperatorCoreDnsPort" : {
"label" : "openshiftDnsOperatorCoreDnsPort",
"type" : "number"
},
"coreDnsEnv" : {
"label" : "coreDnsEnv",
"type" : "string"
},
"triggerPath" : {
"label" : "triggerPath",
"type" : "string"
},
"image" : {
"label" : "image",
"type" : "string"
},
"coreDnsConfigMapName" : {
"label" : "coreDnsConfigMapName",
"type" : "string"
},
"clusterDomain" : {
"label" : "clusterDomain",
"type" : "string"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"caCert" : {
"label" : "caCert",
"type" : "string"
},
"trust" : {
"label" : "trust",
"type" : "bool"
},
"ingressClasses" : {
"label" : "ingressClasses",
"type" : "array",
"array" : true,
"format" : null
},
"userPassword" : {
"label" : "userPassword",
"type" : "string"
},
"syncDaikokuApikeysOnly" : {
"label" : "syncDaikokuApikeysOnly",
"type" : "bool"
},
"openshiftDnsOperatorCleanup" : {
"label" : "openshiftDnsOperatorCleanup",
"type" : "bool"
},
"kubeSystemNamespace" : {
"label" : "kubeSystemNamespace",
"type" : "string"
},
"ingressEndpointIp" : {
"label" : "ingressEndpointIp",
"type" : "string"
},
"namespacesLabels" : {
"label" : "namespacesLabels",
"type" : "object"
},
"openshiftDnsOperatorCleanupNames" : {
"label" : "openshiftDnsOperatorCleanupNames",
"type" : "array",
"array" : true,
"format" : null
},
"kubeDnsOperatorCoreDnsPort" : {
"label" : "kubeDnsOperatorCoreDnsPort",
"type" : "number"
},
"mutatingWebhookName" : {
"label" : "mutatingWebhookName",
"type" : "string"
},
"kubeLeader" : {
"label" : "kubeLeader",
"type" : "bool"
},
"ingressEndpointHostname" : {
"label" : "ingressEndpointHostname",
"type" : "string"
},
"openshiftDnsOperatorIntegration" : {
"label" : "openshiftDnsOperatorIntegration",
"type" : "bool"
},
"validatingWebhookName" : {
"label" : "validatingWebhookName",
"type" : "string"
},
"coreDnsDeploymentName" : {
"label" : "coreDnsDeploymentName",
"type" : "string"
},
"ingresses" : {
"label" : "ingresses",
"type" : "bool"
},
"useProxyState" : {
"label" : "useProxyState",
"type" : "bool"
},
"coreDnsIntegrationDryRun" : {
"label" : "coreDnsIntegrationDryRun",
"type" : "bool"
},
"ingressEndpointPublishedService" : {
"label" : "ingressEndpointPublishedService",
"type" : "string"
},
"coreDnsAzure" : {
"label" : "coreDnsAzure",
"type" : "bool"
},
"corednsPort" : {
"label" : "corednsPort",
"type" : "number"
},
"coreDnsIntegration" : {
"label" : "coreDnsIntegration",
"type" : "bool"
},
"otoroshiServiceName" : {
"label" : "otoroshiServiceName",
"type" : "string"
},
"meshDomain" : {
"label" : "meshDomain",
"type" : "string"
},
"kubeDnsOperatorIntegration" : {
"label" : "kubeDnsOperatorIntegration",
"type" : "bool"
},
"triggerHost" : {
"label" : "triggerHost",
"type" : "string"
},
"openshiftDnsOperatorCoreDnsNamespace" : {
"label" : "openshiftDnsOperatorCoreDnsNamespace",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
}
},
"flow" : [ "callAndStreamTimeout", "openshiftDnsOperatorCoreDnsNamespace", "triggerHost", "kubeDnsOperatorIntegration", "meshDomain", "otoroshiServiceName", "coreDnsIntegration", "corednsPort", "coreDnsAzure", "ingressEndpointPublishedService", "coreDnsIntegrationDryRun", "useProxyState", "ingresses", "coreDnsDeploymentName", "validatingWebhookName", "openshiftDnsOperatorIntegration", "ingressEndpointHostname", "kubeLeader", "mutatingWebhookName", "kubeDnsOperatorCoreDnsPort", "openshiftDnsOperatorCleanupNames", "namespacesLabels", "ingressEndpointIp", "kubeSystemNamespace", "openshiftDnsOperatorCleanup", "syncDaikokuApikeysOnly", "userPassword", "ingressClasses", "trust", "caCert", "idleTimeout", "clusterDomain", "coreDnsConfigMapName", "image", "triggerPath", "coreDnsEnv", "openshiftDnsOperatorCoreDnsPort", "namespaces", "openshiftDnsOperatorCleanupDomains", "watchTimeoutSeconds", "otoroshiNamespace", "triggerKey", "kubeDnsOperatorCoreDnsNamespace", "defaultGroup", "kubeDnsOperatorCoreDnsName", "syncIntervalSeconds", "openshiftDnsOperatorCoreDnsName", "labels", "watch", "crds", "connectionTimeout", "watchGracePeriodSeconds", "restartDependantDeployments", "token", "templates", "endpoint" ]
},
"otoroshi.next.plugins.ResponseStatusRange" : {
"schema" : {
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "to", "from" ]
},
"otoroshi.plugins.workflow.WorkflowJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.WasmResponseTransformer" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesToOtoroshiCertSyncJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgRouteCompositionDataStore" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgUserAgentExtractor" : {
"schema" : {
"log" : {
"label" : "log",
"type" : "bool"
}
},
"flow" : [ "log" ]
},
"otoroshi.next.plugins.WasmRouteMatcher" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.script.PluginType" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.AttrsHelper" : {
"schema" : { },
"flow" : [ ]
},
"Done" : {
"schema" : {
"done" : {
"label" : "done",
"type" : "bool"
}
},
"flow" : [ "done" ]
},
"otoroshi.next.plugins.NgDeferPluginConfig" : {
"schema" : {
"duration" : {
"label" : "duration",
"type" : "number"
}
},
"flow" : [ "duration" ]
},
"otoroshi.next.plugins.RoutingRestrictions" : {
"schema" : {
"allow_last" : {
"label" : "allow_last",
"type" : "bool"
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"not_found" : {
"label" : "not_found",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
}
},
"flow" : [ "not_found", "forbidden", "allowed", "allow_last" ]
},
"otoroshi.next.plugins.NgBiscuitConfig" : {
"schema" : {
"legacy" : {
"label" : "legacy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"facts" : {
"label" : "facts",
"type" : "array",
"array" : true,
"format" : null
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"resources" : {
"label" : "resources",
"type" : "array",
"array" : true,
"format" : null
},
"enforce" : {
"label" : "enforce",
"type" : "bool"
},
"extractorName" : {
"label" : "extractorName",
"type" : "string"
},
"checks" : {
"label" : "checks",
"type" : "array",
"array" : true,
"format" : null
},
"extractor" : {
"label" : "extractor",
"type" : "string"
},
"revocation_ids" : {
"label" : "revocation_ids",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "facts", "publicKey", "resources", "enforce", "extractorName", "checks", "extractor", "revocation_ids", "rules" ]
}
},
"flow" : [ "legacy" ]
},
"otoroshi.models.ClientIdAuthConstraints" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "queryName", "headerName", "enabled" ]
},
"otoroshi.plugins.apikeys.ClientCredentialService" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgRouteDataStore" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.WasmOPA" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.plugins.geoloc.MaxMindGeolocationHelper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.apikeys.ApiKeyAllowedOnThisServiceValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.jobs.kubernetes.OtoroshiResourcesContext" : {
"schema" : {
"routes" : {
"label" : "routes",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"capture" : {
"label" : "capture",
"type" : "bool"
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
}
},
"flow" : [ "debug_flow", "enabled", "name", "id", "export_reporting", "frontend", "_loc", "tags", "capture", "groups", "backend_ref", "description", "backend", "metadata" ]
},
"apiKeys" : {
"label" : "apiKeys",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"dailyQuota" : {
"label" : "dailyQuota",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"constrainedServicesOnly" : {
"label" : "constrainedServicesOnly",
"type" : "bool"
},
"allowClientIdOnly" : {
"label" : "allowClientIdOnly",
"type" : "bool"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"validUntil" : {
"label" : "validUntil",
"type" : "string"
},
"clientName" : {
"label" : "clientName",
"type" : "string"
},
"monthlyQuota" : {
"label" : "monthlyQuota",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"rotation" : {
"label" : "rotation",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"rotationEvery" : {
"label" : "rotationEvery",
"type" : "number"
},
"gracePeriod" : {
"label" : "gracePeriod",
"type" : "number"
},
"nextSecret" : {
"label" : "nextSecret",
"type" : "string"
}
},
"flow" : [ "enabled", "rotationEvery", "gracePeriod", "nextSecret" ]
},
"authorizedEntities" : {
"label" : "authorizedEntities",
"type" : "array",
"array" : true,
"format" : null
},
"clientId" : {
"label" : "clientId",
"type" : "string"
}
},
"flow" : [ "dailyQuota", "throttlingQuota", "constrainedServicesOnly", "allowClientIdOnly", "_loc", "restrictions", "tags", "enabled", "readOnly", "clientSecret", "validUntil", "clientName", "monthlyQuota", "description", "rotation", "authorizedEntities", "clientId", "metadata" ]
},
"backends" : {
"label" : "backends",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"description" : {
"label" : "description",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
},
"name" : {
"label" : "name",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "description", "tags", "backend", "name", "_loc", "id", "metadata" ]
},
"scripts" : {
"label" : "scripts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"code" : {
"label" : "code",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "app", "transformer", "validator", "preroute", "sink", "listener", "job", "exporter" ]
}
}
},
"flow" : [ "name", "tags", "_loc", "desc", "code", "id", "type", "metadata" ]
},
"jwtVerifiers" : {
"label" : "jwtVerifiers",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata" ]
},
"tenants" : {
"label" : "tenants",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"description" : {
"label" : "description",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"name" : {
"label" : "name",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "description", "name", "tags", "id", "metadata" ]
},
"dataExporters" : {
"label" : "dataExporters",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"desc" : {
"label" : "desc",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"jsonWorkers" : {
"label" : "jsonWorkers",
"type" : "number"
},
"groupDuration" : {
"label" : "groupDuration",
"type" : "number"
},
"groupSize" : {
"label" : "groupSize",
"type" : "number"
},
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "kafka", "pulsar", "elastic", "webhook", "file", "mailer", "custom", "none", "console", "metrics" ]
}
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendEvents" : {
"label" : "sendEvents",
"type" : "bool"
},
"truststore" : {
"label" : "truststore",
"type" : "string"
},
"hostValidation" : {
"label" : "hostValidation",
"type" : "bool"
},
"servers" : {
"label" : "servers",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"securityProtocol" : {
"label" : "securityProtocol",
"type" : "string"
},
"keystore" : {
"label" : "keystore",
"type" : "string"
},
"topic" : {
"label" : "topic",
"type" : "string"
},
"keyPass" : {
"label" : "keyPass",
"type" : "string"
},
"saslConfig" : {
"label" : "saslConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"mechanism" : {
"label" : "mechanism",
"type" : "string"
}
},
"flow" : [ "username", "password", "mechanism" ]
},
"tlsTrustCertsFilePath" : {
"label" : "tlsTrustCertsFilePath",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"uri" : {
"label" : "uri",
"type" : "string"
},
"namespace" : {
"label" : "namespace",
"type" : "string"
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ref" : {
"label" : "ref",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "object"
},
"path" : {
"label" : "path",
"type" : "string"
},
"maxFileSize" : {
"label" : "maxFileSize",
"type" : "number"
},
"labels" : {
"label" : "labels",
"type" : "object"
},
"url" : {
"label" : "url",
"type" : "string"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
},
"eu" : {
"label" : "eu",
"type" : "bool"
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"apiKeyPublic" : {
"label" : "apiKeyPublic",
"type" : "string"
},
"apiKeyPrivate" : {
"label" : "apiKeyPrivate",
"type" : "string"
}
},
"flow" : [ "type", "sendEvents", "truststore", "hostValidation", "servers", "mtlsConfig", "securityProtocol", "keystore", "topic", "keyPass", "saslConfig", "tlsTrustCertsFilePath", "tenant", "uri", "namespace", "sendWorkers", "applyTemplate", "uris", "version", "maxBulkSize", "headers", "indexSettings", "user", "index", "password", "ref", "config", "path", "maxFileSize", "labels", "url", "to", "eu", "apiKey", "domain", "apiKeyPublic", "apiKeyPrivate" ]
},
"projection" : {
"label" : "projection",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"filtering" : {
"label" : "filtering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"include" : {
"label" : "include",
"type" : "array",
"array" : true,
"format" : "form"
},
"exclude" : {
"label" : "exclude",
"type" : "array",
"array" : true,
"format" : "form"
}
},
"flow" : [ "include", "exclude" ]
}
},
"flow" : [ "desc", "_loc", "bufferSize", "jsonWorkers", "groupDuration", "groupSize", "type", "tags", "sendWorkers", "id", "name", "config", "enabled", "filtering", "metadata", "projection" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"name" : {
"label" : "name",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "tags", "name", "description", "tenant", "id", "metadata" ]
},
"routeCompositions" : {
"label" : "routeCompositions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"capture" : {
"label" : "capture",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"routes" : {
"label" : "routes",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"override_plugins" : {
"label" : "override_plugins",
"type" : "bool"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
}
},
"flow" : [ "root", "targets", "load_balancing", "rewrite" ]
}
},
"flow" : [ "backend_ref", "frontend", "override_plugins", "backend" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"description" : {
"label" : "description",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"name" : {
"label" : "name",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "capture", "id", "debug_flow", "routes", "enabled", "description", "export_reporting", "tags", "name", "_loc", "client", "groups", "metadata" ]
},
"serviceDescriptors" : {
"label" : "serviceDescriptors",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"buildMode" : {
"label" : "buildMode",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"privateApp" : {
"label" : "privateApp",
"type" : "bool"
},
"localScheme" : {
"label" : "localScheme",
"type" : "string"
},
"authConfigRef" : {
"label" : "authConfigRef",
"type" : "string"
},
"issueCertCA" : {
"label" : "issueCertCA",
"type" : "string"
},
"root" : {
"label" : "root",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"additionalHeaders" : {
"label" : "additionalHeaders",
"type" : "object"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"clientConfig" : {
"label" : "clientConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "useCircuitBreaker", "retryInitialDelay", "cacheConnectionSettings", "proxy", "callTimeout", "callAndStreamTimeout", "globalTimeout", "maxErrors", "retries", "backoffFactor", "customTimeouts", "idleTimeout", "sampleInterval" ]
},
"matchingRoot" : {
"label" : "matchingRoot",
"type" : "string"
},
"forceHttps" : {
"label" : "forceHttps",
"type" : "bool"
},
"localHost" : {
"label" : "localHost",
"type" : "string"
},
"sendOtoroshiHeadersBack" : {
"label" : "sendOtoroshiHeadersBack",
"type" : "bool"
},
"healthCheck" : {
"label" : "healthCheck",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"strictlyPrivate" : {
"label" : "strictlyPrivate",
"type" : "bool"
},
"detectApiKeySooner" : {
"label" : "detectApiKeySooner",
"type" : "bool"
},
"allowHttp10" : {
"label" : "allowHttp10",
"type" : "bool"
},
"subdomain" : {
"label" : "subdomain",
"type" : "string"
},
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"stripPath" : {
"label" : "stripPath",
"type" : "bool"
},
"secComAlgoChallengeOtoToBack" : {
"label" : "secComAlgoChallengeOtoToBack",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"apiKeyConstraints" : {
"label" : "apiKeyConstraints",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"env" : {
"label" : "env",
"type" : "string"
},
"xForwardedHeaders" : {
"label" : "xForwardedHeaders",
"type" : "bool"
},
"transformerRefs" : {
"label" : "transformerRefs",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"gzip" : {
"label" : "gzip",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "compressionLevel", "blackList", "chunkedThreshold", "excludedPatterns", "bufferSize", "whiteList", "enabled" ]
},
"sendInfoToken" : {
"label" : "sendInfoToken",
"type" : "bool"
},
"tcpUdpTunneling" : {
"label" : "tcpUdpTunneling",
"type" : "bool"
},
"removeHeadersOut" : {
"label" : "removeHeadersOut",
"type" : "array",
"array" : true,
"format" : null
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"removeHeadersIn" : {
"label" : "removeHeadersIn",
"type" : "array",
"array" : true,
"format" : null
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"secComAlgoInfoToken" : {
"label" : "secComAlgoInfoToken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"userFacing" : {
"label" : "userFacing",
"type" : "bool"
},
"transformerConfig" : {
"label" : "transformerConfig",
"type" : "object"
},
"clientValidatorRef" : {
"label" : "clientValidatorRef",
"type" : "string"
},
"securityExcludedPatterns" : {
"label" : "securityExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"redirection" : {
"label" : "redirection",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "enabled", "code", "to" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"overrideHost" : {
"label" : "overrideHost",
"type" : "bool"
},
"accessValidator" : {
"label" : "accessValidator",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"sendStateChallenge" : {
"label" : "sendStateChallenge",
"type" : "bool"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"secComInfoTokenVersion" : {
"type" : "select",
"props" : {
"label" : "secComInfoTokenVersion",
"options" : [ "Legacy", "Latest" ]
}
},
"additionalHeadersOut" : {
"label" : "additionalHeadersOut",
"type" : "object"
},
"secComHeaders" : {
"label" : "secComHeaders",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "claimRequestName", "stateRequestName", "stateResponseName" ]
},
"matchingHeaders" : {
"label" : "matchingHeaders",
"type" : "object"
},
"secComAlgoChallengeBackToOto" : {
"label" : "secComAlgoChallengeBackToOto",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"secComUseSameAlgo" : {
"label" : "secComUseSameAlgo",
"type" : "bool"
},
"useNewWSClient" : {
"label" : "useNewWSClient",
"type" : "bool"
},
"secComExcludedPatterns" : {
"label" : "secComExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"redirectToLocal" : {
"label" : "redirectToLocal",
"type" : "bool"
},
"enforceSecureCommunication" : {
"label" : "enforceSecureCommunication",
"type" : "bool"
},
"missingOnlyHeadersOut" : {
"label" : "missingOnlyHeadersOut",
"type" : "object"
},
"secComSettings" : {
"label" : "secComSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"handleLegacyDomain" : {
"label" : "handleLegacyDomain",
"type" : "bool"
},
"canary" : {
"label" : "canary",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "enabled", "traffic", "targets", "root" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"secComVersion" : {
"type" : "select",
"props" : {
"label" : "secComVersion",
"options" : [ "V1", "v2" ]
}
},
"preRouting" : {
"label" : "preRouting",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"privatePatterns" : {
"label" : "privatePatterns",
"type" : "array",
"array" : true,
"format" : null
},
"targetsLoadBalancing" : {
"label" : "targetsLoadBalancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"cors" : {
"label" : "cors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "enabled", "allowCredentials", "maxAge", "allowMethods", "allowHeaders", "excludedPatterns", "exposeHeaders", "allowOrigin" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"publicPatterns" : {
"label" : "publicPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"api" : {
"label" : "api",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "exposeApi", "openApiDescriptorUrl" ]
},
"missingOnlyHeadersIn" : {
"label" : "missingOnlyHeadersIn",
"type" : "object"
},
"issueCert" : {
"label" : "issueCert",
"type" : "bool"
},
"headersVerification" : {
"label" : "headersVerification",
"type" : "object"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata", "enabled", "excludedPatterns", "ids" ]
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
}
},
"flow" : [ "buildMode", "hosts", "privateApp", "localScheme", "authConfigRef", "issueCertCA", "root", "name", "domain", "clientConfig", "matchingRoot", "forceHttps", "localHost", "sendOtoroshiHeadersBack", "healthCheck", "strictlyPrivate", "detectApiKeySooner", "allowHttp10", "subdomain", "paths", "stripPath", "secComAlgoChallengeOtoToBack", "apiKeyConstraints", "env", "xForwardedHeaders", "transformerRefs", "enabled", "gzip", "sendInfoToken", "tcpUdpTunneling", "removeHeadersOut", "useAkkaHttpClient", "maintenanceMode", "id", "removeHeadersIn", "logAnalyticsOnServer", "secComAlgoInfoToken", "userFacing", "clientValidatorRef", "securityExcludedPatterns", "ipFiltering", "targets", "redirection", "tags", "restrictions", "overrideHost", "accessValidator", "sendStateChallenge", "chaosConfig", "secComInfoTokenVersion", "secComHeaders", "secComAlgoChallengeBackToOto", "secComUseSameAlgo", "useNewWSClient", "secComExcludedPatterns", "redirectToLocal", "enforceSecureCommunication", "secComSettings", "handleLegacyDomain", "canary", "_loc", "plugins", "secComTtl", "description", "secComVersion", "preRouting", "groups", "readOnly", "privatePatterns", "targetsLoadBalancing", "cors", "publicPatterns", "api", "issueCert", "jwtVerifier", "letsEncrypt", "additionalHeaders", "transformerConfig", "additionalHeadersOut", "matchingHeaders", "missingOnlyHeadersOut", "metadata", "missingOnlyHeadersIn", "headersVerification" ]
},
"globalConfigs" : {
"label" : "globalConfigs",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"geolocationSettings" : {
"label" : "geolocationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "none" ]
}
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "type", "enabled", "apikey", "timeout", "path" ]
},
"alertsEmails" : {
"label" : "alertsEmails",
"type" : "array",
"array" : true,
"format" : null
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"anonymousReporting" : {
"label" : "anonymousReporting",
"type" : "bool"
},
"maxWebhookSize" : {
"label" : "maxWebhookSize",
"type" : "number"
},
"env" : {
"label" : "env",
"type" : "object"
},
"maxConcurrentRequests" : {
"label" : "maxConcurrentRequests",
"type" : "number"
},
"cleverSettings" : {
"label" : "cleverSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"consumerSecret" : {
"label" : "consumerSecret",
"type" : "string"
},
"consumerKey" : {
"label" : "consumerKey",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "string"
},
"orgaId" : {
"label" : "orgaId",
"type" : "string"
}
},
"flow" : [ "consumerSecret", "consumerKey", "secret", "token", "orgaId" ]
},
"templates" : {
"label" : "templates",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"team" : {
"label" : "team",
"type" : "string"
},
"script" : {
"label" : "script",
"type" : "string"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"group" : {
"label" : "group",
"type" : "string"
},
"tcpService" : {
"label" : "tcpService",
"type" : "string"
},
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"service" : {
"label" : "service",
"type" : "string"
},
"target" : {
"label" : "target",
"type" : "string"
},
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"dataExporter" : {
"label" : "dataExporter",
"type" : "string"
},
"route" : {
"label" : "route",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "string"
},
"template" : {
"label" : "template",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"authConfig" : {
"label" : "authConfig",
"type" : "string"
},
"descriptor" : {
"label" : "descriptor",
"type" : "string"
}
},
"flow" : [ "team", "script", "apikey", "group", "tcpService", "verifier", "service", "target", "certificate", "dataExporter", "route", "backend", "template", "tenant", "authConfig", "descriptor" ]
},
"endlessIpAddresses" : {
"label" : "endlessIpAddresses",
"type" : "array",
"array" : true,
"format" : null
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"kafkaConfig" : {
"label" : "kafkaConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendEvents" : {
"label" : "sendEvents",
"type" : "bool"
},
"truststore" : {
"label" : "truststore",
"type" : "string"
},
"hostValidation" : {
"label" : "hostValidation",
"type" : "bool"
},
"servers" : {
"label" : "servers",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"securityProtocol" : {
"label" : "securityProtocol",
"type" : "string"
},
"keystore" : {
"label" : "keystore",
"type" : "string"
},
"topic" : {
"label" : "topic",
"type" : "string"
},
"keyPass" : {
"label" : "keyPass",
"type" : "string"
},
"saslConfig" : {
"label" : "saslConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"mechanism" : {
"label" : "mechanism",
"type" : "string"
}
},
"flow" : [ "username", "password", "mechanism" ]
}
},
"flow" : [ "type", "sendEvents", "truststore", "hostValidation", "servers", "mtlsConfig", "securityProtocol", "keystore", "topic", "keyPass", "saslConfig" ]
},
"maxLogsSize" : {
"label" : "maxLogsSize",
"type" : "number"
},
"proxies" : {
"label" : "proxies",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"elastic" : {
"label" : "elastic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"eventsWebhooks" : {
"label" : "eventsWebhooks",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"jwk" : {
"label" : "jwk",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"auth" : {
"label" : "auth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"clevercloud" : {
"label" : "clevercloud",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"alertEmails" : {
"label" : "alertEmails",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"authority" : {
"label" : "authority",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"services" : {
"label" : "services",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
}
},
"flow" : [ "elastic", "eventsWebhooks", "jwk", "auth", "clevercloud", "alertEmails", "authority", "services" ]
},
"enableEmbeddedMetrics" : {
"label" : "enableEmbeddedMetrics",
"type" : "bool"
},
"elasticReadsConfig" : {
"label" : "elasticReadsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "type", "sendWorkers", "applyTemplate", "uris", "mtlsConfig", "version", "maxBulkSize", "headers", "indexSettings", "user", "index", "password" ]
},
"trustXForwarded" : {
"label" : "trustXForwarded",
"type" : "bool"
},
"quotasSettings" : {
"label" : "quotasSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"dailyQuotasThreshold" : {
"label" : "dailyQuotasThreshold",
"type" : "number"
},
"monthlyQuotasThreshold" : {
"label" : "monthlyQuotasThreshold",
"type" : "number"
}
},
"flow" : [ "enabled", "dailyQuotasThreshold", "monthlyQuotasThreshold" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"limitConcurrentRequests" : {
"label" : "limitConcurrentRequests",
"type" : "bool"
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"elasticWritesConfigs" : {
"label" : "elasticWritesConfigs",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "type", "sendWorkers", "applyTemplate", "uris", "mtlsConfig", "version", "maxBulkSize", "indexSettings", "user", "index", "password", "headers" ]
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"apiReadOnly" : {
"label" : "apiReadOnly",
"type" : "bool"
},
"backOfficeAuthRef" : {
"label" : "backOfficeAuthRef",
"type" : "string"
},
"streamEntityOnly" : {
"label" : "streamEntityOnly",
"type" : "bool"
},
"otoroshiId" : {
"label" : "otoroshiId",
"type" : "string"
},
"mailerSettings" : {
"label" : "mailerSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
},
"eu" : {
"label" : "eu",
"type" : "bool"
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"apiKeyPublic" : {
"label" : "apiKeyPublic",
"type" : "string"
},
"apiKeyPrivate" : {
"label" : "apiKeyPrivate",
"type" : "string"
}
},
"flow" : [ "type", "url", "headers", "to", "eu", "apiKey", "domain", "apiKeyPublic", "apiKeyPrivate" ]
},
"lines" : {
"label" : "lines",
"type" : "array",
"array" : true,
"format" : null
},
"extensions" : {
"label" : "extensions",
"type" : "object"
},
"middleFingers" : {
"label" : "middleFingers",
"type" : "bool"
},
"analyticsWebhooks" : {
"label" : "analyticsWebhooks",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "type", "url", "mtlsConfig", "headers" ]
},
"autoCert" : {
"label" : "autoCert",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"replyNicely" : {
"label" : "replyNicely",
"type" : "bool"
},
"notAllowed" : {
"label" : "notAllowed",
"type" : "array",
"array" : true,
"format" : null
},
"caRef" : {
"label" : "caRef",
"type" : "string"
}
},
"flow" : [ "allowed", "enabled", "replyNicely", "notAllowed", "caRef" ]
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"initWithNewEngine" : {
"label" : "initWithNewEngine",
"type" : "bool"
},
"letsEncryptSettings" : {
"label" : "letsEncryptSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"contacts" : {
"label" : "contacts",
"type" : "array",
"array" : true,
"format" : null
},
"emails" : {
"label" : "emails",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"server" : {
"label" : "server",
"type" : "string"
}
},
"flow" : [ "privateKey", "contacts", "emails", "enabled", "publicKey", "server" ]
},
"snowMonkeyConfig" : {
"label" : "snowMonkeyConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"dryRun" : {
"label" : "dryRun",
"type" : "bool"
},
"outageDurationTo" : {
"label" : "outageDurationTo",
"type" : "number"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"timesPerDay" : {
"label" : "timesPerDay",
"type" : "number"
},
"outageDurationFrom" : {
"label" : "outageDurationFrom",
"type" : "number"
},
"startTime" : {
"label" : "startTime",
"type" : "string"
},
"includeUserFacingDescriptors" : {
"label" : "includeUserFacingDescriptors",
"type" : "bool"
},
"targetGroups" : {
"label" : "targetGroups",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"stopTime" : {
"label" : "stopTime",
"type" : "string"
},
"outageStrategy" : {
"type" : "select",
"props" : {
"label" : "outageStrategy",
"options" : [ "AllServicesPerGroup", "OneServicePerGroup" ]
}
}
},
"flow" : [ "dryRun", "outageDurationTo", "chaosConfig", "timesPerDay", "outageDurationFrom", "startTime", "includeUserFacingDescriptors", "targetGroups", "enabled", "stopTime", "outageStrategy" ]
},
"scripts" : {
"label" : "scripts",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"jobConfig" : {
"label" : "jobConfig",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"transformersConfig" : {
"label" : "transformersConfig",
"type" : "object"
},
"transformersRefs" : {
"label" : "transformersRefs",
"type" : "array",
"array" : true,
"format" : null
},
"preRouteRefs" : {
"label" : "preRouteRefs",
"type" : "array",
"array" : true,
"format" : null
},
"sinkConfig" : {
"label" : "sinkConfig",
"type" : "object"
},
"jobRefs" : {
"label" : "jobRefs",
"type" : "array",
"array" : true,
"format" : null
},
"validatorRefs" : {
"label" : "validatorRefs",
"type" : "array",
"array" : true,
"format" : null
},
"sinkRefs" : {
"label" : "sinkRefs",
"type" : "array",
"array" : true,
"format" : null
},
"preRouteConfig" : {
"label" : "preRouteConfig",
"type" : "object"
},
"validatorConfig" : {
"label" : "validatorConfig",
"type" : "object"
}
},
"flow" : [ "jobConfig", "enabled", "transformersConfig", "transformersRefs", "preRouteRefs", "sinkConfig", "jobRefs", "validatorRefs", "sinkRefs", "preRouteConfig", "validatorConfig" ]
},
"perIpThrottlingQuota" : {
"label" : "perIpThrottlingQuota",
"type" : "number"
},
"useCircuitBreakers" : {
"label" : "useCircuitBreakers",
"type" : "bool"
},
"maxHttp10ResponseSize" : {
"label" : "maxHttp10ResponseSize",
"type" : "number"
},
"tlsSettings" : {
"label" : "tlsSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"trustedCAsServer" : {
"label" : "trustedCAsServer",
"type" : "array",
"array" : true,
"format" : null
},
"includeJdkCaClient" : {
"label" : "includeJdkCaClient",
"type" : "bool"
},
"randomIfNotFound" : {
"label" : "randomIfNotFound",
"type" : "bool"
},
"defaultDomain" : {
"label" : "defaultDomain",
"type" : "string"
},
"includeJdkCaServer" : {
"label" : "includeJdkCaServer",
"type" : "bool"
}
},
"flow" : [ "trustedCAsServer", "includeJdkCaClient", "randomIfNotFound", "defaultDomain", "includeJdkCaServer" ]
},
"statsdConfig" : {
"label" : "statsdConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"datadog" : {
"label" : "datadog",
"type" : "bool"
},
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
}
},
"flow" : [ "datadog", "host", "port" ]
},
"autoLinkToDefaultGroup" : {
"label" : "autoLinkToDefaultGroup",
"type" : "bool"
},
"alertsWebhooks" : {
"label" : "alertsWebhooks",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "type", "url", "mtlsConfig", "headers" ]
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"u2fLoginOnly" : {
"label" : "u2fLoginOnly",
"type" : "bool"
},
"userAgentSettings" : {
"label" : "userAgentSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled" ]
}
},
"flow" : [ "geolocationSettings", "alertsEmails", "throttlingQuota", "anonymousReporting", "maxWebhookSize", "maxConcurrentRequests", "cleverSettings", "templates", "endlessIpAddresses", "plugins", "kafkaConfig", "maxLogsSize", "proxies", "enableEmbeddedMetrics", "elasticReadsConfig", "trustXForwarded", "quotasSettings", "tags", "limitConcurrentRequests", "useAkkaHttpClient", "elasticWritesConfigs", "logAnalyticsOnServer", "apiReadOnly", "backOfficeAuthRef", "streamEntityOnly", "otoroshiId", "mailerSettings", "lines", "middleFingers", "analyticsWebhooks", "autoCert", "maintenanceMode", "initWithNewEngine", "letsEncryptSettings", "snowMonkeyConfig", "scripts", "perIpThrottlingQuota", "useCircuitBreakers", "maxHttp10ResponseSize", "tlsSettings", "statsdConfig", "autoLinkToDefaultGroup", "alertsWebhooks", "ipFiltering", "u2fLoginOnly", "userAgentSettings", "env", "metadata", "extensions" ]
},
"authModules" : {
"label" : "authModules",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "saml", "oauth1", "oauth2", "ldap", "basic" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"clientSideSessionEnabled" : {
"label" : "clientSideSessionEnabled",
"type" : "bool"
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "bool"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"users" : {
"label" : "users",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"password" : {
"label" : "password",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"email" : {
"label" : "email",
"type" : "string"
},
"webauthn" : {
"label" : "webauthn",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"handle" : {
"label" : "handle",
"type" : "string"
},
"credentials" : {
"label" : "credentials",
"type" : "object"
}
},
"flow" : [ "handle", "credentials" ]
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"name" : {
"label" : "name",
"type" : "string"
}
},
"flow" : [ "password", "tags", "email", "webauthn", "rights", "name", "metadata" ]
},
"sessionMaxAge" : {
"label" : "sessionMaxAge",
"type" : "number"
},
"webauthn" : {
"label" : "webauthn",
"type" : "bool"
},
"userValidators" : {
"label" : "userValidators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"sessionCookieValues" : {
"label" : "sessionCookieValues",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "httpOnly", "secure" ]
},
"extraMetadata" : {
"label" : "extraMetadata",
"type" : "object"
},
"rightsOverride" : {
"label" : "rightsOverride",
"type" : "object"
},
"clientId" : {
"label" : "clientId",
"type" : "string"
},
"otoroshiRightsField" : {
"label" : "otoroshiRightsField",
"type" : "string"
},
"scope" : {
"label" : "scope",
"type" : "string"
},
"accessTokenField" : {
"label" : "accessTokenField",
"type" : "string"
},
"superAdmins" : {
"label" : "superAdmins",
"type" : "bool"
},
"refreshTokens" : {
"label" : "refreshTokens",
"type" : "bool"
},
"loginUrl" : {
"label" : "loginUrl",
"type" : "string"
},
"apiKeyTagsField" : {
"label" : "apiKeyTagsField",
"type" : "string"
},
"otoroshiDataField" : {
"label" : "otoroshiDataField",
"type" : "string"
},
"emailField" : {
"label" : "emailField",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"tokenUrl" : {
"label" : "tokenUrl",
"type" : "string"
},
"useCookie" : {
"label" : "useCookie",
"type" : "bool"
},
"pkce" : {
"label" : "pkce",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"algorithm" : {
"label" : "algorithm",
"type" : "string"
}
},
"flow" : [ "enabled", "algorithm" ]
},
"authorizeUrl" : {
"label" : "authorizeUrl",
"type" : "string"
},
"callbackUrl" : {
"label" : "callbackUrl",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"apiKeyMetaField" : {
"label" : "apiKeyMetaField",
"type" : "string"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"useJson" : {
"label" : "useJson",
"type" : "bool"
},
"oidConfig" : {
"label" : "oidConfig",
"type" : "string"
},
"claims" : {
"label" : "claims",
"type" : "string"
},
"noWildcardRedirectURI" : {
"label" : "noWildcardRedirectURI",
"type" : "bool"
},
"nameField" : {
"label" : "nameField",
"type" : "string"
},
"introspectionUrl" : {
"label" : "introspectionUrl",
"type" : "string"
},
"logoutUrl" : {
"label" : "logoutUrl",
"type" : "string"
},
"dataOverride" : {
"label" : "dataOverride",
"type" : "object"
},
"userInfoUrl" : {
"label" : "userInfoUrl",
"type" : "string"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"readProfileFromToken" : {
"label" : "readProfileFromToken",
"type" : "bool"
},
"allowEmptyPassword" : {
"label" : "allowEmptyPassword",
"type" : "bool"
},
"groupFilters" : {
"label" : "groupFilters",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"group" : {
"label" : "group",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"team" : {
"label" : "team",
"type" : "string"
}
},
"flow" : [ "group", "tenant", "team" ]
},
"serverUrls" : {
"label" : "serverUrls",
"type" : "array",
"array" : true,
"format" : null
},
"searchBase" : {
"label" : "searchBase",
"type" : "string"
},
"groupRights" : {
"label" : "groupRights",
"type" : "object"
},
"metadataField" : {
"label" : "metadataField",
"type" : "string"
},
"searchFilter" : {
"label" : "searchFilter",
"type" : "string"
},
"adminUsername" : {
"label" : "adminUsername",
"type" : "string"
},
"extractProfileFilter" : {
"label" : "extractProfileFilter",
"type" : "array",
"array" : true,
"format" : null
},
"userBase" : {
"label" : "userBase",
"type" : "string"
},
"adminPassword" : {
"label" : "adminPassword",
"type" : "string"
},
"extractProfileFilterNot" : {
"label" : "extractProfileFilterNot",
"type" : "array",
"array" : true,
"format" : null
},
"extractProfile" : {
"label" : "extractProfile",
"type" : "bool"
},
"accessTokenURL" : {
"label" : "accessTokenURL",
"type" : "string"
},
"authorizeURL" : {
"label" : "authorizeURL",
"type" : "string"
},
"consumerKey" : {
"label" : "consumerKey",
"type" : "string"
},
"callbackURL" : {
"label" : "callbackURL",
"type" : "string"
},
"profileURL" : {
"label" : "profileURL",
"type" : "string"
},
"httpMethod" : {
"label" : "httpMethod",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"requestTokenURL" : {
"label" : "requestTokenURL",
"type" : "string"
},
"consumerSecret" : {
"label" : "consumerSecret",
"type" : "string"
},
"ssoProtocolBinding" : {
"label" : "ssoProtocolBinding",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"emailAttributeName" : {
"label" : "emailAttributeName",
"type" : "string"
},
"validatingCertificates" : {
"label" : "validatingCertificates",
"type" : "array",
"array" : true,
"format" : null
},
"singleLogoutProtocolBinding" : {
"label" : "singleLogoutProtocolBinding",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"issuer" : {
"label" : "issuer",
"type" : "string"
},
"signature" : {
"label" : "signature",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"algorithm" : {
"label" : "algorithm",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"canocalizationMethod" : {
"label" : "canocalizationMethod",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "algorithm", "canocalizationMethod" ]
},
"singleLogoutUrl" : {
"label" : "singleLogoutUrl",
"type" : "string"
},
"usedNameIDAsEmail" : {
"label" : "usedNameIDAsEmail",
"type" : "bool"
},
"singleSignOnUrl" : {
"label" : "singleSignOnUrl",
"type" : "string"
},
"validateAssertions" : {
"label" : "validateAssertions",
"type" : "bool"
},
"nameIDFormat" : {
"label" : "nameIDFormat",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"validateSignature" : {
"label" : "validateSignature",
"type" : "bool"
},
"credentials" : {
"label" : "credentials",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"signingKey" : {
"label" : "signingKey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "certificate", "privateKey", "certId", "useOtoroshiCertificate" ]
},
"encryptionKey" : {
"label" : "encryptionKey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "certificate", "privateKey", "certId", "useOtoroshiCertificate" ]
},
"signedDocuments" : {
"label" : "signedDocuments",
"type" : "bool"
},
"encryptedAssertions" : {
"label" : "encryptedAssertions",
"type" : "bool"
}
},
"flow" : [ "signingKey", "encryptionKey", "signedDocuments", "encryptedAssertions" ]
}
},
"flow" : [ "type", "desc", "name", "clientSideSessionEnabled", "basicAuth", "tags", "users", "sessionMaxAge", "webauthn", "userValidators", "id", "_loc", "sessionCookieValues", "clientId", "otoroshiRightsField", "scope", "accessTokenField", "superAdmins", "refreshTokens", "loginUrl", "apiKeyTagsField", "otoroshiDataField", "emailField", "mtlsConfig", "tokenUrl", "useCookie", "pkce", "authorizeUrl", "callbackUrl", "proxy", "apiKeyMetaField", "clientSecret", "useJson", "oidConfig", "claims", "noWildcardRedirectURI", "nameField", "introspectionUrl", "logoutUrl", "userInfoUrl", "jwtVerifier", "readProfileFromToken", "allowEmptyPassword", "groupFilters", "serverUrls", "searchBase", "metadataField", "searchFilter", "adminUsername", "extractProfileFilter", "userBase", "adminPassword", "extractProfileFilterNot", "extractProfile", "accessTokenURL", "authorizeURL", "consumerKey", "callbackURL", "profileURL", "httpMethod", "requestTokenURL", "consumerSecret", "ssoProtocolBinding", "emailAttributeName", "validatingCertificates", "singleLogoutProtocolBinding", "issuer", "signature", "singleLogoutUrl", "usedNameIDAsEmail", "singleSignOnUrl", "validateAssertions", "nameIDFormat", "validateSignature", "credentials", "metadata", "extraMetadata", "rightsOverride", "dataOverride", "groupRights" ]
},
"tcpServices" : {
"label" : "tcpServices",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"description" : {
"label" : "description",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"domain" : {
"label" : "domain",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"ip" : {
"label" : "ip",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tls" : {
"label" : "tls",
"type" : "bool"
}
},
"flow" : [ "host", "ip", "port", "tls" ]
}
},
"flow" : [ "domain", "targets" ]
},
"clientAuth" : {
"type" : "select",
"props" : {
"label" : "clientAuth",
"options" : [ "Need", "None", "Want" ]
}
},
"interface" : {
"label" : "interface",
"type" : "string"
},
"sni" : {
"label" : "sni",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"forwardIfNoMatch" : {
"label" : "forwardIfNoMatch",
"type" : "bool"
},
"forwardsTo" : {
"label" : "forwardsTo",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"ip" : {
"label" : "ip",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tls" : {
"label" : "tls",
"type" : "bool"
}
},
"flow" : [ "host", "ip", "port", "tls" ]
}
},
"flow" : [ "enabled", "forwardIfNoMatch", "forwardsTo" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"name" : {
"label" : "name",
"type" : "string"
},
"tls" : {
"type" : "select",
"props" : {
"label" : "tls",
"options" : [ "Disabled", "Enabled", "PassThrough" ]
}
}
},
"flow" : [ "enabled", "description", "port", "tags", "rules", "clientAuth", "interface", "sni", "id", "_loc", "name", "tls", "metadata" ]
},
"certificates" : {
"label" : "certificates",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"certType" : {
"type" : "select",
"props" : {
"label" : "certType",
"options" : [ "client", "ca", "letsEncrypt", "keypair", "selfSigned", "certificate" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"revoked" : {
"label" : "revoked",
"type" : "bool"
},
"subject" : {
"label" : "subject",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"ca" : {
"label" : "ca",
"type" : "bool"
},
"keypair" : {
"label" : "keypair",
"type" : "bool"
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
},
"autoRenew" : {
"label" : "autoRenew",
"type" : "bool"
},
"caRef" : {
"label" : "caRef",
"type" : "string"
},
"to" : {
"label" : "to",
"type" : "number"
},
"exposed" : {
"label" : "exposed",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"sans" : {
"label" : "sans",
"type" : "array",
"array" : true,
"format" : null
},
"client" : {
"label" : "client",
"type" : "bool"
},
"from" : {
"label" : "from",
"type" : "number"
},
"valid" : {
"label" : "valid",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"selfSigned" : {
"label" : "selfSigned",
"type" : "bool"
},
"chain" : {
"label" : "chain",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "certType", "name", "revoked", "subject", "description", "tags", "domain", "ca", "keypair", "letsEncrypt", "autoRenew", "caRef", "to", "exposed", "id", "_loc", "sans", "client", "from", "valid", "privateKey", "selfSigned", "chain", "password", "metadata" ]
},
"simpleAdmins" : {
"label" : "simpleAdmins",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "simple", "webauthn" ]
}
},
"username" : {
"label" : "username",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"label" : {
"label" : "label",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"typ" : {
"type" : "select",
"props" : {
"label" : "typ",
"options" : [ "SIMPLE", "WEBAUTHN" ]
}
},
"createdAt" : {
"label" : "createdAt",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "type", "username", "tags", "label", "_loc", "typ", "createdAt", "rights", "password", "metadata" ]
},
"wasmPlugins" : {
"label" : "wasmPlugins",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"name" : {
"label" : "name",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"steps" : {
"label" : "steps",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : { },
"flow" : [ ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"description" : {
"label" : "description",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "allowedHosts", "memoryPages", "allowedPaths", "instances", "config", "authorizations", "opa", "wasi", "functionName" ]
}
},
"flow" : [ "_loc", "name", "tags", "steps", "id", "description", "config", "metadata" ]
},
"serviceGroups" : {
"label" : "serviceGroups",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"name" : {
"label" : "name",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"description" : {
"label" : "description",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "id", "_loc", "name", "description", "tags", "metadata" ]
}
},
"flow" : [ "serviceGroups", "wasmPlugins", "simpleAdmins", "certificates", "tcpServices", "authModules", "globalConfigs", "serviceDescriptors", "routeCompositions", "teams", "dataExporters", "tenants", "jwtVerifiers", "scripts", "backends", "apiKeys", "routes" ]
},
"otoroshi.models.BadResponse" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers", "body", "status" ]
},
"otoroshi.next.plugins.JsonTransform" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.AccessValidatorContext" : {
"schema" : {
"ctx" : {
"label" : "ctx",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "ctx" ]
},
"otoroshi.next.plugins.OIDCAccessTokenConfig" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"at_least_one" : {
"label" : "at_least_one",
"type" : "bool"
},
"config" : {
"label" : "config",
"type" : "string"
}
},
"flow" : [ "config", "at_least_one", "enabled" ]
},
"ExperimentalFormResponse" : {
"schema" : { },
"flow" : [ ]
},
"UpdateQuotasBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.ClientConfig" : {
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "sampleInterval", "idleTimeout", "customTimeouts", "backoffFactor", "retries", "maxErrors", "globalTimeout", "callAndStreamTimeout", "callTimeout", "retryInitialDelay", "useCircuitBreaker", "connectionTimeout", "cacheConnectionSettings", "proxy" ]
},
"play.api.libs.ws.WSProxyServer" : {
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "nonProxyHosts", "encoding", "ntlmDomain", "password", "principal", "protocol", "port", "host" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesIngressSyncJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.OtoroshiAdminType" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgCanarySettings" : {
"schema" : {
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"root" : {
"label" : "root",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "targets", "root", "traffic" ]
},
"otoroshi.next.plugins.NgDiscoverySelfRegistrationConfig" : {
"schema" : {
"raw" : {
"type" : "code",
"props" : {
"label" : "raw",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "raw" ]
},
"otoroshi.next.plugins.JwtVerifierUtils" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgRestrictionPath" : {
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "path", "method" ]
},
"LetsEncryptCertBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.OIDCAccessTokenHeader" : {
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"jwt" : {
"label" : "jwt",
"type" : "bool"
}
},
"flow" : [ "jwt", "header_name", "name", "send" ]
},
"otoroshi.next.plugins.NgFaultConfig" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.RemoveHeadersOut" : {
"schema" : {
"names" : {
"label" : "names",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "names" ]
},
"otoroshi.plugins.jwt.JwtUserExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.RobotConfig" : {
"schema" : {
"robot_txt_content" : {
"label" : "robot_txt_content",
"type" : "string"
},
"meta_content" : {
"label" : "meta_content",
"type" : "string"
},
"robot_enabled" : {
"label" : "robot_enabled",
"type" : "bool"
},
"header_content" : {
"label" : "header_content",
"type" : "string"
},
"header_enabled" : {
"label" : "header_enabled",
"type" : "bool"
},
"meta_enabled" : {
"label" : "meta_enabled",
"type" : "bool"
}
},
"flow" : [ "meta_enabled", "header_enabled", "header_content", "robot_enabled", "meta_content", "robot_txt_content" ]
},
"otoroshi.plugins.apikeys.ClientCredentialFlowBody" : {
"schema" : {
"scope" : {
"label" : "scope",
"type" : "string"
},
"clientId" : {
"label" : "clientId",
"type" : "string"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"grantType" : {
"label" : "grantType",
"type" : "string"
},
"bearerKind" : {
"label" : "bearerKind",
"type" : "string"
}
},
"flow" : [ "bearerKind", "grantType", "clientSecret", "clientId", "scope" ]
},
"otoroshi.auth.PKCEConfig" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"algorithm" : {
"label" : "algorithm",
"type" : "string"
}
},
"flow" : [ "algorithm", "enabled" ]
},
"otoroshi.plugins.oidc.OIDCAccessTokenValidator" : {
"schema" : { },
"flow" : [ ]
},
"SimpleAdminList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgGeolocationInfoHeader" : {
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "header_name" ]
},
"otoroshi.plugins.biscuit.PreRoutingVerifierContext" : {
"schema" : {
"ctx" : {
"label" : "ctx",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"globalConfig" : {
"label" : "globalConfig",
"type" : "object"
},
"snowflake" : {
"label" : "snowflake",
"type" : "string"
},
"descriptor" : {
"label" : "descriptor",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"buildMode" : {
"label" : "buildMode",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"privateApp" : {
"label" : "privateApp",
"type" : "bool"
},
"localScheme" : {
"label" : "localScheme",
"type" : "string"
},
"authConfigRef" : {
"label" : "authConfigRef",
"type" : "string"
},
"issueCertCA" : {
"label" : "issueCertCA",
"type" : "string"
},
"root" : {
"label" : "root",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"additionalHeaders" : {
"label" : "additionalHeaders",
"type" : "object"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"clientConfig" : {
"label" : "clientConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "useCircuitBreaker", "retryInitialDelay", "cacheConnectionSettings", "proxy", "callTimeout", "callAndStreamTimeout", "globalTimeout", "maxErrors", "retries", "backoffFactor", "customTimeouts", "idleTimeout", "sampleInterval" ]
},
"matchingRoot" : {
"label" : "matchingRoot",
"type" : "string"
},
"forceHttps" : {
"label" : "forceHttps",
"type" : "bool"
},
"localHost" : {
"label" : "localHost",
"type" : "string"
},
"sendOtoroshiHeadersBack" : {
"label" : "sendOtoroshiHeadersBack",
"type" : "bool"
},
"healthCheck" : {
"label" : "healthCheck",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"strictlyPrivate" : {
"label" : "strictlyPrivate",
"type" : "bool"
},
"detectApiKeySooner" : {
"label" : "detectApiKeySooner",
"type" : "bool"
},
"allowHttp10" : {
"label" : "allowHttp10",
"type" : "bool"
},
"subdomain" : {
"label" : "subdomain",
"type" : "string"
},
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"stripPath" : {
"label" : "stripPath",
"type" : "bool"
},
"secComAlgoChallengeOtoToBack" : {
"label" : "secComAlgoChallengeOtoToBack",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"apiKeyConstraints" : {
"label" : "apiKeyConstraints",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"env" : {
"label" : "env",
"type" : "string"
},
"xForwardedHeaders" : {
"label" : "xForwardedHeaders",
"type" : "bool"
},
"transformerRefs" : {
"label" : "transformerRefs",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"gzip" : {
"label" : "gzip",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "compressionLevel", "blackList", "chunkedThreshold", "excludedPatterns", "bufferSize", "whiteList", "enabled" ]
},
"sendInfoToken" : {
"label" : "sendInfoToken",
"type" : "bool"
},
"tcpUdpTunneling" : {
"label" : "tcpUdpTunneling",
"type" : "bool"
},
"removeHeadersOut" : {
"label" : "removeHeadersOut",
"type" : "array",
"array" : true,
"format" : null
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"removeHeadersIn" : {
"label" : "removeHeadersIn",
"type" : "array",
"array" : true,
"format" : null
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"secComAlgoInfoToken" : {
"label" : "secComAlgoInfoToken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"userFacing" : {
"label" : "userFacing",
"type" : "bool"
},
"transformerConfig" : {
"label" : "transformerConfig",
"type" : "object"
},
"clientValidatorRef" : {
"label" : "clientValidatorRef",
"type" : "string"
},
"securityExcludedPatterns" : {
"label" : "securityExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"redirection" : {
"label" : "redirection",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "enabled", "code", "to" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"overrideHost" : {
"label" : "overrideHost",
"type" : "bool"
},
"accessValidator" : {
"label" : "accessValidator",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"sendStateChallenge" : {
"label" : "sendStateChallenge",
"type" : "bool"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"secComInfoTokenVersion" : {
"type" : "select",
"props" : {
"label" : "secComInfoTokenVersion",
"options" : [ "Legacy", "Latest" ]
}
},
"additionalHeadersOut" : {
"label" : "additionalHeadersOut",
"type" : "object"
},
"secComHeaders" : {
"label" : "secComHeaders",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "claimRequestName", "stateRequestName", "stateResponseName" ]
},
"matchingHeaders" : {
"label" : "matchingHeaders",
"type" : "object"
},
"secComAlgoChallengeBackToOto" : {
"label" : "secComAlgoChallengeBackToOto",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"secComUseSameAlgo" : {
"label" : "secComUseSameAlgo",
"type" : "bool"
},
"useNewWSClient" : {
"label" : "useNewWSClient",
"type" : "bool"
},
"secComExcludedPatterns" : {
"label" : "secComExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"redirectToLocal" : {
"label" : "redirectToLocal",
"type" : "bool"
},
"enforceSecureCommunication" : {
"label" : "enforceSecureCommunication",
"type" : "bool"
},
"missingOnlyHeadersOut" : {
"label" : "missingOnlyHeadersOut",
"type" : "object"
},
"secComSettings" : {
"label" : "secComSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"handleLegacyDomain" : {
"label" : "handleLegacyDomain",
"type" : "bool"
},
"canary" : {
"label" : "canary",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "enabled", "traffic", "targets", "root" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"secComVersion" : {
"type" : "select",
"props" : {
"label" : "secComVersion",
"options" : [ "V1", "v2" ]
}
},
"preRouting" : {
"label" : "preRouting",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"privatePatterns" : {
"label" : "privatePatterns",
"type" : "array",
"array" : true,
"format" : null
},
"targetsLoadBalancing" : {
"label" : "targetsLoadBalancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"cors" : {
"label" : "cors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "enabled", "allowCredentials", "maxAge", "allowMethods", "allowHeaders", "excludedPatterns", "exposeHeaders", "allowOrigin" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"publicPatterns" : {
"label" : "publicPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"api" : {
"label" : "api",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "exposeApi", "openApiDescriptorUrl" ]
},
"missingOnlyHeadersIn" : {
"label" : "missingOnlyHeadersIn",
"type" : "object"
},
"issueCert" : {
"label" : "issueCert",
"type" : "bool"
},
"headersVerification" : {
"label" : "headersVerification",
"type" : "object"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata", "enabled", "excludedPatterns", "ids" ]
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
}
},
"flow" : [ "buildMode", "hosts", "privateApp", "localScheme", "authConfigRef", "issueCertCA", "root", "name", "additionalHeaders", "domain", "clientConfig", "matchingRoot", "forceHttps", "localHost", "sendOtoroshiHeadersBack", "healthCheck", "strictlyPrivate", "detectApiKeySooner", "allowHttp10", "subdomain", "paths", "stripPath", "secComAlgoChallengeOtoToBack", "apiKeyConstraints", "env", "xForwardedHeaders", "transformerRefs", "enabled", "gzip", "sendInfoToken", "tcpUdpTunneling", "removeHeadersOut", "useAkkaHttpClient", "maintenanceMode", "id", "removeHeadersIn", "logAnalyticsOnServer", "secComAlgoInfoToken", "userFacing", "transformerConfig", "clientValidatorRef", "securityExcludedPatterns", "ipFiltering", "targets", "redirection", "tags", "restrictions", "overrideHost", "accessValidator", "sendStateChallenge", "chaosConfig", "secComInfoTokenVersion", "additionalHeadersOut", "secComHeaders", "matchingHeaders", "secComAlgoChallengeBackToOto", "secComUseSameAlgo", "useNewWSClient", "secComExcludedPatterns", "redirectToLocal", "enforceSecureCommunication", "missingOnlyHeadersOut", "secComSettings", "handleLegacyDomain", "canary", "_loc", "plugins", "secComTtl", "description", "secComVersion", "preRouting", "groups", "readOnly", "privatePatterns", "targetsLoadBalancing", "cors", "metadata", "publicPatterns", "api", "missingOnlyHeadersIn", "issueCert", "headersVerification", "jwtVerifier", "letsEncrypt" ]
},
"config" : {
"label" : "config",
"type" : "object"
},
"index" : {
"label" : "index",
"type" : "number"
},
"attrs" : {
"label" : "attrs",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "globalConfig", "snowflake", "descriptor", "config", "index", "attrs" ]
},
"apk" : {
"label" : "apk",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"dailyQuota" : {
"label" : "dailyQuota",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"constrainedServicesOnly" : {
"label" : "constrainedServicesOnly",
"type" : "bool"
},
"allowClientIdOnly" : {
"label" : "allowClientIdOnly",
"type" : "bool"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"validUntil" : {
"label" : "validUntil",
"type" : "string"
},
"clientName" : {
"label" : "clientName",
"type" : "string"
},
"monthlyQuota" : {
"label" : "monthlyQuota",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"rotation" : {
"label" : "rotation",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"rotationEvery" : {
"label" : "rotationEvery",
"type" : "number"
},
"gracePeriod" : {
"label" : "gracePeriod",
"type" : "number"
},
"nextSecret" : {
"label" : "nextSecret",
"type" : "string"
}
},
"flow" : [ "enabled", "rotationEvery", "gracePeriod", "nextSecret" ]
},
"authorizedEntities" : {
"label" : "authorizedEntities",
"type" : "array",
"array" : true,
"format" : null
},
"clientId" : {
"label" : "clientId",
"type" : "string"
}
},
"flow" : [ "dailyQuota", "metadata", "throttlingQuota", "constrainedServicesOnly", "allowClientIdOnly", "_loc", "restrictions", "tags", "enabled", "readOnly", "clientSecret", "validUntil", "clientName", "monthlyQuota", "description", "rotation", "authorizedEntities", "clientId" ]
}
},
"flow" : [ "ctx", "apk" ]
},
"otoroshi.next.plugins.HMACCaller" : {
"schema" : {
"secret" : {
"label" : "secret",
"type" : "string"
},
"algo" : {
"label" : "algo",
"type" : "string"
},
"authorization_header" : {
"label" : "authorization_header",
"type" : "string"
}
},
"flow" : [ "authorization_header", "algo", "secret" ]
},
"otoroshi.ssl.pki.models.GenKeyPairResponse" : {
"schema" : {
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
}
},
"flow" : [ "privateKey", "publicKey" ]
},
"otoroshi.models.BackOfficeUser" : {
"schema" : {
"randomId" : {
"label" : "randomId",
"type" : "string"
},
"profile" : {
"label" : "profile",
"type" : "object"
},
"authConfigId" : {
"label" : "authConfigId",
"type" : "string"
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"createdAt" : {
"label" : "createdAt",
"type" : "number"
},
"token" : {
"label" : "token",
"type" : "object"
},
"name" : {
"label" : "name",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"email" : {
"label" : "email",
"type" : "string"
},
"simpleLogin" : {
"label" : "simpleLogin",
"type" : "bool"
},
"expiredAt" : {
"label" : "expiredAt",
"type" : "number"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"lastRefresh" : {
"label" : "lastRefresh",
"type" : "number"
}
},
"flow" : [ "lastRefresh", "expiredAt", "simpleLogin", "email", "metadata", "tags", "name", "token", "createdAt", "authConfigId", "profile", "randomId", "rights", "_loc" ]
},
"otoroshi.auth.GroupFilter" : {
"schema" : {
"group" : {
"label" : "group",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"team" : {
"label" : "team",
"type" : "string"
}
},
"flow" : [ "team", "group", "tenant" ]
},
"otoroshi.next.models.NgPluginInstance" : {
"schema" : {
"instance_id" : {
"label" : "instance_id",
"type" : "number"
},
"debug" : {
"label" : "debug",
"type" : "bool"
},
"config" : {
"label" : "config",
"type" : "object"
},
"exclude" : {
"label" : "exclude",
"type" : "array",
"array" : true,
"format" : null
},
"plugin_index" : {
"label" : "plugin_index",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"include" : {
"label" : "include",
"type" : "array",
"array" : true,
"format" : null
},
"plugin" : {
"label" : "plugin",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled", "plugin", "include", "exclude", "config", "debug", "instance_id", "plugin_index" ]
},
"otoroshi.models.HealthCheck" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "timeout", "url", "enabled" ]
},
"otoroshi.next.plugins.NgDeferPlugin" : {
"schema" : {
"duration" : {
"label" : "duration",
"type" : "number"
}
},
"flow" : [ "duration" ]
},
"otoroshi.plugins.oidc.ThirdPartyApiKeyConfig" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.tcp.TcpTarget" : {
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"ip" : {
"label" : "ip",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tls" : {
"label" : "tls",
"type" : "bool"
}
},
"flow" : [ "tls", "port", "ip", "host" ]
},
"otoroshi.models.GeoPositionRadius" : {
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "radius", "longitude", "latitude" ]
},
"otoroshi.plugins.jsoup.HtmlPatcher" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.discovery.DiscoveryJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.IpStackGeolocationSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "none", "maxmind", "ipstack" ]
}
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "timeout", "apikey", "enabled", "type" ]
},
"otoroshi.models.PrivateAppsUser" : {
"schema" : {
"realm" : {
"label" : "realm",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "object"
},
"expiredAt" : {
"label" : "expiredAt",
"type" : "number"
},
"profile" : {
"label" : "profile",
"type" : "object"
},
"lastRefresh" : {
"label" : "lastRefresh",
"type" : "number"
},
"randomId" : {
"label" : "randomId",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
},
"createdAt" : {
"label" : "createdAt",
"type" : "number"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"authConfigId" : {
"label" : "authConfigId",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"name" : {
"label" : "name",
"type" : "string"
},
"otoroshiData" : {
"label" : "otoroshiData",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
}
},
"flow" : [ "metadata", "otoroshiData", "name", "tags", "authConfigId", "createdAt", "email", "randomId", "lastRefresh", "profile", "expiredAt", "token", "realm", "_loc" ]
},
"otoroshi.next.plugins.NgIzanamiV1ProxyConfig" : {
"schema" : {
"features_enabled" : {
"label" : "features_enabled",
"type" : "bool"
},
"client_secret" : {
"label" : "client_secret",
"type" : "string"
},
"features_with_context_enabled" : {
"label" : "features_with_context_enabled",
"type" : "bool"
},
"config_pattern" : {
"label" : "config_pattern",
"type" : "string"
},
"feature_pattern" : {
"label" : "feature_pattern",
"type" : "string"
},
"client_id" : {
"label" : "client_id",
"type" : "string"
},
"tls" : {
"label" : "tls",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"izanami_url" : {
"label" : "izanami_url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"auto_context" : {
"label" : "auto_context",
"type" : "bool"
},
"configuration_enabled" : {
"label" : "configuration_enabled",
"type" : "bool"
}
},
"flow" : [ "configuration_enabled", "auto_context", "path", "timeout", "izanami_url", "client_id", "feature_pattern", "config_pattern", "features_with_context_enabled", "client_secret", "features_enabled", "tls" ]
},
"otoroshi.plugins.core.apikeys.CustomHeadersApikeyExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.events.PulsarConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"tlsTrustCertsFilePath" : {
"label" : "tlsTrustCertsFilePath",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"uri" : {
"label" : "uri",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"topic" : {
"label" : "topic",
"type" : "string"
},
"namespace" : {
"label" : "namespace",
"type" : "string"
}
},
"flow" : [ "namespace", "topic", "uri", "tenant", "tlsTrustCertsFilePath", "type", "mtlsConfig" ]
},
"otoroshi.auth.SAMLProtocolBinding" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesEntity" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgMinimalRoute" : {
"schema" : {
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"override_plugins" : {
"label" : "override_plugins",
"type" : "bool"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
}
},
"flow" : [ "root", "targets", "load_balancing", "rewrite" ]
}
},
"flow" : [ "override_plugins", "backend_ref", "frontend", "backend" ]
},
"otoroshi.ssl.pki.models.GenKeyPairQuery" : {
"schema" : {
"algo" : {
"label" : "algo",
"type" : "string"
},
"size" : {
"label" : "size",
"type" : "number"
}
},
"flow" : [ "size", "algo" ]
},
"otoroshi.models.RemainingQuotas" : {
"schema" : {
"currentCallsPerSec" : {
"label" : "currentCallsPerSec",
"type" : "number"
},
"remainingCallsPerSec" : {
"label" : "remainingCallsPerSec",
"type" : "number"
},
"currentCallsPerDay" : {
"label" : "currentCallsPerDay",
"type" : "number"
},
"authorizedCallsPerDay" : {
"label" : "authorizedCallsPerDay",
"type" : "number"
},
"currentCallsPerMonth" : {
"label" : "currentCallsPerMonth",
"type" : "number"
},
"remainingCallsPerMonth" : {
"label" : "remainingCallsPerMonth",
"type" : "number"
},
"authorizedCallsPerSec" : {
"label" : "authorizedCallsPerSec",
"type" : "number"
},
"authorizedCallsPerMonth" : {
"label" : "authorizedCallsPerMonth",
"type" : "number"
},
"remainingCallsPerDay" : {
"label" : "remainingCallsPerDay",
"type" : "number"
}
},
"flow" : [ "remainingCallsPerDay", "authorizedCallsPerMonth", "authorizedCallsPerSec", "remainingCallsPerMonth", "currentCallsPerMonth", "authorizedCallsPerDay", "currentCallsPerDay", "remainingCallsPerSec", "currentCallsPerSec" ]
},
"otoroshi.next.plugins.JQRequest" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"otoroshi.script.JobInstantiation" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.discovery.DiscoveryJobServiceId" : {
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "id" ]
},
"otoroshi.next.plugins.GraphQLQueryConfig" : {
"schema" : {
"response_path" : {
"label" : "response_path",
"type" : "string"
},
"url" : {
"label" : "url",
"type" : "string"
},
"response_filter" : {
"label" : "response_filter",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"query" : {
"label" : "query",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
}
},
"flow" : [ "method", "query", "timeout", "headers", "response_filter", "url", "response_path" ]
},
"otoroshi.script.plugins.Plugins" : {
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "refs", "excluded", "enabled", "config" ]
},
"otoroshi.next.plugins.MaintenanceMode" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.Sign" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
}
},
"flow" : [ "type", "verificationSettings", "algoSettings" ]
},
"otoroshi.models.DataCenterMatch" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
}
},
"flow" : [ "dc", "type" ]
},
"otoroshi.next.plugins.MockResponses" : {
"schema" : {
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"status" : {
"label" : "status",
"type" : "number"
},
"method" : {
"label" : "method",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "path", "body", "status", "method", "headers" ]
},
"pass_through" : {
"label" : "pass_through",
"type" : "bool"
},
"form_data" : {
"label" : "form_data",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"resources" : {
"label" : "resources",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"schema" : {
"label" : "schema",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"field_name" : {
"label" : "field_name",
"type" : "string"
},
"field_type" : {
"label" : "field_type",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
}
},
"flow" : [ "field_name", "field_type", "value" ]
},
"additional_data" : {
"label" : "additional_data",
"type" : "string"
}
},
"flow" : [ "name", "schema", "additional_data" ]
},
"endpoints" : {
"label" : "endpoints",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"path" : {
"label" : "path",
"type" : "string"
},
"resource" : {
"label" : "resource",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
},
"resource_list" : {
"label" : "resource_list",
"type" : "bool"
}
},
"flow" : [ "status", "body", "path", "resource", "headers", "method", "resource_list" ]
}
},
"flow" : [ "resources", "endpoints" ]
}
},
"flow" : [ "pass_through", "responses", "form_data" ]
},
"otoroshi.models.TeamAccess" : {
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"otoroshi.plugins.apikeys.BiscuitConf" : {
"schema" : {
"privkey" : {
"label" : "privkey",
"type" : "string"
},
"checks" : {
"label" : "checks",
"type" : "array",
"array" : true,
"format" : null
},
"facts" : {
"label" : "facts",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "rules", "facts", "checks", "privkey" ]
},
"otoroshi.plugins.metrics.ServiceMetrics" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.VerifierStrategy" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "token", "strict", "type", "verificationSettings", "algoSettings", "transformSettings" ]
},
"otoroshi.plugins.mirror.RequestContext" : {
"schema" : {
"descriptor" : {
"label" : "descriptor",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"buildMode" : {
"label" : "buildMode",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"privateApp" : {
"label" : "privateApp",
"type" : "bool"
},
"localScheme" : {
"label" : "localScheme",
"type" : "string"
},
"authConfigRef" : {
"label" : "authConfigRef",
"type" : "string"
},
"issueCertCA" : {
"label" : "issueCertCA",
"type" : "string"
},
"root" : {
"label" : "root",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"additionalHeaders" : {
"label" : "additionalHeaders",
"type" : "object"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"clientConfig" : {
"label" : "clientConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "useCircuitBreaker", "retryInitialDelay", "cacheConnectionSettings", "proxy", "callTimeout", "callAndStreamTimeout", "globalTimeout", "maxErrors", "retries", "backoffFactor", "customTimeouts", "idleTimeout", "sampleInterval" ]
},
"matchingRoot" : {
"label" : "matchingRoot",
"type" : "string"
},
"forceHttps" : {
"label" : "forceHttps",
"type" : "bool"
},
"localHost" : {
"label" : "localHost",
"type" : "string"
},
"sendOtoroshiHeadersBack" : {
"label" : "sendOtoroshiHeadersBack",
"type" : "bool"
},
"healthCheck" : {
"label" : "healthCheck",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"strictlyPrivate" : {
"label" : "strictlyPrivate",
"type" : "bool"
},
"detectApiKeySooner" : {
"label" : "detectApiKeySooner",
"type" : "bool"
},
"allowHttp10" : {
"label" : "allowHttp10",
"type" : "bool"
},
"subdomain" : {
"label" : "subdomain",
"type" : "string"
},
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"stripPath" : {
"label" : "stripPath",
"type" : "bool"
},
"secComAlgoChallengeOtoToBack" : {
"label" : "secComAlgoChallengeOtoToBack",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"apiKeyConstraints" : {
"label" : "apiKeyConstraints",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"env" : {
"label" : "env",
"type" : "string"
},
"xForwardedHeaders" : {
"label" : "xForwardedHeaders",
"type" : "bool"
},
"transformerRefs" : {
"label" : "transformerRefs",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"gzip" : {
"label" : "gzip",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "compressionLevel", "blackList", "chunkedThreshold", "excludedPatterns", "bufferSize", "whiteList", "enabled" ]
},
"sendInfoToken" : {
"label" : "sendInfoToken",
"type" : "bool"
},
"tcpUdpTunneling" : {
"label" : "tcpUdpTunneling",
"type" : "bool"
},
"removeHeadersOut" : {
"label" : "removeHeadersOut",
"type" : "array",
"array" : true,
"format" : null
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"removeHeadersIn" : {
"label" : "removeHeadersIn",
"type" : "array",
"array" : true,
"format" : null
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"secComAlgoInfoToken" : {
"label" : "secComAlgoInfoToken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"userFacing" : {
"label" : "userFacing",
"type" : "bool"
},
"transformerConfig" : {
"label" : "transformerConfig",
"type" : "object"
},
"clientValidatorRef" : {
"label" : "clientValidatorRef",
"type" : "string"
},
"securityExcludedPatterns" : {
"label" : "securityExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"redirection" : {
"label" : "redirection",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "enabled", "code", "to" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"overrideHost" : {
"label" : "overrideHost",
"type" : "bool"
},
"accessValidator" : {
"label" : "accessValidator",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"sendStateChallenge" : {
"label" : "sendStateChallenge",
"type" : "bool"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"secComInfoTokenVersion" : {
"type" : "select",
"props" : {
"label" : "secComInfoTokenVersion",
"options" : [ "Legacy", "Latest" ]
}
},
"additionalHeadersOut" : {
"label" : "additionalHeadersOut",
"type" : "object"
},
"secComHeaders" : {
"label" : "secComHeaders",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "claimRequestName", "stateRequestName", "stateResponseName" ]
},
"matchingHeaders" : {
"label" : "matchingHeaders",
"type" : "object"
},
"secComAlgoChallengeBackToOto" : {
"label" : "secComAlgoChallengeBackToOto",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"secComUseSameAlgo" : {
"label" : "secComUseSameAlgo",
"type" : "bool"
},
"useNewWSClient" : {
"label" : "useNewWSClient",
"type" : "bool"
},
"secComExcludedPatterns" : {
"label" : "secComExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"redirectToLocal" : {
"label" : "redirectToLocal",
"type" : "bool"
},
"enforceSecureCommunication" : {
"label" : "enforceSecureCommunication",
"type" : "bool"
},
"missingOnlyHeadersOut" : {
"label" : "missingOnlyHeadersOut",
"type" : "object"
},
"secComSettings" : {
"label" : "secComSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"handleLegacyDomain" : {
"label" : "handleLegacyDomain",
"type" : "bool"
},
"canary" : {
"label" : "canary",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "enabled", "traffic", "targets", "root" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"secComVersion" : {
"type" : "select",
"props" : {
"label" : "secComVersion",
"options" : [ "V1", "v2" ]
}
},
"preRouting" : {
"label" : "preRouting",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"privatePatterns" : {
"label" : "privatePatterns",
"type" : "array",
"array" : true,
"format" : null
},
"targetsLoadBalancing" : {
"label" : "targetsLoadBalancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"cors" : {
"label" : "cors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "enabled", "allowCredentials", "maxAge", "allowMethods", "allowHeaders", "excludedPatterns", "exposeHeaders", "allowOrigin" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"publicPatterns" : {
"label" : "publicPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"api" : {
"label" : "api",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "exposeApi", "openApiDescriptorUrl" ]
},
"missingOnlyHeadersIn" : {
"label" : "missingOnlyHeadersIn",
"type" : "object"
},
"issueCert" : {
"label" : "issueCert",
"type" : "bool"
},
"headersVerification" : {
"label" : "headersVerification",
"type" : "object"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata", "enabled", "excludedPatterns", "ids" ]
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
}
},
"flow" : [ "buildMode", "hosts", "privateApp", "localScheme", "authConfigRef", "issueCertCA", "root", "name", "additionalHeaders", "domain", "clientConfig", "matchingRoot", "forceHttps", "localHost", "sendOtoroshiHeadersBack", "healthCheck", "strictlyPrivate", "detectApiKeySooner", "allowHttp10", "subdomain", "paths", "stripPath", "secComAlgoChallengeOtoToBack", "apiKeyConstraints", "env", "xForwardedHeaders", "transformerRefs", "enabled", "gzip", "sendInfoToken", "tcpUdpTunneling", "removeHeadersOut", "useAkkaHttpClient", "maintenanceMode", "id", "removeHeadersIn", "logAnalyticsOnServer", "secComAlgoInfoToken", "userFacing", "transformerConfig", "clientValidatorRef", "securityExcludedPatterns", "ipFiltering", "targets", "redirection", "tags", "restrictions", "overrideHost", "accessValidator", "sendStateChallenge", "chaosConfig", "secComInfoTokenVersion", "additionalHeadersOut", "secComHeaders", "matchingHeaders", "secComAlgoChallengeBackToOto", "secComUseSameAlgo", "useNewWSClient", "secComExcludedPatterns", "redirectToLocal", "enforceSecureCommunication", "missingOnlyHeadersOut", "secComSettings", "handleLegacyDomain", "canary", "_loc", "plugins", "secComTtl", "description", "secComVersion", "preRouting", "groups", "readOnly", "privatePatterns", "targetsLoadBalancing", "cors", "metadata", "publicPatterns", "api", "missingOnlyHeadersIn", "issueCert", "headersVerification", "jwtVerifier", "letsEncrypt" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"conf" : {
"label" : "conf",
"type" : "object"
}
},
"flow" : [ "conf" ]
}
},
"flow" : [ "id", "descriptor", "config" ]
},
"otoroshi.models.RedirectionSettings" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "to", "code", "enabled" ]
},
"otoroshi.ssl.ClientAuth" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.TransformSettings" : {
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
},
"otoroshi.greenscore.Rule" : {
"schema" : {
"sectionWeight" : {
"label" : "sectionWeight",
"type" : "number"
},
"advice" : {
"label" : "advice",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"description" : {
"label" : "description",
"type" : "string"
}
},
"flow" : [ "description", "enabled", "weight", "advice", "sectionWeight", "id" ]
},
"otoroshi.next.plugins.MockField" : {
"schema" : {
"field_name" : {
"label" : "field_name",
"type" : "string"
},
"field_type" : {
"label" : "field_type",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
}
},
"flow" : [ "value", "field_type", "field_name" ]
},
"otoroshi.plugins.useragent.UserAgentInfoEndpoint" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgJwtUserExtractorConfig" : {
"schema" : {
"meta_path" : {
"label" : "meta_path",
"type" : "string"
},
"strip" : {
"label" : "strip",
"type" : "bool"
},
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"email_path" : {
"label" : "email_path",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"name_path" : {
"label" : "name_path",
"type" : "string"
}
},
"flow" : [ "name_path", "strict", "email_path", "verifier", "strip", "meta_path" ]
},
"otoroshi.plugins.biscuit.VerificationContext" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.RackMatch" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"rack" : {
"label" : "rack",
"type" : "string"
}
},
"flow" : [ "rack", "type" ]
},
"otoroshi.models.RouteCompositionIdentifier" : {
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "id" ]
},
"otoroshi.plugins.loggers.RequestBodyEvent" : {
"schema" : {
"ua" : {
"label" : "ua",
"type" : "string"
},
"reqId" : {
"label" : "reqId",
"type" : "string"
},
"url" : {
"label" : "url",
"type" : "string"
},
"from" : {
"label" : "from",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"method" : {
"label" : "method",
"type" : "string"
}
},
"flow" : [ "method", "headers", "from", "url", "reqId", "ua" ]
},
"otoroshi.plugins.discovery.DiscoveryJobRegistrationId" : {
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
}
},
"flow" : [ "id" ]
},
"otoroshi.plugins.composite.CompositePlugin" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.SecComVersion" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.MaxmindGeolocationSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "none", "maxmind", "ipstack" ]
}
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "path", "enabled", "type" ]
},
"otoroshi.models.GoReplayFileSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"path" : {
"label" : "path",
"type" : "string"
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"captureResponses" : {
"label" : "captureResponses",
"type" : "bool"
},
"preferBackendResponse" : {
"label" : "preferBackendResponse",
"type" : "bool"
},
"maxFileSize" : {
"label" : "maxFileSize",
"type" : "number"
},
"captureRequests" : {
"label" : "captureRequests",
"type" : "bool"
},
"preferBackendRequest" : {
"label" : "preferBackendRequest",
"type" : "bool"
}
},
"flow" : [ "preferBackendRequest", "captureRequests", "maxFileSize", "preferBackendResponse", "captureResponses", "methods", "path", "type" ]
},
"Empty" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.AuthModuleConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "saml", "oauth1", "oauth2", "ldap", "basic" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"clientSideSessionEnabled" : {
"label" : "clientSideSessionEnabled",
"type" : "bool"
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "bool"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"users" : {
"label" : "users",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"password" : {
"label" : "password",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"email" : {
"label" : "email",
"type" : "string"
},
"webauthn" : {
"label" : "webauthn",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"handle" : {
"label" : "handle",
"type" : "string"
},
"credentials" : {
"label" : "credentials",
"type" : "object"
}
},
"flow" : [ "handle", "credentials" ]
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"name" : {
"label" : "name",
"type" : "string"
}
},
"flow" : [ "password", "tags", "email", "webauthn", "rights", "name", "metadata" ]
},
"sessionMaxAge" : {
"label" : "sessionMaxAge",
"type" : "number"
},
"webauthn" : {
"label" : "webauthn",
"type" : "bool"
},
"userValidators" : {
"label" : "userValidators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"sessionCookieValues" : {
"label" : "sessionCookieValues",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "httpOnly", "secure" ]
},
"extraMetadata" : {
"label" : "extraMetadata",
"type" : "object"
},
"rightsOverride" : {
"label" : "rightsOverride",
"type" : "object"
},
"clientId" : {
"label" : "clientId",
"type" : "string"
},
"otoroshiRightsField" : {
"label" : "otoroshiRightsField",
"type" : "string"
},
"scope" : {
"label" : "scope",
"type" : "string"
},
"accessTokenField" : {
"label" : "accessTokenField",
"type" : "string"
},
"superAdmins" : {
"label" : "superAdmins",
"type" : "bool"
},
"refreshTokens" : {
"label" : "refreshTokens",
"type" : "bool"
},
"loginUrl" : {
"label" : "loginUrl",
"type" : "string"
},
"apiKeyTagsField" : {
"label" : "apiKeyTagsField",
"type" : "string"
},
"otoroshiDataField" : {
"label" : "otoroshiDataField",
"type" : "string"
},
"emailField" : {
"label" : "emailField",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"tokenUrl" : {
"label" : "tokenUrl",
"type" : "string"
},
"useCookie" : {
"label" : "useCookie",
"type" : "bool"
},
"pkce" : {
"label" : "pkce",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"algorithm" : {
"label" : "algorithm",
"type" : "string"
}
},
"flow" : [ "enabled", "algorithm" ]
},
"authorizeUrl" : {
"label" : "authorizeUrl",
"type" : "string"
},
"callbackUrl" : {
"label" : "callbackUrl",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"apiKeyMetaField" : {
"label" : "apiKeyMetaField",
"type" : "string"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"useJson" : {
"label" : "useJson",
"type" : "bool"
},
"oidConfig" : {
"label" : "oidConfig",
"type" : "string"
},
"claims" : {
"label" : "claims",
"type" : "string"
},
"noWildcardRedirectURI" : {
"label" : "noWildcardRedirectURI",
"type" : "bool"
},
"nameField" : {
"label" : "nameField",
"type" : "string"
},
"introspectionUrl" : {
"label" : "introspectionUrl",
"type" : "string"
},
"logoutUrl" : {
"label" : "logoutUrl",
"type" : "string"
},
"dataOverride" : {
"label" : "dataOverride",
"type" : "object"
},
"userInfoUrl" : {
"label" : "userInfoUrl",
"type" : "string"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"readProfileFromToken" : {
"label" : "readProfileFromToken",
"type" : "bool"
},
"allowEmptyPassword" : {
"label" : "allowEmptyPassword",
"type" : "bool"
},
"groupFilters" : {
"label" : "groupFilters",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"group" : {
"label" : "group",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"team" : {
"label" : "team",
"type" : "string"
}
},
"flow" : [ "group", "tenant", "team" ]
},
"serverUrls" : {
"label" : "serverUrls",
"type" : "array",
"array" : true,
"format" : null
},
"searchBase" : {
"label" : "searchBase",
"type" : "string"
},
"groupRights" : {
"label" : "groupRights",
"type" : "object"
},
"metadataField" : {
"label" : "metadataField",
"type" : "string"
},
"searchFilter" : {
"label" : "searchFilter",
"type" : "string"
},
"adminUsername" : {
"label" : "adminUsername",
"type" : "string"
},
"extractProfileFilter" : {
"label" : "extractProfileFilter",
"type" : "array",
"array" : true,
"format" : null
},
"userBase" : {
"label" : "userBase",
"type" : "string"
},
"adminPassword" : {
"label" : "adminPassword",
"type" : "string"
},
"extractProfileFilterNot" : {
"label" : "extractProfileFilterNot",
"type" : "array",
"array" : true,
"format" : null
},
"extractProfile" : {
"label" : "extractProfile",
"type" : "bool"
},
"accessTokenURL" : {
"label" : "accessTokenURL",
"type" : "string"
},
"authorizeURL" : {
"label" : "authorizeURL",
"type" : "string"
},
"consumerKey" : {
"label" : "consumerKey",
"type" : "string"
},
"callbackURL" : {
"label" : "callbackURL",
"type" : "string"
},
"profileURL" : {
"label" : "profileURL",
"type" : "string"
},
"httpMethod" : {
"label" : "httpMethod",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"requestTokenURL" : {
"label" : "requestTokenURL",
"type" : "string"
},
"consumerSecret" : {
"label" : "consumerSecret",
"type" : "string"
},
"ssoProtocolBinding" : {
"label" : "ssoProtocolBinding",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"emailAttributeName" : {
"label" : "emailAttributeName",
"type" : "string"
},
"validatingCertificates" : {
"label" : "validatingCertificates",
"type" : "array",
"array" : true,
"format" : null
},
"singleLogoutProtocolBinding" : {
"label" : "singleLogoutProtocolBinding",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"issuer" : {
"label" : "issuer",
"type" : "string"
},
"signature" : {
"label" : "signature",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"algorithm" : {
"label" : "algorithm",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"canocalizationMethod" : {
"label" : "canocalizationMethod",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "algorithm", "canocalizationMethod" ]
},
"singleLogoutUrl" : {
"label" : "singleLogoutUrl",
"type" : "string"
},
"usedNameIDAsEmail" : {
"label" : "usedNameIDAsEmail",
"type" : "bool"
},
"singleSignOnUrl" : {
"label" : "singleSignOnUrl",
"type" : "string"
},
"validateAssertions" : {
"label" : "validateAssertions",
"type" : "bool"
},
"nameIDFormat" : {
"label" : "nameIDFormat",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"validateSignature" : {
"label" : "validateSignature",
"type" : "bool"
},
"credentials" : {
"label" : "credentials",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"signingKey" : {
"label" : "signingKey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "certificate", "privateKey", "certId", "useOtoroshiCertificate" ]
},
"encryptionKey" : {
"label" : "encryptionKey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "certificate", "privateKey", "certId", "useOtoroshiCertificate" ]
},
"signedDocuments" : {
"label" : "signedDocuments",
"type" : "bool"
},
"encryptedAssertions" : {
"label" : "encryptedAssertions",
"type" : "bool"
}
},
"flow" : [ "signingKey", "encryptionKey", "signedDocuments", "encryptedAssertions" ]
}
},
"flow" : [ "validateSignature", "validateAssertions", "singleSignOnUrl", "usedNameIDAsEmail", "singleLogoutUrl", "issuer", "validatingCertificates", "emailAttributeName", "consumerSecret", "requestTokenURL", "profileURL", "callbackURL", "consumerKey", "authorizeURL", "accessTokenURL", "extractProfile", "extractProfileFilterNot", "adminPassword", "userBase", "extractProfileFilter", "adminUsername", "searchFilter", "metadataField", "groupRights", "searchBase", "serverUrls", "groupFilters", "allowEmptyPassword", "readProfileFromToken", "userInfoUrl", "dataOverride", "logoutUrl", "introspectionUrl", "nameField", "noWildcardRedirectURI", "claims", "oidConfig", "useJson", "clientSecret", "apiKeyMetaField", "callbackUrl", "authorizeUrl", "useCookie", "tokenUrl", "emailField", "otoroshiDataField", "apiKeyTagsField", "loginUrl", "refreshTokens", "superAdmins", "accessTokenField", "scope", "otoroshiRightsField", "clientId", "rightsOverride", "extraMetadata", "metadata", "id", "userValidators", "webauthn", "sessionMaxAge", "users", "tags", "basicAuth", "clientSideSessionEnabled", "name", "desc", "type", "_loc", "sessionCookieValues", "mtlsConfig", "pkce", "proxy", "jwtVerifier", "httpMethod", "ssoProtocolBinding", "singleLogoutProtocolBinding", "signature", "nameIDFormat", "credentials" ]
},
"otoroshi.next.plugins.JQResponse" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"otoroshi.next.plugins.NgResponseCache" : {
"schema" : {
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"max_size" : {
"label" : "max_size",
"type" : "number"
},
"auto_clean" : {
"label" : "auto_clean",
"type" : "bool"
},
"filter" : {
"label" : "filter",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"not_methods" : {
"label" : "not_methods",
"type" : "array",
"array" : true,
"format" : null
},
"not_paths" : {
"label" : "not_paths",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "paths", "methods", "not_methods", "not_paths" ]
}
},
"flow" : [ "auto_clean", "max_size", "ttl", "filter" ]
},
"otoroshi.next.models.GraphQLFormats" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgMatchedRoutes" : {
"schema" : {
"routes" : {
"label" : "routes",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"capture" : {
"label" : "capture",
"type" : "bool"
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
}
},
"flow" : [ "debug_flow", "enabled", "name", "id", "export_reporting", "frontend", "_loc", "tags", "capture", "groups", "backend_ref", "description", "backend", "metadata" ]
},
"path" : {
"label" : "path",
"type" : "string"
},
"no_more_segments" : {
"label" : "no_more_segments",
"type" : "bool"
}
},
"flow" : [ "no_more_segments", "path", "routes" ]
},
"otoroshi.next.models.NgCacheConnectionSettings" : {
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled", "queue_size" ]
},
"otoroshi.plugins.authcallers.OAuth2Kind" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.WasmRouter" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.next.plugins.NgJwtVerificationOnlyConfig" : {
"schema" : {
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"fail_if_absent" : {
"label" : "fail_if_absent",
"type" : "bool"
}
},
"flow" : [ "fail_if_absent", "verifier" ]
},
"otoroshi.next.plugins.NgChaosConfig" : {
"schema" : {
"large_request_fault_config" : {
"label" : "large_request_fault_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additional_request_size" : {
"label" : "additional_request_size",
"type" : "number"
}
},
"flow" : [ "ratio", "additional_request_size" ]
},
"large_response_fault_config" : {
"label" : "large_response_fault_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additional_response_size" : {
"label" : "additional_response_size",
"type" : "number"
}
},
"flow" : [ "ratio", "additional_response_size" ]
},
"latency_injection_fault_config" : {
"label" : "latency_injection_fault_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"bad_responses_fault_config" : {
"label" : "bad_responses_fault_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
}
},
"flow" : [ "large_request_fault_config", "large_response_fault_config", "latency_injection_fault_config", "bad_responses_fault_config" ]
},
"otoroshi.next.plugins.HMACValidatorConfig" : {
"schema" : {
"secret" : {
"label" : "secret",
"type" : "string"
}
},
"flow" : [ "secret" ]
},
"otoroshi.models.NoneGeolocationSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "none" ]
}
}
},
"flow" : [ "type" ]
},
"otoroshi.next.plugins.NgErrorRewriterConfig" : {
"schema" : {
"ranges" : {
"label" : "ranges",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "from", "to" ]
},
"templates" : {
"label" : "templates",
"type" : "object"
},
"log" : {
"label" : "log",
"type" : "bool"
},
"export" : {
"label" : "export",
"type" : "bool"
}
},
"flow" : [ "export", "log", "templates", "ranges" ]
},
"otoroshi.next.plugins.XmlToJsonRequest" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"ErrorResponse" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.accesslog.KafkaAccessLog" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.metrics.PrometheusSupport" : {
"schema" : { },
"flow" : [ ]
},
"ServiceFromOpenApiBody" : {
"schema" : {
"domain" : {
"label" : "domain",
"type" : "string"
},
"openapi" : {
"label" : "openapi",
"type" : "string"
}
},
"flow" : [ "openapi", "domain" ]
},
"otoroshi.next.plugins.JsonToXmlResponse" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"otoroshi.next.plugins.StaticBackend" : {
"schema" : {
"root_path" : {
"label" : "root_path",
"type" : "string"
}
},
"flow" : [ "root_path" ]
},
"otoroshi.models.ErrorTemplate" : {
"schema" : {
"template50x" : {
"label" : "template50x",
"type" : "string"
},
"templateMaintenance" : {
"label" : "templateMaintenance",
"type" : "string"
},
"templateBuild" : {
"label" : "templateBuild",
"type" : "string"
},
"serviceId" : {
"label" : "serviceId",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"messages" : {
"label" : "messages",
"type" : "object"
},
"name" : {
"label" : "name",
"type" : "string"
},
"template40x" : {
"label" : "template40x",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"description" : {
"label" : "description",
"type" : "string"
}
},
"flow" : [ "description", "tags", "template40x", "name", "messages", "metadata", "serviceId", "templateBuild", "templateMaintenance", "template50x", "_loc" ]
},
"otoroshi.plugins.oidc.OIDCHeaders" : {
"schema" : { },
"flow" : [ ]
},
"BulkResponseBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.wasm.WasmAuthorizations" : {
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "configurationAccess", "proxyHttpCallTimeout", "httpAccess", "proxyStateAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "globalDataStoreAccess" ]
},
"otoroshi.models.ApiKeyRouteMatcher" : {
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "noneMetaIn", "allMetaIn", "allTagsIn", "noneTagIn", "allMetaKeysIn", "oneMetaKeyIn", "oneMetaIn", "noneMetaKeysIn", "oneTagIn" ]
},
"otoroshi.controllers.ServiceLike" : {
"schema" : {
"entity" : {
"label" : "entity",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "groups", "entity" ]
},
"otoroshi.next.plugins.GlobalMaintenanceMode" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.clientcert.HasClientCertMatchingHttpValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgMaxMindGeolocationInfoExtractorConfig" : {
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"log" : {
"label" : "log",
"type" : "bool"
}
},
"flow" : [ "log", "path" ]
},
"otoroshi.models.UserAgentSettings" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled" ]
},
"otoroshi.next.plugins.NgApikeyMatcher" : {
"schema" : {
"none_meta_keys_in" : {
"label" : "none_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_keys_in" : {
"label" : "all_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_in" : {
"label" : "all_meta_in",
"type" : "object"
},
"none_meta_in" : {
"label" : "none_meta_in",
"type" : "object"
},
"one_tag_in" : {
"label" : "one_tag_in",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"one_meta_in" : {
"label" : "one_meta_in",
"type" : "object"
},
"all_tags_in" : {
"label" : "all_tags_in",
"type" : "array",
"array" : true,
"format" : null
},
"one_meta_key_in" : {
"label" : "one_meta_key_in",
"type" : "array",
"array" : true,
"format" : null
},
"none_tag_in" : {
"label" : "none_tag_in",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "none_tag_in", "one_meta_key_in", "all_tags_in", "one_meta_in", "enabled", "one_tag_in", "none_meta_in", "all_meta_in", "all_meta_keys_in", "none_meta_keys_in" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesCertSyncJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.ExporterRef" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"ref" : {
"label" : "ref",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "config", "ref", "type" ]
},
"otoroshi.models.ApiKey" : {
"schema" : {
"dailyQuota" : {
"label" : "dailyQuota",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"constrainedServicesOnly" : {
"label" : "constrainedServicesOnly",
"type" : "bool"
},
"allowClientIdOnly" : {
"label" : "allowClientIdOnly",
"type" : "bool"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"validUntil" : {
"label" : "validUntil",
"type" : "string"
},
"clientName" : {
"label" : "clientName",
"type" : "string"
},
"monthlyQuota" : {
"label" : "monthlyQuota",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"rotation" : {
"label" : "rotation",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"rotationEvery" : {
"label" : "rotationEvery",
"type" : "number"
},
"gracePeriod" : {
"label" : "gracePeriod",
"type" : "number"
},
"nextSecret" : {
"label" : "nextSecret",
"type" : "string"
}
},
"flow" : [ "enabled", "rotationEvery", "gracePeriod", "nextSecret" ]
},
"authorizedEntities" : {
"label" : "authorizedEntities",
"type" : "array",
"array" : true,
"format" : null
},
"clientId" : {
"label" : "clientId",
"type" : "string"
}
},
"flow" : [ "clientId", "authorizedEntities", "description", "monthlyQuota", "clientName", "validUntil", "clientSecret", "readOnly", "enabled", "tags", "allowClientIdOnly", "constrainedServicesOnly", "throttlingQuota", "metadata", "dailyQuota", "_loc", "restrictions", "rotation" ]
},
"otoroshi.next.plugins.ExternalEurekaTarget" : {
"schema" : {
"eureka_server" : {
"label" : "eureka_server",
"type" : "string"
},
"eureka_app" : {
"label" : "eureka_app",
"type" : "string"
}
},
"flow" : [ "eureka_app", "eureka_server" ]
},
"ByteStreamBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgHtmlPatcherConfig" : {
"schema" : {
"append_head" : {
"label" : "append_head",
"type" : "array",
"array" : true,
"format" : null
},
"append_body" : {
"label" : "append_body",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "append_body", "append_head" ]
},
"otoroshi.models.GeolocationMatch" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
}
},
"flow" : [ "positions", "type" ]
},
"otoroshi.next.plugins.HMACValidator" : {
"schema" : {
"secret" : {
"label" : "secret",
"type" : "string"
}
},
"flow" : [ "secret" ]
},
"otoroshi.next.plugins.MockResponse" : {
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"status" : {
"label" : "status",
"type" : "number"
},
"method" : {
"label" : "method",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers", "method", "status", "body", "path" ]
},
"otoroshi.next.plugins.JsonToXmlRequest" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"BulkBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgPublicPrivatePathsConfig" : {
"schema" : {
"strict" : {
"label" : "strict",
"type" : "bool"
},
"public_patterns" : {
"label" : "public_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"private_patterns" : {
"label" : "private_patterns",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "private_patterns", "public_patterns", "strict" ]
},
"otoroshi.next.plugins.NgBadResponsesFaultConfig" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "responses", "ratio" ]
},
"Null" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.ExternalEurekaTargetConfig" : {
"schema" : {
"service_url_default_zone" : {
"label" : "service_url_default_zone",
"type" : "string"
},
"eureka_app" : {
"label" : "eureka_app",
"type" : "string"
}
},
"flow" : [ "eureka_app", "service_url_default_zone" ]
},
"otoroshi.next.plugins.NgDiscoverySelfRegistrationSink" : {
"schema" : {
"raw" : {
"type" : "code",
"props" : {
"label" : "raw",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "raw" ]
},
"otoroshi.next.plugins.CanaryMode" : {
"schema" : {
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"root" : {
"label" : "root",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "targets", "root", "traffic" ]
},
"otoroshi.plugins.geoloc.GeolocationInfoEndpoint" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.S3Backend" : {
"schema" : {
"writeEvery" : {
"label" : "writeEvery",
"type" : "number"
},
"chunkSize" : {
"label" : "chunkSize",
"type" : "number"
},
"bucket" : {
"label" : "bucket",
"type" : "string"
},
"key" : {
"label" : "key",
"type" : "string"
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"v4auth" : {
"label" : "v4auth",
"type" : "bool"
},
"access" : {
"label" : "access",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
}
},
"flow" : [ "region", "secret", "access", "v4auth", "endpoint", "key", "bucket", "chunkSize", "writeEvery" ]
},
"otoroshi.next.plugins.NgRestrictions" : {
"schema" : {
"allow_last" : {
"label" : "allow_last",
"type" : "bool"
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"not_found" : {
"label" : "not_found",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
}
},
"flow" : [ "not_found", "forbidden", "allowed", "allow_last" ]
},
"otoroshi.next.plugins.BuildMode" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.HSAlgoSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
}
},
"flow" : [ "base64", "secret", "size", "type" ]
},
"otoroshi.models.InQueryParam" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
}
},
"flow" : [ "name", "type" ]
},
"otoroshi.next.plugins.NgRedirectionSettings" : {
"schema" : {
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "to", "code" ]
},
"otoroshi.next.plugins.NgHttpClientCacheConfig" : {
"schema" : {
"max_age_seconds" : {
"label" : "max_age_seconds",
"type" : "number"
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"mime_types" : {
"label" : "mime_types",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mime_types", "methods", "max_age_seconds" ]
},
"otoroshi.next.models.NgSelectedBackendTarget" : {
"schema" : {
"target" : {
"label" : "target",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
},
"attempts" : {
"label" : "attempts",
"type" : "number"
},
"cb_start" : {
"label" : "cb_start",
"type" : "number"
}
},
"flow" : [ "cb_start", "attempts", "target" ]
},
"otoroshi.next.plugins.NgIpStackGeolocationInfoExtractorConfig" : {
"schema" : {
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"log" : {
"label" : "log",
"type" : "bool"
}
},
"flow" : [ "log", "timeout", "apikey" ]
},
"otoroshi.next.plugins.NgAuthModuleUserExtractorConfig" : {
"schema" : {
"module" : {
"label" : "module",
"type" : "string"
}
},
"flow" : [ "module" ]
},
"otoroshi.models.JWKSAlgoSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "timeout", "ttl", "headers", "kty", "url", "type", "tlsConfig", "proxy" ]
},
"otoroshi.next.plugins.NgHasAllowedUsersValidatorConfig" : {
"schema" : {
"profile_not_match" : {
"label" : "profile_not_match",
"type" : "array",
"array" : true,
"format" : null
},
"profile_match" : {
"label" : "profile_match",
"type" : "array",
"array" : true,
"format" : null
},
"email_domains" : {
"label" : "email_domains",
"type" : "array",
"array" : true,
"format" : null
},
"usernames" : {
"label" : "usernames",
"type" : "array",
"array" : true,
"format" : null
},
"metadata_match" : {
"label" : "metadata_match",
"type" : "array",
"array" : true,
"format" : null
},
"metadata_not_match" : {
"label" : "metadata_not_match",
"type" : "array",
"array" : true,
"format" : null
},
"emails" : {
"label" : "emails",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "emails", "metadata_not_match", "metadata_match", "usernames", "email_domains", "profile_match", "profile_not_match" ]
},
"otoroshi.next.plugins.NgDiscoverySelfRegistrationTransformer" : {
"schema" : {
"raw" : {
"type" : "code",
"props" : {
"label" : "raw",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "raw" ]
},
"otoroshi.next.plugins.NgApikeyExtractorJwt" : {
"schema" : {
"cookie_name" : {
"label" : "cookie_name",
"type" : "string"
},
"key_pair_signed" : {
"label" : "key_pair_signed",
"type" : "bool"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"secret_signed" : {
"label" : "secret_signed",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"include_request_attrs" : {
"label" : "include_request_attrs",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "header_name", "include_request_attrs", "enabled", "secret_signed", "query_name", "key_pair_signed", "cookie_name" ]
},
"otoroshi.next.plugins.GraphQLQuery" : {
"schema" : {
"response_path" : {
"label" : "response_path",
"type" : "string"
},
"url" : {
"label" : "url",
"type" : "string"
},
"response_filter" : {
"label" : "response_filter",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"query" : {
"label" : "query",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
}
},
"flow" : [ "method", "query", "timeout", "headers", "response_filter", "url", "response_path" ]
},
"otoroshi.next.plugins.AdditionalHeadersIn" : {
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers" ]
},
"otoroshi.next.plugins.NgApikeyExtractorBasic" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
}
},
"flow" : [ "query_name", "header_name", "enabled" ]
},
"otoroshi.models.TenantAccess" : {
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
},
"otoroshi.models.BadResponsesFaultConfig" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "responses", "ratio" ]
},
"otoroshi.next.plugins.NgDefaultRequestBody" : {
"schema" : {
"content_type" : {
"label" : "content_type",
"type" : "string"
},
"content_encoding" : {
"label" : "content_encoding",
"type" : "string"
}
},
"flow" : [ "content_encoding", "content_type" ]
},
"otoroshi.next.plugins.NgDiscoveryTargetsSelector" : {
"schema" : {
"raw" : {
"type" : "code",
"props" : {
"label" : "raw",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "raw" ]
},
"otoroshi.next.plugins.NgIzanamiV1Proxy" : {
"schema" : {
"features_enabled" : {
"label" : "features_enabled",
"type" : "bool"
},
"client_secret" : {
"label" : "client_secret",
"type" : "string"
},
"features_with_context_enabled" : {
"label" : "features_with_context_enabled",
"type" : "bool"
},
"config_pattern" : {
"label" : "config_pattern",
"type" : "string"
},
"feature_pattern" : {
"label" : "feature_pattern",
"type" : "string"
},
"client_id" : {
"label" : "client_id",
"type" : "string"
},
"tls" : {
"label" : "tls",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"izanami_url" : {
"label" : "izanami_url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"auto_context" : {
"label" : "auto_context",
"type" : "bool"
},
"configuration_enabled" : {
"label" : "configuration_enabled",
"type" : "bool"
}
},
"flow" : [ "configuration_enabled", "auto_context", "path", "timeout", "izanami_url", "client_id", "feature_pattern", "config_pattern", "features_with_context_enabled", "client_secret", "features_enabled", "tls" ]
},
"otoroshi.next.models.StoredNgBackendDataStore" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.loggers.BodyLogger" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.PublicPrivatePaths" : {
"schema" : {
"strict" : {
"label" : "strict",
"type" : "bool"
},
"public_patterns" : {
"label" : "public_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"private_patterns" : {
"label" : "private_patterns",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "private_patterns", "public_patterns", "strict" ]
},
"otoroshi.script.AccessValidatorRef" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "config", "refs", "excludedPatterns", "enabled" ]
},
"otoroshi.next.plugins.NgApikeyCallsConfig" : {
"schema" : {
"mandatory" : {
"label" : "mandatory",
"type" : "bool"
},
"extractors" : {
"label" : "extractors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"basic" : {
"label" : "basic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
}
},
"flow" : [ "enabled", "header_name", "query_name" ]
},
"custom_headers" : {
"label" : "custom_headers",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"client_id_header_name" : {
"label" : "client_id_header_name",
"type" : "string"
},
"client_secret_header_name" : {
"label" : "client_secret_header_name",
"type" : "string"
}
},
"flow" : [ "enabled", "client_id_header_name", "client_secret_header_name" ]
},
"client_id" : {
"label" : "client_id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "header_name", "query_name", "enabled" ]
},
"jwt" : {
"label" : "jwt",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"cookie_name" : {
"label" : "cookie_name",
"type" : "string"
},
"key_pair_signed" : {
"label" : "key_pair_signed",
"type" : "bool"
},
"query_name" : {
"label" : "query_name",
"type" : "string"
},
"secret_signed" : {
"label" : "secret_signed",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"include_request_attrs" : {
"label" : "include_request_attrs",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "cookie_name", "key_pair_signed", "query_name", "secret_signed", "enabled", "include_request_attrs", "header_name" ]
}
},
"flow" : [ "basic", "custom_headers", "client_id", "jwt" ]
},
"pass_with_user" : {
"label" : "pass_with_user",
"type" : "bool"
},
"wipe_backend_request" : {
"label" : "wipe_backend_request",
"type" : "bool"
},
"validate" : {
"label" : "validate",
"type" : "bool"
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"none_meta_keys_in" : {
"label" : "none_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_keys_in" : {
"label" : "all_meta_keys_in",
"type" : "array",
"array" : true,
"format" : null
},
"all_meta_in" : {
"label" : "all_meta_in",
"type" : "object"
},
"none_meta_in" : {
"label" : "none_meta_in",
"type" : "object"
},
"one_tag_in" : {
"label" : "one_tag_in",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"one_meta_in" : {
"label" : "one_meta_in",
"type" : "object"
},
"all_tags_in" : {
"label" : "all_tags_in",
"type" : "array",
"array" : true,
"format" : null
},
"one_meta_key_in" : {
"label" : "one_meta_key_in",
"type" : "array",
"array" : true,
"format" : null
},
"none_tag_in" : {
"label" : "none_tag_in",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "none_meta_keys_in", "all_meta_keys_in", "all_meta_in", "none_meta_in", "one_tag_in", "enabled", "one_meta_in", "all_tags_in", "one_meta_key_in", "none_tag_in" ]
},
"update_quotas" : {
"label" : "update_quotas",
"type" : "bool"
}
},
"flow" : [ "update_quotas", "validate", "wipe_backend_request", "pass_with_user", "mandatory", "extractors", "routing" ]
},
"otoroshi.next.plugins.BiscuitConf" : {
"schema" : {
"privkey" : {
"label" : "privkey",
"type" : "string"
},
"checks" : {
"label" : "checks",
"type" : "array",
"array" : true,
"format" : null
},
"facts" : {
"label" : "facts",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "rules", "facts", "checks", "privkey" ]
},
"otoroshi.next.plugins.NgCorsSettings" : {
"schema" : {
"allow_credentials" : {
"label" : "allow_credentials",
"type" : "bool"
},
"max_age" : {
"label" : "max_age",
"type" : "string"
},
"allow_origin" : {
"label" : "allow_origin",
"type" : "string"
},
"allow_methods" : {
"label" : "allow_methods",
"type" : "array",
"array" : true,
"format" : null
},
"excluded_patterns" : {
"label" : "excluded_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"allow_headers" : {
"label" : "allow_headers",
"type" : "array",
"array" : true,
"format" : null
},
"expose_headers" : {
"label" : "expose_headers",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "expose_headers", "allow_headers", "excluded_patterns", "allow_methods", "allow_origin", "max_age", "allow_credentials" ]
},
"otoroshi.plugins.biscuit.BiscuitConfig" : {
"schema" : {
"facts" : {
"label" : "facts",
"type" : "array",
"array" : true,
"format" : null
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"resources" : {
"label" : "resources",
"type" : "array",
"array" : true,
"format" : null
},
"enforce" : {
"label" : "enforce",
"type" : "bool"
},
"extractorName" : {
"label" : "extractorName",
"type" : "string"
},
"checks" : {
"label" : "checks",
"type" : "array",
"array" : true,
"format" : null
},
"extractor" : {
"label" : "extractor",
"type" : "string"
},
"revocation_ids" : {
"label" : "revocation_ids",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "rules", "revocation_ids", "extractor", "checks", "extractorName", "enforce", "resources", "publicKey", "facts" ]
},
"otoroshi.utils.mailer.MailjetSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"apiKeyPublic" : {
"label" : "apiKeyPublic",
"type" : "string"
},
"apiKeyPrivate" : {
"label" : "apiKeyPrivate",
"type" : "string"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
}
},
"flow" : [ "to", "apiKeyPrivate", "apiKeyPublic", "type" ]
},
"otoroshi.models.ConsoleSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
}
},
"flow" : [ "type" ]
},
"otoroshi.next.plugins.NgLargeResponseFaultConfig" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additional_response_size" : {
"label" : "additional_response_size",
"type" : "number"
}
},
"flow" : [ "additional_response_size", "ratio" ]
},
"otoroshi.utils.mailer.MailerSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
},
"eu" : {
"label" : "eu",
"type" : "bool"
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"apiKeyPublic" : {
"label" : "apiKeyPublic",
"type" : "string"
},
"apiKeyPrivate" : {
"label" : "apiKeyPrivate",
"type" : "string"
}
},
"flow" : [ "apiKeyPrivate", "apiKeyPublic", "domain", "apiKey", "eu", "to", "headers", "url", "type" ]
},
"otoroshi.next.plugins.NgTrafficMirroring" : {
"schema" : {
"legacy" : {
"label" : "legacy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"conf" : {
"label" : "conf",
"type" : "object"
}
},
"flow" : [ "conf" ]
}
},
"flow" : [ "legacy" ]
},
"ErrorTemplateList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgHasClientCertMatchingHttpValidatorConfig" : {
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"tls" : {
"label" : "tls",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers", "url", "timeout", "method", "tls" ]
},
"otoroshi.next.models.NgContextualPlugins" : {
"schema" : {
"_env" : {
"label" : "_env",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"circuitBeakersHolder" : {
"label" : "circuitBeakersHolder",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "circuitBeakersHolder" ]
},
"next_plugins_merge" : {
"label" : "next_plugins_merge",
"type" : "bool"
}
},
"flow" : [ "next_plugins_merge", "_env" ]
},
"otoroshi.next.plugins.NgRequestContext" : {
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"legacy" : {
"label" : "legacy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"conf" : {
"label" : "conf",
"type" : "object"
}
},
"flow" : [ "conf" ]
}
},
"flow" : [ "legacy" ]
},
"route" : {
"label" : "route",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"capture" : {
"label" : "capture",
"type" : "bool"
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
}
},
"flow" : [ "debug_flow", "enabled", "name", "id", "export_reporting", "metadata", "frontend", "_loc", "tags", "capture", "groups", "backend_ref", "description", "backend" ]
}
},
"flow" : [ "id", "config", "route" ]
},
"otoroshi.next.plugins.NgGzipConfig" : {
"schema" : {
"compression_level" : {
"label" : "compression_level",
"type" : "number"
},
"buffer_size" : {
"label" : "buffer_size",
"type" : "number"
},
"chunked_threshold" : {
"label" : "chunked_threshold",
"type" : "number"
},
"excluded_patterns" : {
"label" : "excluded_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"white_list" : {
"label" : "white_list",
"type" : "array",
"array" : true,
"format" : null
},
"black_list" : {
"label" : "black_list",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "black_list", "white_list", "excluded_patterns", "chunked_threshold", "buffer_size", "compression_level" ]
},
"otoroshi.next.plugins.ForceHttpsTraffic" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.WasmPlugin" : {
"schema" : {
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"name" : {
"label" : "name",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"steps" : {
"label" : "steps",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : { },
"flow" : [ ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"description" : {
"label" : "description",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "allowedHosts", "memoryPages", "allowedPaths", "instances", "config", "authorizations", "opa", "wasi", "functionName" ]
}
},
"flow" : [ "description", "metadata", "id", "steps", "tags", "name", "_loc", "config" ]
},
"otoroshi.models.UserRight" : {
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "teams", "tenant" ]
},
"otoroshi.next.plugins.NgHasClientCertMatchingValidatorConfig" : {
"schema" : {
"subject_dns" : {
"label" : "subject_dns",
"type" : "array",
"array" : true,
"format" : null
},
"serial_numbers" : {
"label" : "serial_numbers",
"type" : "array",
"array" : true,
"format" : null
},
"issuer_dns" : {
"label" : "issuer_dns",
"type" : "array",
"array" : true,
"format" : null
},
"regex_issuer_dns" : {
"label" : "regex_issuer_dns",
"type" : "array",
"array" : true,
"format" : null
},
"regex_subject_dns" : {
"label" : "regex_subject_dns",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "regex_subject_dns", "regex_issuer_dns", "issuer_dns", "serial_numbers", "subject_dns" ]
},
"otoroshi.next.plugins.BodyHelper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgMirroringEvent" : {
"schema" : {
"ctx" : {
"label" : "ctx",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"legacy" : {
"label" : "legacy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"conf" : {
"label" : "conf",
"type" : "object"
}
},
"flow" : [ "conf" ]
}
},
"flow" : [ "legacy" ]
},
"route" : {
"label" : "route",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"debug_flow" : {
"label" : "debug_flow",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"export_reporting" : {
"label" : "export_reporting",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"frontend" : {
"label" : "frontend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
},
"query" : {
"label" : "query",
"type" : "object"
},
"domains" : {
"label" : "domains",
"type" : "array",
"array" : true,
"format" : null
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"strip_path" : {
"label" : "strip_path",
"type" : "bool"
}
},
"flow" : [ "headers", "query", "domains", "methods", "exact", "strip_path" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"capture" : {
"label" : "capture",
"type" : "bool"
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"backend_ref" : {
"label" : "backend_ref",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "root", "health_check", "client", "load_balancing", "rewrite", "targets" ]
}
},
"flow" : [ "debug_flow", "enabled", "name", "id", "export_reporting", "metadata", "frontend", "_loc", "tags", "capture", "groups", "backend_ref", "description", "backend" ]
}
},
"flow" : [ "id", "config", "route" ]
}
},
"flow" : [ "ctx" ]
},
"otoroshi.next.plugins.GraphQLBackend" : {
"schema" : {
"schema" : {
"label" : "schema",
"type" : "string"
},
"permissions" : {
"label" : "permissions",
"type" : "array",
"array" : true,
"format" : null
},
"initial_data" : {
"label" : "initial_data",
"type" : "string"
},
"max_depth" : {
"label" : "max_depth",
"type" : "number"
}
},
"flow" : [ "max_depth", "initial_data", "permissions", "schema" ]
},
"otoroshi.utils.mailer.NoneMailerSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
}
},
"flow" : [ "type" ]
},
"otoroshi.next.models.NgTreeNodePath" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.BasicAuthCaller" : {
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"header_value_format" : {
"label" : "header_value_format",
"type" : "string"
}
},
"flow" : [ "header_value_format", "header_name", "password", "username" ]
},
"otoroshi.next.plugins.WasmRequestTransformer" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.next.models.NgTreeRouter_Test" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgOtoroshiChallengeConfig" : {
"schema" : {
"version" : {
"type" : "select",
"props" : {
"label" : "version",
"options" : [ "V1", "v2" ]
}
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"request_header_name" : {
"label" : "request_header_name",
"type" : "string"
},
"response_header_name" : {
"label" : "response_header_name",
"type" : "string"
},
"algo_to_backend" : {
"label" : "algo_to_backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"algo_from_backend" : {
"label" : "algo_from_backend",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"state_resp_leeway" : {
"label" : "state_resp_leeway",
"type" : "number"
}
},
"flow" : [ "state_resp_leeway", "response_header_name", "request_header_name", "ttl", "version", "algo_to_backend", "algo_from_backend" ]
},
"otoroshi.next.plugins.NgClientCertChainHeaderConfig" : {
"schema" : {
"dns_header_name" : {
"label" : "dns_header_name",
"type" : "string"
},
"pem_header_name" : {
"label" : "pem_header_name",
"type" : "string"
},
"send_pem" : {
"label" : "send_pem",
"type" : "bool"
},
"send_chain" : {
"label" : "send_chain",
"type" : "bool"
},
"send_dns" : {
"label" : "send_dns",
"type" : "bool"
},
"chain_header_name" : {
"label" : "chain_header_name",
"type" : "string"
}
},
"flow" : [ "chain_header_name", "send_dns", "send_chain", "send_pem", "pem_header_name", "dns_header_name" ]
},
"otoroshi.next.plugins.wrappers.CompositeWrapper" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.tcp.TcpService" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"description" : {
"label" : "description",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"domain" : {
"label" : "domain",
"type" : "string"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"ip" : {
"label" : "ip",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tls" : {
"label" : "tls",
"type" : "bool"
}
},
"flow" : [ "host", "ip", "port", "tls" ]
}
},
"flow" : [ "domain", "targets" ]
},
"clientAuth" : {
"type" : "select",
"props" : {
"label" : "clientAuth",
"options" : [ "Need", "None", "Want" ]
}
},
"interface" : {
"label" : "interface",
"type" : "string"
},
"sni" : {
"label" : "sni",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"forwardIfNoMatch" : {
"label" : "forwardIfNoMatch",
"type" : "bool"
},
"forwardsTo" : {
"label" : "forwardsTo",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"ip" : {
"label" : "ip",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
},
"tls" : {
"label" : "tls",
"type" : "bool"
}
},
"flow" : [ "host", "ip", "port", "tls" ]
}
},
"flow" : [ "enabled", "forwardIfNoMatch", "forwardsTo" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"name" : {
"label" : "name",
"type" : "string"
},
"tls" : {
"type" : "select",
"props" : {
"label" : "tls",
"options" : [ "Disabled", "Enabled", "PassThrough" ]
}
}
},
"flow" : [ "tls", "name", "id", "interface", "clientAuth", "rules", "tags", "port", "metadata", "description", "enabled", "sni", "_loc" ]
},
"otoroshi.next.plugins.NgHeaderNamesConfig" : {
"schema" : {
"names" : {
"label" : "names",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "names" ]
},
"otoroshi.next.plugins.EndlessHttpResponse" : {
"schema" : {
"finger" : {
"label" : "finger",
"type" : "bool"
},
"addresses" : {
"label" : "addresses",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "addresses", "finger" ]
},
"otoroshi.models.InHeader" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "remove", "name", "type" ]
},
"otoroshi.next.plugins.NgLog4ShellFilter" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"parse_body" : {
"label" : "parse_body",
"type" : "bool"
}
},
"flow" : [ "parse_body", "body", "status" ]
},
"otoroshi.models.Webhook" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "headers", "url", "type", "mtlsConfig" ]
},
"otoroshi.next.plugins.GlobalThrottling" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.Cors" : {
"schema" : {
"allow_credentials" : {
"label" : "allow_credentials",
"type" : "bool"
},
"max_age" : {
"label" : "max_age",
"type" : "string"
},
"allow_origin" : {
"label" : "allow_origin",
"type" : "string"
},
"allow_methods" : {
"label" : "allow_methods",
"type" : "array",
"array" : true,
"format" : null
},
"excluded_patterns" : {
"label" : "excluded_patterns",
"type" : "array",
"array" : true,
"format" : null
},
"allow_headers" : {
"label" : "allow_headers",
"type" : "array",
"array" : true,
"format" : null
},
"expose_headers" : {
"label" : "expose_headers",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "expose_headers", "allow_headers", "excluded_patterns", "allow_methods", "allow_origin", "max_age", "allow_credentials" ]
},
"otoroshi.models.NetworkLocationMatch" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "zone", "region", "rack", "dataCenter", "provider", "type" ]
},
"otoroshi.next.plugins.OIDCIDTokenHeader" : {
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"jwt" : {
"label" : "jwt",
"type" : "bool"
}
},
"flow" : [ "jwt", "header_name", "name", "send" ]
},
"otoroshi.plugins.discovery.SelfRegistrationConfig" : {
"schema" : {
"registrationTtl" : {
"label" : "registrationTtl",
"type" : "number"
},
"targetTemplate" : {
"label" : "targetTemplate",
"type" : "object"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "hosts", "targetTemplate", "registrationTtl" ]
},
"otoroshi.models.CustomTimeouts" : {
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "globalTimeout", "idleTimeout", "callTimeout", "callAndStreamTimeout", "path" ]
},
"otoroshi.models.RestrictionPath" : {
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "path", "method" ]
},
"otoroshi.next.plugins.OverrideHost" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.utils.mailer.MailgunSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"eu" : {
"label" : "eu",
"type" : "bool"
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
}
},
"flow" : [ "to", "domain", "apiKey", "eu", "type" ]
},
"otoroshi.next.plugins.Redirection" : {
"schema" : {
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "to", "code" ]
},
"otoroshi.next.extensions.Foo" : {
"schema" : {
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"id" : {
"label" : "id",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"description" : {
"label" : "description",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "description", "tags", "name", "id", "metadata", "_loc" ]
},
"otoroshi.wasm.proxywasm.CorazaWafConfig" : {
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"inspectBody" : {
"label" : "inspectBody",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"poolCapacity" : {
"label" : "poolCapacity",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"config" : {
"label" : "config",
"type" : "object"
},
"description" : {
"label" : "description",
"type" : "string"
}
},
"flow" : [ "description", "config", "name", "id", "poolCapacity", "metadata", "inspectBody", "tags", "_loc" ]
},
"otoroshi.models.GeolocationSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "none" ]
}
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "path", "timeout", "apikey", "enabled", "type" ]
},
"otoroshi.plugins.clientcert.HasClientCertMatchingApikeyValidator" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.Restrictions" : {
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled", "allowLast", "notFound", "allowed", "forbidden" ]
},
"otoroshi.next.plugins.NgClientCertChainHeader" : {
"schema" : {
"dns_header_name" : {
"label" : "dns_header_name",
"type" : "string"
},
"pem_header_name" : {
"label" : "pem_header_name",
"type" : "string"
},
"send_pem" : {
"label" : "send_pem",
"type" : "bool"
},
"send_chain" : {
"label" : "send_chain",
"type" : "bool"
},
"send_dns" : {
"label" : "send_dns",
"type" : "bool"
},
"chain_header_name" : {
"label" : "chain_header_name",
"type" : "string"
}
},
"flow" : [ "chain_header_name", "send_dns", "send_chain", "send_pem", "pem_header_name", "dns_header_name" ]
},
"otoroshi.next.plugins.DisableHttp10" : {
"schema" : { },
"flow" : [ ]
},
"PemCertificateBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.ssl.pki.models.GenCsrResponse" : {
"schema" : {
"csr" : {
"label" : "csr",
"type" : "string"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
}
},
"flow" : [ "privateKey", "publicKey", "csr" ]
},
"otoroshi.plugins.static.StaticResponse" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.greenscore.RulesSection" : {
"schema" : {
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"sectionWeight" : {
"label" : "sectionWeight",
"type" : "number"
},
"advice" : {
"label" : "advice",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"description" : {
"label" : "description",
"type" : "string"
}
},
"flow" : [ "sectionWeight", "advice", "weight", "enabled", "id", "description" ]
}
},
"flow" : [ "rules", "id" ]
},
"otoroshi.next.plugins.JQ" : {
"schema" : {
"request" : {
"label" : "request",
"type" : "string"
},
"response" : {
"label" : "response",
"type" : "string"
}
},
"flow" : [ "response", "request" ]
},
"otoroshi.next.plugins.NgIzanamiV1CanaryRoutingConfigRoute" : {
"schema" : {
"regex" : {
"label" : "regex",
"type" : "bool"
},
"default" : {
"label" : "default",
"type" : "string"
},
"route" : {
"label" : "route",
"type" : "string"
},
"wildcard" : {
"label" : "wildcard",
"type" : "bool"
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"variants" : {
"label" : "variants",
"type" : "object"
}
},
"flow" : [ "variants", "exact", "wildcard", "route", "default", "regex" ]
},
"otoroshi.next.plugins.NgAuthModuleExpectedUser" : {
"schema" : {
"only_from" : {
"label" : "only_from",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "only_from" ]
},
"otoroshi.gateway.CircuitBreakersHolder" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.RSAlgoSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
}
},
"flow" : [ "privateKey", "publicKey", "size", "type" ]
},
"otoroshi.next.plugins.OIDCHeaders" : {
"schema" : {
"profile" : {
"label" : "profile",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "send", "header_name" ]
},
"idtoken" : {
"label" : "idtoken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"jwt" : {
"label" : "jwt",
"type" : "bool"
}
},
"flow" : [ "send", "name", "header_name", "jwt" ]
},
"access_token" : {
"label" : "access_token",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "string"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
},
"jwt" : {
"label" : "jwt",
"type" : "bool"
}
},
"flow" : [ "send", "name", "header_name", "jwt" ]
}
},
"flow" : [ "profile", "idtoken", "access_token" ]
},
"TokenResponse" : {
"schema" : {
"valid" : {
"label" : "valid",
"type" : "string"
}
},
"flow" : [ "valid" ]
},
"otoroshi.plugins.metrics.PrometheusServiceMetrics" : {
"schema" : { },
"flow" : [ ]
},
"CertValidResponse" : {
"schema" : {
"valid" : {
"label" : "valid",
"type" : "bool"
}
},
"flow" : [ "valid" ]
},
"otoroshi.next.models.NgBackend" : {
"schema" : {
"root" : {
"label" : "root",
"type" : "string"
},
"health_check" : {
"label" : "health_check",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"client" : {
"label" : "client",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"sample_interval" : {
"label" : "sample_interval",
"type" : "number"
},
"cache_connection_settings" : {
"label" : "cache_connection_settings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"queue_size" : {
"label" : "queue_size",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "queue_size", "enabled" ]
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"custom_timeouts" : {
"label" : "custom_timeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_and_stream_timeout" : {
"label" : "call_and_stream_timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"idle_timeout" : {
"label" : "idle_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
}
},
"flow" : [ "connection_timeout", "call_and_stream_timeout", "path", "call_timeout", "idle_timeout", "global_timeout" ]
},
"connection_timeout" : {
"label" : "connection_timeout",
"type" : "number"
},
"call_timeout" : {
"label" : "call_timeout",
"type" : "number"
},
"global_timeout" : {
"label" : "global_timeout",
"type" : "number"
},
"retry_initial_delay" : {
"label" : "retry_initial_delay",
"type" : "number"
},
"backoff_factor" : {
"label" : "backoff_factor",
"type" : "number"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"max_errors" : {
"label" : "max_errors",
"type" : "number"
}
},
"flow" : [ "idle_timeout", "sample_interval", "cache_connection_settings", "call_and_stream_timeout", "custom_timeouts", "connection_timeout", "call_timeout", "global_timeout", "retry_initial_delay", "backoff_factor", "proxy", "retries", "max_errors" ]
},
"load_balancing" : {
"label" : "load_balancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"rewrite" : {
"label" : "rewrite",
"type" : "bool"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"ip_address" : {
"label" : "ip_address",
"type" : "string"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"tls_config" : {
"label" : "tls_config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trust_all" : {
"label" : "trust_all",
"type" : "bool"
},
"trusted_certs" : {
"label" : "trusted_certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "enabled", "certs", "loose", "trust_all", "trusted_certs" ]
},
"tls" : {
"label" : "tls",
"type" : "bool"
},
"port" : {
"label" : "port",
"type" : "number"
},
"id" : {
"label" : "id",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"hostname" : {
"label" : "hostname",
"type" : "string"
}
},
"flow" : [ "ip_address", "protocol", "predicate", "tls_config", "tls", "port", "id", "weight", "hostname" ]
}
},
"flow" : [ "targets", "rewrite", "root", "health_check", "client", "load_balancing" ]
},
"otoroshi.plugins.useragent.UserAgentExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.ssl.pki.models.GenCertResponse" : {
"schema" : {
"ca" : {
"label" : "ca",
"type" : "string"
},
"caChain" : {
"label" : "caChain",
"type" : "array",
"array" : true,
"format" : null
},
"csrQuery" : {
"label" : "csrQuery",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"client" : {
"label" : "client",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"key" : {
"label" : "key",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"algo" : {
"label" : "algo",
"type" : "string"
},
"size" : {
"label" : "size",
"type" : "number"
}
},
"flow" : [ "algo", "size" ]
},
"includeAIA" : {
"label" : "includeAIA",
"type" : "bool"
},
"signatureAlg" : {
"label" : "signatureAlg",
"type" : "string"
},
"existingSerialNumber" : {
"label" : "existingSerialNumber",
"type" : "string"
},
"duration" : {
"label" : "duration",
"type" : "number"
},
"digestAlg" : {
"label" : "digestAlg",
"type" : "string"
},
"ca" : {
"label" : "ca",
"type" : "bool"
},
"name" : {
"label" : "name",
"type" : "object"
},
"subject" : {
"label" : "subject",
"type" : "string"
}
},
"flow" : [ "client", "hosts", "key", "includeAIA", "signatureAlg", "existingSerialNumber", "duration", "digestAlg", "ca", "name", "subject" ]
},
"cert" : {
"label" : "cert",
"type" : "string"
},
"serial" : {
"label" : "serial",
"type" : "number"
},
"key" : {
"label" : "key",
"type" : "string"
},
"csr" : {
"label" : "csr",
"type" : "string"
}
},
"flow" : [ "csr", "key", "serial", "cert", "caChain", "ca", "csrQuery" ]
},
"Unknown" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.TailscaleCertError" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
}
},
"flow" : [ "body", "status" ]
},
"otoroshi.next.plugins.NgApikeyExtractorCustomHeaders" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"client_id_header_name" : {
"label" : "client_id_header_name",
"type" : "string"
},
"client_secret_header_name" : {
"label" : "client_secret_header_name",
"type" : "string"
}
},
"flow" : [ "client_secret_header_name", "client_id_header_name", "enabled" ]
},
"otoroshi.plugins.authcallers.OAuth2Caller" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.ContextValidationConfig" : {
"schema" : {
"validators" : {
"label" : "validators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
}
},
"flow" : [ "validators" ]
},
"CodeBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.SAMLSignature" : {
"schema" : {
"algorithm" : {
"label" : "algorithm",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"canocalizationMethod" : {
"label" : "canocalizationMethod",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "algorithm", "canocalizationMethod" ]
},
"otoroshi.next.plugins.NgOtoroshiInfoConfig" : {
"schema" : {
"version" : {
"type" : "select",
"props" : {
"label" : "version",
"options" : [ "Legacy", "Latest" ]
}
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"algo" : {
"label" : "algo",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
}
},
"flow" : [ "headerName", "secComTtl", "version", "algo" ]
},
"otoroshi.auth.SAMLSignatureAlgorithm" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.W3CTracingConfig" : {
"schema" : {
"kind" : {
"type" : "select",
"props" : {
"label" : "kind",
"options" : [ "jaeger", "zipkin", "logger", "noop" ]
}
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"baggage" : {
"label" : "baggage",
"type" : "object"
}
},
"flow" : [ "baggage", "timeout", "endpoint", "kind" ]
},
"otoroshi.greenscore.Thresholds" : {
"schema" : {
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
},
"dataOut" : {
"label" : "dataOut",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
},
"headersOut" : {
"label" : "headersOut",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
}
},
"flow" : [ "plugins", "dataOut", "headersOut" ]
},
"otoroshi.plugins.jobs.kubernetes.OtoAnnotationConfig" : {
"schema" : {
"annotations" : {
"label" : "annotations",
"type" : "object"
}
},
"flow" : [ "annotations" ]
},
"otoroshi.plugins.mirror.MirroringEvent" : {
"schema" : {
"ctx" : {
"label" : "ctx",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"descriptor" : {
"label" : "descriptor",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"buildMode" : {
"label" : "buildMode",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"privateApp" : {
"label" : "privateApp",
"type" : "bool"
},
"localScheme" : {
"label" : "localScheme",
"type" : "string"
},
"authConfigRef" : {
"label" : "authConfigRef",
"type" : "string"
},
"issueCertCA" : {
"label" : "issueCertCA",
"type" : "string"
},
"root" : {
"label" : "root",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"additionalHeaders" : {
"label" : "additionalHeaders",
"type" : "object"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"clientConfig" : {
"label" : "clientConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "useCircuitBreaker", "retryInitialDelay", "cacheConnectionSettings", "proxy", "callTimeout", "callAndStreamTimeout", "globalTimeout", "maxErrors", "retries", "backoffFactor", "customTimeouts", "idleTimeout", "sampleInterval" ]
},
"matchingRoot" : {
"label" : "matchingRoot",
"type" : "string"
},
"forceHttps" : {
"label" : "forceHttps",
"type" : "bool"
},
"localHost" : {
"label" : "localHost",
"type" : "string"
},
"sendOtoroshiHeadersBack" : {
"label" : "sendOtoroshiHeadersBack",
"type" : "bool"
},
"healthCheck" : {
"label" : "healthCheck",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"strictlyPrivate" : {
"label" : "strictlyPrivate",
"type" : "bool"
},
"detectApiKeySooner" : {
"label" : "detectApiKeySooner",
"type" : "bool"
},
"allowHttp10" : {
"label" : "allowHttp10",
"type" : "bool"
},
"subdomain" : {
"label" : "subdomain",
"type" : "string"
},
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"stripPath" : {
"label" : "stripPath",
"type" : "bool"
},
"secComAlgoChallengeOtoToBack" : {
"label" : "secComAlgoChallengeOtoToBack",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"apiKeyConstraints" : {
"label" : "apiKeyConstraints",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"env" : {
"label" : "env",
"type" : "string"
},
"xForwardedHeaders" : {
"label" : "xForwardedHeaders",
"type" : "bool"
},
"transformerRefs" : {
"label" : "transformerRefs",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"gzip" : {
"label" : "gzip",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "compressionLevel", "blackList", "chunkedThreshold", "excludedPatterns", "bufferSize", "whiteList", "enabled" ]
},
"sendInfoToken" : {
"label" : "sendInfoToken",
"type" : "bool"
},
"tcpUdpTunneling" : {
"label" : "tcpUdpTunneling",
"type" : "bool"
},
"removeHeadersOut" : {
"label" : "removeHeadersOut",
"type" : "array",
"array" : true,
"format" : null
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"removeHeadersIn" : {
"label" : "removeHeadersIn",
"type" : "array",
"array" : true,
"format" : null
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"secComAlgoInfoToken" : {
"label" : "secComAlgoInfoToken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"userFacing" : {
"label" : "userFacing",
"type" : "bool"
},
"transformerConfig" : {
"label" : "transformerConfig",
"type" : "object"
},
"clientValidatorRef" : {
"label" : "clientValidatorRef",
"type" : "string"
},
"securityExcludedPatterns" : {
"label" : "securityExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"redirection" : {
"label" : "redirection",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "enabled", "code", "to" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"overrideHost" : {
"label" : "overrideHost",
"type" : "bool"
},
"accessValidator" : {
"label" : "accessValidator",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"sendStateChallenge" : {
"label" : "sendStateChallenge",
"type" : "bool"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"secComInfoTokenVersion" : {
"type" : "select",
"props" : {
"label" : "secComInfoTokenVersion",
"options" : [ "Legacy", "Latest" ]
}
},
"additionalHeadersOut" : {
"label" : "additionalHeadersOut",
"type" : "object"
},
"secComHeaders" : {
"label" : "secComHeaders",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "claimRequestName", "stateRequestName", "stateResponseName" ]
},
"matchingHeaders" : {
"label" : "matchingHeaders",
"type" : "object"
},
"secComAlgoChallengeBackToOto" : {
"label" : "secComAlgoChallengeBackToOto",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"secComUseSameAlgo" : {
"label" : "secComUseSameAlgo",
"type" : "bool"
},
"useNewWSClient" : {
"label" : "useNewWSClient",
"type" : "bool"
},
"secComExcludedPatterns" : {
"label" : "secComExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"redirectToLocal" : {
"label" : "redirectToLocal",
"type" : "bool"
},
"enforceSecureCommunication" : {
"label" : "enforceSecureCommunication",
"type" : "bool"
},
"missingOnlyHeadersOut" : {
"label" : "missingOnlyHeadersOut",
"type" : "object"
},
"secComSettings" : {
"label" : "secComSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"handleLegacyDomain" : {
"label" : "handleLegacyDomain",
"type" : "bool"
},
"canary" : {
"label" : "canary",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "enabled", "traffic", "targets", "root" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"secComVersion" : {
"type" : "select",
"props" : {
"label" : "secComVersion",
"options" : [ "V1", "v2" ]
}
},
"preRouting" : {
"label" : "preRouting",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"privatePatterns" : {
"label" : "privatePatterns",
"type" : "array",
"array" : true,
"format" : null
},
"targetsLoadBalancing" : {
"label" : "targetsLoadBalancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"cors" : {
"label" : "cors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "enabled", "allowCredentials", "maxAge", "allowMethods", "allowHeaders", "excludedPatterns", "exposeHeaders", "allowOrigin" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"publicPatterns" : {
"label" : "publicPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"api" : {
"label" : "api",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "exposeApi", "openApiDescriptorUrl" ]
},
"missingOnlyHeadersIn" : {
"label" : "missingOnlyHeadersIn",
"type" : "object"
},
"issueCert" : {
"label" : "issueCert",
"type" : "bool"
},
"headersVerification" : {
"label" : "headersVerification",
"type" : "object"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata", "enabled", "excludedPatterns", "ids" ]
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
}
},
"flow" : [ "buildMode", "hosts", "privateApp", "localScheme", "authConfigRef", "issueCertCA", "root", "name", "additionalHeaders", "domain", "clientConfig", "matchingRoot", "forceHttps", "localHost", "sendOtoroshiHeadersBack", "healthCheck", "strictlyPrivate", "detectApiKeySooner", "allowHttp10", "subdomain", "paths", "stripPath", "secComAlgoChallengeOtoToBack", "apiKeyConstraints", "env", "xForwardedHeaders", "transformerRefs", "enabled", "gzip", "sendInfoToken", "tcpUdpTunneling", "removeHeadersOut", "useAkkaHttpClient", "maintenanceMode", "id", "removeHeadersIn", "logAnalyticsOnServer", "secComAlgoInfoToken", "userFacing", "transformerConfig", "clientValidatorRef", "securityExcludedPatterns", "ipFiltering", "targets", "redirection", "tags", "restrictions", "overrideHost", "accessValidator", "sendStateChallenge", "chaosConfig", "secComInfoTokenVersion", "additionalHeadersOut", "secComHeaders", "matchingHeaders", "secComAlgoChallengeBackToOto", "secComUseSameAlgo", "useNewWSClient", "secComExcludedPatterns", "redirectToLocal", "enforceSecureCommunication", "missingOnlyHeadersOut", "secComSettings", "handleLegacyDomain", "canary", "_loc", "plugins", "secComTtl", "description", "secComVersion", "preRouting", "groups", "readOnly", "privatePatterns", "targetsLoadBalancing", "cors", "metadata", "publicPatterns", "api", "missingOnlyHeadersIn", "issueCert", "headersVerification", "jwtVerifier", "letsEncrypt" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"conf" : {
"label" : "conf",
"type" : "object"
}
},
"flow" : [ "conf" ]
}
},
"flow" : [ "descriptor", "id", "config" ]
}
},
"flow" : [ "ctx" ]
},
"otoroshi.models.GlobalJwtVerifier" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
}
},
"flow" : [ "metadata", "id", "tags", "strict", "name", "desc", "type", "source", "algoSettings", "_loc", "strategy" ]
},
"otoroshi.next.plugins.GraphQLBackendConfig" : {
"schema" : {
"schema" : {
"label" : "schema",
"type" : "string"
},
"permissions" : {
"label" : "permissions",
"type" : "array",
"array" : true,
"format" : null
},
"initial_data" : {
"label" : "initial_data",
"type" : "string"
},
"max_depth" : {
"label" : "max_depth",
"type" : "number"
}
},
"flow" : [ "max_depth", "initial_data", "permissions", "schema" ]
},
"otoroshi.api.TweakedGlobalConfig" : {
"schema" : {
"config" : {
"label" : "config",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"geolocationSettings" : {
"label" : "geolocationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "none" ]
}
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "type", "enabled", "apikey", "timeout", "path" ]
},
"alertsEmails" : {
"label" : "alertsEmails",
"type" : "array",
"array" : true,
"format" : null
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"anonymousReporting" : {
"label" : "anonymousReporting",
"type" : "bool"
},
"maxWebhookSize" : {
"label" : "maxWebhookSize",
"type" : "number"
},
"env" : {
"label" : "env",
"type" : "object"
},
"maxConcurrentRequests" : {
"label" : "maxConcurrentRequests",
"type" : "number"
},
"cleverSettings" : {
"label" : "cleverSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"consumerSecret" : {
"label" : "consumerSecret",
"type" : "string"
},
"consumerKey" : {
"label" : "consumerKey",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"token" : {
"label" : "token",
"type" : "string"
},
"orgaId" : {
"label" : "orgaId",
"type" : "string"
}
},
"flow" : [ "consumerSecret", "consumerKey", "secret", "token", "orgaId" ]
},
"templates" : {
"label" : "templates",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"team" : {
"label" : "team",
"type" : "string"
},
"script" : {
"label" : "script",
"type" : "string"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"group" : {
"label" : "group",
"type" : "string"
},
"tcpService" : {
"label" : "tcpService",
"type" : "string"
},
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"service" : {
"label" : "service",
"type" : "string"
},
"target" : {
"label" : "target",
"type" : "string"
},
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"dataExporter" : {
"label" : "dataExporter",
"type" : "string"
},
"route" : {
"label" : "route",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "string"
},
"template" : {
"label" : "template",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"authConfig" : {
"label" : "authConfig",
"type" : "string"
},
"descriptor" : {
"label" : "descriptor",
"type" : "string"
}
},
"flow" : [ "team", "script", "apikey", "group", "tcpService", "verifier", "service", "target", "certificate", "dataExporter", "route", "backend", "template", "tenant", "authConfig", "descriptor" ]
},
"endlessIpAddresses" : {
"label" : "endlessIpAddresses",
"type" : "array",
"array" : true,
"format" : null
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"kafkaConfig" : {
"label" : "kafkaConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendEvents" : {
"label" : "sendEvents",
"type" : "bool"
},
"truststore" : {
"label" : "truststore",
"type" : "string"
},
"hostValidation" : {
"label" : "hostValidation",
"type" : "bool"
},
"servers" : {
"label" : "servers",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"securityProtocol" : {
"label" : "securityProtocol",
"type" : "string"
},
"keystore" : {
"label" : "keystore",
"type" : "string"
},
"topic" : {
"label" : "topic",
"type" : "string"
},
"keyPass" : {
"label" : "keyPass",
"type" : "string"
},
"saslConfig" : {
"label" : "saslConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"mechanism" : {
"label" : "mechanism",
"type" : "string"
}
},
"flow" : [ "username", "password", "mechanism" ]
}
},
"flow" : [ "type", "sendEvents", "truststore", "hostValidation", "servers", "mtlsConfig", "securityProtocol", "keystore", "topic", "keyPass", "saslConfig" ]
},
"maxLogsSize" : {
"label" : "maxLogsSize",
"type" : "number"
},
"proxies" : {
"label" : "proxies",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"elastic" : {
"label" : "elastic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"eventsWebhooks" : {
"label" : "eventsWebhooks",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"jwk" : {
"label" : "jwk",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"auth" : {
"label" : "auth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"clevercloud" : {
"label" : "clevercloud",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"alertEmails" : {
"label" : "alertEmails",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"authority" : {
"label" : "authority",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"services" : {
"label" : "services",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
}
},
"flow" : [ "elastic", "eventsWebhooks", "jwk", "auth", "clevercloud", "alertEmails", "authority", "services" ]
},
"enableEmbeddedMetrics" : {
"label" : "enableEmbeddedMetrics",
"type" : "bool"
},
"elasticReadsConfig" : {
"label" : "elasticReadsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "type", "sendWorkers", "applyTemplate", "uris", "mtlsConfig", "version", "maxBulkSize", "headers", "indexSettings", "user", "index", "password" ]
},
"trustXForwarded" : {
"label" : "trustXForwarded",
"type" : "bool"
},
"quotasSettings" : {
"label" : "quotasSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"dailyQuotasThreshold" : {
"label" : "dailyQuotasThreshold",
"type" : "number"
},
"monthlyQuotasThreshold" : {
"label" : "monthlyQuotasThreshold",
"type" : "number"
}
},
"flow" : [ "enabled", "dailyQuotasThreshold", "monthlyQuotasThreshold" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"limitConcurrentRequests" : {
"label" : "limitConcurrentRequests",
"type" : "bool"
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"elasticWritesConfigs" : {
"label" : "elasticWritesConfigs",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "type", "sendWorkers", "applyTemplate", "uris", "mtlsConfig", "version", "maxBulkSize", "indexSettings", "user", "index", "password", "headers" ]
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"apiReadOnly" : {
"label" : "apiReadOnly",
"type" : "bool"
},
"backOfficeAuthRef" : {
"label" : "backOfficeAuthRef",
"type" : "string"
},
"streamEntityOnly" : {
"label" : "streamEntityOnly",
"type" : "bool"
},
"otoroshiId" : {
"label" : "otoroshiId",
"type" : "string"
},
"mailerSettings" : {
"label" : "mailerSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
},
"eu" : {
"label" : "eu",
"type" : "bool"
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"apiKeyPublic" : {
"label" : "apiKeyPublic",
"type" : "string"
},
"apiKeyPrivate" : {
"label" : "apiKeyPrivate",
"type" : "string"
}
},
"flow" : [ "type", "url", "headers", "to", "eu", "apiKey", "domain", "apiKeyPublic", "apiKeyPrivate" ]
},
"lines" : {
"label" : "lines",
"type" : "array",
"array" : true,
"format" : null
},
"extensions" : {
"label" : "extensions",
"type" : "object"
},
"middleFingers" : {
"label" : "middleFingers",
"type" : "bool"
},
"analyticsWebhooks" : {
"label" : "analyticsWebhooks",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "type", "url", "mtlsConfig", "headers" ]
},
"autoCert" : {
"label" : "autoCert",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"replyNicely" : {
"label" : "replyNicely",
"type" : "bool"
},
"notAllowed" : {
"label" : "notAllowed",
"type" : "array",
"array" : true,
"format" : null
},
"caRef" : {
"label" : "caRef",
"type" : "string"
}
},
"flow" : [ "allowed", "enabled", "replyNicely", "notAllowed", "caRef" ]
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"initWithNewEngine" : {
"label" : "initWithNewEngine",
"type" : "bool"
},
"letsEncryptSettings" : {
"label" : "letsEncryptSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"contacts" : {
"label" : "contacts",
"type" : "array",
"array" : true,
"format" : null
},
"emails" : {
"label" : "emails",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"server" : {
"label" : "server",
"type" : "string"
}
},
"flow" : [ "privateKey", "contacts", "emails", "enabled", "publicKey", "server" ]
},
"snowMonkeyConfig" : {
"label" : "snowMonkeyConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"dryRun" : {
"label" : "dryRun",
"type" : "bool"
},
"outageDurationTo" : {
"label" : "outageDurationTo",
"type" : "number"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"timesPerDay" : {
"label" : "timesPerDay",
"type" : "number"
},
"outageDurationFrom" : {
"label" : "outageDurationFrom",
"type" : "number"
},
"startTime" : {
"label" : "startTime",
"type" : "string"
},
"includeUserFacingDescriptors" : {
"label" : "includeUserFacingDescriptors",
"type" : "bool"
},
"targetGroups" : {
"label" : "targetGroups",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"stopTime" : {
"label" : "stopTime",
"type" : "string"
},
"outageStrategy" : {
"type" : "select",
"props" : {
"label" : "outageStrategy",
"options" : [ "AllServicesPerGroup", "OneServicePerGroup" ]
}
}
},
"flow" : [ "dryRun", "outageDurationTo", "chaosConfig", "timesPerDay", "outageDurationFrom", "startTime", "includeUserFacingDescriptors", "targetGroups", "enabled", "stopTime", "outageStrategy" ]
},
"scripts" : {
"label" : "scripts",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"jobConfig" : {
"label" : "jobConfig",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"transformersConfig" : {
"label" : "transformersConfig",
"type" : "object"
},
"transformersRefs" : {
"label" : "transformersRefs",
"type" : "array",
"array" : true,
"format" : null
},
"preRouteRefs" : {
"label" : "preRouteRefs",
"type" : "array",
"array" : true,
"format" : null
},
"sinkConfig" : {
"label" : "sinkConfig",
"type" : "object"
},
"jobRefs" : {
"label" : "jobRefs",
"type" : "array",
"array" : true,
"format" : null
},
"validatorRefs" : {
"label" : "validatorRefs",
"type" : "array",
"array" : true,
"format" : null
},
"sinkRefs" : {
"label" : "sinkRefs",
"type" : "array",
"array" : true,
"format" : null
},
"preRouteConfig" : {
"label" : "preRouteConfig",
"type" : "object"
},
"validatorConfig" : {
"label" : "validatorConfig",
"type" : "object"
}
},
"flow" : [ "jobConfig", "enabled", "transformersConfig", "transformersRefs", "preRouteRefs", "sinkConfig", "jobRefs", "validatorRefs", "sinkRefs", "preRouteConfig", "validatorConfig" ]
},
"perIpThrottlingQuota" : {
"label" : "perIpThrottlingQuota",
"type" : "number"
},
"useCircuitBreakers" : {
"label" : "useCircuitBreakers",
"type" : "bool"
},
"maxHttp10ResponseSize" : {
"label" : "maxHttp10ResponseSize",
"type" : "number"
},
"tlsSettings" : {
"label" : "tlsSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"trustedCAsServer" : {
"label" : "trustedCAsServer",
"type" : "array",
"array" : true,
"format" : null
},
"includeJdkCaClient" : {
"label" : "includeJdkCaClient",
"type" : "bool"
},
"randomIfNotFound" : {
"label" : "randomIfNotFound",
"type" : "bool"
},
"defaultDomain" : {
"label" : "defaultDomain",
"type" : "string"
},
"includeJdkCaServer" : {
"label" : "includeJdkCaServer",
"type" : "bool"
}
},
"flow" : [ "trustedCAsServer", "includeJdkCaClient", "randomIfNotFound", "defaultDomain", "includeJdkCaServer" ]
},
"statsdConfig" : {
"label" : "statsdConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"datadog" : {
"label" : "datadog",
"type" : "bool"
},
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "number"
}
},
"flow" : [ "datadog", "host", "port" ]
},
"autoLinkToDefaultGroup" : {
"label" : "autoLinkToDefaultGroup",
"type" : "bool"
},
"alertsWebhooks" : {
"label" : "alertsWebhooks",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"url" : {
"label" : "url",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
}
},
"flow" : [ "type", "url", "mtlsConfig", "headers" ]
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"u2fLoginOnly" : {
"label" : "u2fLoginOnly",
"type" : "bool"
},
"userAgentSettings" : {
"label" : "userAgentSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "enabled" ]
}
},
"flow" : [ "geolocationSettings", "alertsEmails", "throttlingQuota", "anonymousReporting", "maxWebhookSize", "env", "maxConcurrentRequests", "cleverSettings", "templates", "endlessIpAddresses", "plugins", "kafkaConfig", "maxLogsSize", "proxies", "enableEmbeddedMetrics", "elasticReadsConfig", "trustXForwarded", "quotasSettings", "tags", "limitConcurrentRequests", "useAkkaHttpClient", "elasticWritesConfigs", "logAnalyticsOnServer", "metadata", "apiReadOnly", "backOfficeAuthRef", "streamEntityOnly", "otoroshiId", "mailerSettings", "lines", "extensions", "middleFingers", "analyticsWebhooks", "autoCert", "maintenanceMode", "initWithNewEngine", "letsEncryptSettings", "snowMonkeyConfig", "scripts", "perIpThrottlingQuota", "useCircuitBreakers", "maxHttp10ResponseSize", "tlsSettings", "statsdConfig", "autoLinkToDefaultGroup", "alertsWebhooks", "ipFiltering", "u2fLoginOnly", "userAgentSettings" ]
}
},
"flow" : [ "config" ]
},
"otoroshi.next.plugins.NgHttpClientCache" : {
"schema" : {
"max_age_seconds" : {
"label" : "max_age_seconds",
"type" : "number"
},
"methods" : {
"label" : "methods",
"type" : "array",
"array" : true,
"format" : null
},
"mime_types" : {
"label" : "mime_types",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mime_types", "methods", "max_age_seconds" ]
},
"otoroshi.plugins.apikeys.ClientCredentialFlowExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.jobs.kubernetes.IngressSupport" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.discovery.DiscoverySelfRegistrationTransformer" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.izanami.IzanamiProxy" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.LocalJwtVerifier" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
}
},
"flow" : [ "excludedPatterns", "enabled", "strict", "type", "source", "algoSettings", "strategy" ]
},
"otoroshi.plugins.core.apikeys.JwtApikeyExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgJwtSignerConfig" : {
"schema" : {
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"replace_if_present" : {
"label" : "replace_if_present",
"type" : "bool"
},
"fail_if_present" : {
"label" : "fail_if_present",
"type" : "bool"
}
},
"flow" : [ "fail_if_present", "replace_if_present", "verifier" ]
},
"AuditEventList" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.WasmJobsLauncher" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgIzanamiV1CanaryRoutingConfig" : {
"schema" : {
"routes" : {
"label" : "routes",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"regex" : {
"label" : "regex",
"type" : "bool"
},
"default" : {
"label" : "default",
"type" : "string"
},
"route" : {
"label" : "route",
"type" : "string"
},
"wildcard" : {
"label" : "wildcard",
"type" : "bool"
},
"exact" : {
"label" : "exact",
"type" : "bool"
},
"variants" : {
"label" : "variants",
"type" : "object"
}
},
"flow" : [ "regex", "default", "route", "wildcard", "exact", "variants" ]
}
},
"flow" : [ "routes" ]
},
"otoroshi.next.plugins.MissingHeadersOut" : {
"schema" : {
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "headers" ]
},
"otoroshi.next.plugins.NgAllowedMethodsConfig" : {
"schema" : {
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : null
},
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "forbidden", "allowed" ]
},
"otoroshi.next.plugins.JQResponseConfig" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"otoroshi.next.plugins.Keys" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.ServiceDescriptor" : {
"schema" : {
"buildMode" : {
"label" : "buildMode",
"type" : "bool"
},
"hosts" : {
"label" : "hosts",
"type" : "array",
"array" : true,
"format" : null
},
"privateApp" : {
"label" : "privateApp",
"type" : "bool"
},
"localScheme" : {
"label" : "localScheme",
"type" : "string"
},
"authConfigRef" : {
"label" : "authConfigRef",
"type" : "string"
},
"issueCertCA" : {
"label" : "issueCertCA",
"type" : "string"
},
"root" : {
"label" : "root",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"additionalHeaders" : {
"label" : "additionalHeaders",
"type" : "object"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"clientConfig" : {
"label" : "clientConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
},
"useCircuitBreaker" : {
"label" : "useCircuitBreaker",
"type" : "bool"
},
"retryInitialDelay" : {
"label" : "retryInitialDelay",
"type" : "number"
},
"cacheConnectionSettings" : {
"label" : "cacheConnectionSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "enabled", "queueSize" ]
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"maxErrors" : {
"label" : "maxErrors",
"type" : "number"
},
"retries" : {
"label" : "retries",
"type" : "number"
},
"backoffFactor" : {
"label" : "backoffFactor",
"type" : "number"
},
"customTimeouts" : {
"label" : "customTimeouts",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"callAndStreamTimeout" : {
"label" : "callAndStreamTimeout",
"type" : "number"
},
"callTimeout" : {
"label" : "callTimeout",
"type" : "number"
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"globalTimeout" : {
"label" : "globalTimeout",
"type" : "number"
},
"connectionTimeout" : {
"label" : "connectionTimeout",
"type" : "number"
}
},
"flow" : [ "path", "callAndStreamTimeout", "callTimeout", "idleTimeout", "globalTimeout", "connectionTimeout" ]
},
"idleTimeout" : {
"label" : "idleTimeout",
"type" : "number"
},
"sampleInterval" : {
"label" : "sampleInterval",
"type" : "number"
}
},
"flow" : [ "connectionTimeout", "useCircuitBreaker", "retryInitialDelay", "cacheConnectionSettings", "proxy", "callTimeout", "callAndStreamTimeout", "globalTimeout", "maxErrors", "retries", "backoffFactor", "customTimeouts", "idleTimeout", "sampleInterval" ]
},
"matchingRoot" : {
"label" : "matchingRoot",
"type" : "string"
},
"forceHttps" : {
"label" : "forceHttps",
"type" : "bool"
},
"localHost" : {
"label" : "localHost",
"type" : "string"
},
"sendOtoroshiHeadersBack" : {
"label" : "sendOtoroshiHeadersBack",
"type" : "bool"
},
"healthCheck" : {
"label" : "healthCheck",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
}
},
"flow" : [ "enabled", "url", "timeout" ]
},
"strictlyPrivate" : {
"label" : "strictlyPrivate",
"type" : "bool"
},
"detectApiKeySooner" : {
"label" : "detectApiKeySooner",
"type" : "bool"
},
"allowHttp10" : {
"label" : "allowHttp10",
"type" : "bool"
},
"subdomain" : {
"label" : "subdomain",
"type" : "string"
},
"paths" : {
"label" : "paths",
"type" : "array",
"array" : true,
"format" : null
},
"stripPath" : {
"label" : "stripPath",
"type" : "bool"
},
"secComAlgoChallengeOtoToBack" : {
"label" : "secComAlgoChallengeOtoToBack",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"apiKeyConstraints" : {
"label" : "apiKeyConstraints",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"customHeadersAuth" : {
"label" : "customHeadersAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"clientIdHeaderName" : {
"label" : "clientIdHeaderName",
"type" : "string"
},
"clientSecretHeaderName" : {
"label" : "clientSecretHeaderName",
"type" : "string"
}
},
"flow" : [ "enabled", "clientIdHeaderName", "clientSecretHeaderName" ]
},
"routing" : {
"label" : "routing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"oneTagIn" : {
"label" : "oneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneMetaKeysIn" : {
"label" : "noneMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"oneMetaIn" : {
"label" : "oneMetaIn",
"type" : "object"
},
"oneMetaKeyIn" : {
"label" : "oneMetaKeyIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaKeysIn" : {
"label" : "allMetaKeysIn",
"type" : "array",
"array" : true,
"format" : null
},
"noneTagIn" : {
"label" : "noneTagIn",
"type" : "array",
"array" : true,
"format" : null
},
"allTagsIn" : {
"label" : "allTagsIn",
"type" : "array",
"array" : true,
"format" : null
},
"allMetaIn" : {
"label" : "allMetaIn",
"type" : "object"
},
"noneMetaIn" : {
"label" : "noneMetaIn",
"type" : "object"
}
},
"flow" : [ "oneTagIn", "noneMetaKeysIn", "oneMetaIn", "oneMetaKeyIn", "allMetaKeysIn", "noneTagIn", "allTagsIn", "allMetaIn", "noneMetaIn" ]
},
"clientIdAuth" : {
"label" : "clientIdAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
},
"jwtAuth" : {
"label" : "jwtAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "keyPairSigned", "cookieName", "queryName", "headerName", "secretSigned", "maxJwtLifespanSecs", "enabled", "includeRequestAttributes" ]
},
"basicAuth" : {
"label" : "basicAuth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
}
},
"flow" : [ "enabled", "headerName", "queryName" ]
}
},
"flow" : [ "customHeadersAuth", "routing", "clientIdAuth", "jwtAuth", "basicAuth" ]
},
"env" : {
"label" : "env",
"type" : "string"
},
"xForwardedHeaders" : {
"label" : "xForwardedHeaders",
"type" : "bool"
},
"transformerRefs" : {
"label" : "transformerRefs",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"gzip" : {
"label" : "gzip",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"compressionLevel" : {
"label" : "compressionLevel",
"type" : "number"
},
"blackList" : {
"label" : "blackList",
"type" : "array",
"array" : true,
"format" : null
},
"chunkedThreshold" : {
"label" : "chunkedThreshold",
"type" : "number"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"bufferSize" : {
"label" : "bufferSize",
"type" : "number"
},
"whiteList" : {
"label" : "whiteList",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "compressionLevel", "blackList", "chunkedThreshold", "excludedPatterns", "bufferSize", "whiteList", "enabled" ]
},
"sendInfoToken" : {
"label" : "sendInfoToken",
"type" : "bool"
},
"tcpUdpTunneling" : {
"label" : "tcpUdpTunneling",
"type" : "bool"
},
"removeHeadersOut" : {
"label" : "removeHeadersOut",
"type" : "array",
"array" : true,
"format" : null
},
"useAkkaHttpClient" : {
"label" : "useAkkaHttpClient",
"type" : "bool"
},
"maintenanceMode" : {
"label" : "maintenanceMode",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"removeHeadersIn" : {
"label" : "removeHeadersIn",
"type" : "array",
"array" : true,
"format" : null
},
"logAnalyticsOnServer" : {
"label" : "logAnalyticsOnServer",
"type" : "bool"
},
"secComAlgoInfoToken" : {
"label" : "secComAlgoInfoToken",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"userFacing" : {
"label" : "userFacing",
"type" : "bool"
},
"transformerConfig" : {
"label" : "transformerConfig",
"type" : "object"
},
"clientValidatorRef" : {
"label" : "clientValidatorRef",
"type" : "string"
},
"securityExcludedPatterns" : {
"label" : "securityExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ipFiltering" : {
"label" : "ipFiltering",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "whitelist", "blacklist" ]
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"redirection" : {
"label" : "redirection",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"code" : {
"label" : "code",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "string"
}
},
"flow" : [ "enabled", "code", "to" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"overrideHost" : {
"label" : "overrideHost",
"type" : "bool"
},
"accessValidator" : {
"label" : "accessValidator",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"sendStateChallenge" : {
"label" : "sendStateChallenge",
"type" : "bool"
},
"chaosConfig" : {
"label" : "chaosConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"badResponsesFaultConfig" : {
"label" : "badResponsesFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "status", "body", "headers" ]
}
},
"flow" : [ "ratio", "responses" ]
},
"largeRequestFaultConfig" : {
"label" : "largeRequestFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalRequestSize" : {
"label" : "additionalRequestSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalRequestSize" ]
},
"largeResponseFaultConfig" : {
"label" : "largeResponseFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"additionalResponseSize" : {
"label" : "additionalResponseSize",
"type" : "number"
}
},
"flow" : [ "ratio", "additionalResponseSize" ]
},
"latencyInjectionFaultConfig" : {
"label" : "latencyInjectionFaultConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "ratio", "from", "to" ]
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "badResponsesFaultConfig", "largeRequestFaultConfig", "largeResponseFaultConfig", "latencyInjectionFaultConfig", "enabled" ]
},
"secComInfoTokenVersion" : {
"type" : "select",
"props" : {
"label" : "secComInfoTokenVersion",
"options" : [ "Legacy", "Latest" ]
}
},
"additionalHeadersOut" : {
"label" : "additionalHeadersOut",
"type" : "object"
},
"secComHeaders" : {
"label" : "secComHeaders",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"claimRequestName" : {
"label" : "claimRequestName",
"type" : "string"
},
"stateRequestName" : {
"label" : "stateRequestName",
"type" : "string"
},
"stateResponseName" : {
"label" : "stateResponseName",
"type" : "string"
}
},
"flow" : [ "claimRequestName", "stateRequestName", "stateResponseName" ]
},
"matchingHeaders" : {
"label" : "matchingHeaders",
"type" : "object"
},
"secComAlgoChallengeBackToOto" : {
"label" : "secComAlgoChallengeBackToOto",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"secComUseSameAlgo" : {
"label" : "secComUseSameAlgo",
"type" : "bool"
},
"useNewWSClient" : {
"label" : "useNewWSClient",
"type" : "bool"
},
"secComExcludedPatterns" : {
"label" : "secComExcludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"redirectToLocal" : {
"label" : "redirectToLocal",
"type" : "bool"
},
"enforceSecureCommunication" : {
"label" : "enforceSecureCommunication",
"type" : "bool"
},
"missingOnlyHeadersOut" : {
"label" : "missingOnlyHeadersOut",
"type" : "object"
},
"secComSettings" : {
"label" : "secComSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"handleLegacyDomain" : {
"label" : "handleLegacyDomain",
"type" : "bool"
},
"canary" : {
"label" : "canary",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"traffic" : {
"label" : "traffic",
"type" : "number"
},
"targets" : {
"label" : "targets",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"host" : {
"label" : "host",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"protocol" : {
"type" : "select",
"props" : {
"label" : "protocol",
"options" : [ "HTTP/1.0", "HTTP/1.1", "HTTP/2.0", "HTTP/3.0" ]
}
},
"predicate" : {
"label" : "predicate",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "type", "dc", "positions", "provider", "dataCenter", "rack", "region", "zone" ]
},
"ipAddress" : {
"label" : "ipAddress",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"scheme" : {
"label" : "scheme",
"type" : "string"
}
},
"flow" : [ "tags", "host", "weight", "protocol", "predicate", "ipAddress", "mtlsConfig", "scheme", "metadata" ]
},
"root" : {
"label" : "root",
"type" : "string"
}
},
"flow" : [ "enabled", "traffic", "targets", "root" ]
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"config" : {
"label" : "config",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excluded" : {
"label" : "excluded",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "config", "enabled", "excluded", "refs" ]
},
"secComTtl" : {
"label" : "secComTtl",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"secComVersion" : {
"type" : "select",
"props" : {
"label" : "secComVersion",
"options" : [ "V1", "v2" ]
}
},
"preRouting" : {
"label" : "preRouting",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "enabled", "excludedPatterns", "refs", "config" ]
},
"groups" : {
"label" : "groups",
"type" : "array",
"array" : true,
"format" : null
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"privatePatterns" : {
"label" : "privatePatterns",
"type" : "array",
"array" : true,
"format" : null
},
"targetsLoadBalancing" : {
"label" : "targetsLoadBalancing",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "BestResponseTime", "IpAddressHash", "Random", "RoundRobin", "Sticky", "WeightedBestResponseTime" ]
}
},
"ratio" : {
"label" : "ratio",
"type" : "number"
}
},
"flow" : [ "type", "ratio" ]
},
"cors" : {
"label" : "cors",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"allowCredentials" : {
"label" : "allowCredentials",
"type" : "bool"
},
"maxAge" : {
"label" : "maxAge",
"type" : "string"
},
"allowMethods" : {
"label" : "allowMethods",
"type" : "array",
"array" : true,
"format" : null
},
"allowHeaders" : {
"label" : "allowHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"exposeHeaders" : {
"label" : "exposeHeaders",
"type" : "array",
"array" : true,
"format" : null
},
"allowOrigin" : {
"label" : "allowOrigin",
"type" : "string"
}
},
"flow" : [ "enabled", "allowCredentials", "maxAge", "allowMethods", "allowHeaders", "excludedPatterns", "exposeHeaders", "allowOrigin" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"publicPatterns" : {
"label" : "publicPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"api" : {
"label" : "api",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"exposeApi" : {
"label" : "exposeApi",
"type" : "bool"
},
"openApiDescriptorUrl" : {
"label" : "openApiDescriptorUrl",
"type" : "string"
}
},
"flow" : [ "exposeApi", "openApiDescriptorUrl" ]
},
"missingOnlyHeadersIn" : {
"label" : "missingOnlyHeadersIn",
"type" : "object"
},
"issueCert" : {
"label" : "issueCert",
"type" : "bool"
},
"headersVerification" : {
"label" : "headersVerification",
"type" : "object"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "type", "desc", "name", "strict", "source", "algoSettings", "tags", "id", "_loc", "strategy", "metadata", "enabled", "excludedPatterns", "ids" ]
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
}
},
"flow" : [ "letsEncrypt", "headersVerification", "issueCert", "missingOnlyHeadersIn", "publicPatterns", "metadata", "privatePatterns", "readOnly", "groups", "secComVersion", "description", "secComTtl", "handleLegacyDomain", "missingOnlyHeadersOut", "enforceSecureCommunication", "redirectToLocal", "secComExcludedPatterns", "useNewWSClient", "secComUseSameAlgo", "matchingHeaders", "additionalHeadersOut", "secComInfoTokenVersion", "sendStateChallenge", "overrideHost", "tags", "targets", "securityExcludedPatterns", "clientValidatorRef", "transformerConfig", "userFacing", "logAnalyticsOnServer", "removeHeadersIn", "id", "maintenanceMode", "useAkkaHttpClient", "removeHeadersOut", "tcpUdpTunneling", "sendInfoToken", "enabled", "transformerRefs", "xForwardedHeaders", "env", "stripPath", "paths", "subdomain", "allowHttp10", "detectApiKeySooner", "strictlyPrivate", "sendOtoroshiHeadersBack", "localHost", "forceHttps", "matchingRoot", "domain", "additionalHeaders", "name", "root", "issueCertCA", "authConfigRef", "localScheme", "privateApp", "hosts", "buildMode", "clientConfig", "healthCheck", "secComAlgoChallengeOtoToBack", "apiKeyConstraints", "gzip", "secComAlgoInfoToken", "ipFiltering", "redirection", "restrictions", "accessValidator", "chaosConfig", "secComHeaders", "secComAlgoChallengeBackToOto", "secComSettings", "canary", "_loc", "plugins", "preRouting", "targetsLoadBalancing", "cors", "api", "jwtVerifier" ]
},
"otoroshi.next.plugins.NgHasAllowedUsersValidator" : {
"schema" : {
"profile_not_match" : {
"label" : "profile_not_match",
"type" : "array",
"array" : true,
"format" : null
},
"profile_match" : {
"label" : "profile_match",
"type" : "array",
"array" : true,
"format" : null
},
"email_domains" : {
"label" : "email_domains",
"type" : "array",
"array" : true,
"format" : null
},
"usernames" : {
"label" : "usernames",
"type" : "array",
"array" : true,
"format" : null
},
"metadata_match" : {
"label" : "metadata_match",
"type" : "array",
"array" : true,
"format" : null
},
"metadata_not_match" : {
"label" : "metadata_not_match",
"type" : "array",
"array" : true,
"format" : null
},
"emails" : {
"label" : "emails",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "emails", "metadata_not_match", "metadata_match", "usernames", "email_domains", "profile_match", "profile_not_match" ]
},
"otoroshi.plugins.envoy.EnvoyControlPlane" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.workflow.WorkflowEndpoint" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.IpFiltering" : {
"schema" : {
"whitelist" : {
"label" : "whitelist",
"type" : "array",
"array" : true,
"format" : null
},
"blacklist" : {
"label" : "blacklist",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "blacklist", "whitelist" ]
},
"otoroshi.next.plugins.S3BackendConfig" : {
"schema" : {
"s3" : {
"label" : "s3",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"writeEvery" : {
"label" : "writeEvery",
"type" : "number"
},
"chunkSize" : {
"label" : "chunkSize",
"type" : "number"
},
"bucket" : {
"label" : "bucket",
"type" : "string"
},
"key" : {
"label" : "key",
"type" : "string"
},
"endpoint" : {
"label" : "endpoint",
"type" : "string"
},
"v4auth" : {
"label" : "v4auth",
"type" : "bool"
},
"access" : {
"label" : "access",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
}
},
"flow" : [ "writeEvery", "chunkSize", "bucket", "key", "endpoint", "v4auth", "access", "secret", "region" ]
}
},
"flow" : [ "s3" ]
},
"otoroshi.models.JwtAuthConstraints" : {
"schema" : {
"keyPairSigned" : {
"label" : "keyPairSigned",
"type" : "bool"
},
"cookieName" : {
"label" : "cookieName",
"type" : "string"
},
"queryName" : {
"label" : "queryName",
"type" : "string"
},
"headerName" : {
"label" : "headerName",
"type" : "string"
},
"secretSigned" : {
"label" : "secretSigned",
"type" : "bool"
},
"maxJwtLifespanSecs" : {
"label" : "maxJwtLifespanSecs",
"type" : "string"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"includeRequestAttributes" : {
"label" : "includeRequestAttributes",
"type" : "bool"
}
},
"flow" : [ "includeRequestAttributes", "enabled", "maxJwtLifespanSecs", "secretSigned", "headerName", "queryName", "cookieName", "keyPairSigned" ]
},
"otoroshi.next.plugins.TailscaleSelectTargetByNameConfig" : {
"schema" : {
"machine_name" : {
"label" : "machine_name",
"type" : "string"
},
"use_ip_address" : {
"label" : "use_ip_address",
"type" : "bool"
}
},
"flow" : [ "use_ip_address", "machine_name" ]
},
"otoroshi.models.Proxies" : {
"schema" : {
"elastic" : {
"label" : "elastic",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"eventsWebhooks" : {
"label" : "eventsWebhooks",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"jwk" : {
"label" : "jwk",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"auth" : {
"label" : "auth",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"clevercloud" : {
"label" : "clevercloud",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"alertEmails" : {
"label" : "alertEmails",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"authority" : {
"label" : "authority",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"services" : {
"label" : "services",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
}
},
"flow" : [ "elastic", "eventsWebhooks", "jwk", "auth", "clevercloud", "alertEmails", "authority", "services" ]
},
"otoroshi.next.plugins.PreRoutingVerifierContext" : {
"schema" : {
"ctx" : {
"label" : "ctx",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"apk" : {
"label" : "apk",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"dailyQuota" : {
"label" : "dailyQuota",
"type" : "number"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"throttlingQuota" : {
"label" : "throttlingQuota",
"type" : "number"
},
"constrainedServicesOnly" : {
"label" : "constrainedServicesOnly",
"type" : "bool"
},
"allowClientIdOnly" : {
"label" : "allowClientIdOnly",
"type" : "bool"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"restrictions" : {
"label" : "restrictions",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"forbidden" : {
"label" : "forbidden",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowed" : {
"label" : "allowed",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"notFound" : {
"label" : "notFound",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"method" : {
"label" : "method",
"type" : "string"
},
"path" : {
"label" : "path",
"type" : "string"
}
},
"flow" : [ "method", "path" ]
},
"allowLast" : {
"label" : "allowLast",
"type" : "bool"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
}
},
"flow" : [ "forbidden", "allowed", "notFound", "allowLast", "enabled" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"readOnly" : {
"label" : "readOnly",
"type" : "bool"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"validUntil" : {
"label" : "validUntil",
"type" : "string"
},
"clientName" : {
"label" : "clientName",
"type" : "string"
},
"monthlyQuota" : {
"label" : "monthlyQuota",
"type" : "number"
},
"description" : {
"label" : "description",
"type" : "string"
},
"rotation" : {
"label" : "rotation",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"rotationEvery" : {
"label" : "rotationEvery",
"type" : "number"
},
"gracePeriod" : {
"label" : "gracePeriod",
"type" : "number"
},
"nextSecret" : {
"label" : "nextSecret",
"type" : "string"
}
},
"flow" : [ "enabled", "rotationEvery", "gracePeriod", "nextSecret" ]
},
"authorizedEntities" : {
"label" : "authorizedEntities",
"type" : "array",
"array" : true,
"format" : null
},
"clientId" : {
"label" : "clientId",
"type" : "string"
}
},
"flow" : [ "dailyQuota", "metadata", "throttlingQuota", "constrainedServicesOnly", "allowClientIdOnly", "_loc", "restrictions", "tags", "enabled", "readOnly", "clientSecret", "validUntil", "clientName", "monthlyQuota", "description", "rotation", "authorizedEntities", "clientId" ]
}
},
"flow" : [ "ctx", "apk" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesSupport" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.InfraProviderMatch" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"provider" : {
"label" : "provider",
"type" : "string"
}
},
"flow" : [ "provider", "type" ]
},
"otoroshi.models.DefaultToken" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
}
},
"flow" : [ "token", "strict", "type", "verificationSettings" ]
},
"otoroshi.plugins.defer.DeferPlugin" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.JsonTransformConfig" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"otoroshi.next.plugins.OIDCProfileHeader" : {
"schema" : {
"send" : {
"label" : "send",
"type" : "bool"
},
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "header_name", "send" ]
},
"otoroshi.models.Exporter" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"sendEvents" : {
"label" : "sendEvents",
"type" : "bool"
},
"truststore" : {
"label" : "truststore",
"type" : "string"
},
"hostValidation" : {
"label" : "hostValidation",
"type" : "bool"
},
"servers" : {
"label" : "servers",
"type" : "array",
"array" : true,
"format" : null
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"securityProtocol" : {
"label" : "securityProtocol",
"type" : "string"
},
"keystore" : {
"label" : "keystore",
"type" : "string"
},
"topic" : {
"label" : "topic",
"type" : "string"
},
"keyPass" : {
"label" : "keyPass",
"type" : "string"
},
"saslConfig" : {
"label" : "saslConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"username" : {
"label" : "username",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"mechanism" : {
"label" : "mechanism",
"type" : "string"
}
},
"flow" : [ "username", "password", "mechanism" ]
},
"tlsTrustCertsFilePath" : {
"label" : "tlsTrustCertsFilePath",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"uri" : {
"label" : "uri",
"type" : "string"
},
"namespace" : {
"label" : "namespace",
"type" : "string"
},
"sendWorkers" : {
"label" : "sendWorkers",
"type" : "number"
},
"applyTemplate" : {
"label" : "applyTemplate",
"type" : "bool"
},
"uris" : {
"label" : "uris",
"type" : "array",
"array" : true,
"format" : null
},
"version" : {
"label" : "version",
"type" : "string"
},
"maxBulkSize" : {
"label" : "maxBulkSize",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"indexSettings" : {
"label" : "indexSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"clientSide" : {
"label" : "clientSide",
"type" : "bool"
},
"numberOfShards" : {
"label" : "numberOfShards",
"type" : "number"
},
"numberOfReplicas" : {
"label" : "numberOfReplicas",
"type" : "number"
},
"interval" : {
"label" : "interval",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "clientSide", "numberOfShards", "numberOfReplicas", "interval" ]
},
"user" : {
"label" : "user",
"type" : "string"
},
"index" : {
"label" : "index",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ref" : {
"label" : "ref",
"type" : "string"
},
"config" : {
"label" : "config",
"type" : "object"
},
"path" : {
"label" : "path",
"type" : "string"
},
"maxFileSize" : {
"label" : "maxFileSize",
"type" : "number"
},
"labels" : {
"label" : "labels",
"type" : "object"
},
"url" : {
"label" : "url",
"type" : "string"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
},
"eu" : {
"label" : "eu",
"type" : "bool"
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"apiKeyPublic" : {
"label" : "apiKeyPublic",
"type" : "string"
},
"apiKeyPrivate" : {
"label" : "apiKeyPrivate",
"type" : "string"
}
},
"flow" : [ "apiKeyPrivate", "apiKeyPublic", "domain", "apiKey", "eu", "to", "url", "labels", "maxFileSize", "path", "config", "ref", "password", "index", "user", "headers", "maxBulkSize", "version", "uris", "applyTemplate", "sendWorkers", "namespace", "uri", "tenant", "tlsTrustCertsFilePath", "keyPass", "topic", "keystore", "securityProtocol", "servers", "hostValidation", "truststore", "sendEvents", "type", "mtlsConfig", "saslConfig", "indexSettings" ]
},
"otoroshi.plugins.cache.ResponseCacheConfig" : {
"schema" : {
"json" : {
"label" : "json",
"type" : "object"
}
},
"flow" : [ "json" ]
},
"otoroshi.next.plugins.TooComplexQueryError" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.greenscore.GreenScoreEntity" : {
"schema" : {
"routes" : {
"label" : "routes",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"routeId" : {
"label" : "routeId",
"type" : "string"
},
"rulesConfig" : {
"label" : "rulesConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"sections" : {
"label" : "sections",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"rules" : {
"label" : "rules",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"sectionWeight" : {
"label" : "sectionWeight",
"type" : "number"
},
"advice" : {
"label" : "advice",
"type" : "string"
},
"weight" : {
"label" : "weight",
"type" : "number"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"value" : {
"label" : "value",
"type" : "string"
}
},
"flow" : [ "value" ]
},
"description" : {
"label" : "description",
"type" : "string"
}
},
"flow" : [ "sectionWeight", "advice", "weight", "enabled", "id", "description" ]
}
},
"flow" : [ "id", "rules" ]
},
"thresholds" : {
"label" : "thresholds",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"plugins" : {
"label" : "plugins",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
},
"dataOut" : {
"label" : "dataOut",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
},
"headersOut" : {
"label" : "headersOut",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"excellent" : {
"label" : "excellent",
"type" : "number"
},
"sufficient" : {
"label" : "sufficient",
"type" : "number"
},
"poor" : {
"label" : "poor",
"type" : "number"
}
},
"flow" : [ "excellent", "sufficient", "poor" ]
}
},
"flow" : [ "plugins", "dataOut", "headersOut" ]
}
},
"flow" : [ "sections", "thresholds" ]
}
},
"flow" : [ "routeId", "rulesConfig" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"description" : {
"label" : "description",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"name" : {
"label" : "name",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "name", "tags", "description", "metadata", "id", "routes", "_loc" ]
},
"otoroshi.next.plugins.NgCertificateAsApikey" : {
"schema" : {
"daily_quota" : {
"label" : "daily_quota",
"type" : "number"
},
"monthly_quota" : {
"label" : "monthly_quota",
"type" : "number"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"read_only" : {
"label" : "read_only",
"type" : "bool"
},
"allow_client_id_only" : {
"label" : "allow_client_id_only",
"type" : "bool"
},
"throttling_quota" : {
"label" : "throttling_quota",
"type" : "number"
},
"constrained_services_only" : {
"label" : "constrained_services_only",
"type" : "bool"
}
},
"flow" : [ "constrained_services_only", "throttling_quota", "allow_client_id_only", "read_only", "metadata", "tags", "monthly_quota", "daily_quota" ]
},
"otoroshi.ssl.Cert" : {
"schema" : {
"certType" : {
"type" : "select",
"props" : {
"label" : "certType",
"options" : [ "client", "ca", "letsEncrypt", "keypair", "selfSigned", "certificate" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"revoked" : {
"label" : "revoked",
"type" : "bool"
},
"subject" : {
"label" : "subject",
"type" : "string"
},
"description" : {
"label" : "description",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"domain" : {
"label" : "domain",
"type" : "string"
},
"ca" : {
"label" : "ca",
"type" : "bool"
},
"keypair" : {
"label" : "keypair",
"type" : "bool"
},
"letsEncrypt" : {
"label" : "letsEncrypt",
"type" : "bool"
},
"autoRenew" : {
"label" : "autoRenew",
"type" : "bool"
},
"caRef" : {
"label" : "caRef",
"type" : "string"
},
"to" : {
"label" : "to",
"type" : "number"
},
"exposed" : {
"label" : "exposed",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"sans" : {
"label" : "sans",
"type" : "array",
"array" : true,
"format" : null
},
"client" : {
"label" : "client",
"type" : "bool"
},
"from" : {
"label" : "from",
"type" : "number"
},
"valid" : {
"label" : "valid",
"type" : "bool"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"selfSigned" : {
"label" : "selfSigned",
"type" : "bool"
},
"chain" : {
"label" : "chain",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
}
},
"flow" : [ "password", "chain", "selfSigned", "privateKey", "metadata", "valid", "from", "client", "sans", "id", "exposed", "to", "caRef", "autoRenew", "letsEncrypt", "keypair", "ca", "domain", "tags", "description", "subject", "revoked", "name", "certType", "_loc" ]
},
"otoroshi.next.plugins.AuthorisationException" : {
"schema" : {
"message" : {
"label" : "message",
"type" : "string"
}
},
"flow" : [ "message" ]
},
"otoroshi.models.Outage" : {
"schema" : {
"descriptorName" : {
"label" : "descriptorName",
"type" : "string"
},
"descriptorId" : {
"label" : "descriptorId",
"type" : "string"
},
"until" : {
"label" : "until",
"type" : "string"
},
"duration" : {
"label" : "duration",
"type" : "number"
},
"startedAt" : {
"label" : "startedAt",
"type" : "number"
}
},
"flow" : [ "startedAt", "duration", "until", "descriptorId", "descriptorName" ]
},
"otoroshi.auth.SAMLCredentials" : {
"schema" : {
"signingKey" : {
"label" : "signingKey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "certificate", "privateKey", "certId", "useOtoroshiCertificate" ]
},
"encryptionKey" : {
"label" : "encryptionKey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "certificate", "privateKey", "certId", "useOtoroshiCertificate" ]
},
"signedDocuments" : {
"label" : "signedDocuments",
"type" : "bool"
},
"encryptedAssertions" : {
"label" : "encryptedAssertions",
"type" : "bool"
}
},
"flow" : [ "encryptedAssertions", "signedDocuments", "signingKey", "encryptionKey" ]
},
"otoroshi.events.AuditEvent" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.oidc.OIDCThirdPartyApiKeyConfigMode" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgUserAgentInfoHeader" : {
"schema" : {
"header_name" : {
"label" : "header_name",
"type" : "string"
}
},
"flow" : [ "header_name" ]
},
"otoroshi.utils.http.CacheConnectionSettings" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"queueSize" : {
"label" : "queueSize",
"type" : "number"
}
},
"flow" : [ "queueSize", "enabled" ]
},
"otoroshi.auth.Oauth1ModuleConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "saml", "oauth1", "oauth2", "ldap", "basic" ]
}
},
"accessTokenURL" : {
"label" : "accessTokenURL",
"type" : "string"
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"authorizeURL" : {
"label" : "authorizeURL",
"type" : "string"
},
"rightsOverride" : {
"label" : "rightsOverride",
"type" : "object"
},
"consumerKey" : {
"label" : "consumerKey",
"type" : "string"
},
"callbackURL" : {
"label" : "callbackURL",
"type" : "string"
},
"profileURL" : {
"label" : "profileURL",
"type" : "string"
},
"clientSideSessionEnabled" : {
"label" : "clientSideSessionEnabled",
"type" : "bool"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"sessionMaxAge" : {
"label" : "sessionMaxAge",
"type" : "number"
},
"httpMethod" : {
"label" : "httpMethod",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"userValidators" : {
"label" : "userValidators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
},
"id" : {
"label" : "id",
"type" : "string"
},
"requestTokenURL" : {
"label" : "requestTokenURL",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"consumerSecret" : {
"label" : "consumerSecret",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"sessionCookieValues" : {
"label" : "sessionCookieValues",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "httpOnly", "secure" ]
}
},
"flow" : [ "metadata", "consumerSecret", "requestTokenURL", "id", "userValidators", "sessionMaxAge", "tags", "clientSideSessionEnabled", "profileURL", "callbackURL", "consumerKey", "rightsOverride", "authorizeURL", "name", "desc", "accessTokenURL", "type", "httpMethod", "_loc", "sessionCookieValues" ]
},
"otoroshi.plugins.izanami.IzanamiCanary" : {
"schema" : { },
"flow" : [ ]
},
"Any" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.SamlAuthModuleConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "saml", "oauth1", "oauth2", "ldap", "basic" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"ssoProtocolBinding" : {
"label" : "ssoProtocolBinding",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"clientSideSessionEnabled" : {
"label" : "clientSideSessionEnabled",
"type" : "bool"
},
"emailAttributeName" : {
"label" : "emailAttributeName",
"type" : "string"
},
"validatingCertificates" : {
"label" : "validatingCertificates",
"type" : "array",
"array" : true,
"format" : null
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"singleLogoutProtocolBinding" : {
"label" : "singleLogoutProtocolBinding",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"sessionMaxAge" : {
"label" : "sessionMaxAge",
"type" : "number"
},
"issuer" : {
"label" : "issuer",
"type" : "string"
},
"signature" : {
"label" : "signature",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"algorithm" : {
"label" : "algorithm",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"canocalizationMethod" : {
"label" : "canocalizationMethod",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "algorithm", "canocalizationMethod" ]
},
"userValidators" : {
"label" : "userValidators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
},
"singleLogoutUrl" : {
"label" : "singleLogoutUrl",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"usedNameIDAsEmail" : {
"label" : "usedNameIDAsEmail",
"type" : "bool"
},
"singleSignOnUrl" : {
"label" : "singleSignOnUrl",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"validateAssertions" : {
"label" : "validateAssertions",
"type" : "bool"
},
"nameIDFormat" : {
"label" : "nameIDFormat",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"validateSignature" : {
"label" : "validateSignature",
"type" : "bool"
},
"credentials" : {
"label" : "credentials",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"signingKey" : {
"label" : "signingKey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "certificate", "privateKey", "certId", "useOtoroshiCertificate" ]
},
"encryptionKey" : {
"label" : "encryptionKey",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"useOtoroshiCertificate" : {
"label" : "useOtoroshiCertificate",
"type" : "bool"
}
},
"flow" : [ "certificate", "privateKey", "certId", "useOtoroshiCertificate" ]
},
"signedDocuments" : {
"label" : "signedDocuments",
"type" : "bool"
},
"encryptedAssertions" : {
"label" : "encryptedAssertions",
"type" : "bool"
}
},
"flow" : [ "signingKey", "encryptionKey", "signedDocuments", "encryptedAssertions" ]
},
"sessionCookieValues" : {
"label" : "sessionCookieValues",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "httpOnly", "secure" ]
}
},
"flow" : [ "validateSignature", "validateAssertions", "metadata", "singleSignOnUrl", "usedNameIDAsEmail", "id", "singleLogoutUrl", "userValidators", "issuer", "sessionMaxAge", "tags", "validatingCertificates", "emailAttributeName", "clientSideSessionEnabled", "name", "desc", "type", "ssoProtocolBinding", "singleLogoutProtocolBinding", "signature", "_loc", "nameIDFormat", "credentials", "sessionCookieValues" ]
},
"otoroshi.next.plugins.JQConfig" : {
"schema" : {
"request" : {
"label" : "request",
"type" : "string"
},
"response" : {
"label" : "response",
"type" : "string"
}
},
"flow" : [ "response", "request" ]
},
"otoroshi.utils.TypedMap" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.ErrorRewriteReport" : {
"schema" : {
"raw_response" : {
"label" : "raw_response",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"response" : {
"label" : "response",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
},
"response_body" : {
"label" : "response_body",
"type" : "string"
},
"id" : {
"label" : "id",
"type" : "string"
},
"raw_response_body" : {
"label" : "raw_response_body",
"type" : "string"
},
"request" : {
"label" : "request",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : { },
"flow" : [ ]
}
},
"flow" : [ "raw_response_body", "id", "response_body", "raw_response", "response", "request" ]
},
"otoroshi.next.plugins.ViolationsException" : {
"schema" : {
"errors" : {
"label" : "errors",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "errors" ]
},
"otoroshi.script.JobKind" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.ZoneMatch" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "zone", "type" ]
},
"otoroshi.plugins.loggers.BodyLoggerFilterConfig" : {
"schema" : {
"json" : {
"label" : "json",
"type" : "object"
}
},
"flow" : [ "json" ]
},
"otoroshi.next.plugins.OtoroshiHeadersIn" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.SOAPAction" : {
"schema" : {
"jq_response_filter" : {
"label" : "jq_response_filter",
"type" : "string"
},
"jq_request_filter" : {
"label" : "jq_request_filter",
"type" : "string"
},
"preserve_query" : {
"label" : "preserve_query",
"type" : "bool"
},
"convert_request_body_to_xml" : {
"label" : "convert_request_body_to_xml",
"type" : "bool"
},
"charset" : {
"label" : "charset",
"type" : "string"
},
"url" : {
"label" : "url",
"type" : "string"
},
"action" : {
"label" : "action",
"type" : "string"
},
"envelope" : {
"label" : "envelope",
"type" : "string"
}
},
"flow" : [ "envelope", "action", "url", "charset", "convert_request_body_to_xml", "preserve_query", "jq_request_filter", "jq_response_filter" ]
},
"otoroshi.next.plugins.XmlToJsonResponse" : {
"schema" : {
"filter" : {
"label" : "filter",
"type" : "string"
}
},
"flow" : [ "filter" ]
},
"GlobalConfigImportBody" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.quotas.ServiceQuotas" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.models.NgTreeRouter" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.JwtVerifier" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "global", "local", "ref" ]
}
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"source" : {
"label" : "source",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"strategy" : {
"label" : "strategy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "PassThrough", "Sign", "Transform", "DefaultToken" ]
}
},
"strict" : {
"label" : "strict",
"type" : "bool"
},
"token" : {
"label" : "token",
"type" : "object"
},
"verificationSettings" : {
"label" : "verificationSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "fields", "arrayFields" ]
},
"algoSettings" : {
"label" : "algoSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"transformSettings" : {
"label" : "transformSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"location" : {
"label" : "location",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "type", "name", "remove" ]
},
"mappingSettings" : {
"label" : "mappingSettings",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"map" : {
"label" : "map",
"type" : "object"
},
"values" : {
"label" : "values",
"type" : "object"
},
"remove" : {
"label" : "remove",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "map", "values", "remove" ]
}
},
"flow" : [ "location", "mappingSettings" ]
}
},
"flow" : [ "type", "strict", "token", "verificationSettings", "algoSettings", "transformSettings" ]
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"ids" : {
"label" : "ids",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "ids", "excludedPatterns", "enabled", "metadata", "id", "tags", "strict", "name", "desc", "type", "source", "algoSettings", "_loc", "strategy" ]
},
"otoroshi.models.LatencyInjectionFaultConfig" : {
"schema" : {
"ratio" : {
"label" : "ratio",
"type" : "number"
},
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "to", "from", "ratio" ]
},
"otoroshi.models.VerificationSettings" : {
"schema" : {
"fields" : {
"label" : "fields",
"type" : "object"
},
"arrayFields" : {
"label" : "arrayFields",
"type" : "object"
}
},
"flow" : [ "arrayFields", "fields" ]
},
"otoroshi.next.plugins.WasmRequestHandler" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.Keys" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.next.plugins.NgLog4ShellFilterConfig" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"parse_body" : {
"label" : "parse_body",
"type" : "bool"
}
},
"flow" : [ "parse_body", "body", "status" ]
},
"otoroshi.models.JwtTokenLocation" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "InQueryParam", "InHeader", "InCookie" ]
}
},
"name" : {
"label" : "name",
"type" : "string"
},
"remove" : {
"label" : "remove",
"type" : "string"
}
},
"flow" : [ "remove", "name", "type" ]
},
"otoroshi.utils.http.DN" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.GenericOauth2ModuleConfig" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "saml", "oauth1", "oauth2", "ldap", "basic" ]
}
},
"extraMetadata" : {
"label" : "extraMetadata",
"type" : "object"
},
"desc" : {
"label" : "desc",
"type" : "string"
},
"name" : {
"label" : "name",
"type" : "string"
},
"rightsOverride" : {
"label" : "rightsOverride",
"type" : "object"
},
"clientId" : {
"label" : "clientId",
"type" : "string"
},
"otoroshiRightsField" : {
"label" : "otoroshiRightsField",
"type" : "string"
},
"clientSideSessionEnabled" : {
"label" : "clientSideSessionEnabled",
"type" : "bool"
},
"scope" : {
"label" : "scope",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"accessTokenField" : {
"label" : "accessTokenField",
"type" : "string"
},
"superAdmins" : {
"label" : "superAdmins",
"type" : "bool"
},
"sessionMaxAge" : {
"label" : "sessionMaxAge",
"type" : "number"
},
"refreshTokens" : {
"label" : "refreshTokens",
"type" : "bool"
},
"loginUrl" : {
"label" : "loginUrl",
"type" : "string"
},
"apiKeyTagsField" : {
"label" : "apiKeyTagsField",
"type" : "string"
},
"otoroshiDataField" : {
"label" : "otoroshiDataField",
"type" : "string"
},
"userValidators" : {
"label" : "userValidators",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
},
"error" : {
"label" : "error",
"type" : "string"
}
},
"flow" : [ "path", "error", "value" ]
},
"emailField" : {
"label" : "emailField",
"type" : "string"
},
"mtlsConfig" : {
"label" : "mtlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"tokenUrl" : {
"label" : "tokenUrl",
"type" : "string"
},
"useCookie" : {
"label" : "useCookie",
"type" : "bool"
},
"id" : {
"label" : "id",
"type" : "string"
},
"pkce" : {
"label" : "pkce",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"algorithm" : {
"label" : "algorithm",
"type" : "string"
}
},
"flow" : [ "enabled", "algorithm" ]
},
"authorizeUrl" : {
"label" : "authorizeUrl",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"callbackUrl" : {
"label" : "callbackUrl",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"apiKeyMetaField" : {
"label" : "apiKeyMetaField",
"type" : "string"
},
"clientSecret" : {
"label" : "clientSecret",
"type" : "string"
},
"useJson" : {
"label" : "useJson",
"type" : "bool"
},
"oidConfig" : {
"label" : "oidConfig",
"type" : "string"
},
"claims" : {
"label" : "claims",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"noWildcardRedirectURI" : {
"label" : "noWildcardRedirectURI",
"type" : "bool"
},
"nameField" : {
"label" : "nameField",
"type" : "string"
},
"introspectionUrl" : {
"label" : "introspectionUrl",
"type" : "string"
},
"logoutUrl" : {
"label" : "logoutUrl",
"type" : "string"
},
"dataOverride" : {
"label" : "dataOverride",
"type" : "object"
},
"userInfoUrl" : {
"label" : "userInfoUrl",
"type" : "string"
},
"jwtVerifier" : {
"label" : "jwtVerifier",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "HSAlgoSettings", "RSAlgoSettings", "ESAlgoSettings", "JWKSAlgoSettings", "RSAKPAlgoSettings", "ESKPAlgoSettings", "KidAlgoSettings" ]
}
},
"size" : {
"label" : "size",
"type" : "number"
},
"publicKey" : {
"label" : "publicKey",
"type" : "string"
},
"privateKey" : {
"label" : "privateKey",
"type" : "string"
},
"certId" : {
"label" : "certId",
"type" : "string"
},
"secret" : {
"label" : "secret",
"type" : "string"
},
"base64" : {
"label" : "base64",
"type" : "bool"
},
"url" : {
"label" : "url",
"type" : "string"
},
"tlsConfig" : {
"label" : "tlsConfig",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"mtls" : {
"label" : "mtls",
"type" : "bool"
},
"loose" : {
"label" : "loose",
"type" : "bool"
},
"trustAll" : {
"label" : "trustAll",
"type" : "bool"
},
"trustedCerts" : {
"label" : "trustedCerts",
"type" : "array",
"array" : true,
"format" : null
},
"certs" : {
"label" : "certs",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "mtls", "loose", "trustAll", "trustedCerts", "certs" ]
},
"kty" : {
"label" : "kty",
"type" : "string"
},
"proxy" : {
"label" : "proxy",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"host" : {
"label" : "host",
"type" : "string"
},
"port" : {
"label" : "port",
"type" : "string"
},
"protocol" : {
"label" : "protocol",
"type" : "string"
},
"principal" : {
"label" : "principal",
"type" : "string"
},
"password" : {
"label" : "password",
"type" : "string"
},
"ntlmDomain" : {
"label" : "ntlmDomain",
"type" : "string"
},
"encoding" : {
"label" : "encoding",
"type" : "string"
},
"nonProxyHosts" : {
"label" : "nonProxyHosts",
"type" : "string"
}
},
"flow" : [ "host", "port", "protocol", "principal", "password", "ntlmDomain", "encoding", "nonProxyHosts" ]
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"ttl" : {
"label" : "ttl",
"type" : "number"
},
"timeout" : {
"label" : "timeout",
"type" : "number"
},
"onlyExposedCerts" : {
"label" : "onlyExposedCerts",
"type" : "bool"
}
},
"flow" : [ "type", "size", "publicKey", "privateKey", "certId", "secret", "base64", "url", "tlsConfig", "kty", "proxy", "headers", "ttl", "timeout", "onlyExposedCerts" ]
},
"readProfileFromToken" : {
"label" : "readProfileFromToken",
"type" : "bool"
},
"sessionCookieValues" : {
"label" : "sessionCookieValues",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"httpOnly" : {
"label" : "httpOnly",
"type" : "bool"
},
"secure" : {
"label" : "secure",
"type" : "bool"
}
},
"flow" : [ "httpOnly", "secure" ]
}
},
"flow" : [ "readProfileFromToken", "userInfoUrl", "dataOverride", "logoutUrl", "introspectionUrl", "nameField", "noWildcardRedirectURI", "metadata", "claims", "oidConfig", "useJson", "clientSecret", "apiKeyMetaField", "callbackUrl", "authorizeUrl", "id", "useCookie", "tokenUrl", "emailField", "userValidators", "otoroshiDataField", "apiKeyTagsField", "loginUrl", "refreshTokens", "sessionMaxAge", "superAdmins", "accessTokenField", "tags", "scope", "clientSideSessionEnabled", "otoroshiRightsField", "clientId", "rightsOverride", "name", "desc", "extraMetadata", "type", "mtlsConfig", "pkce", "_loc", "proxy", "jwtVerifier", "sessionCookieValues" ]
},
"otoroshi.next.plugins.MockEndpoint" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"path" : {
"label" : "path",
"type" : "string"
},
"resource" : {
"label" : "resource",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
},
"resource_list" : {
"label" : "resource_list",
"type" : "bool"
}
},
"flow" : [ "resource_list", "method", "headers", "resource", "path", "body", "status" ]
},
"otoroshi.script.PreRoutingRef" : {
"schema" : {
"enabled" : {
"label" : "enabled",
"type" : "bool"
},
"excludedPatterns" : {
"label" : "excludedPatterns",
"type" : "array",
"array" : true,
"format" : null
},
"refs" : {
"label" : "refs",
"type" : "array",
"array" : true,
"format" : null
},
"config" : {
"label" : "config",
"type" : "object"
}
},
"flow" : [ "config", "refs", "excludedPatterns", "enabled" ]
},
"otoroshi.wasm.WasmConfig" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.next.plugins.WasmAccessValidator" : {
"schema" : {
"allowedHosts" : {
"label" : "allowedHosts",
"type" : "array",
"array" : true,
"format" : null
},
"memoryPages" : {
"label" : "memoryPages",
"type" : "number"
},
"allowedPaths" : {
"label" : "allowedPaths",
"type" : "object"
},
"instances" : {
"label" : "instances",
"type" : "number"
},
"config" : {
"label" : "config",
"type" : "object"
},
"authorizations" : {
"label" : "authorizations",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"proxyStateAccess" : {
"label" : "proxyStateAccess",
"type" : "bool"
},
"httpAccess" : {
"label" : "httpAccess",
"type" : "bool"
},
"globalMapAccess" : {
"label" : "globalMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginDataStoreAccess" : {
"label" : "pluginDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"pluginMapAccess" : {
"label" : "pluginMapAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
},
"proxyHttpCallTimeout" : {
"label" : "proxyHttpCallTimeout",
"type" : "number"
},
"configurationAccess" : {
"label" : "configurationAccess",
"type" : "bool"
},
"globalDataStoreAccess" : {
"label" : "globalDataStoreAccess",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"read" : {
"label" : "read",
"type" : "bool"
},
"write" : {
"label" : "write",
"type" : "bool"
}
},
"flow" : [ "read", "write" ]
}
},
"flow" : [ "proxyStateAccess", "httpAccess", "globalMapAccess", "pluginDataStoreAccess", "pluginMapAccess", "proxyHttpCallTimeout", "configurationAccess", "globalDataStoreAccess" ]
},
"opa" : {
"label" : "opa",
"type" : "bool"
},
"wasi" : {
"label" : "wasi",
"type" : "bool"
},
"functionName" : {
"label" : "functionName",
"type" : "string"
}
},
"flow" : [ "functionName", "wasi", "opa", "config", "instances", "allowedPaths", "memoryPages", "allowedHosts", "authorizations" ]
},
"otoroshi.auth.BasicAuthUser" : {
"schema" : {
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"password" : {
"label" : "password",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
},
"email" : {
"label" : "email",
"type" : "string"
},
"webauthn" : {
"label" : "webauthn",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"handle" : {
"label" : "handle",
"type" : "string"
},
"credentials" : {
"label" : "credentials",
"type" : "object"
}
},
"flow" : [ "handle", "credentials" ]
},
"rights" : {
"label" : "rights",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"rights" : {
"label" : "rights",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canRead" : {
"label" : "canRead",
"type" : "bool"
}
},
"flow" : [ "canWrite", "value", "canRead" ]
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"canRead" : {
"label" : "canRead",
"type" : "bool"
},
"value" : {
"label" : "value",
"type" : "string"
},
"canWrite" : {
"label" : "canWrite",
"type" : "bool"
}
},
"flow" : [ "canRead", "value", "canWrite" ]
}
},
"flow" : [ "tenant", "teams" ]
}
},
"flow" : [ "rights" ]
},
"name" : {
"label" : "name",
"type" : "string"
}
},
"flow" : [ "name", "email", "tags", "password", "metadata", "webauthn", "rights" ]
},
"otoroshi.plugins.clientcert.SubIss" : {
"schema" : {
"sn" : {
"label" : "sn",
"type" : "string"
},
"subject" : {
"label" : "subject",
"type" : "string"
},
"issuer" : {
"label" : "issuer",
"type" : "string"
}
},
"flow" : [ "issuer", "subject", "sn" ]
},
"otoroshi.plugins.jobs.kubernetes.KubernetesIngressControllerJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.utils.mailer.SendgridSettings" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "elastic", "webhook", "kafka", "pulsar", "file", "mailer", "custom", "console", "metrics" ]
}
},
"apiKey" : {
"label" : "apiKey",
"type" : "string"
},
"to" : {
"label" : "to",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"email" : {
"label" : "email",
"type" : "string"
}
},
"flow" : [ "name", "email" ]
}
},
"flow" : [ "to", "apiKey", "type" ]
},
"otoroshi.next.plugins.AuthModule" : {
"schema" : {
"module" : {
"label" : "module",
"type" : "string"
},
"pass_with_apikey" : {
"label" : "pass_with_apikey",
"type" : "bool"
}
},
"flow" : [ "pass_with_apikey", "module" ]
},
"otoroshi.next.plugins.NgErrorRewriter" : {
"schema" : {
"ranges" : {
"label" : "ranges",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"from" : {
"label" : "from",
"type" : "number"
},
"to" : {
"label" : "to",
"type" : "number"
}
},
"flow" : [ "from", "to" ]
},
"templates" : {
"label" : "templates",
"type" : "object"
},
"log" : {
"label" : "log",
"type" : "bool"
},
"export" : {
"label" : "export",
"type" : "bool"
}
},
"flow" : [ "export", "log", "templates", "ranges" ]
},
"otoroshi.models.EntityIdentifier" : {
"schema" : {
"type" : {
"label" : "type",
"type" : "unknown type"
},
"description" : {
"label" : "description",
"type" : "unknown type"
}
},
"flow" : [ "description", "type" ]
},
"otoroshi.next.plugins.HMACCallerConfig" : {
"schema" : {
"secret" : {
"label" : "secret",
"type" : "string"
},
"algo" : {
"label" : "algo",
"type" : "string"
},
"authorization_header" : {
"label" : "authorization_header",
"type" : "string"
}
},
"flow" : [ "authorization_header", "algo", "secret" ]
},
"otoroshi.next.plugins.NgSecurityTxt" : {
"schema" : {
"preferred_languages" : {
"label" : "preferred_languages",
"type" : "string"
},
"encryption" : {
"label" : "encryption",
"type" : "string"
},
"policy" : {
"label" : "policy",
"type" : "string"
},
"acknowledgments" : {
"label" : "acknowledgments",
"type" : "string"
},
"hiring" : {
"label" : "hiring",
"type" : "string"
},
"contact" : {
"label" : "contact",
"type" : "string"
}
},
"flow" : [ "contact", "hiring", "acknowledgments", "policy", "encryption", "preferred_languages" ]
},
"otoroshi.models.DefaultTemplates" : {
"schema" : {
"team" : {
"label" : "team",
"type" : "string"
},
"script" : {
"label" : "script",
"type" : "string"
},
"apikey" : {
"label" : "apikey",
"type" : "string"
},
"group" : {
"label" : "group",
"type" : "string"
},
"tcpService" : {
"label" : "tcpService",
"type" : "string"
},
"verifier" : {
"label" : "verifier",
"type" : "string"
},
"service" : {
"label" : "service",
"type" : "string"
},
"target" : {
"label" : "target",
"type" : "string"
},
"certificate" : {
"label" : "certificate",
"type" : "string"
},
"dataExporter" : {
"label" : "dataExporter",
"type" : "string"
},
"route" : {
"label" : "route",
"type" : "string"
},
"backend" : {
"label" : "backend",
"type" : "string"
},
"template" : {
"label" : "template",
"type" : "string"
},
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"authConfig" : {
"label" : "authConfig",
"type" : "string"
},
"descriptor" : {
"label" : "descriptor",
"type" : "string"
}
},
"flow" : [ "descriptor", "authConfig", "tenant", "template", "backend", "route", "dataExporter", "certificate", "target", "service", "verifier", "tcpService", "group", "apikey", "script", "team" ]
},
"otoroshi.next.plugins.TailscaleCertificatesFetcherJob" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.plugins.authcallers.BasicAuthCaller" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.auth.OAuth1Provider" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.AlwaysMatch" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "Always" ]
}
}
},
"flow" : [ "type" ]
},
"otoroshi.plugins.core.apikeys.BasicAuthApikeyExtractor" : {
"schema" : { },
"flow" : [ ]
},
"otoroshi.models.TargetPredicate" : {
"schema" : {
"type" : {
"type" : "select",
"props" : {
"label" : "type",
"options" : [ "AlwaysMatch", "NetworkLocationMatch", "GeolocationMatch" ]
}
},
"dc" : {
"label" : "dc",
"type" : "string"
},
"positions" : {
"label" : "positions",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"latitude" : {
"label" : "latitude",
"type" : "number"
},
"longitude" : {
"label" : "longitude",
"type" : "number"
},
"radius" : {
"label" : "radius",
"type" : "number"
}
},
"flow" : [ "latitude", "longitude", "radius" ]
},
"provider" : {
"label" : "provider",
"type" : "string"
},
"dataCenter" : {
"label" : "dataCenter",
"type" : "string"
},
"rack" : {
"label" : "rack",
"type" : "string"
},
"region" : {
"label" : "region",
"type" : "string"
},
"zone" : {
"label" : "zone",
"type" : "string"
}
},
"flow" : [ "zone", "region", "rack", "dataCenter", "provider", "positions", "dc", "type" ]
},
"otoroshi.next.plugins.NgAuthModuleUserExtractor" : {
"schema" : {
"module" : {
"label" : "module",
"type" : "string"
}
},
"flow" : [ "module" ]
},
"otoroshi.plugins.loggers.ResponseBodyEvent" : {
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"headers" : {
"label" : "headers",
"type" : "object"
},
"url" : {
"label" : "url",
"type" : "string"
},
"reqId" : {
"label" : "reqId",
"type" : "string"
},
"from" : {
"label" : "from",
"type" : "string"
},
"ua" : {
"label" : "ua",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
}
},
"flow" : [ "method", "ua", "from", "reqId", "url", "headers", "status" ]
},
"otoroshi.models.ServiceGroup" : {
"schema" : {
"id" : {
"label" : "id",
"type" : "string"
},
"_loc" : {
"label" : "_loc",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"tenant" : {
"label" : "tenant",
"type" : "string"
},
"teams" : {
"label" : "teams",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tenant", "teams" ]
},
"name" : {
"label" : "name",
"type" : "string"
},
"metadata" : {
"label" : "metadata",
"type" : "object"
},
"description" : {
"label" : "description",
"type" : "string"
},
"tags" : {
"label" : "tags",
"type" : "array",
"array" : true,
"format" : null
}
},
"flow" : [ "tags", "description", "metadata", "name", "id", "_loc" ]
},
"otoroshi.next.plugins.MockResponsesConfig" : {
"schema" : {
"responses" : {
"label" : "responses",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"path" : {
"label" : "path",
"type" : "string"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"status" : {
"label" : "status",
"type" : "number"
},
"method" : {
"label" : "method",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "object"
}
},
"flow" : [ "path", "body", "status", "method", "headers" ]
},
"pass_through" : {
"label" : "pass_through",
"type" : "bool"
},
"form_data" : {
"label" : "form_data",
"type" : "form",
"collapsable" : true,
"collapsed" : true,
"schema" : {
"resources" : {
"label" : "resources",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"name" : {
"label" : "name",
"type" : "string"
},
"schema" : {
"label" : "schema",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"field_name" : {
"label" : "field_name",
"type" : "string"
},
"field_type" : {
"label" : "field_type",
"type" : "string"
},
"value" : {
"label" : "value",
"type" : "object"
}
},
"flow" : [ "field_name", "field_type", "value" ]
},
"additional_data" : {
"label" : "additional_data",
"type" : "string"
}
},
"flow" : [ "name", "schema", "additional_data" ]
},
"endpoints" : {
"label" : "endpoints",
"type" : "array",
"array" : true,
"format" : "form",
"schema" : {
"status" : {
"label" : "status",
"type" : "number"
},
"body" : {
"type" : "code",
"props" : {
"label" : "body",
"editorOnly" : true,
"mode" : "json"
}
},
"path" : {
"label" : "path",
"type" : "string"
},
"resource" : {
"label" : "resource",
"type" : "string"
},
"headers" : {
"label" : "headers",
"type" : "string"
},
"method" : {
"label" : "method",
"type" : "string"
},
"resource_list" : {
"label" : "resource_list",
"type" : "bool"
}
},
"flow" : [ "status", "body", "path", "resource", "headers", "method", "resource_list" ]
}
},
"flow" : [ "resources", "endpoints" ]
}
},
"flow" : [ "pass_through", "responses", "form_data" ]
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy