Sentinel CLI
The Sentinel CLI will let you manage your monitors, incidents, status pages, and notifications directly from your terminal — ideal for automation, CI/CD pipelines, and server management.
Coming Soon
The CLI isn't published yet, so there's nothing to install from npm at the moment. The commands below preview the planned interface. Everything the CLI will do is already available today through the REST API — use that for automation in the meantime.
Authentication
Generate an API token from your account settings, then authenticate:
sentinel auth login --token YOUR_TOKEN
sentinel auth whoami # Verify authentication
sentinel auth status # View current config
Monitor Commands
# List and filter monitors
sentinel monitors list
sentinel monitors list --status down --format json
# Create and manage
sentinel monitors create --url https://example.com --interval 5
sentinel monitors get 1
sentinel monitors update 1 --interval 10
sentinel monitors delete 1
# Control monitoring
sentinel monitors check 1 # Immediate check
sentinel monitors pause 1 # Pause monitoring
sentinel monitors unpause 1 # Resume monitoring
Incident Commands
# List and filter
sentinel incidents list
sentinel incidents list --status open
sentinel incidents list --monitor-id 1
# Manage incidents
sentinel incidents get 1
sentinel incidents acknowledge 1 # Acknowledge
sentinel incidents resolve 1 # Resolve
sentinel incidents delete 1
Status Page Commands
# List status pages
sentinel status-pages list
# Manage status pages
sentinel status-pages get 1
sentinel status-pages create --monitor-id 1 --name "Status" --slug "status"
sentinel status-pages update 1 --name "Updated Status"
sentinel status-pages delete 1
Notification Commands
# List channels
sentinel notifications list
# Configure channels
sentinel notifications create --type slack --webhook-url https://hooks.slack.com/...
sentinel notifications create --type sms --phone +1234567890
# Manage channels
sentinel notifications get slack
sentinel notifications enable slack
sentinel notifications disable sms
sentinel notifications test slack # Send test notification
sentinel notifications delete slack
CI/CD Integration
Once released, the CLI will drop into your deployment pipelines. The example below previews that workflow — until the CLI ships, pause and resume monitors from CI using the REST API (see CI/CD & Pausing Monitors).
name: Deploy with Monitoring
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Pause Monitoring
env:
SENTINEL_TOKEN: ${{ secrets.SENTINEL_TOKEN }}
run: npx sentinel-cli monitors pause 1
- name: Deploy
run: ./deploy.sh
- name: Resume Monitoring
env:
SENTINEL_TOKEN: ${{ secrets.SENTINEL_TOKEN }}
run: npx sentinel-cli monitors unpause 1
Scripting Examples
# Check for down monitors
DOWN=$(sentinel monitors list --status down --format json | jq '.data | length')
if [ "$DOWN" -gt 0 ]; then
echo "ALERT: $DOWN monitors are down!"
exit 1
fi
# Pause all monitors for maintenance
sentinel monitors list --format json | \
jq -r '.data[].id' | \
xargs -I {} sentinel monitors pause {}
All Commands Reference
| Category | Commands |
|---|---|
| auth | login, logout, whoami, status |
| monitors | list, get, create, update, delete, check, pause, unpause |
| incidents | list, get, acknowledge, resolve, delete |
| status-pages | list, get, create, update, delete |
| notifications | list, get, create, update, enable, disable, delete, test |
Pro Tip
Use --format json with any list command
for machine-readable output. Use --help on any command for detailed options.