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

# Get a loss review

> Get status, progress, input versions and frozen synthesis; read independent matters with listLossReviewItems. Poll every few seconds until succeeded or failed. Loss of access to any input hides the whole review. Free.



## OpenAPI

````yaml /openapi.json get /insurance/loss-reviews/{id}
openapi: 3.0.3
info:
  title: Effective API
  version: 2.0.0
  description: The public Effective REST API. Authenticate using an Effective API key.
servers:
  - url: https://api.canary.effectiveai.app/api/v2
    description: Canary
security:
  - bearerAuth: []
paths:
  /insurance/loss-reviews/{id}:
    get:
      tags:
        - Loss reviews
      summary: Get a loss review
      description: >-
        Get status, progress, input versions and frozen synthesis; read
        independent matters with listLossReviewItems. Poll every few seconds
        until succeeded or failed. Loss of access to any input hides the whole
        review. Free.
      operationId: getLossReview
      parameters:
        - schema:
            type: string
            description: Loss review UUID returned by createLossReview.
          required: true
          description: Loss review UUID returned by createLossReview.
          name: id
          in: path
      responses:
        '200':
          description: Review status and available results.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2LossReview'
        '400':
          description: 'invalid_request: unknown query parameter.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '401':
          description: 'unauthenticated: credentials required.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '403':
          description: >-
            feature_not_enabled or forbidden: requires loss reviews and a member
            credential; app-scoped and delegated credentials cannot access it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '404':
          description: 'not_found: review missing or deleted.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '500':
          description: 'internal_error: unexpected server error.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '503':
          description: 'temporarily_unavailable: retry after Retry-After seconds.'
          headers:
            Retry-After:
              required: true
              schema:
                type: integer
                minimum: 0
              description: Seconds to wait before retrying.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
      security:
        - bearerAuth: []
