The API server is a gRPC/REST server which exposes the API consumed by the Web UI, CLI, and CI/CD systems. This command runs API server in the foreground. It can be configured by following options.
Usage:
argocd-server [flags]
argocd-server [command]
Examples:
# Start the Argo CD API server with default settings
$ argocd-server
# Start the Argo CD API server on a custom port and enable tracing
$ argocd-server --port 8888 --otlp-address localhost:4317
Available Commands:
completion Generate the autocompletion script for the specified shell
help Help about any command
version Print version information
Flags:
--address string Listen on given address (default "0.0.0.0")
--api-content-types string Semicolon separated list of allowed content types for non GET api requests. Any content type is allowed if empty. (default "application/json")
--app-state-cache-expiration duration Cache expiration for app state (default 1h0m0s)
--application-namespaces strings List of additional namespaces where application resources can be managed in
--appset-allowed-scm-providers strings The list of allowed custom SCM provider API URLs. This restriction does not apply to SCM or PR generators which do not accept a custom API URL. (Default: Empty = all)
--appset-enable-github-api-metrics Enable GitHub API metrics for generators that use the GitHub API
--appset-enable-new-git-file-globbing Enable new globbing in Git files generator.
--appset-enable-scm-providers Enable retrieving information from SCM providers, used by the SCM and PR generators (Default: true) (default true)
--appset-scm-root-ca-path string Provide Root CA Path for self-signed TLS Certificates
--as string Username to impersonate for the operation
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
--as-uid string UID to impersonate for the operation
--basehref string Value for base href in index.html. Used if Argo CD is running behind reverse proxy under subpath different from / (default "/")
--certificate-authority string Path to a cert file for the certificate authority
--client-certificate string Path to a client certificate file for TLS
--client-key string Path to a client key file for TLS
--cluster string The name of the kubeconfig cluster to use
--connection-status-cache-expiration duration Cache expiration for cluster/repo connection status (default 1h0m0s)
--content-security-policy value Set Content-Security-Policy header in HTTP responses to value. To disable, set to "". (default "frame-ancestors 'self';")
--context string The name of the kubeconfig context to use
--default-cache-expiration duration Cache expiration default (default 24h0m0s)
--dex-server string Dex server address (default "argocd-dex-server:5556")
--dex-server-plaintext Use a plaintext client (non-TLS) to connect to dex server
--dex-server-strict-tls Perform strict validation of TLS certificates when connecting to dex server
--disable-auth Disable client authentication
--disable-compression If true, opt-out of response compression for all requests to the server
--enable-gzip Enable GZIP compression (default true)
--enable-k8s-event none Enable ArgoCD to use k8s event. For disabling all events, set the value as none. (e.g --enable-k8s-event=none), For enabling specific events, set the value as `event reason`. (e.g --enable-k8s-event=StatusRefreshed,ResourceCreated) (default [all])
--enable-proxy-extension Enable Proxy Extension feature
--gloglevel int Set the glog logging level
-h, --help help for argocd-server
--hydrator-enabled Feature flag to enable Hydrator. Default ("false")
--insecure Run server without TLS
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
--kubeconfig string Path to a kube config. Only required if out-of-cluster
--logformat string Set the logging format. One of: json|text (default "json")
--login-attempts-expiration duration Cache expiration for failed login attempts. DEPRECATED: this flag is unused and will be removed in a future version. (default 24h0m0s)
--loglevel string Set the logging level. One of: debug|info|warn|error (default "info")
--metrics-address string Listen for metrics on given address (default "0.0.0.0")
--metrics-port int Start metrics on given port (default 8083)
-n, --namespace string If present, the namespace scope for this CLI request
--oidc-cache-expiration duration Cache expiration for OIDC state (default 3m0s)
--otlp-address string OpenTelemetry collector address to send traces to
--otlp-attrs strings List of OpenTelemetry collector extra attrs when send traces, each attribute is separated by a colon(e.g. key:value)
--otlp-headers stringToString List of OpenTelemetry collector extra headers sent with traces, headers are comma-separated key-value pairs(e.g. key1=value1,key2=value2) (default [])
--otlp-insecure OpenTelemetry collector insecure mode (default true)
--password string Password for basic authentication to the API server
--port int Listen on given port (default 8080)
--proxy-url string If provided, this URL will be used to connect via proxy
--redis string Redis server hostname and port (e.g. argocd-redis:6379).
--redis-ca-certificate string Path to Redis server CA certificate (e.g. /etc/certs/redis/ca.crt). If not specified, system trusted CAs will be used for server certificate validation.
--redis-client-certificate string Path to Redis client certificate (e.g. /etc/certs/redis/client.crt).
--redis-client-key string Path to Redis client key (e.g. /etc/certs/redis/client.crt).
--redis-compress string Enable compression for data sent to Redis with the required compression algorithm. (possible values: gzip, none) (default "gzip")
--redis-insecure-skip-tls-verify Skip Redis server certificate validation.
--redis-use-tls Use TLS when connecting to Redis.
--redisdb int Redis database.
--repo-cache-expiration duration Cache expiration for repo state, incl. app lists, app details, manifest generation, revision meta-data (default 24h0m0s)
--repo-server string Repo server address (default "argocd-repo-server:8081")
--repo-server-default-cache-expiration duration Cache expiration default (default 24h0m0s)
--repo-server-plaintext Use a plaintext client (non-TLS) to connect to repository server
--repo-server-redis string Redis server hostname and port (e.g. argocd-redis:6379).
--repo-server-redis-ca-certificate string Path to Redis server CA certificate (e.g. /etc/certs/redis/ca.crt). If not specified, system trusted CAs will be used for server certificate validation.
--repo-server-redis-client-certificate string Path to Redis client certificate (e.g. /etc/certs/redis/client.crt).
--repo-server-redis-client-key string Path to Redis client key (e.g. /etc/certs/redis/client.crt).
--repo-server-redis-compress string Enable compression for data sent to Redis with the required compression algorithm. (possible values: gzip, none) (default "gzip")
--repo-server-redis-insecure-skip-tls-verify Skip Redis server certificate validation.
--repo-server-redis-use-tls Use TLS when connecting to Redis.
--repo-server-redisdb int Redis database.
--repo-server-sentinel stringArray Redis sentinel hostname and port (e.g. argocd-redis-ha-announce-0:6379).
--repo-server-sentinelmaster string Redis sentinel master group name. (default "master")
--repo-server-strict-tls Perform strict validation of TLS certificates when connecting to repo server
--repo-server-timeout-seconds int Repo server RPC call timeout seconds. (default 60)
--request-timeout string The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests. (default "0")
--revision-cache-expiration duration Cache expiration for cached revision (default 3m0s)
--revision-cache-lock-timeout duration Cache TTL for locks to prevent duplicate requests on revisions, set to 0 to disable (default 10s)
--rootpath string Used if Argo CD is running behind reverse proxy under subpath different from /
--sentinel stringArray Redis sentinel hostname and port (e.g. argocd-redis-ha-announce-0:6379).
--sentinelmaster string Redis sentinel master group name. (default "master")
--server string The address and port of the Kubernetes API server
--staticassets string Directory path that contains additional static assets (default "/shared/app")
--sync-with-replace-allowed Whether to allow users to select replace for syncs from UI/CLI (default true)
--tls-server-name string If provided, this name will be used to validate server certificate. If this is not provided, hostname used to contact the server is used.
--tlsciphers string The list of acceptable ciphers to be used when establishing TLS connections. Use 'list' to list available ciphers. (default "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384")
--tlsmaxversion string The maximum SSL/TLS version that is acceptable (one of: 1.0|1.1|1.2|1.3) (default "1.3")
--tlsminversion string The minimum SSL/TLS version that is acceptable (one of: 1.0|1.1|1.2|1.3) (default "1.2")
--token string Bearer token for authentication to the API server
--user string The name of the kubeconfig user to use
--username string Username for basic authentication to the API server
--webhook-parallelism-limit int Number of webhook requests processed concurrently (default 50)
--x-frame-options value Set X-Frame-Options header in HTTP responses to value. To disable, set to "". (default "sameorigin")
Use "argocd-server [command] --help" for more information about a command.
Options (91)
| Option | Description | Source |
|---|---|---|
--address string | Listen on given address (default "0.0.0.0") | help |
--api-content-types string | Semicolon separated list of allowed content types for non GET api requests. | help |
--app-state-cache-expiration duration | Cache expiration for app state (default 1h0m0s) | help |
--application-namespaces strings | List of additional namespaces where application resources can be managed in | help |
--appset-allowed-scm-providers strings | The list of allowed custom SCM provider API URLs. | help |
--appset-enable-github-api-metrics | Enable GitHub API metrics for generators that use the GitHub API | help |
--appset-enable-new-git-file-globbing | Enable new globbing in Git files generator. | help |
--appset-enable-scm-providers | Enable retrieving information from SCM providers, used by the SCM and PR generators (Default: true) (default true) | help |
--appset-scm-root-ca-path string | Provide Root CA Path for self-signed TLS Certificates | help |
--as string | Username to impersonate for the operation | help |
--as-group stringArray | Group to impersonate for the operation, this flag can be repeated to specify multiple groups. | help |
--as-uid string | UID to impersonate for the operation | help |
--basehref string | Value for base href in index.html. | help |
--certificate-authority string | Path to a cert file for the certificate authority | help |
--client-certificate string | Path to a client certificate file for TLS | help |
--client-key string | Path to a client key file for TLS | help |
--cluster string | The name of the kubeconfig cluster to use | help |
--connection-status-cache-expiration duration | Cache expiration for cluster/repo connection status (default 1h0m0s) | help |
--content-security-policy value | Set Content-Security-Policy header in HTTP responses to value. | help |
--context string | The name of the kubeconfig context to use | help |
--default-cache-expiration duration | Cache expiration default (default 24h0m0s) | help |
--dex-server string | Dex server address (default "argocd-dex-server:5556") | help |
--dex-server-plaintext | Use a plaintext client (non-TLS) to connect to dex server | help |
--dex-server-strict-tls | Perform strict validation of TLS certificates when connecting to dex server | help |
--disable-auth | Disable client authentication | help |
--disable-compression | If true, opt-out of response compression for all requests to the server | help |
--enable-gzip | Enable GZIP compression (default true) | help |
--enable-k8s-event none | Enable ArgoCD to use k8s event. | help |
--enable-proxy-extension | Enable Proxy Extension feature | help |
--gloglevel int | Set the glog logging level | help |
-h, --help | help for argocd-server | help |
--hydrator-enabled | Feature flag to enable Hydrator. | help |
--insecure | Run server without TLS | help |
--insecure-skip-tls-verify | If true, the server's certificate will not be checked for validity. | help |
--kubeconfig string | Path to a kube config. | help |
--logformat string | Set the logging format. | help |
--login-attempts-expiration duration | Cache expiration for failed login attempts. | help |
--loglevel string | Set the logging level. | help |
--metrics-address string | Listen for metrics on given address (default "0.0.0.0") | help |
--metrics-port int | Start metrics on given port (default 8083) | help |
-n, --namespace string | If present, the namespace scope for this CLI request | help |
--oidc-cache-expiration duration | Cache expiration for OIDC state (default 3m0s) | help |
--otlp-address string | OpenTelemetry collector address to send traces to | help |
--otlp-attrs strings | List of OpenTelemetry collector extra attrs when send traces, each attribute is separated by a colon(e.g. key:value) | help |
--otlp-headers stringToString | List of OpenTelemetry collector extra headers sent with traces, headers are comma-separated key-value pairs(e.g. key1=value1,key2=value2) (default []) | help |
--otlp-insecure | OpenTelemetry collector insecure mode (default true) | help |
--password string | Password for basic authentication to the API server | help |
--port int | Listen on given port (default 8080) | help |
--proxy-url string | If provided, this URL will be used to connect via proxy | help |
--redis string | Redis server hostname and port (e.g. argocd-redis:6379). | help |
--redis-ca-certificate string | Path to Redis server CA certificate (e.g. /etc/certs/redis/ca.crt). | help |
--redis-client-certificate string | Path to Redis client certificate (e.g. /etc/certs/redis/client.crt). | help |
--redis-client-key string | Path to Redis client key (e.g. /etc/certs/redis/client.crt). | help |
--redis-compress string | Enable compression for data sent to Redis with the required compression algorithm. | help |
--redis-insecure-skip-tls-verify | Skip Redis server certificate validation. | help |
--redis-use-tls | Use TLS when connecting to Redis. | help |
--redisdb int | Redis database. | help |
--repo-cache-expiration duration | Cache expiration for repo state, incl. | help |
--repo-server string | Repo server address (default "argocd-repo-server:8081") | help |
--repo-server-default-cache-expiration duration | Cache expiration default (default 24h0m0s) | help |
--repo-server-plaintext | Use a plaintext client (non-TLS) to connect to repository server | help |
--repo-server-redis string | Redis server hostname and port (e.g. argocd-redis:6379). | help |
--repo-server-redis-ca-certificate string | Path to Redis server CA certificate (e.g. /etc/certs/redis/ca.crt). | help |
--repo-server-redis-client-certificate string | Path to Redis client certificate (e.g. /etc/certs/redis/client.crt). | help |
--repo-server-redis-client-key string | Path to Redis client key (e.g. /etc/certs/redis/client.crt). | help |
--repo-server-redis-compress string | Enable compression for data sent to Redis with the required compression algorithm. | help |
--repo-server-redis-insecure-skip-tls-verify | Skip Redis server certificate validation. | help |
--repo-server-redis-use-tls | Use TLS when connecting to Redis. | help |
--repo-server-redisdb int | Redis database. | help |
--repo-server-sentinel stringArray | Redis sentinel hostname and port (e.g. argocd-redis-ha-announce-0:6379). | help |
--repo-server-sentinelmaster string | Redis sentinel master group name. | help |
--repo-server-strict-tls | Perform strict validation of TLS certificates when connecting to repo server | help |
--repo-server-timeout-seconds int | Repo server RPC call timeout seconds. | help |
--request-timeout string | The length of time to wait before giving up on a single server request. | help |
--revision-cache-expiration duration | Cache expiration for cached revision (default 3m0s) | help |
--revision-cache-lock-timeout duration | Cache TTL for locks to prevent duplicate requests on revisions, set to 0 to disable (default 10s) | help |
--rootpath string | Used if Argo CD is running behind reverse proxy under subpath different from / | help |
--sentinel stringArray | Redis sentinel hostname and port (e.g. argocd-redis-ha-announce-0:6379). | help |
--sentinelmaster string | Redis sentinel master group name. | help |
--server string | The address and port of the Kubernetes API server | help |
--staticassets string | Directory path that contains additional static assets (default "/shared/app") | help |
--sync-with-replace-allowed | Whether to allow users to select replace for syncs from UI/CLI (default true) | help |
--tls-server-name string | If provided, this name will be used to validate server certificate. | help |
--tlsciphers string | The list of acceptable ciphers to be used when establishing TLS connections. | help |
--tlsmaxversion string | The maximum SSL/TLS version that is acceptable (one of: 1.0|1.1|1.2|1.3) (default "1.3") | help |
--tlsminversion string | The minimum SSL/TLS version that is acceptable (one of: 1.0|1.1|1.2|1.3) (default "1.2") | help |
--token string | Bearer token for authentication to the API server | help |
--user string | The name of the kubeconfig user to use | help |
--username string | Username for basic authentication to the API server | help |
--webhook-parallelism-limit int | Number of webhook requests processed concurrently (default 50) | help |
--x-frame-options value | Set X-Frame-Options header in HTTP responses to value. | help |