Operations

check active profile and configured values

Use this page when rsspot commands or SDK calls fail in local dev or CI.

Common Failures

SymptomLikely causeRemediation
profile '<name>' not foundMissing profile in selected config fileRun rsspot configure --profile <name> ... or switch with rsspot profiles use
organization is requiredNo org in args/env/profileSet --org or configure profile org/org_id
refresh_token is required to authenticateAccess token expired and no refresh token availableAdd refreshToken to profile or set RSSPOT_REFRESH_TOKEN
authentication failed with status ...Invalid refresh token/client id or oauth endpoint mismatchVerify token, client_id, and oauth_url settings
request failed after retriesRepeated transport errors or upstream instabilityIncrease timeout/retry settings, validate network/path
params-json must be a JSON objectInvalid raw JSON payload typePass valid object JSON: '{"key":"value"}'

First-Line Diagnostics

# check active profile and configured values
uv run rsspot profiles list
uv run rsspot profiles show

# validate org/auth path quickly
uv run rsspot organizations list --output yaml

# confirm region and pricing endpoints
uv run rsspot regions list --output table
uv run rsspot pricing list --region us-central-dfw-1 --output table

Configuration Path Checks

# override config file explicitly
uv run rsspot --config-file ./local.spot.yaml profiles list

# use env aliases for CI
export RSSPOT_PROFILE=prod
export RSSPOT_CONFIG_FILE=/path/to/.spot_config

API Drift Checks

If commands started failing after upstream API changes:

uv run python scripts/sync_openapi.py
uv run python scripts/generate_openapi_index.py
git diff -- openapi src/rsspot/generated/openapi_index.py

Then validate affected service methods under src/rsspot/services/.

Escalation Data To Capture

Before opening an issue/PR, capture:

  1. failing command and exact args
  2. output mode used (json/yaml/table)
  3. profile/env context (redact secrets)
  4. relevant API status/body
  5. schema/index diff if issue is endpoint-related