Raygun Errors API

Triage error groups and instances — list, get, resolve, activate, ignore, permanently ignore, and comment on grouped errors. Drill into individual error instances with full stack-trace, environment, request, and breadcrumb context.

OpenAPI Specification

raygun-errors-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Raygun applications errors API
  version: '3.0'
  description: This is a visual representation of the Raygun API V3 specification.<br> To find out more details and how to get started, you can head over to the <a href='https://raygun.com/documentation/product-guides/public-api/' target='_blank'>documentation</a>.
  contact:
    name: Raygun Support
    email: support@raygun.com
servers:
- url: https://api.raygun.com/v3
  description: ''
security:
- personal_access_token: []
tags:
- name: errors
paths:
  /applications/{application-identifier}/deployments/latest/error-groups:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    get:
      summary: List Error Groups From the Latest Deployment
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/error-group'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '429':
          description: Too many requests
      operationId: list-error-groups-from-latest-deployment
      description: Returns a list of error groups from the latest deployment
      security:
      - personal_access_token:
        - cr.errors:read
      parameters:
      - $ref: '#/components/parameters/count'
      - $ref: '#/components/parameters/offset'
      - in: query
        name: filter
        description: Filter items by an expression. Currently supports filtering by the virtual property `state`, which can be `new`, `stillOccurring`, or `regressed`
        schema:
          type: string
          pattern: ^state eq (new|stillOccurring|regressed)$
        example: state eq regressed
      - in: query
        name: orderby
        description: Order items by property values
        explode: false
        schema:
          type: array
          uniqueItems: true
          items:
            type: string
            enum:
            - message
            - message desc
            - status
            - status desc
            - lastOccurredAt
            - lastOccurredAt desc
            - createdAt
            - createdAt desc
      tags:
      - errors
  /applications/{application-identifier}/deployments/{deployment-identifier}/error-groups:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/deployment-identifier'
    get:
      summary: List Error Groups From a Deployment
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/error-group'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '429':
          description: Too many requests
      operationId: list-error-groups-from-deployment
      description: Returns a list of error groups from the specified deployment
      security:
      - personal_access_token:
        - cr.errors:read
      parameters:
      - $ref: '#/components/parameters/count'
      - $ref: '#/components/parameters/offset'
      - in: query
        name: filter
        description: Filter items by an expression. Currently supports filtering by the virtual property `state`, which can be `new`, `stillOccurring`, or `regressed`
        schema:
          type: string
          pattern: ^state eq (new|stillOccurring|regressed)$
        example: state eq regressed
      - in: query
        name: orderby
        description: Order items by property values
        explode: false
        schema:
          type: array
          uniqueItems: true
          items:
            type: string
            enum:
            - message
            - message desc
            - status
            - status desc
            - lastOccurredAt
            - lastOccurredAt desc
            - createdAt
            - createdAt desc
      tags:
      - errors
  /applications/{application-identifier}/error-groups:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    get:
      summary: List Error Groups for an Application
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/error-group'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '429':
          description: Too many requests
      operationId: list-error-groups
      description: Returns a list of error groups for the specified application
      security:
      - personal_access_token:
        - cr.errors:read
      parameters:
      - $ref: '#/components/parameters/count'
      - $ref: '#/components/parameters/offset'
      - in: query
        name: orderby
        description: Order items by property values
        explode: false
        schema:
          type: array
          uniqueItems: true
          items:
            type: string
            enum:
            - message
            - message desc
            - status
            - status desc
            - lastOccurredAt
            - lastOccurredAt desc
            - createdAt
            - createdAt desc
      tags:
      - errors
  /applications/{application-identifier}/error-groups/{error-group-identifier}:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    get:
      summary: Get Error Group by Identifier
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-group'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '429':
          description: Too many requests
      operationId: get-error-group
      description: Returns a single error group by identifier
      security:
      - personal_access_token:
        - cr.errors:read
      tags:
      - errors
  /applications/{application-identifier}/error-groups/{error-group-identifier}/resolve:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    post:
      summary: Resolve Error Group
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-group'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '409':
          $ref: '#/components/responses/problem-details'
        '422':
          $ref: '#/components/responses/validation-problem-details'
        '429':
          description: Too many requests
      operationId: error-group-resolve
      description: Set the status of the error group to resolved
      security:
      - personal_access_token:
        - cr.errors:write
      tags:
      - errors
      requestBody:
        $ref: '#/components/requestBodies/error-group-resolve'
  /applications/{application-identifier}/error-groups/{error-group-identifier}/activate:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    post:
      summary: Activate Error Group
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-group'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '409':
          $ref: '#/components/responses/problem-details'
        '422':
          $ref: '#/components/responses/validation-problem-details'
        '429':
          description: Too many requests
      operationId: error-group-activate
      description: Set the status of the error group to active
      security:
      - personal_access_token:
        - cr.errors:write
      tags:
      - errors
  /applications/{application-identifier}/error-groups/{error-group-identifier}/ignore:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    post:
      summary: Ignore Error Group
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-group'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '409':
          $ref: '#/components/responses/problem-details'
        '422':
          $ref: '#/components/responses/validation-problem-details'
        '429':
          description: Too many requests
      operationId: error-group-ignore
      description: Set the status of the error group to ignored
      security:
      - personal_access_token:
        - cr.errors:write
      tags:
      - errors
  /applications/{application-identifier}/error-groups/{error-group-identifier}/permanently-ignore:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    post:
      summary: Permanently Ignore Error Group
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-group'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '409':
          $ref: '#/components/responses/problem-details'
        '422':
          $ref: '#/components/responses/validation-problem-details'
        '429':
          description: Too many requests
      operationId: error-group-permanently-ignore
      description: Set the status of the error group to permanently ignored
      security:
      - personal_access_token:
        - cr.errors:write
      tags:
      - errors
      requestBody:
        $ref: '#/components/requestBodies/error-group-permanently-ignore'
  /applications/{application-identifier}/error-groups/{error-group-identifier}/comment:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    post:
      summary: Create Error Group Comment
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/comment'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '422':
          $ref: '#/components/responses/validation-problem-details'
        '429':
          description: Too many requests
      operationId: error-group-create-comment
      description: Create a comment on an error group
      security:
      - personal_access_token:
        - cr.errors:write
      tags:
      - errors
      requestBody:
        $ref: '#/components/requestBodies/create-comment'
  /applications/{application-identifier}/error-groups/{error-group-identifier}/instances:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    get:
      summary: List Error Instances for an Error Group
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/error-instance-summary'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '429':
          description: Too many requests
      operationId: list-error-instances-by-error-group-id
      description: Returns a list of error instance summaries for the specified error group, ordered by occurrence time (latest first)
      security:
      - personal_access_token:
        - cr.errors:read
      parameters:
      - $ref: '#/components/parameters/count'
      - $ref: '#/components/parameters/offset'
      - in: query
        name: orderby
        description: Order items by property values
        explode: false
        schema:
          type: array
          uniqueItems: true
          items:
            type: string
            enum:
            - occurredOn
            - occurredOn desc
            - identifier
            - identifier desc
      tags:
      - errors
  /applications/{application-identifier}/error-groups/{error-group-identifier}/instance/latest:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    get:
      summary: Get Latest Error Instance for an Error Group
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-instance'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '429':
          description: Too many requests
      operationId: get-latest-error-instance-by-error-group-id
      description: Returns the latest (most recent) error instance for the specified error group
      security:
      - personal_access_token:
        - cr.errors:read
      tags:
      - errors
  /applications/{application-identifier}/error-groups/{error-group-identifier}/instance/{error-instance-identifier}:
    parameters:
    - $ref: '#/components/parameters/application-identifier'
    - $ref: '#/components/parameters/error-group-identifier'
    - $ref: '#/components/parameters/error-instance-identifier'
    get:
      summary: Get Error Instance by Identifier
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-instance'
        '401':
          $ref: '#/components/responses/problem-details'
        '403':
          $ref: '#/components/responses/problem-details'
        '404':
          $ref: '#/components/responses/problem-details'
        '429':
          description: Too many requests
      operationId: get-error-instance-by-id
      description: Returns a specific error instance by identifier for the specified error group. Accepts both Base36 and numeric identifiers.
      security:
      - personal_access_token:
        - cr.errors:read
      tags:
      - errors
