Skip to content
Reference

CLI configuration file

The synsmarts CLI reads optional YAML from:

~/.synsmarts/config.yaml

The managed SSH shell already injects its App-bound API key and API endpoint. The managed-shell bundle doesn’t include PyYAML and can’t read this file. Use it only with a full local CLI installation or automation runner. For resource-addressed commands in the managed shell, pass --team <team> and --app <app> explicitly. The key authorizes the addressed App; it doesn’t select the Team or App.

api_key: <api-key>
api_url: https://<api-host>
team: <team-id-or-slug>
app: <app-id-or-slug>
KeyUsed byPurpose
api_keyAll command groupsAPI key sent as X-API-Key; it authorizes but doesn’t address a resource.
api_urlAll command groupsAPI origin.
teamResource operationsTeam slug or UUID used in the /api/v1/t/{team} path segment.
appApp operationsApp slug or UUID used in the /a/{app} path segment.

The file requires PyYAML. If PyYAML is unavailable or the file can’t be parsed, the CLI warns and continues with flags, environment variables, or defaults.

API key:

  1. --api-key
  2. SYNSMARTS_API_KEY
  3. api_key in the configuration file

API URL:

  1. --api-url
  2. SYNSMARTS_API_URL
  3. api_url in the configuration file
  4. the CLI development default

Team:

  1. --team
  2. SYNSMARTS_TEAM
  3. team in the configuration file

App:

  1. --app
  2. SYNSMARTS_APP
  3. app in the configuration file

Always configure the real API URL outside the managed shell. The development default isn’t a customer endpoint.

The configuration file can contain an API key. Restrict it to your user:

Terminal window
chmod 600 ~/.synsmarts/config.yaml

The CLI warns when the file is readable by group or other users. Don’t commit the file, include it in support attachments, or store it in a shared home directory.

Prefer SYNSMARTS_API_KEY from a protected CI secret over writing api_key to disk in an ephemeral automation runner.

Use a read-only command before a mutation:

Terminal window
synsmarts deploy list
synsmarts maintenance status
synsmarts restore --team <team> --app <app> list
synsmarts waf get

Use --verbose when support asks for HTTP status and trace identifiers. It doesn’t intentionally print the API key, but review automation logs before sharing them.