> ## 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.

# Get Series State

> Get the series state of each series in a schedule.

The series state gives the match status of the series. It also shows the values that the Scheduling Area Responsible will use.

`match_status` is `not_checked` until the Scheduling Area Responsible gives a match verdict on the series. If the match status is not `matched`, `findings` gives the causes from the Scheduling Area Responsible. For each position, `findings` also gives your value and the value of the counterparty, if the Scheduling Area Responsible sends these values.

For each position, `confirmation` gives the value that the Scheduling Area Responsible will use and the finality of that value. An `intermediate` value can change. Settlement uses the `final` value.

The response shows the series of the active schedule version first, in the sequence of that version. The active version is the last version that the Scheduling Area Responsible accepted. If no version is active, the response shows the series of the last version first. Then it shows the other series that have a match status or a confirmation from a match report. For example, it shows a series of a different version, or a series that only the counterparty sent (`counterpart_only`).

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

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



## OpenAPI

````yaml /openapi.json get /schedule-management/v1/schedules/{uid}/series-state
openapi: 3.1.0
info:
  title: Engrate API
  version: 1.0.0
servers:
  - url: https://api.engrate.io
security:
  - apiKeyAuth: []
paths:
  /schedule-management/v1/schedules/{uid}/series-state:
    get:
      tags:
        - schedules
      summary: Get Series State
      description: >-
        Get the series state of each series in a schedule.


        The series state gives the match status of the series. It also shows the
        values that the Scheduling Area Responsible will use.


        `match_status` is `not_checked` until the Scheduling Area Responsible
        gives a match verdict on the series. If the match status is not
        `matched`, `findings` gives the causes from the Scheduling Area
        Responsible. For each position, `findings` also gives your value and the
        value of the counterparty, if the Scheduling Area Responsible sends
        these values.


        For each position, `confirmation` gives the value that the Scheduling
        Area Responsible will use and the finality of that value. An
        `intermediate` value can change. Settlement uses the `final` value.


        The response shows the series of the active schedule version first, in
        the sequence of that version. The active version is the last version
        that the Scheduling Area Responsible accepted. If no version is active,
        the response shows the series of the last version first. Then it shows
        the other series that have a match status or a confirmation from a match
        report. For example, it shows a series of a different version, or a
        series that only the counterparty sent (`counterpart_only`).


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


        - **422** if the uid is not a UUID.
      operationId: get_series_state_schedule_management_v1_schedules__uid__series_state_get
      parameters:
        - description: The `uid` of the schedule.
          in: path
          name: uid
          required: true
          schema:
            description: The `uid` of the schedule.
            format: uuid
            title: Uid
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SeriesStatesResponse'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
components:
  schemas:
    SeriesStatesResponse:
      properties:
        schedule_uid:
          format: uuid
          title: Schedule Uid
          type: string
        series:
          items:
            $ref: '#/components/schemas/SeriesStateResponse'
          title: Series
          type: array
      required:
        - schedule_uid
        - series
      title: SeriesStatesResponse
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    SeriesStateResponse:
      description: >-
        The series state of one series, from the information that the Scheduling
        Area Responsible gave.
      properties:
        confirmation:
          $ref: '#/components/schemas/ConfirmationResponse'
        findings:
          anyOf:
            - $ref: '#/components/schemas/FindingsResponse'
            - type: 'null'
          description: This is `null` if the match status is `not_checked` or `matched`.
        match_report:
          anyOf:
            - $ref: '#/components/schemas/MatchReportRef'
            - type: 'null'
          description: >-
            This is the match report that set the match status. It is `null` if
            the match status is `not_checked`.
        match_status:
          anyOf:
            - const: not_checked
              type: string
            - enum:
                - matched
                - inconsistent
                - counterpart_missing
                - counterpart_only
              type: string
          description: >-
            The match status is `not_checked` until the Scheduling Area
            Responsible gives a match verdict on the series. Then it is one of
            these values:


            - `matched`: the Scheduling Area Responsible found no problem with
            the series.


            - `inconsistent`: the values of the two sides are different.


            - `counterpart_missing`: the counterparty did not send the related
            series.


            - `counterpart_only`: only the counterparty sent the series.
          title: Match Status
        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
      required:
        - confirmation
        - findings
        - match_report
        - match_status
        - series
      title: SeriesStateResponse
      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
    ConfirmationResponse:
      description: >-
        The values that the Scheduling Area Responsible will use for the
        positions of a series.
      properties:
        positions:
          description: >-
            The positions that have a value from the Scheduling Area
            Responsible. This list is empty until the Scheduling Area
            Responsible gives values for the series.
          items:
            $ref: '#/components/schemas/ConfirmedPositionResponse'
          title: Positions
          type: array
        rejection:
          anyOf:
            - $ref: '#/components/schemas/RejectionResponse'
            - type: 'null'
          description: >-
            This is the rejection of the series by the Scheduling Area
            Responsible. The rejection is for each position that is not in
            `positions`. It is `null` if the Scheduling Area Responsible did not
            reject the series.
      required:
        - positions
        - rejection
      title: ConfirmationResponse
      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
    MatchReportRef:
      properties:
        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
        match_report_id:
          format: uuid
          title: Match Report Id
          type: string
        stated_at:
          format: date-time
          title: Stated At
          type: string
      required:
        - incoming_message_id
        - match_report_id
        - stated_at
      title: MatchReportRef
      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
    ConfirmedPositionResponse:
      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
        finality:
          description: >-
            The finality is `intermediate` if the value can change. It is
            `final` if settlement uses the value.
          enum:
            - intermediate
            - final
          title: Finality
          type: string
        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
        match_report:
          $ref: '#/components/schemas/MatchReportRef'
          description: This is the match report that gave the value.
        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
        - finality
        - kind
        - match_report
        - matching_rule
        - position
        - set_manually
        - value
      title: ConfirmedPositionResponse
      type: object
    RejectionResponse:
      properties:
        finality:
          description: >-
            The finality is `intermediate` if the rejection can change. It is
            `final` if settlement uses it.
          enum:
            - intermediate
            - final
          title: Finality
          type: string
        match_report:
          $ref: '#/components/schemas/MatchReportRef'
          description: >-
            This is the match report in which the Scheduling Area Responsible
            rejected the series.
        reasons:
          description: >-
            The causes that the Scheduling Area Responsible gives for the
            rejection.
          items:
            $ref: '#/components/schemas/ReasonResponse'
          title: Reasons
          type: array
      required:
        - finality
        - match_report
        - reasons
      title: RejectionResponse
      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
    ReasonResponse:
      properties:
        code:
          title: Code
          type: string
        text:
          anyOf:
            - type: string
            - type: 'null'
          title: Text
      required:
        - code
        - text
      title: ReasonResponse
      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.