Project: Traefik (Orchestration & Management / API Gateway)
File: http.md

title: "Traefik HTTP Documentation" description: "Provide your dynamic configuration via an HTTP(S) endpoint and let Traefik Proxy do the rest. Read the technical documentation." Provide your via an HTTP(S) endpoint and let Traefik do the rest! The HTTP provider uses the same configuration as the in YAML or JSON format. Required Defines the HTTP(S) endpoint to poll. ```yaml tab="File (YAML)" providers: http: endpoint: "http://127.0.0.1:9000/api" ``` ```toml tab="File (TOML)" [providers.http] endpoint = "http://127.0.0.1:9000/api" ``` ```bash tab="CLI" --providers.http.endpoint=http://127.0.0.1:9000/api ``` Optional, Default="5s" Defines the polling interval. ```yaml tab="File (YAML)" providers: http: pollInterval: "5s" ``` ```toml tab="File (TOML)" [providers.http] pollInterval = "5s" ``` ```bash tab="CLI" --providers.http.pollInterval=5s ``` Optional, Default="5s" Defines the polling timeout when connecting to the endpoint. ```yaml tab="File (YAML)" providers: http: pollTimeout: "5s" ``` ```toml tab="File (TOML)" [providers.http] pollTimeout = "5s" ``` ```bash tab="CLI" --providers.http.pollTimeout=5s ``` Optional Defines custom headers to be sent to the endpoint. ```yaml tab="File (YAML)" providers: headers: name: value ``` ```toml tab="File (TOML)" [providers.http.headers] name = "value" ``` ```bash tab="CLI" --providers.http.headers.name=value Optional Defines the TLS configuration used for the secure connection to the endpoint. Optional `ca` is the path to the certificate authority used for the secure connection to the endpoint, it defaults to the system bundle. ```yaml tab="File (YAML)" providers: http: tls: ca: path/to/ca.crt ``` ```toml tab="File (TOML)" [providers.http.tls] ca = "path/to/ca.crt" ``` ```bash tab="CLI" --providers.http.tls.ca=path/to/ca.crt ``` Optional `cert` is the path to the public certificate used for the secure connection to the endpoint. When using this option, setting the `key` option is required. ```yaml tab="File (YAML)" providers: http: tls: cert: path/to/foo.cert key: path/to/foo.key ``` ```toml tab="File (TOML)" [providers.http.tls] cert = "path/to/foo.cert" key = "path/to/foo.key" ``` ```bash tab="CLI" --providers.http.tls.cert=path/to/foo.cert --providers.http.tls.key=path/to/foo.key ``` Optional `key` is the path to the private key used for the secure connection to the endpoint. When using this option, setting the `cert` option is required. ```yaml tab="File (YAML)" providers: http: tls: cert: path/to/foo.cert key: path/to/foo.key ``` ```toml tab="File (TOML)" [providers.http.tls] cert = "path/to/foo.cert" key = "path/to/foo.key" ``` ```bash tab="CLI" --providers.http.tls.cert=path/to/foo.cert --providers.http.tls.key=path/to/foo.key ``` Optional, Default=false If `insecureSkipVerify` is `true`, the TLS connection to the endpoint accepts any certificate presented by the server regardless of the hostnames it covers. ```yaml tab="File (YAML)" providers: http: tls: insecureSkipVerify: true ``` ```toml tab="File (TOML)" [providers.http.tls] insecureSkipVerify = true ``` ```bash tab="CLI" --providers.http.tls.insecureSkipVerify=true ```