Bugsnag · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Bugsnag Errors API
17 actions
17 updates
phrasing
extends
openapi/bugsnag-errors-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Bugsnag's API. It is a proposal applied on top of the contract, not a document Bugsnag publishes.
What the actions change
x-apievangelist-phrasing
Targets 17 · first 16 shown; the file carries all of them
$.info
$.paths['/projects/{project_id}/errors'].get
$.paths['/projects/{project_id}/errors'].delete
$.paths['/projects/{project_id}/errors'].patch
$.paths['/projects/{project_id}/errors/{error_id}'].get
$.paths['/projects/{project_id}/errors/{error_id}'].delete
$.paths['/projects/{project_id}/errors/{error_id}'].patch
$.paths['/projects/{project_id}/events/{event_id}'].delete
$.paths['/errors/{error_id}/latest_event'].get
$.paths['/projects/{project_id}/events'].get
$.paths['/projects/{project_id}/errors/{error_id}/trends'].get
$.paths['/projects/{project_id}/trends'].get
$.paths['/projects/{project_id}/errors/{error_id}/pivots'].get
$.paths['/projects/{project_id}/errors/{error_id}/pivots/{event_field_display_id}/values'].get
$.paths['/projects/{project_id}/pivots/{event_field_display_id}/values'].get
$.paths['/comments/{comment_id}'].delete
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Bugsnag Errors API
version: 1.0.0
extends: openapi/bugsnag-errors-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 16
- target: $.paths['/projects/{project_id}/errors'].get
update:
x-apievangelist-phrasing:
intent: List a project's errors
effect: read
questions:
- What errors are currently open in my project?
- Can I list only critical-severity errors in production?
- Which errors in my project match a search term?
instructions:
- text: List errors in project {project_id}.
slots:
project_id: path.project_id
- text: List {status} errors of severity {severity} in project {project_id}.
slots:
status: query.status
severity: query.severity
project_id: path.project_id
- text: Search project {project_id} errors for {q} in release stage {release_stage}.
slots:
project_id: path.project_id
q: query.q
release_stage: query.release_stage
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/errors'].delete
update:
x-apievangelist-phrasing:
intent: Wipe all errors and events in a project
effect: destructive
questions:
- Can I clear out every error and event in a project at once?
- Is deleting all of a project's error data reversible?
instructions:
- text: Delete every error and event in project {project_id}.
slots:
project_id: path.project_id
- text: Purge all error data from project {project_id}.
slots:
project_id: path.project_id
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/errors'].patch
update:
x-apievangelist-phrasing:
intent: Update many errors at once
effect: write
questions:
- How do I resolve or ignore a batch of errors in one go?
- Can I assign several errors to the same collaborator at once?
- Is it possible to link multiple errors to one issue tracker URL?
instructions:
- text: Apply {operation} to errors {error_ids} in project {project_id}.
slots:
operation: requestBody.operation
error_ids: query.error_ids
project_id: path.project_id
- text: Assign errors {error_ids} in project {project_id} to collaborator {assigned_collaborator_id} using operation {operation}.
slots:
error_ids: query.error_ids
project_id: path.project_id
assigned_collaborator_id: requestBody.assigned_collaborator_id
operation: requestBody.operation
- text: Link errors {error_ids} in project {project_id} to issue {issue_url} with operation {operation}.
slots:
error_ids: query.error_ids
project_id: path.project_id
issue_url: requestBody.issue_url
operation: requestBody.operation
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/errors/{error_id}'].get
update:
x-apievangelist-phrasing:
intent: Get one error's details
effect: read
questions:
- How many users has a specific error affected?
- What is the current status and severity of one error?
instructions:
- text: Show error {error_id} in project {project_id}.
slots:
error_id: path.error_id
project_id: path.project_id
- text: Get the event and user counts for error {error_id} in project {project_id}.
slots:
error_id: path.error_id
project_id: path.project_id
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/errors/{error_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a single error
effect: destructive
questions:
- Can I permanently delete one error along with its events?
- What happens to an error's events when I delete the error?
instructions:
- text: Delete error {error_id} from project {project_id}.
slots:
error_id: path.error_id
project_id: path.project_id
- text: Permanently remove error {error_id} and its events in project {project_id}.
slots:
error_id: path.error_id
project_id: path.project_id
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/errors/{error_id}'].patch
update:
x-apievangelist-phrasing:
intent: Resolve, snooze or reassign one error
effect: write
questions:
- How do I mark a single error as resolved?
- Can I change the severity of one error?
- Is there a way to reopen an error I ignored?
instructions:
- text: Set the status of error {error_id} in project {project_id} to {status}.
slots:
error_id: path.error_id
project_id: path.project_id
status: requestBody.status
- text: Change error {error_id}'s severity in project {project_id} to {severity}.
slots:
error_id: path.error_id
project_id: path.project_id
severity: requestBody.severity
- text: Assign error {error_id} in project {project_id} to collaborator {assigned_collaborator_id}.
slots:
error_id: path.error_id
project_id: path.project_id
assigned_collaborator_id: requestBody.assigned_collaborator_id
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/events/{event_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete one event
effect: destructive
questions:
- Can I delete a single event that captured sensitive data?
- How do I remove one occurrence without deleting the whole error?
instructions:
- text: Delete event {event_id} from project {project_id}.
slots:
event_id: path.event_id
project_id: path.project_id
- text: Remove the single occurrence {event_id} in project {project_id}.
slots:
event_id: path.event_id
project_id: path.project_id
method: generated
generated: '2026-09-26'
- target: $.paths['/errors/{error_id}/latest_event'].get
update:
x-apievangelist-phrasing:
intent: View an error's latest event
effect: read
questions:
- What does the most recent occurrence of an error look like when I only have the error ID?
- Can I get an error's newest event without knowing its project?
instructions:
- text: Show the latest event on error {error_id}.
slots:
error_id: path.error_id
- text: Fetch the newest occurrence of error {error_id}.
slots:
error_id: path.error_id
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/events'].get
update:
x-apievangelist-phrasing:
intent: List events across a project
effect: read
questions:
- Can I see every event in a project regardless of which error it belongs to?
- How do I filter a project's events and include full reports?
instructions:
- text: List events on project {project_id}.
slots:
project_id: path.project_id
- text: List project {project_id} events matching filters {filters} with full reports {full_reports}.
slots:
project_id: path.project_id
filters: query.filters
full_reports: query.full_reports
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/errors/{error_id}/trends'].get
update:
x-apievangelist-phrasing:
intent: Get histogram counts for one error
effect: read
questions:
- How can I chart one error's occurrences over a time range?
- What is the maximum number of buckets for an error histogram?
instructions:
- text: Get trend counts for error {error_id} in project {project_id} in {buckets_count} buckets.
slots:
error_id: path.error_id
project_id: path.project_id
buckets_count: query.buckets_count
- text: Chart error {error_id} of project {project_id} at resolution {resolution}.
slots:
error_id: path.error_id
project_id: path.project_id
resolution: query.resolution
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/trends'].get
update:
x-apievangelist-phrasing:
intent: Get histogram counts for a whole project
effect: read
questions:
- How do I draw a histogram of all events across my project?
- Can I filter project-wide trend counts before bucketing them?
instructions:
- text: Get project-wide trend counts for project {project_id} in {buckets_count} buckets.
slots:
project_id: path.project_id
buckets_count: query.buckets_count
- text: Chart all events in project {project_id} matching {filters} at resolution {resolution}.
slots:
project_id: path.project_id
filters: query.filters
resolution: query.resolution
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/errors/{error_id}/pivots'].get
update:
x-apievangelist-phrasing:
intent: Break down an error by pivots
effect: read
questions:
- Which browsers, devices or app versions does a specific error hit most?
- Can I choose which pivots summarize an error's events?
instructions:
- text: List pivots on error {error_id} in project {project_id}.
slots:
error_id: path.error_id
project_id: path.project_id
- text: Summarize error {error_id} in project {project_id} by pivots {pivots}.
slots:
error_id: path.error_id
project_id: path.project_id
pivots: query.pivots
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/errors/{error_id}/pivots/{event_field_display_id}/values'].get
update:
x-apievangelist-phrasing:
intent: List pivot values for one error
effect: read
questions:
- Which OS versions have reported a particular error, and how often?
- Can I list every value of one event field for a single error?
instructions:
- text: List values of {event_field_display_id} on error {error_id} in project {project_id}.
slots:
event_field_display_id: path.event_field_display_id
error_id: path.error_id
project_id: path.project_id
- text: Show the top {event_field_display_id} values for error {error_id} of project {project_id} sorted by {sort}.
slots:
event_field_display_id: path.event_field_display_id
error_id: path.error_id
project_id: path.project_id
sort: query.sort
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/pivots/{event_field_display_id}/values'].get
update:
x-apievangelist-phrasing:
intent: List pivot values across a project
effect: read
questions:
- Which app versions are producing the most events project-wide?
- Can I list every value seen for an event field across all errors in a project?
instructions:
- text: List values of {event_field_display_id} across project {project_id}.
slots:
event_field_display_id: path.event_field_display_id
project_id: path.project_id
- text: Show project-wide {event_field_display_id} values in project {project_id} matching {filters}.
slots:
event_field_display_id: path.event_field_display_id
project_id: path.project_id
filters: query.filters
method: generated
generated: '2026-09-26'
- target: $.paths['/comments/{comment_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a comment by ID
effect: destructive
questions:
- Can I delete a comment knowing only its comment ID?
- How do I remove a comment I no longer want on an error?
instructions:
- text: Delete comment {comment_id}.
slots:
comment_id: path.comment_id
- text: Remove the comment with ID {comment_id}.
slots:
comment_id: path.comment_id
method: generated
generated: '2026-09-26'
- target: $.paths['/comments/{comment_id}'].patch
update:
x-apievangelist-phrasing:
intent: Edit your own comment by ID
effect: write
questions:
- Can I edit a comment someone else wrote?
- How do I change the text of my comment given its ID?
instructions:
- text: Update comment {comment_id} to say {message}.
slots:
comment_id: path.comment_id
message: requestBody.message
- text: Rewrite my comment {comment_id} as {message}.
slots:
comment_id: path.comment_id
message: requestBody.message
method: generated
generated: '2026-09-26'