Skip to main content
The Larm CLI lets you manage monitors, alerts, status pages, disruptions, and webhooks from your terminal. Open source at github.com/larmhq/larm-cli.

Install

brew install larmhq/tap/larm

Authenticate

larm auth login
Opens your browser for OAuth. Enter the code shown in your terminal, pick your organization, and approve.

API key

larm auth login --with-token
Paste an API key from Settings > API Keys. Or set the LARM_API_KEY environment variable.

Usage

Monitors

larm monitors list
larm monitors show <id>
larm monitors create --name "API" --url https://example.com
larm monitors update <id> --name "New Name"
larm monitors delete <id>

Monitor stats

larm monitors state <id>
larm monitors uptime <id> --range 7d
larm monitors response-times <id>
larm monitors cert <id>

Alert channels

larm alerts list
larm alerts show <id>
larm alerts create --name "Slack" --type slack --config '{"webhook_url":"..."}'

Status pages

larm status-pages list
larm status-pages show <id>             # renders the components tree
larm status-pages create --name "Acme Status" --slug acme-status

Components and groups

larm components create --status-page-id <id> --name "API"
larm components create --status-page-id <id> --name "Database" --group <group-id>
larm components update <id> --group <group-id>

larm component-groups create --status-page-id <id> --name "Backend"
larm component-groups show <id>
larm component-groups update <id> --name "Backend services"
larm component-groups delete <id>

Disruptions

larm disruptions list
larm disruptions show <id>
larm disruptions create --title "API outage" --impact critical --message "Investigating"
larm disruptions update <id> --status resolved

Webhooks

larm webhooks list
larm webhooks create --url https://example.com/hook --events monitor.state_changed

Raw API access

larm api GET /monitors
larm api GET /monitors --field check_type=http
larm api POST /monitors --field name=Test --field check_type=http

Output formats

Table output in a terminal, JSON when piped.
larm monitors list                              # table
larm monitors list --output json                # JSON
larm monitors list --output json --jq '.[].name'  # JQ filter
larm monitors list --fields name,check_type     # select columns

Other flags

FlagDescription
--quietSuppress output on success
--dry-runPrint request without sending
--yesSkip delete confirmation prompts
--output jsonForce JSON output
--fieldsSelect columns for table output
--jqFilter JSON output with JQ expressions

For LLM agents

The CLI has a describe command for machine discovery:
larm describe                    # full command schema as JSON
larm describe monitors.list      # single command schema
Always use --output json for machine-readable output.

Source

The CLI is open source: github.com/larmhq/larm-cli