Setup
Install
See the fobs repository for the full installation guide. The short version:
git clone [email protected]:finopsbricks/fobs.git
cd fobs
npm install
npm link # exposes `fobs` on PATH
Verify:
fobs --version
Add an Org
fobs stores credentials per organization. Each org can have credentials for multiple apps (statements, billing, orchestrator) — for this site you only need statements.
Get an API key + secret from the Statements UI under Settings → API Keys (see Authentication for the full flow), then:
fobs orgs add my-org --app statements
# Interactive prompts for api-url, api-key, api-secret
# Or non-interactive:
fobs orgs add my-org --app statements \
--api-url https://statements.finopsbricks.com \
--api-key fob_stm_xxxxxxxxxxxx \
--api-secret xxxxxxxxxxxxxxxx
The api-url defaults to https://statements.finopsbricks.com when omitted.
Switch Between Orgs
fobs orgs use my-org
fobs orgs list # show all orgs and which apps each has
The active org is marked with * in the list output.
Where Credentials Live
| Path | What |
|---|---|
~/.fobs/config.yml | YAML config, mode 0600. Keyed by orgs.<name>.apps.<app>.{api_url, api_key, api_secret} |
Override the location with the FOBS_CONFIG_DIR environment variable.
Remove an Org or App
fobs orgs remove my-org # remove the whole org
fobs orgs remove-app my-org --app statements # remove one app's creds
fobs orgs remove my-org --yes # skip confirmation
Convention: One Key Per User
API keys identify the caller in server logs. The convention is one key per individual user, per app — don't share keys across teammates, since you lose the audit trail.
Related
- API Authentication — where API keys come from and what permissions they carry
- Common Flags — flags that work on every command