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

# List Match Reports

> Get the match reports for one schedule version, in the sequence of `stated_at`, from first to last.

A match report contains the information that the Scheduling Area Responsible gave about the version in one market message. The market message is an anomaly report, a confirmation report or an acknowledgement. A match report gives a verdict on each series in `verdicts`.

Some match reports give a verdict on series that are not in `verdicts`. Such a report is `complete`. Its `default_verdict` is the verdict on each series of the version that is not in `verdicts`. For example, a report can show only the series with a problem, and give `matched` to all other series.

A `complete` report also gives `default_verdict` to each series that a previous report on the version identified, for example a series that only the counterparty sent.

- **404** if no schedule version of your organization has this uid.

- **422** if the uid is not a UUID.



## OpenAPI

````yaml /openapi.json get /schedule-management/v1/schedule-versions/{version_uid}/reports
openapi: 3.1.0
info:
  title: Engrate API
  version: 1.0.0
servers:
  - url: https://api.engrate.io
security:
  - apiKeyAuth: []
paths:
  /schedule-management/v1/schedule-versions/{version_uid}/reports:
    get:
      tags:
        - schedules
      summary: List Match Reports
      description: >-
        Get the match reports for one schedule version, in the sequence of
        `stated_at`, from first to last.


        A match report contains the information that the Scheduling Area
        Responsible gave about the version in one market message. The market
        message is an anomaly report, a confirmation report or an
        acknowledgement. A match report gives a verdict on each series in
        `verdicts`.


        Some match reports give a verdict on series that are not in `verdicts`.
        Such a report is `complete`. Its `default_verdict` is the verdict on
        each series of the version that is not in `verdicts`. For example, a
        report can show only the series with a problem, and give `matched` to
        all other series.


        A `complete` report also gives `default_verdict` to each series that a
        previous report on the version identified, for example a series that
        only the counterparty sent.


        - **404** if no schedule version of your organization has this uid.


        - **422** if the uid is not a UUID.
      operationId: >-
        list_match_reports_schedule_management_v1_schedule_versions__version_uid__reports_get
      parameters:
        - description: The `uid` of the schedule version.
          in: path
          name: version_uid
          required: true
          schema:
            description: The `uid` of the schedule version.
            format: uuid
            title: Version Uid
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchReportsResponse'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
components:
  schemas:
    MatchReportsResponse:
      properties:
        items:
          items:
            $ref: '#/components/schemas/MatchReportResponse'
          title: Items
          type: array
      required:
        - items
      title: MatchReportsResponse
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    MatchReportResponse:
      properties:
        completeness:
          description: >-
            A `partial` report gives verdicts only on the series in `verdicts`.
            A `complete` report also gives `default_verdict` to the other series
            of the version, and to the series that previous reports on the
            version identified.
          enum:
            - partial
            - complete
          title: Completeness
          type: string
        default_verdict:
          anyOf:
            - $ref: '#/components/schemas/VerdictResponse'
            - type: 'null'
          description: >-
            For a `complete` report, this is the verdict on the series that the
            report is about but that are not in `verdicts`.
        incoming_message_id:
          description: >-
            The identification of the incoming message that contains the report.
            It is the `uid` of the message in List Incoming Messages.
          title: Incoming Message Id
          type: string
        kind:
          enum:
            - anomaly_report
            - confirmation_report
            - acknowledgement
          title: Kind
          type: string
        match_report_id:
          description: >-
            A series state and an audit log entry use this identification for
            the report.
          format: uuid
          title: Match Report Id
          type: string
        observed_at:
          description: This is the date and time when Engrate received the message.
          format: date-time
          title: Observed At
          type: string
        scheduling_area_responsible:
          description: >-
            This is the identification of the Scheduling Area Responsible that
            sent the report.
          title: Scheduling Area Responsible
          type: string
        stated_at:
          description: >-
            This is the date and time that the Scheduling Area Responsible wrote
            on the message. Engrate uses it to find the last verdict on a
            series.
          format: date-time
          title: Stated At
          type: string
        verdicts:
          items:
            $ref: '#/components/schemas/SeriesVerdictResponse'
          title: Verdicts
          type: array
        version:
          description: This is the schedule version that the report is about.
          title: Version
          type: integer
      required:
        - completeness
        - default_verdict
        - incoming_message_id
        - kind
        - match_report_id
        - observed_at
        - scheduling_area_responsible
        - stated_at
        - verdicts
        - version
      title: MatchReportResponse
      type: object
    ValidationError:
      properties:
        ctx:
          title: Context
          type: object
        input:
          title: Input
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object
    VerdictResponse:
      description: >-
        The information that one match report gives about a series. A field is
        `null` if the report does not give that information.
      properties:
        confirmation:
          anyOf:
            - discriminator:
                mapping:
                  rejected: '#/components/schemas/RejectedResponse'
                  values: '#/components/schemas/ValueConfirmationResponse'
                propertyName: kind
              oneOf:
                - $ref: '#/components/schemas/ValueConfirmationResponse'
                - $ref: '#/components/schemas/RejectedResponse'
            - type: 'null'
          title: Confirmation
        fault_tolerant_acceptance:
          anyOf:
            - $ref: '#/components/schemas/FaultTolerantAcceptanceResponse'
            - type: 'null'
        findings:
          anyOf:
            - $ref: '#/components/schemas/FindingsResponse'
            - type: 'null'
        match_status:
          anyOf:
            - enum:
                - matched
                - inconsistent
                - counterpart_missing
                - counterpart_only
              type: string
            - type: 'null'
          title: Match Status
        refusal:
          anyOf:
            - $ref: '#/components/schemas/RefusalResponse'
            - type: 'null'
      required:
        - confirmation
        - fault_tolerant_acceptance
        - findings
        - match_status
        - refusal
      title: VerdictResponse
      type: object
    SeriesVerdictResponse:
      properties:
        series:
          discriminator:
            mapping:
              external: '#/components/schemas/ExternalSeriesResponse'
              internal: '#/components/schemas/InternalSeriesResponse'
              production_consumption: '#/components/schemas/ProductionConsumptionSeriesResponse'
            propertyName: type
          oneOf:
            - $ref: '#/components/schemas/ProductionConsumptionSeriesResponse'
            - $ref: '#/components/schemas/InternalSeriesResponse'
            - $ref: '#/components/schemas/ExternalSeriesResponse'
          title: Series
        verdict:
          $ref: '#/components/schemas/VerdictResponse'
      required:
        - series
        - verdict
      title: SeriesVerdictResponse
      type: object
    RejectedResponse:
      properties:
        finality:
          enum:
            - intermediate
            - final
          title: Finality
          type: string
        kind:
          const: rejected
          default: rejected
          title: Kind
          type: string
        reasons:
          items:
            $ref: '#/components/schemas/ReasonResponse'
          title: Reasons
          type: array
      required:
        - finality
        - reasons
      title: RejectedResponse
      type: object
    ValueConfirmationResponse:
      properties:
        finality:
          enum:
            - intermediate
            - final
          title: Finality
          type: string
        kind:
          const: values
          default: values
          title: Kind
          type: string
        positions:
          items:
            $ref: '#/components/schemas/PositionConfirmationResponse'
          title: Positions
          type: array
      required:
        - finality
        - positions
      title: ValueConfirmationResponse
      type: object
    FaultTolerantAcceptanceResponse:
      description: >-
        The Scheduling Area Responsible accepted the series of this version only
        from the next gate closure. At the positions before it, it kept the
        previous values.
      properties:
        positions:
          description: >-
            The positions where the Scheduling Area Responsible kept the
            previous values.
          items:
            type: integer
          title: Positions
          type: array
      required:
        - positions
      title: FaultTolerantAcceptanceResponse
      type: object
    FindingsResponse:
      description: >-
        The causes that the Scheduling Area Responsible gives when the match
        status of a series is not `matched`. It also gives the positions that
        the Scheduling Area Responsible identifies.
      properties:
        positions:
          items:
            $ref: '#/components/schemas/FindingPositionResponse'
          title: Positions
          type: array
        reasons:
          items:
            $ref: '#/components/schemas/ReasonResponse'
          title: Reasons
          type: array
      required:
        - positions
        - reasons
      title: FindingsResponse
      type: object
    RefusalResponse:
      description: >-
        The Scheduling Area Responsible did not accept the series that this
        version sent. The values that the Scheduling Area Responsible uses do
        not change: they stay as the last confirmation gave them.
      properties:
        reasons:
          items:
            $ref: '#/components/schemas/ReasonResponse'
          title: Reasons
          type: array
      required:
        - reasons
      title: RefusalResponse
      type: object
    ExternalSeriesResponse:
      properties:
        in_area:
          title: In Area
          type: string
        in_party:
          title: In Party
          type: string
        market_agreement_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Market Agreement Id
        out_area:
          title: Out Area
          type: string
        out_party:
          title: Out Party
          type: string
        type:
          const: external
          default: external
          title: Type
          type: string
      required:
        - in_area
        - in_party
        - market_agreement_id
        - out_area
        - out_party
      title: ExternalSeriesResponse
      type: object
    InternalSeriesResponse:
      properties:
        in_party:
          title: In Party
          type: string
        out_party:
          title: Out Party
          type: string
        scheduling_area:
          title: Scheduling Area
          type: string
        type:
          const: internal
          default: internal
          title: Type
          type: string
      required:
        - in_party
        - out_party
        - scheduling_area
      title: InternalSeriesResponse
      type: object
    ProductionConsumptionSeriesResponse:
      properties:
        direction:
          enum:
            - production
            - consumption
          title: Direction
          type: string
        scheduling_area:
          title: Scheduling Area
          type: string
        type:
          const: production_consumption
          default: production_consumption
          title: Type
          type: string
      required:
        - direction
        - scheduling_area
      title: ProductionConsumptionSeriesResponse
      type: object
    ReasonResponse:
      properties:
        code:
          title: Code
          type: string
        text:
          anyOf:
            - type: string
            - type: 'null'
          title: Text
      required:
        - code
        - text
      title: ReasonResponse
      type: object
    PositionConfirmationResponse:
      properties:
        fault_tolerant_acceptance:
          description: >-
            This is `true` if the Scheduling Area Responsible kept a previous
            value at this position because of a fault-tolerant acceptance.
          title: Fault Tolerant Acceptance
          type: boolean
        kind:
          description: >-
            This is `confirmed` if the Scheduling Area Responsible uses your
            value. It is `modified` if the Scheduling Area Responsible uses a
            different value. It is `imposed` if the Scheduling Area Responsible
            sets a value for a position that you did not send.
          enum:
            - confirmed
            - modified
            - imposed
          title: Kind
          type: string
        matching_rule:
          anyOf:
            - enum:
                - lower_value
                - last_confirmed
                - zero
                - precedence_side
              type: string
            - type: 'null'
          description: >-
            This is the matching rule that the Scheduling Area Responsible used
            to set a `modified` or `imposed` value. It is `null` for a
            `confirmed` value. It is also `null` if the Scheduling Area
            Responsible did not use a matching rule, or does not tell which
            matching rule it used.
          title: Matching Rule
        position:
          description: >-
            The number of the interval in the series, in the resolution of the
            series. The first interval of the delivery day has the number 0.
          title: Position
          type: integer
        set_manually:
          description: >-
            This is `true` if the Scheduling Area Responsible set the value
            manually.
          title: Set Manually
          type: boolean
        value:
          description: >-
            This is the value in MW that the Scheduling Area Responsible will
            use.
          title: Value
          type: number
      required:
        - fault_tolerant_acceptance
        - kind
        - matching_rule
        - position
        - set_manually
        - value
      title: PositionConfirmationResponse
      type: object
    FindingPositionResponse:
      properties:
        counterparty:
          anyOf:
            - type: number
            - type: 'null'
          description: >-
            This is the value of the counterparty in MW. It is `null` if the
            Scheduling Area Responsible does not send it.
          title: Counterparty
        ours:
          anyOf:
            - type: number
            - type: 'null'
          description: >-
            This is your value in MW. It is `null` if the Scheduling Area
            Responsible does not send it.
          title: Ours
        position:
          description: >-
            The number of the interval in the series, in the resolution of the
            series. The first interval of the delivery day has the number 0.
          title: Position
          type: integer
      required:
        - counterparty
        - ours
        - position
      title: FindingPositionResponse
      type: object
  securitySchemes:
    apiKeyAuth:
      in: header
      name: Authorization
      type: apiKey

````

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