components:
  schemas:
    error-instance-summary:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the error instance
        occurredOn:
          type: string
          format: date-time
          description: When this error instance occurred
      required:
      - identifier
      - occurredOn
    request-detail:
      type: object
      properties:
        url:
          type: string
          format: uri
          description: HTTP URL that was being requested
        httpMethod:
          type: string
          description: HTTP method (GET, POST, etc.)
        headers:
          type: object
          additionalProperties:
            type: string
          description: Request headers
        queryString:
          type: object
          additionalProperties:
            type: string
          description: Query string parameters
        form:
          type: object
          additionalProperties:
            type: string
          description: Form data if applicable
        rawData:
          type: string
          description: Raw request data
        ipAddress:
          type: string
          description: IP address of the client
        hostName:
          type: string
          description: Host header value
    error-instance:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the error instance
        applicationIdentifier:
          type: string
          description: Identifier of the application the error instance belongs to
        errorGroupIdentifier:
          type: string
          description: Identifier of the error group this instance belongs to
        occurredOn:
          type: string
          format: date-time
          description: When this error instance occurred
        error:
          $ref: '#/components/schemas/error-detail'
          description: The error details including stack trace and exception information
        tags:
          type: array
          items:
            type: string
          description: Tags associated with this error instance
        userCustomData:
          type: object
          additionalProperties: true
          description: Custom data provided by the user/application
        client:
          $ref: '#/components/schemas/client-detail'
          description: Client information (library/SDK details)
        request:
          $ref: '#/components/schemas/request-detail'
          description: Request information if this error occurred during an HTTP request
        user:
          $ref: '#/components/schemas/user-detail'
          description: User information associated with this error instance
        breadcrumbs:
          type: array
          items:
            $ref: '#/components/schemas/breadcrumb-detail'
          description: Breadcrumbs leading up to the error
        environment:
          $ref: '#/components/schemas/environment-detail'
          description: Environment information when the error occurred
        version:
          type: string
          description: Version of the application when the error occurred
        machineName:
          type: string
          description: Name of the machine where the error occurred
        applicationUrl:
          type: string
          format: uri
          description: URL to view this error instance in the Raygun application
      required:
      - identifier
      - applicationIdentifier
      - errorGroupIdentifier
      - occurredOn
      - error
      - applicationUrl
    stack-frame-detail:
      type: object
      properties:
        lineNumber:
          type: integer
          description: Line number in the source file
        columnNumber:
          type: integer
          description: Column number in the source file
        className:
          type: string
          description: Class name containing the method
        fileName:
          type: string
          description: File name of the source code
        methodName:
          type: string
          description: Method name
        raw:
          type: string
          description: Raw stack frame string
    client-detail:
      type: object
      properties:
        name:
          type: string
          description: Name of the client SDK
        version:
          type: string
          description: Version of the client SDK
        clientUrl:
          type: string
          format: uri
          description: URL of the client SDK
    breadcrumb-detail:
      type: object
      properties:
        message:
          type: string
          description: Message describing the breadcrumb
        category:
          type: string
          description: Category of the breadcrumb
        level:
          type: string
          description: Level of the breadcrumb (info, warning, error, etc.)
        timestamp:
          type: string
          format: date-time
          description: When this breadcrumb was recorded
        type:
          type: string
          description: Type of breadcrumb
        customData:
          type: object
          additionalProperties: true
          description: Custom data associated with the breadcrumb
    error-detail:
      type: object
      properties:
        message:
          type: string
          description: The error message
        className:
          type: string
          description: The exception class name
        innerError:
          $ref: '#/components/schemas/error-detail'
          description: Inner exception details
        innerErrors:
          type: array
          items:
            $ref: '#/components/schemas/error-detail'
          description: Multiple inner exceptions (for AggregateException scenarios)
        stackTrace:
          type: array
          items:
            $ref: '#/components/schemas/stack-frame-detail'
          description: Stack trace frames
    environment-detail:
      type: object
      properties:
        processorCount:
          type: integer
          description: Processor count
        osVersion:
          type: string
          description: Operating system version
        windowBoundsWidth:
          type: string
          description: Window bounds width if applicable
        windowBoundsHeight:
          type: string
          description: Window bounds height if applicable
        browser:
          type: string
          description: Browser name if this is a web application
        browserVersion:
          type: string
          description: Browser version
        colorDepth:
          type: integer
          description: Color depth of the display
        resolutionWidth:
          type: integer
          description: Screen resolution width
        resolutionHeight:
          type: integer
          description: Screen resolution height
        currentCulture:
          type: string
          description: Current culture
        totalPhysicalMemory:
          type: integer
          format: int64
          description: Total physical memory
        availablePhysicalMemory:
          type: integer
          format: int64
          description: Available physical memory
        totalVirtualMemory:
          type: integer
          format: int64
          description: Total virtual memory
        availableVirtualMemory:
          type: integer
          format: int64
          description: Available virtual memory
        diskSpaceFree:
          type: string
          description: Disk space information
        architecture:
          type: string
          description: Architecture (x86, x64, etc.)
    user-detail:
      type: object
      properties:
        identifier:
          type: string
          description: User identifier
        isAnonymous:
          type: boolean
          description: Whether the user is anonymous
        email:
          type: string
          format: email
          description: User's email address
        fullName:
          type: string
          description: User's full name
        firstName:
          type: string
          description: User's first name
        uuid:
          type: string
          format: uuid
          description: UUID for this user
    comment:
      title: comment
      type: object
      properties:
        applicationIdentifier:
          type: string
        errorGroupIdentifier:
          type: string
        comment:
          type: string
        createdAt:
          type: string
          format: date-time
      required:
      - identifier
      - applicationIdentifier
      - errorGroupIdentifier
      - comment
      - createdAt
    error-group:
      type: object
      properties:
        identifier:
          type: string
        applicationIdentifier:
          type: string
        message:
          type: string
        status:
          type: string
          enum:
          - active
          - resolved
          - ignored
          - permanentlyIgnored
        lastOccurredAt:
          type: string
        createdAt:
          type: string
          format: date-time
        resolvedIn:
          type: object
          properties:
            version:
              type: string
            discardFromPreviousVersions:
              type: boolean
        discardNewOccurrences:
          type: boolean
          description: True if the error is permanently ignored and has been set to discard any new occurrences.
        applicationUrl:
          type: string
          format: uri
          description: URL to view the error group in Raygun.
      required:
      - identifier
      - applicationIdentifier
      - message
      - status
      - lastOccurredAt
      - createdAt
  responses:
    problem-details:
      description: Problem Details
      content:
        application/json:
          schema:
            type: object
            properties:
              type:
                type: string
              title:
                type: string
              detail:
                type: string
              status:
                type: integer
              traceId:
                type: string
            required:
            - type
            - title
            - status
            - traceId
      headers:
        X-Raygun-RequestId:
          schema:
            type: string
          description: The id associated with this request
    validation-problem-details:
      description: Validation problem details
      content:
        application/json:
          schema:
            type: object
            properties:
              type:
                type: string
              title:
                type: string
              detail:
                type: string
              status:
                type: integer
              traceId:
                type: string
              errors:
                type: object
                additionalProperties:
                  type: array
                  items:
                    type: string
            required:
            - type
            - title
            - status
            - traceId
            - errors
      headers:
        X-Raygun-RequestId:
          schema:
            type: string
          description: The id associated with this request
  requestBodies:
    create-comment:
      content:
        application/json:
          schema:
            type: object
            properties:
              comment:
                type: string
                description: The comment to add to the error group
      required: true
    error-group-resolve:
      content:
        application/json:
          schema:
            type: object
            properties:
              version:
                type: string
                description: The version that this error was resolved in
              discardFromPreviousVersions:
                default: true
                type: boolean
                description: When true, occurrences from previous versions will be discarded.
            required:
            - version
            - discardFromPreviousVersions
    error-group-permanently-ignore:
      content:
        application/json:
          schema:
            type: object
            properties:
              discardNewOccurrences:
                type: boolean
                description: When true, new occurrences of this error will not be stored or count towards your error quota
            required:
            - discardNewOccurrences
      required: true
  parameters:
    deployment-identifier:
      name: deployment-identifier
      in: path
      required: true
      schema:
        type: string
      description: Deployment identifier
    error-group-identifier:
      name: error-group-identifier
      in: path
      required: true
      schema:
        type: string
      description: Error group identifier
    offset:
      name: offset
      in: query
      schema:
        type: integer
        minimum: 0
        maximum: 2147483647
      description: Number of items to skip before returning results
    error-instance-identifier:
      name: error-instance-identifier
      in: path
      schema:
        type: string
      required: true
      description: Error instance identifier (accepts both Base36 and numeric formats)
    application-identifier:
      name: application-identifier
      in: path
      required: true
      schema:
        type: string
      description: Application identifier
    count:
      name: count
      in: query
      required: false
      schema:
        type: integer
        minimum: 1
        default: 100
        maximum: 500
      description: Limits the number of items in the response
  securitySchemes:
    personal_access_token:
      type: http
      scheme: bearer
      description: 'Personal Access Token authorization using the Bearer scheme. Example: `Authorization: Bearer {token}`'