> ## Documentation Index
> Fetch the complete documentation index at: https://docs.corbado.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List errors

> Lists the project's curated errors (the labels flavours are mapped to). Occurrence rollups are computed
client-side from the flavour list.

Required API key permission: `observe:errors:read`.



## OpenAPI

````yaml /api-reference/openapi/observe.yaml get /observe/errors
openapi: 3.1.1
info:
  version: 1.0.0
  title: Corbado API
  description: >
    # Introduction

    This documentation gives an overview of all Corbado API calls to implement
    authentication observe.
  contact:
    name: Corbado team
    email: support@corbado.com
    url: https://www.corbado.com
servers:
  - url: https://api.cloud.corbado.io/v1
security:
  - bearerAuth: []
tags:
  - name: ObserveFlow
    description: Flow search and related APIs
    x-group: Journeys and users
  - name: ObserveSubFlow
    description: Subflow search and related APIs
    x-group: Journeys and users
  - name: ObserveUser
    description: User search and related APIs
    x-group: Journeys and users
  - name: ObserveClientEnv
    description: Client environment search APIs
    x-group: Journeys and users
  - name: ObserveTimeSeries
    description: Time series query APIs
    x-group: Metrics and funnels
  - name: ObserveFunnel
    description: Historical funnel metrics, dictionaries and coverage.
    x-group: Metrics and funnels
  - name: ObserveEvent
    description: Event ingestion and event feed APIs
    x-group: Events
  - name: ObserveError
    description: Named authentication errors and recommendations.
    x-group: Error management
  - name: ObserveErrorFlavour
    description: Error variants and their impact on authentication outcomes.
    x-group: Error management
  - name: ObserveAlert
    description: Authentication alert rules, instances and history.
    x-group: Alert management
  - name: ObserveAnnotation
    description: Annotation APIs (dated notes for analytics context)
    x-group: Annotations
  - name: ObserveTableExport
    description: Table export file listing and download APIs
    x-group: Data exports
  - name: ObserveTimeSeriesExport
    description: Time-series export generation and downloads.
    x-group: Data exports
  - name: ObserveDataExport
    description: Data export APIs
    x-group: User data
  - name: ObserveDataDeletionJob
    description: Data deletion job APIs
    x-group: User data
  - name: ObserveFlowTypeDefinition
    description: Flow type definitions used in authentication journeys.
    x-group: Catalogs and labels
  - name: ObserveCatalog
    description: Catalog APIs
    x-group: Catalogs and labels
  - name: OpenAPI
    description: Downloadable API specification
  - name: ProjectOperationExecution
    description: Project-scoped operation history and pipeline health
  - name: ObserveClassification
    description: Flow and subflow classification APIs
  - name: ObserveIntegrationStats
    description: Integration stats APIs
  - name: ObserveTimeSeriesPrecalculation
    description: Time series precalculation APIs
  - name: ObserveIDList
    x-group: Saved ID lists
    description: Stored ID-list selection APIs
  - name: ObserveDataContext
    description: Schema-loose data context APIs for agent and debugging tooling
  - name: ObserveData
    description: Observe data administration APIs
  - name: ObserveTrackingStats
    description: Tracking ingestion stats APIs
  - name: ObserveExperiment
    x-group: Experiments
    description: Experiment catalog and run APIs
  - name: ObserveDataPolicy
    description: >-
      Project data policy catalogue (retention selected by the SDK's
      meta.dataPolicy code)
  - name: ObserveMetadata
    x-group: Metadata
    description: Authenticator metadata APIs (FIDO MDS + passkey AAGUID)
  - name: ObservePasskey
    x-group: Passkey analysis
    description: Observed passkey search and cohort analysis.
paths:
  /observe/errors:
    get:
      tags:
        - ObserveError
      summary: List errors
      description: >-
        Lists the project's curated errors (the labels flavours are mapped to).
        Occurrence rollups are computed

        client-side from the flavour list.


        Required API key permission: `observe:errors:read`.
      operationId: ObserveErrorList
      responses:
        '200':
          description: All errors of the project, sorted by creation time (descending).
          content:
            application/json:
              schema:
                type: array
                maxItems: 10000
                items:
                  $ref: '#/components/schemas/observeError'
        default:
          $ref: '#/components/responses/error'
      security:
        - bearerAuth:
            - observe:errors:read
