Node.js client library for the Rootly incident management API.
Zero production dependencies. Uses native fetch (Node 18+).
npm install @wyre-technology/node-rootlyFor GitHub Packages authentication, add to your .npmrc:
@wyre-technology:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=YOUR_GITHUB_TOKEN
import { RootlyClient } from '@wyre-technology/node-rootly';
const client = new RootlyClient({ apiToken: process.env.ROOTLY_API_TOKEN });
// List triggered alerts
const alerts = await client.alerts.list({ status: 'triggered' });
// Acknowledge an alert
await client.alerts.acknowledge('alert-id');
// Resolve an incident
await client.incidents.resolve('incident-id');
// Create a team
const team = await client.teams.create({ name: 'Platform', color: '#3B82F6' });
// Safe partial update (GET → merge → PUT)
await client.teams.patch('team-id', { description: 'Updated description' });const client = new RootlyClient({ apiToken?: string });
// Falls back to process.env.ROOTLY_API_TOKEN if apiToken is omittedlist(params?)— list alertsacknowledge(id)— acknowledgeresolve(id)— resolvecreate(data)— createupdate(id, data)— update
list(params?)— list incidentsget(id)— get by IDcreate(data)— createupdate(id, data)— updateresolve(id)— resolve
list(params?)— list teamsget(id)— get by IDcreate(data)— createupdate(id, data)— PUT (full replace)patch(id, data)— safe partial update (GET→merge→PUT)delete(id)— delete
list(params?)— list on-call schedulesget(id)— get by ID
list()— list severity levels
me()— get current authenticated user
git clone https://github.com/wyre-technology/node-rootly.git
cd node-rootly
npm install
npm run build
npm testSee CONTRIBUTING.md.
Apache-2.0 © WYRE Technology