Listing, inspecting, and changing resources
The pattern
list prints a table of the main columns and get prints the whole
object as JSON.
Exceptions: no get for parsers, api-keys, forward-configs, webhooks, slack, monitors downtimes; no update for metrics, exports.
collections, log-views, and permissions are list-only, and metrics is read-only
(list and get, plus top-keys). The generated
command reference lists the exact verbs for each resource.
Names work wherever ids do
Every command that takes an id also takes a unique name:- Datasets resolve by name, or by
collection/namewhen the name exists in more than one collection. - Users resolve by email.
- Roles resolve by id or
display_name. System roles have readable ids such asAdminandReadOnly. - Monitors, dashboards, and the rest resolve by
name. Quote names with spaces.
Creating and updating
create and update build the request body from repeated -f key=value flags. A value
that parses as JSON keeps its type (number, boolean, array, or object). Anything else is
sent as a string:
--input, or --input - to read stdin. -f and
--input can’t be combined.
bronto <resource> create --help) lists
the fields the API requires.
Updates to monitors, monitors templates, monitors downtimes, widgets, datasets,
forward-configs, webhooks, slack, and roles use HTTP PUT, which replaces the whole
object. Send every field you want to keep, not only the one you change. A few other
updates need more than the changed field too:
groups updateneeds bothnameanddescription. The API clears whichever one you leave out, so the CLI refuses an update without both.datasets updateneeds bothcollectionanddataset, androles updateneeds bothdisplay_nameandpermissions. The CLI refuses an update without them.dashboards updateneedsname(or alayout). Adescriptionis ignored.saved-searches updateneedsname,log_ids, andsearch_details.
Deleting
delete asks for confirmation at a terminal. Without a terminal it can’t ask, so it
fails with usage_confirmation_required (exit code 2) unless you pass --yes:
Preview changes with —dry-run
--dry-run works on every command that changes something. It changes nothing, but reads
still run, so names resolve and an unknown name fails the same way it would without
--dry-run.
Every command that changes something prints the request it would send as a JSON plan on
stdout: method, path, and body. That includes delete and action verbs such as
groups add-members, monitors mute, and users deactivate. A name you pass shows up
as the id it resolved to in the plan’s path. delete also skips its confirmation prompt,
because nothing is deleted.
Commands beyond CRUD
A few resources have extra verbs:Assign a parser to a dataset
bronto datasets parser shows or changes which parser
a dataset uses:
Metric attribute keys
bronto metrics top-keys <metric> lists the attribute keys seen on a metric, the
metrics counterpart of bronto fields:
What uses a dataset
bronto datasets monitors and bronto datasets dashboards list the monitors and
dashboards that query a dataset. Check them before you delete or rename the dataset. They
print the same columns as bronto monitors list and bronto dashboards list:
Test a forwarding destination
Log forwarding copies events to an S3 bucket.bronto forward-configs test has Bronto write and delete a test object there,
so you can check the bucket policy before you create a forward config, or after you change
it. Name an existing forward config, or pass --bucket (with --prefix and
--storage-class if needed). Flags override the saved config’s fields:
forward_destination_failed.
API keys
bronto api-keys create is your one chance to copy a new key. Its output contains the
full key (<id>.<secret>), including the JSON it prints when piped, and the CLI reminds
you on stderr to store it. Bronto never returns the secret part again: list shows only
the key’s id part.
bronto api-keys list masks that id part in every output format, JSON included, so it
doesn’t leak into CI logs. Pass --reveal to see it in full.
Usage
bronto usage shows your organization’s billable ingestion volume over a period
(default 7d). It doesn’t cover search or export usage:
bronto api GET /usage/organizations/logs (see the api command).