components:
  schemas:
    observeError:
      type: object
      required:
        - id
        - name
        - type
        - severity
        - createdMs
        - updatedMs
      properties:
        id:
          type: string
          description: Error ID (format `err-<number>`).
        name:
          type: string
          description: Human-readable error name.
        description:
          type: string
          description: Optional longer description of the error.
        subFlowType:
          type: string
          description: >-
            Auto-managed subflow scope — stamped from the first assigned
            flavours, enforced on every later assignment (an error never mixes
            subflow types), cleared when the last member is unassigned. Never
            user input. Absent while the error has no members.
        type:
          type: string
          enum:
            - general
            - project-specific
          description: >-
            Whether the error is a general (cross-deployment) or
            project-specific one.
        severity:
          type: string
          enum:
            - error
            - warn
            - info
          description: User-declared triage severity of an occurrence of this error.
        createdMs:
          type: integer
          format: int64
          description: Creation time in milliseconds since epoch.
        updatedMs:
          type: integer
          format: int64
          description: Last update time in milliseconds since epoch.
        recommendation:
          $ref: '#/components/schemas/observeErrorRecommendation'
        lastImpact:
          $ref: '#/components/schemas/observeErrorImpactSnapshot'
    observeErrorRecommendation:
      type: object
      description: >
        Curated guidance attached to an error (at most one per error): what the
        error is and how to reproduce it, the recommended handling (ignore /
        observe / fix), and — for fix — the fix in detail. Human-created like
        the error itself; classification never writes it. Free-text fields are
        markdown.
      required:
        - id
        - action
        - summary
        - source
        - createdMs
        - updatedMs
      properties:
        id:
          type: string
          description: Recommendation ID (format `erc-<number>`).
        action:
          type: string
          enum:
            - ignore
            - observe
            - fix
          description: Recommended handling of the error.
        summary:
          type: string
          description: One-line summary of the recommendation.
        explanation:
          type: string
          description: What happens and why (root cause), as markdown.
        reproduction:
          type: string
          description: Preconditions and steps to reproduce, as markdown.
        fixDetails:
          type: string
          description: >-
            The recommended fix in detail, as markdown. Present when action is
            fix.
        source:
          type: string
          enum:
            - manual
            - ai-draft
          description: Provenance of the recommendation content.
        annotationID:
          type: string
          description: >-
            ID of the annotation marking that the recommended action was carried
            out (format `ann-<number>`). Its

            presence IS the resolved state: the annotation's date is when, its
            description what was done. Absent

            while still open. The link survives the annotation's deletion;
            `annotation` is then absent.
        annotation:
          $ref: '#/components/schemas/observeAnnotation'
        assets:
          type: array
          maxItems: 100
          description: >
            Media assets (screenshots, videos) attached to this recommendation,
            oldest first. Only confirmed (ready) uploads appear. View URLs are
            minted per asset via the downloadUrl endpoint.
          items:
            $ref: '#/components/schemas/observeAsset'
        createdMs:
          type: integer
          format: int64
          description: Creation time in milliseconds since epoch.
        updatedMs:
          type: integer
          format: int64
          description: Last update time in milliseconds since epoch.
    observeErrorImpactSnapshot:
      type: object
      description: >
        Result of the most recent impact analysis run for this error: the
        completion-rate and completed-duration comparison against the baseline,
        plus when it ran and over which range. Stored when the impact endpoint
        is called with the error's ID; absent while no analysis ran (or the
        error lost its last member flavour since). Numbers describe the member
        set at analysis time — `analyzedAtMs` says how current they are.
      required:
        - analyzedAtMs
        - fromDate
        - toDate
        - baselineMode
        - affectedFlowCount
      properties:
        analyzedAtMs:
          type: integer
          format: int64
          description: When the analysis ran, in milliseconds since epoch.
        fromDate:
          type: string
          description: >-
            Analyzed range start, naive UTC datetime (inclusive) — as the
            analysis request carried it.
        toDate:
          type: string
          description: Analyzed range end, naive UTC datetime (exclusive).
        baselineMode:
          type: string
          description: >-
            How the baseline was built — `population` (plain comparable-engaged
            population) or a matching-report mode (`matched`, `env-only`,
            `provided-list`).
        affectedFlowCount:
          type: integer
          format: int64
          description: Distinct affected flows the analysis rested on.
        baselineFlowCount:
          type: integer
          format: int64
          description: Distinct baseline flows; absent when no comparable flows existed.
        affectedCompletionRate:
          type: number
          format: double
          description: >-
            Completion rate of the affected flows. Absent when none had an
            attempts outcome.
        baselineCompletionRate:
          type: number
          format: double
          description: >-
            Completion rate of the baseline, standardized to the affected
            group's device mix. Absent when the baseline had no attempts-outcome
            flows.
        completionLift:
          type: number
          format: double
          description: >-
            affectedCompletionRate minus baselineCompletionRate — the
            completion-rate impact (negative means flows hit by this error
            complete less). Absent when either side has no rate.
        affectedCompletedDurationP50Ms:
          type: integer
          format: int64
          description: >-
            Median duration of COMPLETED affected flows in milliseconds. Absent
            when none completed.
        baselineCompletedDurationP50Ms:
          type: integer
          format: int64
          description: >-
            Median duration of completed baseline flows in milliseconds. Absent
            when none completed.
        perFlowType:
          type: array
          maxItems: 1000
          items:
            $ref: '#/components/schemas/observeErrorImpactSnapshotFlowType'
          description: >-
            Per-flow-type completion comparison of that analysis, biggest
            affected slice first — enough to mark a blended lift that hides
            differently-hurt flow types. Absent on snapshots stored before the
            breakdown existed.
        subflowCode:
          type: string
          description: >-
            Long-path code of the erroring subflow the subflow-completion fields
            below describe. Absent when the analysis produced no subflow
            comparison.
        subflowCompletionDefinitional:
          type: boolean
          description: >-
            True when the subflow comparison was definitional (the flavours only
            occur on failed attempts) — render no subflow impact from this
            snapshot.
        affectedSubflowCompletionRate:
          type: number
          format: double
          description: >-
            Share of the affected side's measured attempts at the erroring
            subflow that completed.
        baselineSubflowCompletionRate:
          type: number
          format: double
          description: >-
            Share of the baseline side's measured attempts at the erroring
            subflow that completed.
        subflowCompletionLift:
          type: number
          format: double
          description: >-
            affectedSubflowCompletionRate minus baselineSubflowCompletionRate —
            the subflow-completion impact. Absent when either side measured
            nothing.
    errorRspV2:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - message
          properties:
            message:
              description: Error message
              type: string
              example: Validation failed
            details:
              description: Validation error details per field
              type: array
              items:
                type: object
                required:
                  - field
                  - message
                properties:
                  field:
                    description: Field name that failed validation
                    type: string
                    example: projectID
                  message:
                    description: Validation error message
                    type: string
                    example: required
    observeAnnotation:
      type: object
      required:
        - id
        - headline
        - dateMs
        - createdMs
        - updatedMs
      properties:
        id:
          type: string
          description: Annotation ID (format `ann-<number>`).
        headline:
          type: string
          description: Short headline describing the annotation.
        description:
          type: string
          description: Optional longer description of the annotation.
        dateMs:
          description: The annotated point in time in milliseconds since epoch.
          type: integer
          format: int64
        createdMs:
          type: integer
          format: int64
          description: Creation time in milliseconds since epoch.
        updatedMs:
          type: integer
          format: int64
          description: Last update time in milliseconds since epoch.
    observeAsset:
      type: object
      description: >
        One user-uploaded media file (screenshot or video). The bytes live in a
        private object store; viewing goes through short-lived presigned URLs
        (see the downloadUrl endpoint), so this object carries metadata only.
      required:
        - id
        - fileName
        - contentType
        - sizeBytes
        - status
        - createdMs
      properties:
        id:
          type: string
          description: Asset ID (format `ast-<number>`).
        fileName:
          type: string
          description: Original file name, for display.
        contentType:
          type: string
          description: >-
            MIME type (image/png, image/jpeg, image/webp, image/gif, video/mp4,
            video/webm, video/quicktime).
        sizeBytes:
          type: integer
          format: int64
          description: Declared (and, once ready, verified) file size in bytes.
        status:
          type: string
          enum:
            - pending
            - ready
          description: Upload lifecycle — pending until the uploaded object was confirmed.
        createdMs:
          type: integer
          format: int64
          description: Creation time in milliseconds since epoch.
    observeErrorImpactSnapshotFlowType:
      type: object
      description: One flow type's slice of a stored impact snapshot.
      required:
        - flowType
        - affectedFlowCount
        - attemptCount
      properties:
        flowType:
          type: string
          description: Flow type name; empty for flows carrying no type.
        affectedFlowCount:
          type: integer
          format: int64
          description: Affected flows of this type in that analysis.
        attemptCount:
          type: integer
          format: int64
          description: >-
            Affected flows of this type with an attempts outcome — what the
            type's lift rests on.
        completionLift:
          type: number
          format: double
          description: >-
            The type's completion lift (affected minus type-standardized
            baseline). Absent when either side had no rate.
  responses:
    error:
      description: Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/errorRspV2'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Use an Observe API key from the management console. The key selects the
        project and must grant the permission listed on the operation. Keep this
        key on your server.

````