Skip to main content

Environment variables

Configure the App Store Connect CLI using environment variables
The App Store Connect CLI can be configured using environment variables. These variables provide defaults and override certain behaviors.

Authentication variables

These variables configure API authentication credentials.
string
Your App Store Connect API key ID
string
Your App Store Connect API issuer ID
string
Path to your private key (.p8) file
string
Raw private key content (PEM format)
string
Base64-encoded private key content (useful for CI/CD)
boolean
Ignore keychain and use config/env auth onlySet to true, 1, yes, y, or on to bypass keychain lookup.
boolean
Fail when credentials resolve from multiple sourcesSet to true, 1, yes, y, or on to enable strict mode.
string
Use a named authentication profile from config or keychain

Operational variables

These variables configure default values for apps, vendors, and other resources.
string
Default app ID for commands that accept --app
string
Vendor number for sales and financial reports

Timeout variables

Configure request and upload timeouts.
string
Request timeout (e.g., 90s, 2m, 120s)Default: 90s
number
Request timeout in seconds (alternative to ASC_TIMEOUT)Example: 120 for 2 minutes
string
Upload timeout for large files (e.g., 60s, 5m)Default: 60s
number
Upload timeout in seconds (alternative to ASC_UPLOAD_TIMEOUT)

Retry and debugging variables

Configure retry behavior and debug logging.
number
Maximum number of retry attempts for transient errorsDefault: 3
string
Base delay for exponential backoff (e.g., 1s, 500ms)Default: 1s
string
Maximum delay between retries (e.g., 30s, 1m)Default: 30s
boolean
Enable retry logging to stderrSet to true, 1, yes, y, or on to enable.
string
Enable debug logging
  • Set to true for general debug logging
  • Set to api for HTTP request/response logging (redacts sensitive values)

Output variables

Configure default output formats.
string
Default output format: json, table, markdown, or mdWhen unset, output is TTY-aware:
  • Interactive terminals: table
  • Pipes/files/CI: json (minified)
Explicit --output flags always override this variable.

Configuration path

string
Path to the configuration fileMust be an absolute path. When set, overrides the default config resolution order.

Variable precedence

Environment variables are resolved in this order:
  1. Command-line flags (highest priority)
  2. Environment variables
  3. Config file (~/.asc/config.json or .asc/config.json)
  4. Keychain (for credentials only)
  5. Built-in defaults (lowest priority)
When ASC_STRICT_AUTH=true, the CLI will fail if credentials are found in multiple sources (e.g., both environment variables and keychain).

Examples

Basic authentication

CI/CD authentication with base64-encoded key

Debug HTTP requests

Custom timeout for slow networks

Force JSON output in all environments

Authentication

Learn about authentication methods

Profiles

Use named authentication profiles