Sentry · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Sentry System Issues API
13 actions
13 updates
phrasing
extends
openapi/sentry-system-issues-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Sentry's API. It is a proposal applied on top of the contract, not a document Sentry publishes.
What the actions change
x-apievangelist-phrasing
Targets 13
$.info
$.paths['/organizations/{organization_id_or_slug}/issues/'].get
$.paths['/organizations/{organization_id_or_slug}/issues/'].put
$.paths['/organizations/{organization_id_or_slug}/issues/'].delete
$.paths['/issues/{issue_id}/'].get
$.paths['/issues/{issue_id}/'].put
$.paths['/issues/{issue_id}/'].delete
$.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/issues/'].get
$.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/issues/'].put
$.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/issues/'].delete
$.paths['/issues/{issue_id}/hashes/'].get
$.paths['/issues/{issue_id}/tags/{key}/'].get
$.paths['/issues/{issue_id}/tags/{key}/values/'].get
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 Sentry System Issues API
version: 1.0.0
extends: openapi/sentry-system-issues-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: 12
- target: $.paths['/organizations/{organization_id_or_slug}/issues/'].get
update:
x-apievangelist-phrasing:
intent: Search issues across an organization
effect: read
questions:
- How do I find unresolved issues across all my projects?
- Can I search every issue in my organization with a query?
instructions:
- text: List issues across organization {org}.
slots:
org: path.organization_id_or_slug
- text: Search issues in {org} matching {query}.
slots:
org: path.organization_id_or_slug
query: query.query
method: generated
generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/issues/'].put
update:
x-apievangelist-phrasing:
intent: Bulk update issues across an org
effect: write
questions:
- Can I resolve many issues across different projects at once?
- How do I assign a batch of org-wide issues to one person?
instructions:
- text: Set status {status} on issues {id} in organization {org}.
slots:
status: requestBody.status
id: query.id
org: path.organization_id_or_slug
- text: Assign org issues {id} to {assignedTo}.
slots:
id: query.id
assignedTo: requestBody.assignedTo
- text: Bookmark issues {id} across the org by setting bookmarked to {isBookmarked}.
slots:
id: query.id
isBookmarked: requestBody.isBookmarked
method: generated
generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/issues/'].delete
update:
x-apievangelist-phrasing:
intent: Bulk delete issues across an org
effect: destructive
questions:
- Can I permanently delete several issues from different projects at once?
- Is removing issues org-wide reversible?
instructions:
- text: Permanently remove issues {id} from organization {org}.
slots:
id: query.id
org: path.organization_id_or_slug
- text: Delete org-wide issues {id}.
slots:
id: query.id
method: generated
generated: '2026-09-26'
- target: $.paths['/issues/{issue_id}/'].get
update:
x-apievangelist-phrasing:
intent: Get an issue's details
effect: read
questions:
- What is the status and assignee of a particular issue?
- How can I look up one issue by its ID?
instructions:
- text: Show issue {issue_id}.
slots:
issue_id: path.issue_id
- text: Fetch the details of Sentry issue {issue_id}.
slots:
issue_id: path.issue_id
method: generated
generated: '2026-09-26'
- target: $.paths['/issues/{issue_id}/'].put
update:
x-apievangelist-phrasing:
intent: Resolve, assign or update one issue
effect: write
questions:
- How do I mark a single issue as resolved?
- Can I assign one issue to a teammate?
instructions:
- text: Set issue {issue_id} status to {status}.
slots:
issue_id: path.issue_id
status: requestBody.status
- text: Assign issue {issue_id} to {assignedTo}.
slots:
issue_id: path.issue_id
assignedTo: requestBody.assignedTo
- text: Make issue {issue_id} public by setting isPublic to {isPublic}.
slots:
issue_id: path.issue_id
isPublic: requestBody.isPublic
method: generated
generated: '2026-09-26'
- target: $.paths['/issues/{issue_id}/'].delete
update:
x-apievangelist-phrasing:
intent: Delete a single issue
effect: destructive
questions:
- How do I delete one issue entirely?
- What happens to an issue's events when I remove it?
instructions:
- text: Delete issue {issue_id}.
slots:
issue_id: path.issue_id
- text: Remove Sentry issue {issue_id} permanently.
slots:
issue_id: path.issue_id
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/issues/'].get
update:
x-apievangelist-phrasing:
intent: List a project's issues
effect: read
questions:
- Which issues are open in one project?
- Can I limit a project's issues to the last 24 hours?
instructions:
- text: List issues in project {project} of {org}.
slots:
project: path.project_id_or_slug
org: path.organization_id_or_slug
- text: Show project {project} issues matching {query} over {statsPeriod}.
slots:
project: path.project_id_or_slug
query: query.query
statsPeriod: query.statsPeriod
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/issues/'].put
update:
x-apievangelist-phrasing:
intent: Bulk update issues in a project
effect: write
questions:
- Can I resolve a list of issues within a single project at once?
- How do I mark many issues in one project as seen?
instructions:
- text: Set status {status} on issues {id} in project {project} of {org}.
slots:
status: requestBody.status
id: query.id
project: path.project_id_or_slug
org: path.organization_id_or_slug
- text: Mark project {project} issues {id} as seen with hasSeen {hasSeen}.
slots:
project: path.project_id_or_slug
id: query.id
hasSeen: requestBody.hasSeen
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/issues/'].delete
update:
x-apievangelist-phrasing:
intent: Bulk delete issues in a project
effect: destructive
questions:
- How do I permanently delete a batch of issues from one project?
- Can I remove several project issues in a single call?
instructions:
- text: Permanently remove issues {id} from project {project} in {org}.
slots:
id: query.id
project: path.project_id_or_slug
org: path.organization_id_or_slug
- text: Delete issues {id} in project {project}.
slots:
id: query.id
project: path.project_id_or_slug
method: generated
generated: '2026-09-26'
- target: $.paths['/issues/{issue_id}/hashes/'].get
update:
x-apievangelist-phrasing:
intent: List an issue's fingerprint hashes
effect: read
questions:
- Which fingerprints are grouped into an issue?
- Why were these events merged into the same issue?
instructions:
- text: List the hashes assigned to issue {issue_id}.
slots:
issue_id: path.issue_id
- text: Show fingerprint hashes for issue {issue_id}.
slots:
issue_id: path.issue_id
method: generated
generated: '2026-09-26'
- target: $.paths['/issues/{issue_id}/tags/{key}/'].get
update:
x-apievangelist-phrasing:
intent: Get tag breakdown for an issue
effect: read
questions:
- What browsers are most affected by an issue?
- Can I see a summary of one tag key on an issue?
instructions:
- text: Show details for tag {key} on issue {issue_id}.
slots:
key: path.key
issue_id: path.issue_id
- text: Break down issue {issue_id} by tag {key}.
slots:
issue_id: path.issue_id
key: path.key
method: generated
generated: '2026-09-26'
- target: $.paths['/issues/{issue_id}/tags/{key}/values/'].get
update:
x-apievangelist-phrasing:
intent: List a tag's values on an issue
effect: read
questions:
- Which release versions show up under an issue?
- Can I list every distinct value of a tag for one issue?
instructions:
- text: List unique values of tag {key} for issue {issue_id}.
slots:
key: path.key
issue_id: path.issue_id
- text: Show all {key} values seen on issue {issue_id}.
slots:
key: path.key
issue_id: path.issue_id
method: generated
generated: '2026-09-26'