canonical: https://jentic.com/apis/airbrake.io/airbrake-main

# Airbrake API

Jentic publishes the only available OpenAPI specification for Airbrake API, keeping it validated and agent-ready. Airbrake collects errors generated by other applications and aggregates the results for review. This core spec exposes 19 endpoints across the v4 management surface plus v3 notice creation and v5 performance reporting, covering projects, error groups, deploys, source maps, and project activity feeds. Authentication uses an API key passed as the 'key' query parameter.

## For AI agents

Manage Airbrake projects and error groups, record deploys, and upload source maps for production error tracking.

## Scope

Does not handle log aggregation, infrastructure metrics, or alert routing - use for application error tracking, deploys, and source map management only.

## Capabilities

- List, fetch, mute, and delete error groups across one or more projects
- Record deploy events with environment and revision metadata for release correlation
- Upload, list, and delete source maps so minified stack traces resolve cleanly
- Pull project-level activity feeds for audit logs and dashboards
- Retrieve project and error group statistics for health rollups
- Authenticate users to obtain a session token via POST /sessions

## Use cases

### Release Health Monitoring

After every CI release, post a deploy event to `/projects/{PROJECT_ID}/deploys`, then poll error group stats to detect post-release regressions. The `/projects/{PROJECT_ID}/activities` feed gives a chronological record that ties deploys, mutes, and resolutions together for release retrospectives.

Example prompt: Record a deploy on project 12345 with environment production and revision sha1234, then check error group stats 30 minutes later and flag any group with rate increase greater than 50%

### Error Group Triage Workflow

Automate first-line triage by pulling fresh error groups, fetching stats, and muting groups that match a known-noise pattern. PUT `/projects/{PROJECT_ID}/groups/{GROUP_ID}/muted` hides a group, /unmuted reverses it, and DELETE removes resolved groups permanently.

Example prompt: List error groups for project 12345, mute any group whose message matches 'NetworkTimeout' and whose count is below 10, and leave a comment in Slack listing what was muted

### Source Map Lifecycle Management

Keep source maps aligned with the bundles in production. Upload via POST `/projects/{PROJECT_ID}/sourcemaps` after every build, list current maps with GET to detect drift, and DELETE old ones once the corresponding bundle is rotated out of the CDN.

Example prompt: Upload sourcemap.js.map for project 12345 with bundle URL https://cdn.example.com/app.v8.js, then delete any previously uploaded source map for app.v6.js

### AI Agent Error Triage Assistant

Through Jentic, an agent can pull the freshest error groups, summarise the stack traces, and propose a deploy or mute action. The Airbrake API key stays in your Jentic One instance and the agent only handles scoped operations.

Example prompt: Search Jentic for 'list airbrake error groups', load the schema, fetch groups for project 12345, summarise the top 3 by occurrence count, and propose mute actions for the agent to confirm

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/projects` | List projects |
| GET | `/projects/{PROJECT_ID}/groups` | List error groups for a project |
| PUT | `/projects/{PROJECT_ID}/groups/{GROUP_ID}/muted` | Mute an error group |
| POST | `/projects/{PROJECT_ID}/deploys` | Record a deployment |
| POST | `/projects/{PROJECT_ID}/sourcemaps` | Upload a source map |
| GET | `/projects/{PROJECT_ID}/stats` | Get project statistics |
| GET | `/projects/{PROJECT_ID}/activities` | List project activity |

## Key resources

- **Projects** — Monitored applications with statistics and activity feeds
- **Error Groups** — Aggregated error occurrences with mute, unmute, and delete operations
- **Deploys** — Release events for correlating with error rate changes
- **Source Maps** — Uploaded source maps for minified stack trace resolution
- **Authentication** — Session token creation via POST /sessions
- **Analytics** — Project and group statistics endpoints

## Why Jentic

- **Setup:** Wiring Airbrake by hand means appending its key as a query parameter, building project and group calls, and writing your own retry logic. Through Jentic you install once, import Airbrake from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Airbrake puts the project id in the URL path (`/projects/{PROJECT_ID}/deploys`, `/projects/{PROJECT_ID}/groups/{GROUP_ID}/muted`), so a rule can pin your agent to one project. You choose the operations it may call, so muting an error group is only included if you add it.
- **Credential handling:** Your Airbrake key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'mute an airbrake error group', and Jentic returns the matching operation with its schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Sentry API** — Error tracking with broader language SDK coverage and built-in tracing
- **Rollbar API** — Real-time error tracking with per-item ownership and assignment workflows
- **Bugsnag API** — Stability score-driven error monitoring with strong mobile SDK support
- **GitHub API** — Pair Airbrake deploy events with GitHub releases for end-to-end traceability

## FAQ

### Why is there no official OpenAPI spec for Airbrake API?

Airbrake does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Airbrake API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Airbrake API use?

Airbrake authenticates via an API key passed as the 'key' query parameter. Jentic stores the key encrypted in the vault and appends it transparently, so the raw key never enters agent context.

### Can I mute an error group with the Airbrake API?

Yes. PUT `/projects/{PROJECT_ID}/groups/{GROUP_ID}/muted` mutes the group, hiding it from default group listings. Use the matching /unmuted endpoint to reverse the action.

### What are the rate limits for the Airbrake API?

The spec does not declare formal rate limits. Management endpoints respond best to burst-and-pause use; for high-volume error ingestion, use the v3 notices endpoint rather than polling group listings.

### How do I record a deploy with the Airbrake API through Jentic?

Run pip install jentic, search Jentic for 'record airbrake deploy', load the schema for POST `/projects/{PROJECT_ID}/deploys`, then execute with the project ID, environment, and revision. Jentic appends the API key automatically.

### Can I use the Airbrake API to upload source maps as part of CI?

Yes. POST `/projects/{PROJECT_ID}/sourcemaps` accepts the source map file and the bundle URL it relates to, so a CI step can upload after every successful build to keep stack-trace resolution accurate.

### Can I limit what my agent is allowed to do with the Airbrake API?

Yes. Because you run Jentic One yourself, your own rules decide which Airbrake operations and credentials the agent may use. Airbrake carries the project id in the URL path, as in `/projects/{PROJECT_ID}/deploys` and `/projects/{PROJECT_ID}/groups/{GROUP_ID}/muted`, so you can pin the agent to a single project. You also choose the specific operations it may call, so a destructive action like muting an error group is only available if you add it.
