Sentry · Arazzo Workflow

Sentry Triage and Resolve an Issue

Version 1.0.0

Find a high-priority unresolved issue in an organization, inspect it, then assign and resolve it.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub APMApplication MonitoringBug TrackingDeveloper ToolsError TrackingObservabilityPerformance MonitoringReal-Time MonitoringArazzoWorkflows

Provider

sentry-system

Workflows

triage-resolve-issue
Locate, inspect, and resolve an organization issue in one pass.
Searches an organization's issues for an unresolved match, retrieves the issue detail and its recent events for triage context, and finally updates the issue to assign it and set its status to resolved.
4 steps inputs: assignedTo, organizationIdOrSlug, query outputs: finalStatus, issueId, latestEventId
1
findIssue
List the organization's issues filtered by the supplied search query and capture the first matching issue id.
2
getIssue
Retrieve the full detail of the matched issue, including its representative event, to confirm it before mutating.
3
listEvents
Pull the recent events bound to the issue to give the responder context on how often and where the error is occurring.
4
resolveIssue
Assign the issue to the supplied owner and mark it resolved. Only the submitted attributes are modified on the issue.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Sentry Triage and Resolve an Issue
  summary: Find a high-priority unresolved issue in an organization, inspect it, then assign and resolve it.
  description: >-
    A core Sentry incident-response flow. The workflow lists an organization's
    unresolved issues filtered by a search query, picks the first matching
    issue, pulls its full detail and most recent events for context, and then
    mutates the issue to assign an owner and mark it resolved. Every step spells
    out its request inline so the flow can be read and executed without opening
    the underlying OpenAPI description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-4200.50
  - BC-4220.20
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-4200.50
      capability_name: Software Quality Engineering
      spec: sentry-system-issues-api-openapi.yml
      confidence: 0.7
    - capability_id: BC-4220.20
      capability_name: Observability Management
      spec: sentry-system-events-api-openapi.yml
      confidence: 0.85
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: eventsApi
  url: ../openapi/sentry-system-events-api-openapi.yml
  type: openapi
- name: issuesApi
  url: ../openapi/sentry-system-issues-api-openapi.yml
  type: openapi
workflows:
- workflowId: triage-resolve-issue
  summary: Locate, inspect, and resolve an organization issue in one pass.
  description: >-
    Searches an organization's issues for an unresolved match, retrieves the
    issue detail and its recent events for triage context, and finally updates
    the issue to assign it and set its status to resolved.
  inputs:
    type: object
    required:
    - organizationIdOrSlug
    properties:
      organizationIdOrSlug:
        type: string
        description: The ID or slug of the organization that owns the issues.
      query:
        type: string
        description: A Sentry structured search query used to find the issue (e.g. "is:unresolved").
      assignedTo:
        type: string
        description: The username or team the issue should be assigned to during resolution.
  steps:
  - stepId: findIssue
    description: >-
      List the organization's issues filtered by the supplied search query and
      capture the first matching issue id.
    operationId: listOrganizationIssues
    parameters:
    - name: organization_id_or_slug
      in: path
      value: $inputs.organizationIdOrSlug
    - name: query
      in: query
      value: $inputs.query
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      issueId: $response.body#/0/id
    onSuccess:
    - name: issueFound
      type: goto
      stepId: getIssue
      criteria:
      - context: $response.body
        condition: $.length > 0
        type: jsonpath
  - stepId: getIssue
    description: >-
      Retrieve the full detail of the matched issue, including its
      representative event, to confirm it before mutating.
    operationId: retrieveIssue
    parameters:
    - name: issue_id
      in: path
      value: $steps.findIssue.outputs.issueId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      issueId: $response.body#/id
      title: $response.body#/title
      status: $response.body#/status
  - stepId: listEvents
    description: >-
      Pull the recent events bound to the issue to give the responder context
      on how often and where the error is occurring.
    operationId: listIssueEvents
    parameters:
    - name: issue_id
      in: path
      value: $steps.getIssue.outputs.issueId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      latestEventId: $response.body#/0/eventID
  - stepId: resolveIssue
    description: >-
      Assign the issue to the supplied owner and mark it resolved. Only the
      submitted attributes are modified on the issue.
    operationId: updateIssue
    parameters:
    - name: issue_id
      in: path
      value: $steps.getIssue.outputs.issueId
    requestBody:
      contentType: application/json
      payload:
        status: resolved
        assignedTo: $inputs.assignedTo
        hasSeen: true
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      resolvedIssueId: $response.body#/id
      finalStatus: $response.body#/status
  outputs:
    issueId: $steps.getIssue.outputs.issueId
    latestEventId: $steps.listEvents.outputs.latestEventId
    finalStatus: $steps.resolveIssue.outputs.finalStatus

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/sentry-system-triage-resolve-issue-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.