traefik/schema.json
2025-05-29 16:21:58 +03:00

1829 lines
39 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://json.schemastore.org/traefik-v3.json",
"$defs": {
"CertificateResolverTailscaleStruct": {
"additionalProperties": false,
"type": "object"
},
"acmeConfiguration": {
"additionalProperties": false,
"properties": {
"caCertificates": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"caServer": {
"type": "string"
},
"caServerName": {
"type": "string"
},
"caSystemCertPool": {
"type": "boolean"
},
"certificatesDuration": {
"type": "integer"
},
"dnsChallenge": {
"$ref": "#/$defs/acmeDNSChallenge"
},
"eab": {
"$ref": "#/$defs/acmeEAB"
},
"email": {
"type": "string"
},
"httpChallenge": {
"$ref": "#/$defs/acmeHTTPChallenge"
},
"keyType": {
"type": "string"
},
"preferredChain": {
"type": "string"
},
"storage": {
"type": "string"
},
"tlsChallenge": {
"$ref": "#/$defs/acmeTLSChallenge"
}
},
"type": "object"
},
"acmeDNSChallenge": {
"additionalProperties": false,
"properties": {
"delayBeforeCheck": {
"type": "string"
},
"disablePropagationCheck": {
"type": "boolean"
},
"propagation": {
"$ref": "#/$defs/acmePropagation"
},
"provider": {
"type": "string"
},
"resolvers": {
"items": {
"type": "string"
},
"type": ["array", "null"]
}
},
"type": "object"
},
"acmeEAB": {
"additionalProperties": false,
"properties": {
"hmacEncoded": {
"type": "string"
},
"kid": {
"type": "string"
}
},
"type": "object"
},
"acmeHTTPChallenge": {
"additionalProperties": false,
"properties": {
"entryPoint": {
"type": "string"
}
},
"type": "object"
},
"acmePropagation": {
"additionalProperties": false,
"properties": {
"delayBeforeChecks": {
"type": "string"
},
"disableANSChecks": {
"type": "boolean"
},
"disableChecks": {
"type": "boolean"
},
"requireAllRNS": {
"type": "boolean"
}
},
"type": "object"
},
"acmeTLSChallenge": {
"additionalProperties": false,
"type": "object"
},
"consulProviderBuilder": {
"additionalProperties": false,
"properties": {
"endpoints": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"namespaces": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"rootKey": {
"type": "string"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
},
"token": {
"type": "string"
}
},
"type": "object"
},
"consulcatalogEndpointConfig": {
"additionalProperties": false,
"properties": {
"address": {
"type": "string"
},
"datacenter": {
"type": "string"
},
"endpointWaitTime": {
"type": "string"
},
"httpAuth": {
"$ref": "#/$defs/consulcatalogEndpointHTTPAuthConfig"
},
"scheme": {
"type": "string"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
},
"token": {
"type": "string"
}
},
"type": "object"
},
"consulcatalogEndpointHTTPAuthConfig": {
"additionalProperties": false,
"properties": {
"password": {
"type": "string"
},
"username": {
"type": "string"
}
},
"type": "object"
},
"consulcatalogProviderBuilder": {
"additionalProperties": false,
"properties": {
"cache": {
"type": "boolean"
},
"connectAware": {
"type": "boolean"
},
"connectByDefault": {
"type": "boolean"
},
"constraints": {
"type": "string"
},
"defaultRule": {
"type": "string"
},
"endpoint": {
"$ref": "#/$defs/consulcatalogEndpointConfig"
},
"exposedByDefault": {
"type": "boolean"
},
"namespaces": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"prefix": {
"type": "string"
},
"refreshInterval": {
"type": "string"
},
"requireConsistent": {
"type": "boolean"
},
"serviceName": {
"type": "string"
},
"stale": {
"type": "boolean"
},
"strictChecks": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"watch": {
"type": "boolean"
}
},
"type": "object"
},
"crdProvider": {
"additionalProperties": false,
"properties": {
"allowCrossNamespace": {
"type": "boolean"
},
"allowEmptyServices": {
"type": "boolean"
},
"allowExternalNameServices": {
"type": "boolean"
},
"certAuthFilePath": {
"type": "string"
},
"disableClusterScopeResources": {
"type": "boolean"
},
"endpoint": {
"type": "string"
},
"ingressClass": {
"type": "string"
},
"labelSelector": {
"type": "string"
},
"namespaces": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"nativeLBByDefault": {
"type": "boolean"
},
"throttleDuration": {
"type": "string"
},
"token": {
"type": "string"
}
},
"type": "object"
},
"dockerProvider": {
"additionalProperties": false,
"properties": {
"allowEmptyServices": {
"type": "boolean"
},
"constraints": {
"type": "string"
},
"defaultRule": {
"type": "string"
},
"endpoint": {
"type": "string"
},
"exposedByDefault": {
"type": "boolean"
},
"httpClientTimeout": {
"type": "string"
},
"network": {
"type": "string"
},
"password": {
"type": "string"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
},
"useBindPortIP": {
"type": "boolean"
},
"username": {
"type": "string"
},
"watch": {
"type": "boolean"
}
},
"type": "object"
},
"dockerSwarmProvider": {
"additionalProperties": false,
"properties": {
"allowEmptyServices": {
"type": "boolean"
},
"constraints": {
"type": "string"
},
"defaultRule": {
"type": "string"
},
"endpoint": {
"type": "string"
},
"exposedByDefault": {
"type": "boolean"
},
"httpClientTimeout": {
"type": "string"
},
"network": {
"type": "string"
},
"password": {
"type": "string"
},
"refreshSeconds": {
"type": "string"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
},
"useBindPortIP": {
"type": "boolean"
},
"username": {
"type": "string"
},
"watch": {
"type": "boolean"
}
},
"type": "object"
},
"ecsProvider": {
"additionalProperties": false,
"properties": {
"accessKeyID": {
"type": "string"
},
"autoDiscoverClusters": {
"type": "boolean"
},
"clusters": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"constraints": {
"type": "string"
},
"defaultRule": {
"type": "string"
},
"ecsAnywhere": {
"type": "boolean"
},
"exposedByDefault": {
"type": "boolean"
},
"healthyTasksOnly": {
"type": "boolean"
},
"refreshSeconds": {
"type": "integer"
},
"region": {
"type": "string"
},
"secretAccessKey": {
"type": "string"
}
},
"type": "object"
},
"etcdProvider": {
"additionalProperties": false,
"properties": {
"endpoints": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"password": {
"type": "string"
},
"rootKey": {
"type": "string"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
},
"username": {
"type": "string"
}
},
"type": "object"
},
"fileProvider": {
"additionalProperties": false,
"properties": {
"debugLogGeneratedTemplate": {
"type": "boolean"
},
"directory": {
"type": "string"
},
"filename": {
"type": "string"
},
"watch": {
"type": "boolean"
}
},
"type": "object"
},
"gatewayProvider": {
"additionalProperties": false,
"properties": {
"certAuthFilePath": {
"type": "string"
},
"endpoint": {
"type": "string"
},
"experimentalChannel": {
"type": "boolean"
},
"labelSelector": {
"type": "string"
},
"namespaces": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"nativeLBByDefault": {
"type": "boolean"
},
"statusAddress": {
"$ref": "#/$defs/gatewayStatusAddress"
},
"throttleDuration": {
"type": "string"
},
"token": {
"type": "string"
}
},
"type": "object"
},
"gatewayServiceRef": {
"additionalProperties": false,
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"type": "object"
},
"gatewayStatusAddress": {
"additionalProperties": false,
"properties": {
"hostname": {
"type": "string"
},
"ip": {
"type": "string"
},
"service": {
"$ref": "#/$defs/gatewayServiceRef"
}
},
"type": "object"
},
"httpProvider": {
"additionalProperties": false,
"properties": {
"endpoint": {
"type": "string"
},
"headers": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"pollInterval": {
"type": "string"
},
"pollTimeout": {
"type": "string"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
}
},
"required": ["endpoint"],
"type": "object"
},
"ingressEndpointIngress": {
"additionalProperties": false,
"properties": {
"hostname": {
"type": "string"
},
"ip": {
"type": "string"
},
"publishedService": {
"type": "string"
}
},
"type": "object"
},
"ingressProvider": {
"additionalProperties": false,
"properties": {
"allowEmptyServices": {
"type": "boolean"
},
"allowExternalNameServices": {
"type": "boolean"
},
"certAuthFilePath": {
"type": "string"
},
"disableClusterScopeResources": {
"type": "boolean"
},
"disableIngressClassLookup": {
"type": "boolean"
},
"endpoint": {
"type": "string"
},
"ingressClass": {
"type": "string"
},
"ingressEndpoint": {
"$ref": "#/$defs/ingressEndpointIngress"
},
"labelSelector": {
"type": "string"
},
"namespaces": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"nativeLBByDefault": {
"type": "boolean"
},
"throttleDuration": {
"type": "string"
},
"token": {
"type": "string"
}
},
"type": "object"
},
"nomadEndpointConfig": {
"additionalProperties": false,
"properties": {
"address": {
"type": "string"
},
"endpointWaitTime": {
"type": "string"
},
"region": {
"type": "string"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
},
"token": {
"type": "string"
}
},
"type": "object"
},
"nomadProviderBuilder": {
"additionalProperties": false,
"properties": {
"allowEmptyServices": {
"type": "boolean"
},
"constraints": {
"type": "string"
},
"defaultRule": {
"type": "string"
},
"endpoint": {
"$ref": "#/$defs/nomadEndpointConfig"
},
"exposedByDefault": {
"type": "boolean"
},
"namespaces": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"prefix": {
"type": "string"
},
"refreshInterval": {
"type": "string"
},
"stale": {
"type": "boolean"
},
"throttleDuration": {
"type": "string"
},
"watch": {
"type": "boolean"
}
},
"type": "object"
},
"pingHandler": {
"additionalProperties": false,
"properties": {
"entryPoint": {
"type": "string"
},
"manualRouting": {
"type": "boolean"
},
"terminatingStatusCode": {
"type": "integer"
}
},
"type": "object"
},
"pluginsDescriptor": {
"additionalProperties": false,
"properties": {
"moduleName": {
"type": "string"
},
"settings": {
"$ref": "#/$defs/pluginsSettings"
},
"version": {
"type": "string"
}
},
"type": "object"
},
"pluginsLocalDescriptor": {
"additionalProperties": false,
"properties": {
"moduleName": {
"type": "string"
},
"settings": {
"$ref": "#/$defs/pluginsSettings"
}
},
"type": "object"
},
"pluginsSettings": {
"additionalProperties": false,
"properties": {
"envs": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"mounts": {
"items": {
"type": "string"
},
"type": ["array", "null"]
}
},
"type": "object"
},
"redisProvider": {
"additionalProperties": false,
"properties": {
"db": {
"type": "integer"
},
"endpoints": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"password": {
"type": "string"
},
"rootKey": {
"type": "string"
},
"sentinel": {
"$ref": "#/$defs/redisSentinel"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
},
"username": {
"type": "string"
}
},
"type": "object"
},
"redisSentinel": {
"additionalProperties": false,
"properties": {
"latencyStrategy": {
"type": "boolean"
},
"masterName": {
"type": "string"
},
"password": {
"type": "string"
},
"randomStrategy": {
"type": "boolean"
},
"replicaStrategy": {
"type": "boolean"
},
"useDisconnectedReplicas": {
"type": "boolean"
},
"username": {
"type": "string"
}
},
"type": "object"
},
"restProvider": {
"additionalProperties": false,
"properties": {
"insecure": {
"type": "boolean"
}
},
"type": "object"
},
"staticAPI": {
"additionalProperties": false,
"properties": {
"basePath": {
"type": "string"
},
"dashboard": {
"type": "boolean"
},
"debug": {
"type": "boolean"
},
"disableDashboardAd": {
"type": "boolean"
},
"insecure": {
"type": "boolean"
}
},
"type": "object"
},
"staticCertificateResolver": {
"additionalProperties": false,
"properties": {
"acme": {
"$ref": "#/$defs/acmeConfiguration"
},
"tailscale": {
"$ref": "#/$defs/CertificateResolverTailscaleStruct"
}
},
"type": "object"
},
"staticCore": {
"additionalProperties": false,
"properties": {
"defaultRuleSyntax": {
"type": "string"
}
},
"type": "object"
},
"staticEntryPoint": {
"additionalProperties": false,
"properties": {
"address": {
"type": "string"
},
"allowACMEByPass": {
"type": "boolean"
},
"asDefault": {
"type": "boolean"
},
"forwardedHeaders": {
"$ref": "#/$defs/staticForwardedHeaders"
},
"http": {
"$ref": "#/$defs/staticHTTPConfig"
},
"http2": {
"$ref": "#/$defs/staticHTTP2Config"
},
"http3": {
"$ref": "#/$defs/staticHTTP3Config"
},
"observability": {
"$ref": "#/$defs/staticObservabilityConfig"
},
"proxyProtocol": {
"$ref": "#/$defs/staticProxyProtocol"
},
"reusePort": {
"type": "boolean"
},
"transport": {
"$ref": "#/$defs/staticEntryPointsTransport"
},
"udp": {
"$ref": "#/$defs/staticUDPConfig"
}
},
"type": "object"
},
"staticEntryPointsTransport": {
"additionalProperties": false,
"properties": {
"keepAliveMaxRequests": {
"type": "integer"
},
"keepAliveMaxTime": {
"type": "string"
},
"lifeCycle": {
"$ref": "#/$defs/staticLifeCycle"
},
"respondingTimeouts": {
"$ref": "#/$defs/staticRespondingTimeouts"
}
},
"type": "object"
},
"staticExperimental": {
"additionalProperties": false,
"properties": {
"abortOnPluginFailure": {
"type": "boolean"
},
"fastProxy": {
"$ref": "#/$defs/staticFastProxyConfig"
},
"kubernetesGateway": {
"type": "boolean"
},
"localPlugins": {
"additionalProperties": {
"$ref": "#/$defs/pluginsLocalDescriptor"
},
"type": "object"
},
"otlplogs": {
"type": "boolean"
},
"plugins": {
"additionalProperties": {
"$ref": "#/$defs/pluginsDescriptor"
},
"type": "object"
}
},
"type": "object"
},
"staticFastProxyConfig": {
"additionalProperties": false,
"properties": {
"debug": {
"type": "boolean"
}
},
"type": "object"
},
"staticForwardedHeaders": {
"additionalProperties": false,
"properties": {
"connection": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"insecure": {
"type": "boolean"
},
"trustedIPs": {
"items": {
"type": "string"
},
"type": ["array", "null"]
}
},
"type": "object"
},
"staticForwardingTimeouts": {
"additionalProperties": false,
"properties": {
"dialTimeout": {
"type": "string"
},
"idleConnTimeout": {
"type": "string"
},
"responseHeaderTimeout": {
"type": "string"
}
},
"type": "object"
},
"staticGlobal": {
"additionalProperties": false,
"properties": {
"checkNewVersion": {
"type": "boolean"
},
"sendAnonymousUsage": {
"type": "boolean"
},
"updaterCallbacks": {
"type": "array",
"items": {
"type": "string"
}
}
},
"type": "object"
},
"staticHTTP2Config": {
"additionalProperties": false,
"properties": {
"maxConcurrentStreams": {
"type": "integer"
}
},
"type": "object"
},
"staticHTTP3Config": {
"additionalProperties": false,
"properties": {
"advertisedPort": {
"type": "integer"
}
},
"type": "object"
},
"staticHTTPConfig": {
"additionalProperties": false,
"properties": {
"encodeQuerySemicolons": {
"type": "boolean"
},
"maxHeaderBytes": {
"type": "integer"
},
"middlewares": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"redirections": {
"$ref": "#/$defs/staticRedirections"
},
"tls": {
"$ref": "#/$defs/staticTLSConfig"
}
},
"type": "object"
},
"staticLifeCycle": {
"additionalProperties": false,
"properties": {
"graceTimeOut": {
"type": "string"
},
"requestAcceptGraceTimeout": {
"type": "string"
}
},
"type": "object"
},
"staticObservabilityConfig": {
"additionalProperties": false,
"properties": {
"accessLogs": {
"type": "boolean"
},
"metrics": {
"type": "boolean"
},
"tracing": {
"type": "boolean"
}
},
"type": "object"
},
"staticProviders": {
"additionalProperties": false,
"properties": {
"consul": {
"$ref": "#/$defs/consulProviderBuilder"
},
"consulCatalog": {
"$ref": "#/$defs/consulcatalogProviderBuilder"
},
"docker": {
"$ref": "#/$defs/dockerProvider"
},
"ecs": {
"$ref": "#/$defs/ecsProvider"
},
"etcd": {
"$ref": "#/$defs/etcdProvider"
},
"file": {
"$ref": "#/$defs/fileProvider"
},
"http": {
"$ref": "#/$defs/httpProvider"
},
"kubernetesCRD": {
"$ref": "#/$defs/crdProvider"
},
"kubernetesGateway": {
"$ref": "#/$defs/gatewayProvider"
},
"kubernetesIngress": {
"$ref": "#/$defs/ingressProvider"
},
"nomad": {
"$ref": "#/$defs/nomadProviderBuilder"
},
"plugin": {
"additionalProperties": {
"additionalProperties": {},
"type": "object"
},
"type": "object"
},
"providersThrottleDuration": {
"type": "string"
},
"redis": {
"$ref": "#/$defs/redisProvider"
},
"rest": {
"$ref": "#/$defs/restProvider"
},
"swarm": {
"$ref": "#/$defs/dockerSwarmProvider"
},
"zooKeeper": {
"$ref": "#/$defs/zkProvider"
}
},
"type": "object"
},
"staticProxyProtocol": {
"additionalProperties": false,
"properties": {
"insecure": {
"type": "boolean"
},
"trustedIPs": {
"items": {
"type": "string"
},
"type": ["array", "null"]
}
},
"type": "object"
},
"staticRedirectEntryPoint": {
"additionalProperties": false,
"properties": {
"permanent": {
"type": "boolean"
},
"priority": {
"type": "integer"
},
"scheme": {
"type": "string"
},
"to": {
"type": "string"
}
},
"type": "object"
},
"staticRedirections": {
"additionalProperties": false,
"properties": {
"entryPoint": {
"$ref": "#/$defs/staticRedirectEntryPoint"
}
},
"type": "object"
},
"staticRespondingTimeouts": {
"additionalProperties": false,
"properties": {
"idleTimeout": {
"type": "string"
},
"readTimeout": {
"type": "string"
},
"writeTimeout": {
"type": "string"
}
},
"type": "object"
},
"staticServersTransport": {
"additionalProperties": false,
"properties": {
"forwardingTimeouts": {
"$ref": "#/$defs/staticForwardingTimeouts"
},
"insecureSkipVerify": {
"type": "boolean"
},
"maxIdleConnsPerHost": {
"type": "integer"
},
"rootCAs": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"spiffe": {
"$ref": "#/$defs/staticSpiffe"
}
},
"type": "object"
},
"staticSpiffe": {
"additionalProperties": false,
"properties": {
"ids": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"trustDomain": {
"type": "string"
}
},
"type": "object"
},
"staticSpiffeClientConfig": {
"additionalProperties": false,
"properties": {
"workloadAPIAddr": {
"type": "string"
}
},
"type": "object"
},
"staticTCPServersTransport": {
"additionalProperties": false,
"properties": {
"dialKeepAlive": {
"type": "string"
},
"dialTimeout": {
"type": "string"
},
"terminationDelay": {
"type": "string"
},
"tls": {
"$ref": "#/$defs/staticTLSClientConfig"
}
},
"type": "object"
},
"staticTLSClientConfig": {
"additionalProperties": false,
"properties": {
"insecureSkipVerify": {
"type": "boolean"
},
"rootCAs": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"spiffe": {
"$ref": "#/$defs/staticSpiffe"
}
},
"type": "object"
},
"staticTLSConfig": {
"additionalProperties": false,
"properties": {
"certResolver": {
"type": "string"
},
"domains": {
"items": {
"$ref": "#/$defs/typesDomain"
},
"type": ["array", "null"]
},
"options": {
"type": "string"
}
},
"type": "object"
},
"staticTracing": {
"additionalProperties": false,
"properties": {
"addInternals": {
"type": "boolean"
},
"capturedRequestHeaders": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"capturedResponseHeaders": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"globalAttributes": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"otlp": {
"$ref": "#/$defs/typesOTelTracing"
},
"resourceAttributes": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"safeQueryParams": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"sampleRate": {
"type": "number"
},
"serviceName": {
"type": "string"
}
},
"type": "object"
},
"staticUDPConfig": {
"additionalProperties": false,
"properties": {
"timeout": {
"type": "string"
}
},
"type": "object"
},
"typesAccessLog": {
"additionalProperties": false,
"properties": {
"addInternals": {
"type": "boolean"
},
"bufferingSize": {
"type": "integer"
},
"fields": {
"$ref": "#/$defs/typesAccessLogFields"
},
"filePath": {
"type": "string"
},
"filters": {
"$ref": "#/$defs/typesAccessLogFilters"
},
"format": {
"type": "string"
},
"otlp": {
"$ref": "#/$defs/typesOTelLog"
}
},
"type": "object"
},
"typesAccessLogFields": {
"additionalProperties": false,
"properties": {
"defaultMode": {
"type": "string"
},
"headers": {
"$ref": "#/$defs/typesFieldHeaders"
},
"names": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"typesAccessLogFilters": {
"additionalProperties": false,
"properties": {
"minDuration": {
"type": "string"
},
"retryAttempts": {
"type": "boolean"
},
"statusCodes": {
"items": {
"type": "string"
},
"type": ["array", "null"]
}
},
"type": "object"
},
"typesClientTLS": {
"additionalProperties": false,
"properties": {
"ca": {
"type": "string"
},
"cert": {
"type": "string"
},
"insecureSkipVerify": {
"type": "boolean"
},
"key": {
"type": "string"
}
},
"type": "object"
},
"typesDatadog": {
"additionalProperties": false,
"properties": {
"addEntryPointsLabels": {
"type": "boolean"
},
"addRoutersLabels": {
"type": "boolean"
},
"addServicesLabels": {
"type": "boolean"
},
"address": {
"type": "string"
},
"prefix": {
"type": "string"
},
"pushInterval": {
"type": "string"
}
},
"type": "object"
},
"typesDomain": {
"additionalProperties": false,
"properties": {
"main": {
"type": "string"
},
"sans": {
"items": {
"type": "string"
},
"type": ["array", "null"]
}
},
"type": "object"
},
"typesFieldHeaders": {
"additionalProperties": false,
"properties": {
"defaultMode": {
"type": "string"
},
"names": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"typesHostResolverConfig": {
"additionalProperties": false,
"properties": {
"cnameFlattening": {
"type": "boolean"
},
"resolvConfig": {
"type": "string"
},
"resolvDepth": {
"type": "integer"
}
},
"type": "object"
},
"typesInfluxDB2": {
"additionalProperties": false,
"properties": {
"addEntryPointsLabels": {
"type": "boolean"
},
"addRoutersLabels": {
"type": "boolean"
},
"addServicesLabels": {
"type": "boolean"
},
"additionalLabels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"address": {
"type": "string"
},
"bucket": {
"type": "string"
},
"org": {
"type": "string"
},
"pushInterval": {
"type": "string"
},
"token": {
"type": "string"
}
},
"type": "object"
},
"typesMetrics": {
"additionalProperties": false,
"properties": {
"addInternals": {
"type": "boolean"
},
"datadog": {
"$ref": "#/$defs/typesDatadog"
},
"influxDB2": {
"$ref": "#/$defs/typesInfluxDB2"
},
"otlp": {
"$ref": "#/$defs/typesOTLP"
},
"prometheus": {
"$ref": "#/$defs/typesPrometheus"
},
"statsD": {
"$ref": "#/$defs/typesStatsd"
}
},
"type": "object"
},
"typesOTLP": {
"additionalProperties": false,
"properties": {
"addEntryPointsLabels": {
"type": "boolean"
},
"addRoutersLabels": {
"type": "boolean"
},
"addServicesLabels": {
"type": "boolean"
},
"explicitBoundaries": {
"items": {
"type": "number"
},
"type": ["array", "null"]
},
"grpc": {
"$ref": "#/$defs/typesOTelGRPC"
},
"http": {
"$ref": "#/$defs/typesOTelHTTP"
},
"pushInterval": {
"type": "string"
},
"serviceName": {
"type": "string"
}
},
"type": "object"
},
"typesOTelGRPC": {
"additionalProperties": false,
"properties": {
"endpoint": {
"type": "string"
},
"headers": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"insecure": {
"type": "boolean"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
}
},
"type": "object"
},
"typesOTelHTTP": {
"additionalProperties": false,
"properties": {
"endpoint": {
"type": "string"
},
"headers": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"tls": {
"$ref": "#/$defs/typesClientTLS"
}
},
"type": "object"
},
"typesOTelLog": {
"additionalProperties": false,
"properties": {
"grpc": {
"$ref": "#/$defs/typesOTelGRPC"
},
"http": {
"$ref": "#/$defs/typesOTelHTTP"
},
"resourceAttributes": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"serviceName": {
"type": "string"
}
},
"type": "object"
},
"typesOTelTracing": {
"additionalProperties": false,
"properties": {
"grpc": {
"$ref": "#/$defs/typesOTelGRPC"
},
"http": {
"$ref": "#/$defs/typesOTelHTTP"
}
},
"type": "object"
},
"typesPrometheus": {
"additionalProperties": false,
"properties": {
"addEntryPointsLabels": {
"type": "boolean"
},
"addRoutersLabels": {
"type": "boolean"
},
"addServicesLabels": {
"type": "boolean"
},
"buckets": {
"items": {
"type": "number"
},
"type": ["array", "null"]
},
"entryPoint": {
"type": "string"
},
"headerLabels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"manualRouting": {
"type": "boolean"
}
},
"type": "object"
},
"typesStatsd": {
"additionalProperties": false,
"properties": {
"addEntryPointsLabels": {
"type": "boolean"
},
"addRoutersLabels": {
"type": "boolean"
},
"addServicesLabels": {
"type": "boolean"
},
"address": {
"type": "string"
},
"prefix": {
"type": "string"
},
"pushInterval": {
"type": "string"
}
},
"type": "object"
},
"typesTraefikLog": {
"additionalProperties": false,
"properties": {
"compress": {
"type": "boolean"
},
"filePath": {
"type": "string"
},
"format": {
"type": "string"
},
"level": {
"type": "string"
},
"maxAge": {
"type": "integer"
},
"maxBackups": {
"type": "integer"
},
"maxSize": {
"type": "integer"
},
"noColor": {
"type": "boolean"
},
"otlp": {
"$ref": "#/$defs/typesOTelLog"
}
},
"type": "object"
},
"zkProvider": {
"additionalProperties": false,
"properties": {
"endpoints": {
"items": {
"type": "string"
},
"type": ["array", "null"]
},
"password": {
"type": "string"
},
"rootKey": {
"type": "string"
},
"username": {
"type": "string"
}
},
"type": "object"
}
},
"title": "Traefik v3 Static Configuration",
"properties": {
"accessLog": {
"$ref": "#/$defs/typesAccessLog"
},
"api": {
"$ref": "#/$defs/staticAPI"
},
"certificatesResolvers": {
"additionalProperties": {
"$ref": "#/$defs/staticCertificateResolver"
},
"type": "object"
},
"core": {
"$ref": "#/$defs/staticCore"
},
"entryPoints": {
"additionalProperties": {
"$ref": "#/$defs/staticEntryPoint"
},
"type": "object"
},
"experimental": {
"$ref": "#/$defs/staticExperimental"
},
"global": {
"$ref": "#/$defs/staticGlobal"
},
"hostResolver": {
"$ref": "#/$defs/typesHostResolverConfig"
},
"log": {
"$ref": "#/$defs/typesTraefikLog"
},
"metrics": {
"$ref": "#/$defs/typesMetrics"
},
"ping": {
"$ref": "#/$defs/pingHandler"
},
"providers": {
"$ref": "#/$defs/staticProviders"
},
"serversTransport": {
"$ref": "#/$defs/staticServersTransport"
},
"spiffe": {
"$ref": "#/$defs/staticSpiffeClientConfig"
},
"tcpServersTransport": {
"$ref": "#/$defs/staticTCPServersTransport"
},
"tracing": {
"$ref": "#/$defs/staticTracing"
}
},
"type": "object"
}