An error occurred, or a fault passed its notification rate threshold.
Fields
109The table lists every field of the body. You can validate a delivery against this event’s JSON Schema.
| Field | Type | Description |
|---|---|---|
event required | "rate_exceeded" | |
message required | string | A one-line summary of the event, as notifications show it. |
actor | object | The person who caused the event. Absent when Honeybadger, or an API token with no user, did. |
actor.id required | integer | |
actor.email required | string | |
actor.name required | string | null | |
project required | object | The project the event belongs to. |
project.id required | integer | |
project.name required | string | null | |
project.created_at required | date-time | |
project.disable_public_links required | boolean | null | |
project.pivotal_project_id required | string | null | |
project.asana_workspace_id required | string | null | |
project.token required | string | The project's ingestion key, the one its notifiers report with. |
project.github_project required | string | null | The repository of the project's newest GitHub integration. |
project.environments required | array<object> | |
project.environments[].id required | integer | |
project.environments[].project_id required | integer | |
project.environments[].name required | string | |
project.environments[].notifications required | boolean | Whether errors in this environment send notifications. |
project.environments[].created_at required | date-time | |
project.environments[].updated_at required | date-time | |
project.owner required | object | The account that owns the project. |
project.owner.id required | integer | |
project.owner.email required | string | |
project.owner.name required | string | null | |
project.last_notice_at required | date-time | null | |
project.earliest_notice_at required | date-time | The oldest notice the plan's retention keeps. |
project.unresolved_fault_count required | integer | |
project.fault_count required | integer | |
project.active required | boolean | Whether the account is active. |
project.users required | array<object> | |
project.users[].id required | integer | |
project.users[].email required | string | |
project.users[].name required | string | null | |
project.sites required | array<object> | |
project.sites[].id required | uuid | |
project.sites[].active required | boolean | |
project.sites[].last_checked_at required | date-time | null | |
project.sites[].name required | string | |
project.sites[].state required | string | |
project.sites[].url required | string | The checked URL, as entered. |
project.team_id required | integer | null | |
project.url | uri | The project's errors page. Sent on volume_spike only. |
fault required | object | The fault (a unique error) the event is about. When the account is inactive, only id, project_id, message and created_at are sent. |
fault.id required | integer | |
fault.project_id required | integer | |
fault.klass | string | null | Error class name. |
fault.message required | string | null | The error message, without the class name. |
fault.component | string | null | |
fault.action | string | null | |
fault.environment | string | null | |
fault.resolved | boolean | |
fault.ignored | boolean | |
fault.created_at required | date-time | |
fault.project_name | string | null | |
fault.comments_count | integer | |
fault.notices_count | integer | |
fault.last_notice_at | date-time | null | |
fault.tags | array | null | |
fault.assignee | string | null | The assignee's email address. |
fault.url | uri | |
fault.deploy | object | null | The latest deploy to the fault's environment. |
fault.deploy.environment required | string | |
fault.deploy.revision required | string | null | |
fault.deploy.repository required | string | null | |
fault.deploy.local_username required | string | null | |
fault.deploy.created_at required | date-time | |
fault.deploy.changelog required | array | null | Commits in the deploy, as the deploy notification sent them. |
fault.deploy.url required | uri | |
notice required | object | The occurrence that triggered the event. When the account is inactive, only id, fault_id and created_at are sent. When the notice is older than the plan keeps, its request and environment data are sent empty. |
notice.id required | integer | |
notice.fault_id required | integer | |
notice.token | uuid | The notice's UUID. |
notice.message | string | null | |
notice.created_at required | date-time | |
notice.environment | any | The server environment the notifier reported (environment-name, hostname and the like). Defined by the notifier. |
notice.request | object | The request the error happened in. context is moved to the body's top-level context. |
notice.request.url | string | null | |
notice.request.component | string | null | |
notice.request.action | string | null | |
notice.request.params | any | Request parameters, as the notifier sent them. Usually an object, but any JSON value. |
notice.request.session | any | Session data, as the notifier sent it. Usually an object, but any JSON value, including null. |
notice.backtrace | array<object> | |
notice.backtrace[].number | string | integer | null | The line number. Ruby notifiers send a string, PHP and JavaScript an integer. |
notice.backtrace[].file | string | null | |
notice.backtrace[].method | string | null | |
notice.backtrace[].context | string | app for a frame in the project's own code, otherwise all. Allowed values: app, all. |
notice.backtrace[].application_file | string | The file's path within the project. Sent for app frames. |
notice.backtrace[].source | any | Lines of source around the frame, usually an object keyed by line number. Null when a source map has no source for the frame, and notifiers can send other shapes. |
notice.application_trace | array<object> | The frames of backtrace in the project's own code. |
notice.application_trace[].number | string | integer | null | The line number. Ruby notifiers send a string, PHP and JavaScript an integer. |
notice.application_trace[].file | string | null | |
notice.application_trace[].method | string | null | |
notice.application_trace[].context | string | app for a frame in the project's own code, otherwise all. Allowed values: app, all. |
notice.application_trace[].application_file | string | The file's path within the project. Sent for app frames. |
notice.application_trace[].source | any | Lines of source around the frame, usually an object keyed by line number. Null when a source map has no source for the frame, and notifiers can send other shapes. |
notice.web_environment | any | CGI-style request environment, as the notifier sent it. |
notice.deploy | object | null | |
notice.deploy.environment required | string | |
notice.deploy.revision required | string | null | |
notice.deploy.repository required | string | null | |
notice.deploy.local_username required | string | null | |
notice.deploy.created_at required | date-time | |
notice.deploy.changelog required | array | null | Commits in the deploy, as the deploy notification sent them. |
notice.deploy.url required | uri | |
notice.url | uri | |
context | any | The notice's request context, as the notifier sent it. Usually an object, but any JSON value. Moved here from notice.request. |
custom_fields | any | The integration's custom fields, when it has any. |
Example
{ "event": "rate_exceeded", "message": "[Billing API/production] NoMethodError has occurred 5 time(s) in the past minute", "project": { "id": 85736, "name": "Billing API", "created_at": "2026-10-21T12:36:26.076894Z", "disable_public_links": false, "pivotal_project_id": null, "asana_workspace_id": null, "token": "hbp_EXAMPLE00000000000000000000000", "github_project": null, "environments": [ { "id": 2819, "project_id": 85736, "name": "production", "notifications": true, "created_at": "2026-10-21T12:36:26.470494Z", "updated_at": "2026-10-21T12:36:26.470494Z" } ], "owner": { "id": 92354, "email": "user-1@example.com", "name": "Acme" }, "last_notice_at": null, "earliest_notice_at": "2026-04-24T12:36:26.856141Z", "unresolved_fault_count": 0, "fault_count": 0, "active": true, "users": [ { "id": 132624, "email": "jane@example.com", "name": "Jane Doe" } ], "sites": [ { "id": "8121ab91-87fd-4e92-ae23-a7b5bf915a2f", "active": true, "last_checked_at": null, "name": "Checkout", "state": "down", "url": "https://billing.example.com/health" } ], "team_id": null }, "fault": { "project_id": 85736, "klass": "NoMethodError", "component": "InvoicesController", "action": "show", "environment": "production", "resolved": false, "ignored": false, "created_at": "2026-10-18T12:36:26.482113Z", "project_name": "Billing API", "comments_count": 1, "message": "undefined method 'total' for nil", "notices_count": 1, "last_notice_at": "2026-10-21T12:36:26.309680Z", "tags": [ "billing" ], "id": 26225, "assignee": null, "url": "https://app.honeybadger.io/projects/85736/faults/26225", "deploy": { "environment": "production", "revision": "850510ab072102729e6967cf89f28b740c61311b", "repository": "https://github.com/acme/billing", "local_username": "deploy-bot", "created_at": "2026-10-21T12:16:26.482113Z", "changelog": [], "url": "https://github.com/acme/billing/commit/850510ab072102729e6967cf89f28b740c61311b" } }, "notice": { "id": 262251792586066, "environment": {}, "created_at": "2026-10-21T12:34:26.482113Z", "message": null, "token": "65baebe0-d5cf-45d1-8604-c3a78619def7", "fault_id": 26225, "request": { "url": "https://billing.example.com/invoices/1042", "component": "InvoicesController", "action": "show", "params": { "controller": "invoices", "action": "show", "id": "1042" }, "session": {} }, "backtrace": [ { "number": "42", "file": "[PROJECT_ROOT]/app/controllers/invoices_controller.rb", "method": "show", "application_file": "app/controllers/invoices_controller.rb", "context": "app" }, { "number": "18", "file": "[GEM_ROOT]/gems/actionpack-8.1.0/lib/action_controller/metal/basic_implicit_render.rb", "method": "send_action", "context": "all" } ], "application_trace": [ { "number": "42", "file": "[PROJECT_ROOT]/app/controllers/invoices_controller.rb", "method": "show", "application_file": "app/controllers/invoices_controller.rb", "context": "app" } ], "web_environment": { "REQUEST_METHOD": "GET", "HTTP_USER_AGENT": "Mozilla/5.0" }, "deploy": { "environment": "production", "revision": "850510ab072102729e6967cf89f28b740c61311b", "repository": "https://github.com/acme/billing", "local_username": "deploy-bot", "created_at": "2026-10-21T12:16:26.482113Z", "changelog": [], "url": "https://github.com/acme/billing/commit/850510ab072102729e6967cf89f28b740c61311b" }, "url": "https://app.honeybadger.io/projects/85736/faults/26225/01M5F79AHJ6GVQCB5TZ2R0QMKZ" }, "context": { "user_id": 381 }}