Sentry Issues API

Error issues and aggregated events

OpenAPI Specification

sentry-issues-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Sentry Error Monitoring Alerts Issues API
  description: Sentry provides error monitoring and performance tracking REST APIs for software applications. APIs enable issue management, event retrieval, release tracking, alert configuration, and project administration. All endpoints are scoped to an organization. Current API version is v0.
  version: '0'
  contact:
    name: Sentry Support
    url: https://sentry.io/support/
  license:
    name: Sentry Terms of Service
    url: https://sentry.io/terms/
servers:
- url: https://sentry.io/api/0
  description: Sentry SaaS API
security:
- AuthToken: []
- BearerAuth: []
tags:
- name: Issues
  description: Error issues and aggregated events
paths:
  /organizations/{organization_slug}/issues/:
    get:
      operationId: listOrganizationIssues
      summary: List issues for an organization
      description: Returns a list of issues (error aggregations) for the organization. Supports filtering by project, query, date range, status, and assignee. Replaces the deprecated project-scoped issues endpoint.
      tags:
      - Issues
      parameters:
      - $ref: '#/components/parameters/OrganizationSlug'
      - name: project
        in: query
        schema:
          type: array
          items:
            type: integer
        description: Filter by project ID(s)
      - name: query
        in: query
        schema:
          type: string
        description: Sentry query string (e.g., "is:unresolved assigned:me")
        example: is:unresolved
      - name: statsPeriod
        in: query
        schema:
          type: string
        description: Time range (e.g., 14d, 24h, 1h)
        example: 14d
      - name: start
        in: query
        schema:
          type: string
          format: date-time
      - name: end
        in: query
        schema:
          type: string
          format: date-time
      - name: limit
        in: query
        schema:
          type: integer
          default: 25
          maximum: 100
      - name: cursor
        in: query
        schema:
          type: string
        description: Pagination cursor from previous response
      - name: sort
        in: query
        schema:
          type: string
          enum:
          - date
          - new
          - priority
          - freq
          - user
        default: date
      responses:
        '200':
          description: List of issues
          headers:
            Link:
              schema:
                type: string
              description: Pagination links (rel=next, rel=previous)
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Issue'
        '403':
          description: Forbidden
  /organizations/{organization_slug}/issues/{issue_id}/:
    get:
      operationId: retrieveIssue
      summary: Retrieve an issue
      description: Returns detailed stats and metadata for a specific issue.
      tags:
      - Issues
      parameters:
      - $ref: '#/components/parameters/OrganizationSlug'
      - name: issue_id
        in: path
        required: true
        schema:
          type: string
        description: Issue ID
      responses:
        '200':
          description: Issue details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Issue'
        '404':
          description: Not found
    put:
      operationId: updateIssue
      summary: Update an issue
      description: Updates attributes of an issue such as status, assignee, or priority.
      tags:
      - Issues
      parameters:
      - $ref: '#/components/parameters/OrganizationSlug'
      - name: issue_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IssueUpdate'
      responses:
        '200':
          description: Issue updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Issue'
        '403':
          description: Forbidden
    delete:
      operationId: deleteIssue
      summary: Delete an issue
      description: Permanently removes an issue and all associated events.
      tags:
      - Issues
      parameters:
      - $ref: '#/components/parameters/OrganizationSlug'
      - name: issue_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '202':
          description: Issue deletion queued
        '403':
          description: Forbidden
  /organizations/{organization_slug}/issues/{issue_id}/events/:
    get:
      operationId: listIssueEvents
      summary: List an issue's events
      description: Returns a list of error events bound to an issue.
      tags:
      - Issues
      parameters:
      - $ref: '#/components/parameters/OrganizationSlug'
      - name: issue_id
        in: path
        required: true
        schema:
          type: string
      - name: full
        in: query
        schema:
          type: boolean
          default: false
        description: Return full event data including stack traces
      - name: limit
        in: query
        schema:
          type: integer
          default: 100
      responses:
        '200':
          description: List of events
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Event'
components:
  schemas:
    IssueUpdate:
      type: object
      properties:
        status:
          type: string
          enum:
          - resolved
          - unresolved
          - ignored
          - resolvedInNextRelease
        assignedTo:
          type: string
          description: User username or team slug
        hasSeen:
          type: boolean
        isBookmarked:
          type: boolean
        isSubscribed:
          type: boolean
        priority:
          type: string
          enum:
          - critical
          - high
          - medium
          - low
    Issue:
      type: object
      properties:
        id:
          type: string
          description: Unique issue ID
        shortId:
          type: string
          description: Short issue ID (ORG-XXX format)
          example: MYORG-42
        title:
          type: string
          description: Issue title (exception type and message)
        culprit:
          type: string
          description: Module/function causing the error
        permalink:
          type: string
          format: uri
        logger:
          type: string
        level:
          type: string
          enum:
          - fatal
          - error
          - warning
          - info
          - debug
        status:
          type: string
          enum:
          - resolved
          - unresolved
          - ignored
          - resolvedInNextRelease
        isPublic:
          type: boolean
        platform:
          type: string
        project:
          $ref: '#/components/schemas/ProjectRef'
        type:
          type: string
          enum:
          - error
          - csp
          - hpkp
          - expectct
          - expectstaple
          - default
        metadata:
          type: object
        numComments:
          type: integer
        userCount:
          type: integer
        count:
          type: string
          description: Total event count
        firstSeen:
          type: string
          format: date-time
        lastSeen:
          type: string
          format: date-time
        assignedTo:
          type: object
          nullable: true
        tags:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              name:
                type: string
              totalValues:
                type: integer
        stats:
          type: object
          description: Event count stats by time period
    Event:
      type: object
      properties:
        id:
          type: string
        eventId:
          type: string
        groupId:
          type: string
          description: Parent issue ID
        dateCreated:
          type: string
          format: date-time
        dateReceived:
          type: string
          format: date-time
        type:
          type: string
        platform:
          type: string
        message:
          type: string
        title:
          type: string
        location:
          type: string
        culprit:
          type: string
        level:
          type: string
          enum:
          - fatal
          - error
          - warning
          - info
          - debug
        tags:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
        user:
          type: object
          nullable: true
          properties:
            id:
              type: string
            email:
              type: string
            username:
              type: string
            ipAddress:
              type: string
        sdk:
          type: object
          properties:
            name:
              type: string
            version:
              type: string
        contexts:
          type: object
        entries:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - exception
                - stacktrace
                - breadcrumbs
                - request
                - message
                - template
              data:
                type: object
    ProjectRef:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        slug:
          type: string
  parameters:
    OrganizationSlug:
      name: organization_slug
      in: path
      required: true
      schema:
        type: string
      description: Organization slug
      example: my-organization
  securitySchemes:
    AuthToken:
      type: apiKey
      in: header
      name: Authorization
      description: 'Format: Token YOUR_AUTH_TOKEN'
    BearerAuth:
      type: http
      scheme: bearer
      description: OAuth2 Bearer token for integrations