Skip to content
Pinner.xyz

CLI Config

View and change CLI configuration from the command line.

Usage

# Show all configuration values
pinner config
 
# Get a specific value
pinner config get <key>
 
# Set a value
pinner config set <key> <value>

Show all configuration

pinner config

Displays all configuration values in a table with Key, Value, Env, and Description columns.

Get a value

pinner config get base_endpoint
pinner config get secure

Set a value

# Change the base endpoint
pinner config set base_endpoint "pinner.xyz"
 
# Disable HTTPS
pinner config set secure false
 
# Increase retry attempts
pinner config set max_retries 5
 
# Set memory limit for CAR generation (MB)
pinner config set memory_limit 256
 
# Set IPFS gateway override
pinner config set gateway_endpoint "https://inbrowser.link"
 
# Set default API timeout
pinner config set default_timeout 60s
 
# Preview a change without saving
pinner config set memory_limit 256 --dry-run

Configuration keys

KeyTypeDefaultDescription
base_endpointstring""Base URL for Pinner service (e.g., pinner.xyz). Subdomains are derived automatically (e.g., account.pinner.xyz, ipfs.pinner.xyz). Leave empty for default.
securebooltrueUse HTTPS for endpoints
max_retriesint3Maximum retry attempts for failed operations (0–10)
memory_limitint100Memory limit in MB for CAR generation (1–10240)
gateway_endpointstring""IPFS gateway URL (e.g., https://inbrowser.link). Falls back to the ipfs subdomain of the base endpoint.
default_timeoutduration30sDefault timeout for API operations (e.g., 30s, 1m)
upload_timeoutduration5mTimeout for upload, download, and benchmark operations (e.g., 5m, 10m)
sync_timeoutduration1mTimeout for reconciliation, cleanup, and sync operations (e.g., 1m, 2m)
auth_tokenstring""JWT authentication token for API access. Managed by pinner auth.

Environment variables

Every configuration key can also be set via an environment variable with the PINNER_ prefix, uppercased and with hyphens replaced by underscores:

# Examples
export PINNER_BASE_ENDPOINT="pinner.xyz"
export PINNER_SECURE=false
export PINNER_MAX_RETRIES=5
export PINNER_MEMORY_LIMIT=256
export PINNER_GATEWAY_ENDPOINT="https://inbrowser.link"
export PINNER_AUTH_TOKEN="your-token"
Config keyEnvironment variable
base_endpointPINNER_BASE_ENDPOINT
securePINNER_SECURE
max_retriesPINNER_MAX_RETRIES
memory_limitPINNER_MEMORY_LIMIT
gateway_endpointPINNER_GATEWAY_ENDPOINT
default_timeoutPINNER_DEFAULT_TIMEOUT
upload_timeoutPINNER_UPLOAD_TIMEOUT
sync_timeoutPINNER_SYNC_TIMEOUT
auth_tokenPINNER_AUTH_TOKEN

Configuration file

The CLI stores configuration in a YAML file on disk. The auth token is managed separately by pinner auth.

PlatformPath
Linux / macOS~/.config/pinner/config.yaml

Options

OptionDescription
--dry-runPreview changes without saving

Subcommands

SubcommandDescription
(none)Show all configuration values
get <key>Get a specific configuration value
set <key> <value>Set a configuration value