components:
  schemas:
    V2LossReview:
      oneOf:
        - type: object
          properties:
            id:
              type: string
            createdAt:
              type: string
              format: date-time
            startedAt:
              type: string
              nullable: true
              format: date-time
            finishedAt:
              type: string
              nullable: true
              format: date-time
            idempotencyExpiresAt:
              type: string
              nullable: true
              format: date-time
            request:
              $ref: '#/components/schemas/V2CreateLossReviewRequest'
            progress:
              type: object
              properties:
                total:
                  type: integer
                succeeded:
                  type: integer
                failed:
                  type: integer
                pending:
                  type: integer
              required:
                - total
                - succeeded
                - failed
                - pending
            formComparisonId:
              type: string
              nullable: true
            inputsUsed:
              type: object
              properties:
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      inputId:
                        type: string
                      role:
                        type: string
                        enum:
                          - target
                          - context
                          - knowledge
                          - review_material
                      variant:
                        type: string
                        nullable: true
                      fileId:
                        type: string
                      versionId:
                        anyOf:
                          - type: string
                            format: uuid
                          - type: string
                            maxLength: 8192
                            pattern: ^lv1\.[A-Za-z0-9_.-]+$
                      contentSha256:
                        type: string
                        nullable: true
                      name:
                        type: string
                      extractionMethod:
                        type: string
                        nullable: true
                    required:
                      - inputId
                      - role
                      - variant
                      - fileId
                      - versionId
                      - contentSha256
                      - name
                      - extractionMethod
                execution:
                  type: object
                  properties:
                    executor:
                      type: string
                    model:
                      type: string
                      nullable: true
                    codeVersion:
                      type: string
                      nullable: true
                  required:
                    - executor
                    - model
                    - codeVersion
              required:
                - items
                - execution
            report:
              type: string
              description: >-
                Markdown summary and source/version manifest; item reports are
                on listLossReviewItems.
            usage:
              type: object
              properties:
                credits:
                  type: number
              required:
                - credits
            status:
              type: string
              enum:
                - queued
          required:
            - id
            - createdAt
            - startedAt
            - finishedAt
            - idempotencyExpiresAt
            - request
            - progress
            - formComparisonId
            - inputsUsed
            - report
            - usage
            - status
        - type: object
          properties:
            id:
              type: string
            createdAt:
              type: string
              format: date-time
            startedAt:
              type: string
              nullable: true
              format: date-time
            finishedAt:
              type: string
              nullable: true
              format: date-time
            idempotencyExpiresAt:
              type: string
              nullable: true
              format: date-time
            request:
              $ref: '#/components/schemas/V2CreateLossReviewRequest'
            progress:
              type: object
              properties:
                total:
                  type: integer
                succeeded:
                  type: integer
                failed:
                  type: integer
                pending:
                  type: integer
              required:
                - total
                - succeeded
                - failed
                - pending
            formComparisonId:
              type: string
              nullable: true
            inputsUsed:
              type: object
              properties:
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      inputId:
                        type: string
                      role:
                        type: string
                        enum:
                          - target
                          - context
                          - knowledge
                          - review_material
                      variant:
                        type: string
                        nullable: true
                      fileId:
                        type: string
                      versionId:
                        anyOf:
                          - type: string
                            format: uuid
                          - type: string
                            maxLength: 8192
                            pattern: ^lv1\.[A-Za-z0-9_.-]+$
                      contentSha256:
                        type: string
                        nullable: true
                      name:
                        type: string
                      extractionMethod:
                        type: string
                        nullable: true
                    required:
                      - inputId
                      - role
                      - variant
                      - fileId
                      - versionId
                      - contentSha256
                      - name
                      - extractionMethod
                execution:
                  type: object
                  properties:
                    executor:
                      type: string
                    model:
                      type: string
                      nullable: true
                    codeVersion:
                      type: string
                      nullable: true
                  required:
                    - executor
                    - model
                    - codeVersion
              required:
                - items
                - execution
            report:
              type: string
              description: >-
                Markdown summary and source/version manifest; item reports are
                on listLossReviewItems.
            usage:
              type: object
              properties:
                credits:
                  type: number
              required:
                - credits
            status:
              type: string
              enum:
                - running
          required:
            - id
            - createdAt
            - startedAt
            - finishedAt
            - idempotencyExpiresAt
            - request
            - progress
            - formComparisonId
            - inputsUsed
            - report
            - usage
            - status
        - type: object
          properties:
            id:
              type: string
            createdAt:
              type: string
              format: date-time
            startedAt:
              type: string
              nullable: true
              format: date-time
            finishedAt:
              type: string
              nullable: true
              format: date-time
            idempotencyExpiresAt:
              type: string
              nullable: true
              format: date-time
            request:
              $ref: '#/components/schemas/V2CreateLossReviewRequest'
            progress:
              type: object
              properties:
                total:
                  type: integer
                succeeded:
                  type: integer
                failed:
                  type: integer
                pending:
                  type: integer
              required:
                - total
                - succeeded
                - failed
                - pending
            formComparisonId:
              type: string
              nullable: true
            inputsUsed:
              type: object
              properties:
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      inputId:
                        type: string
                      role:
                        type: string
                        enum:
                          - target
                          - context
                          - knowledge
                          - review_material
                      variant:
                        type: string
                        nullable: true
                      fileId:
                        type: string
                      versionId:
                        anyOf:
                          - type: string
                            format: uuid
                          - type: string
                            maxLength: 8192
                            pattern: ^lv1\.[A-Za-z0-9_.-]+$
                      contentSha256:
                        type: string
                        nullable: true
                      name:
                        type: string
                      extractionMethod:
                        type: string
                        nullable: true
                    required:
                      - inputId
                      - role
                      - variant
                      - fileId
                      - versionId
                      - contentSha256
                      - name
                      - extractionMethod
                execution:
                  type: object
                  properties:
                    executor:
                      type: string
                    model:
                      type: string
                      nullable: true
                    codeVersion:
                      type: string
                      nullable: true
                  required:
                    - executor
                    - model
                    - codeVersion
              required:
                - items
                - execution
            report:
              type: string
              description: >-
                Markdown summary and source/version manifest; item reports are
                on listLossReviewItems.
            usage:
              type: object
              properties:
                credits:
                  type: number
              required:
                - credits
            status:
              type: string
              enum:
                - succeeded
            result:
              $ref: '#/components/schemas/V2LossReviewResult'
          required:
            - id
            - createdAt
            - startedAt
            - finishedAt
            - idempotencyExpiresAt
            - request
            - progress
            - formComparisonId
            - inputsUsed
            - report
            - usage
            - status
            - result
        - type: object
          properties:
            id:
              type: string
            createdAt:
              type: string
              format: date-time
            startedAt:
              type: string
              nullable: true
              format: date-time
            finishedAt:
              type: string
              nullable: true
              format: date-time
            idempotencyExpiresAt:
              type: string
              nullable: true
              format: date-time
            request:
              $ref: '#/components/schemas/V2CreateLossReviewRequest'
            progress:
              type: object
              properties:
                total:
                  type: integer
                succeeded:
                  type: integer
                failed:
                  type: integer
                pending:
                  type: integer
              required:
                - total
                - succeeded
                - failed
                - pending
            formComparisonId:
              type: string
              nullable: true
            inputsUsed:
              type: object
              properties:
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      inputId:
                        type: string
                      role:
                        type: string
                        enum:
                          - target
                          - context
                          - knowledge
                          - review_material
                      variant:
                        type: string
                        nullable: true
                      fileId:
                        type: string
                      versionId:
                        anyOf:
                          - type: string
                            format: uuid
                          - type: string
                            maxLength: 8192
                            pattern: ^lv1\.[A-Za-z0-9_.-]+$
                      contentSha256:
                        type: string
                        nullable: true
                      name:
                        type: string
                      extractionMethod:
                        type: string
                        nullable: true
                    required:
                      - inputId
                      - role
                      - variant
                      - fileId
                      - versionId
                      - contentSha256
                      - name
                      - extractionMethod
                execution:
                  type: object
                  properties:
                    executor:
                      type: string
                    model:
                      type: string
                      nullable: true
                    codeVersion:
                      type: string
                      nullable: true
                  required:
                    - executor
                    - model
                    - codeVersion
              required:
                - items
                - execution
            report:
              type: string
              description: >-
                Markdown summary and source/version manifest; item reports are
                on listLossReviewItems.
            usage:
              type: object
              properties:
                credits:
                  type: number
              required:
                - credits
            status:
              type: string
              enum:
                - failed
            failure:
              type: object
              properties:
                code:
                  type: string
                error:
                  type: string
                retryable:
                  type: boolean
              required:
                - code
                - error
                - retryable
          required:
            - id
            - createdAt
            - startedAt
            - finishedAt
            - idempotencyExpiresAt
            - request
            - progress
            - formComparisonId
            - inputsUsed
            - report
            - usage
            - status
            - failure
    V2CodedError:
      allOf:
        - $ref: '#/components/schemas/V2Error'
        - type: object
          properties:
            code:
              type: string
              minLength: 1
              description: Stable error code. Clients must tolerate unknown future codes.
            details:
              type: array
              items:
                type: object
                properties:
                  location:
                    type: string
                    enum:
                      - path
                      - query
                      - header
                      - body
                  path:
                    type: array
                    items:
                      type: string
                      maxLength: 64
                    maxItems: 12
                  code:
                    type: string
                    enum:
                      - required
                      - invalid_type
                      - invalid_value
                      - unknown_field
                  message:
                    type: string
                    minLength: 1
                    maxLength: 200
                required:
                  - location
                  - path
                  - code
                  - message
              minItems: 1
              maxItems: 20
              description: Bounded safe validation issues; may omit some invalid fields.
            requestId:
              type: string
              minLength: 1
              maxLength: 128
              description: >-
                Existing server correlation for this HTTP attempt, when
                available.
            dataset:
              type: string
              enum:
                - naic
                - osha
              description: Dataset needed for dataset_not_enabled.
            businessCode:
              type: string
              description: The rater’s own refusal code, for business_rejection.
            violations:
              type: array
              items:
                type: object
                properties:
                  code:
                    type: string
                    description: Authored or built-in constraint code
                  message:
                    type: string
                    description: Authored message for the failed constraint
                  path:
                    type: string
                    description: Input path of the offending value; empty for the request
                  value:
                    nullable: true
                    description: Offending input value, size-bounded by the runtime
                  constraint:
                    type: string
                    description: The constraint the value failed, as text
                  cite:
                    type: string
                    nullable: true
                    description: >-
                      Filing citation of the constraint, when the source cites
                      one
                required:
                  - code
                  - message
                  - path
                  - value
                  - constraint
                  - cite
                additionalProperties: false
              maxItems: 256
              description: >-
                Each input constraint the submission failed, for invalid_inputs
                and business_rejection.
            violationsTruncated:
              type: boolean
              description: >-
                True when the rater reported more violations than violations
                holds.
            accessUrl:
              type: string
              nullable: true
              format: uri
              description: >-
                Where to add the product to your account, for
                product_access_required.
          required:
            - code
    V2CreateLossReviewRequest:
      type: object
      properties:
        losses:
          type: array
          items:
            $ref: '#/components/schemas/V2FormComparisonInput'
          minItems: 1
          maxItems: 20
          description: Loss evidence. Bare file UUIDs receive loss-1, loss-2, etc. IDs.
        company:
          type: object
          properties:
            label:
              type: string
              minLength: 1
              maxLength: 200
            facts:
              type: string
              minLength: 1
              maxLength: 4000
              description: Caller assertions, not independently verified facts.
            documents:
              type: array
              items:
                $ref: '#/components/schemas/V2FormComparisonInput'
              maxItems: 10
          additionalProperties: false
        products:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
                pattern: ^[a-z][a-z0-9_-]{0,39}$
                description: >-
                  Unique variant key: lowercase letter, then up to 39 lowercase
                  letters, digits, - or _.
                example: verus
              label:
                type: string
                minLength: 1
                maxLength: 200
                description: Display label.
              documents:
                type: array
                items:
                  $ref: '#/components/schemas/V2FormComparisonInput'
                minItems: 1
                maxItems: 10
                description: Forms containing this version of the wording.
              context:
                $ref: '#/components/schemas/V2FormComparisonContext'
              basis:
                type: string
                enum:
                  - issued_policy
                  - product_configuration
            required:
              - key
              - documents
              - basis
            additionalProperties: false
          description: >-
            Optional two wording variants. Composes Forms Comparison; requires
            its entitlement.
        knowledge:
          type: array
          items:
            $ref: '#/components/schemas/V2FormComparisonInput'
          maxItems: 10
          description: Existing forms-knowledge/v1 files; validated together.
        reviewMaterial:
          type: array
          items:
            $ref: '#/components/schemas/V2FormComparisonInput'
          maxItems: 10
          description: Earlier reports and reviewer notes; not incident evidence.
        purpose:
          type: string
          minLength: 1
          maxLength: 4000
        focus:
          type: array
          items:
            type: string
            minLength: 1
            maxLength: 1000
          maxItems: 10
        matters:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                pattern: ^[a-z][a-z0-9_-]{0,63}$
              label:
                type: string
                minLength: 1
                maxLength: 200
              lossInputIds:
                type: array
                items:
                  type: string
                  pattern: ^[a-z][a-z0-9_-]{0,63}$
                minItems: 1
                maxItems: 20
                description: >-
                  Loss input IDs belonging to this matter; shared files may
                  appear in multiple matters.
            required:
              - id
              - lossInputIds
            additionalProperties: false
          minItems: 1
          maxItems: 50
          description: >-
            Explicit independent matters. Omit for one account containing all
            evidence, with distinct events and claims reconstructed inside it.
      required:
        - losses
      additionalProperties: false
    V2LossReviewResult:
      type: object
      properties:
        summary:
          type: string
        population:
          type: object
          properties:
            unit:
              type: string
              enum:
                - matter
            includedIds:
              type: array
              items:
                type: string
            failedIds:
              type: array
              items:
                type: string
            unresolvedIds:
              type: array
              items:
                type: string
          required:
            - unit
            - includedIds
            - failedIds
            - unresolvedIds
        formImpactMatrix:
          type: array
          items:
            type: object
            properties:
              proposition:
                type: string
              potentiallyRelevantIds:
                type: array
                items:
                  type: string
              establishedDistinctionIds:
                type: array
                items:
                  type: string
              unresolvedIds:
                type: array
                items:
                  type: string
              cases:
                type: array
                items:
                  type: object
                  properties:
                    matterId:
                      type: string
                    propositionId:
                      type: string
                    assessments:
                      type: array
                      items:
                        type: object
                        properties:
                          variant:
                            type: string
                          status:
                            type: string
                        required:
                          - variant
                          - status
                  required:
                    - matterId
                    - propositionId
                    - assessments
            required:
              - proposition
              - potentiallyRelevantIds
              - establishedDistinctionIds
              - unresolvedIds
              - cases
          description: >-
            Exact proposition text groups only. Potential relevance is separate
            from an established supported/not-supported distinction. Every cell
            resolves to immutable matter propositions.
        experienceMap:
          type: array
          items:
            type: object
            properties:
              dimension:
                type: string
              conceptId:
                type: string
              knowledgeInputId:
                type: string
              versionId:
                anyOf:
                  - type: string
                    format: uuid
                  - type: string
                    maxLength: 8192
                    pattern: ^lv1\.[A-Za-z0-9_.-]+$
              unit:
                type: string
                enum:
                  - event
                  - claim
              subjects:
                type: array
                items:
                  type: object
                  properties:
                    matterId:
                      type: string
                    subjectId:
                      type: string
                  required:
                    - matterId
                    - subjectId
            required:
              - dimension
              - conceptId
              - knowledgeInputId
              - versionId
              - unit
              - subjects
          description: >-
            Equivalent mappings only. Overlapping dimensions are not additive.
            No exposure frequency is inferred.
        financialSummaries:
          type: array
          items:
            type: object
            properties:
              measure:
                type: string
              currency:
                type: string
              valuationDate:
                type: string
                format: date
              grossNet:
                type: string
              expenseTreatment:
                type: string
              basis:
                type: string
                enum:
                  - latest_cumulative_per_claim
              amountMinor:
                type: string
              observations:
                type: array
                items:
                  type: object
                  properties:
                    matterId:
                      type: string
                    observationId:
                      type: string
                  required:
                    - matterId
                    - observationId
            required:
              - measure
              - currency
              - valuationDate
              - grossNet
              - expenseTreatment
              - basis
              - amountMinor
              - observations
          description: >-
            Separate measures, currencies, conventions and valuation dates. No
            incurred formula or counterfactual paid amount.
        excludedFinancialObservations:
          type: array
          items:
            type: object
            properties:
              matterId:
                type: string
              observationId:
                type: string
              reason:
                type: string
            required:
              - matterId
              - observationId
              - reason
      required:
        - summary
        - population
        - formImpactMatrix
        - experienceMap
        - financialSummaries
        - excludedFinancialObservations
    V2Error:
      type: object
      properties:
        error:
          type: string
          minLength: 1
          description: Human-readable explanation of the failure.
      required:
        - error
    V2FormComparisonInput:
      anyOf:
        - type: string
          format: uuid
          description: File UUID.
          example: 01a150b0-b6a4-774f-a0e0-ad385dbc5028
        - $ref: '#/components/schemas/V2FormComparisonInputObject'
      description: >-
        File UUID or an object with an ID and optional label/annotations. Bare
        UUIDs receive input-<n> IDs in request order.
    V2FormComparisonContext:
      type: object
      properties:
        product:
          anyOf:
            - $ref: '#/components/schemas/V2AnswerProductScope'
            - $ref: '#/components/schemas/V2FormComparisonInlineProduct'
          description: >-
            Directory product { id, state? } or inline description. Adds
            context, not forms or approval.
        documents:
          type: array
          items:
            $ref: '#/components/schemas/V2FormComparisonInput'
          maxItems: 10
          description: Supporting documents, such as a base policy or declarations.
        facts:
          type: string
          minLength: 1
          maxLength: 4000
          description: Relevant facts.
      additionalProperties: false
      description: Context for this variant only.
    V2FormComparisonInputObject:
      type: object
      properties:
        id:
          type: string
          pattern: ^[a-z][a-z0-9_-]{0,63}$
          description: >-
            Unique input ID: lowercase letter, then up to 63 lowercase letters,
            digits, - or _.
          example: verus-base
        fileId:
          type: string
          format: uuid
          description: File UUID.
          example: 01a150b0-b6a4-774f-a0e0-ad385dbc5028
        label:
          type: string
          minLength: 1
          maxLength: 200
          description: Display label.
        annotations:
          type: array
          items:
            $ref: '#/components/schemas/V2FormComparisonAnnotation'
          maxItems: 50
          description: Reviewer notes; sources stay unchanged.
      required:
        - id
        - fileId
      additionalProperties: false
    V2AnswerProductScope:
      type: object
      properties:
        id:
          type: string
          minLength: 1
          description: >-
            Catalog product ID, e.g. product_00001AB or bare code 00001AB.
            Aliases normalize to the full ID.
          example: product_00001AB
        state:
          type: string
          pattern: ^[A-Z]{2}$
          description: >-
            Two-letter uppercase state code, e.g. CA for California. Omit to
            include all states for this product.
          example: CA
      required:
        - id
      additionalProperties: false
    V2FormComparisonInlineProduct:
      type: object
      properties:
        label:
          type: string
          minLength: 1
          maxLength: 200
          description: Product name.
        description:
          type: string
          minLength: 1
          maxLength: 4000
          description: Product description.
        jurisdiction:
          type: string
          minLength: 1
          maxLength: 100
          description: Jurisdiction, e.g. TX.
        effectiveDate:
          type: string
          format: date
          description: ISO date, e.g. 2026-01-01.
      required:
        - label
      additionalProperties: false
      description: Inline product context.
    V2FormComparisonAnnotation:
      type: object
      properties:
        id:
          type: string
          pattern: ^[a-z][a-z0-9_-]{0,63}$
          description: >-
            Unique annotation ID: lowercase letter, then up to 63 lowercase
            letters, digits, - or _.
          example: note-1
        kind:
          type: string
          enum:
            - comment
            - question
            - correction
          default: comment
          description: Corrections are checked against sources.
        text:
          type: string
          minLength: 1
          maxLength: 2000
          description: Reviewer note.
        target:
          $ref: '#/components/schemas/V2FormComparisonAnnotationTarget'
      required:
        - id
        - text
      additionalProperties: false
    V2FormComparisonAnnotationTarget:
      anyOf:
        - type: object
          properties:
            page:
              type: integer
              minimum: 1
              description: One-based page of the document.
            quote:
              $ref: '#/components/schemas/V2FormComparisonQuoteSelector'
          additionalProperties: false
          description: A place in a document or review material, by page, quote or both.
          anyOf:
            - required:
                - page
            - required:
                - quote
        - type: object
          properties:
            entryId:
              type: string
              minLength: 1
              maxLength: 200
              description: Full knowledge entry ID, namespace:local-id.
          required:
            - entryId
          additionalProperties: false
          description: An entry of a knowledge file.
        - type: object
          properties:
            findingId:
              type: string
              minLength: 1
              maxLength: 64
              description: A finding ID in a saved earlier comparison.
          required:
            - findingId
          additionalProperties: false
          description: A finding of review material.
      description: Omit for the whole input. Unmatched targets return target_not_found.
    V2FormComparisonQuoteSelector:
      type: object
      properties:
        exact:
          type: string
          minLength: 1
          maxLength: 2000
          description: Exact passage to annotate.
        prefix:
          type: string
          minLength: 1
          maxLength: 200
          description: Text before the passage.
        suffix:
          type: string
          minLength: 1
          maxLength: 200
          description: Text after the passage.
      required:
        - exact
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Effective API key. Send Authorization: Bearer sk-eai-...'

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.