openapi: 3.0.3
info:
  contact:
    email: contact@dsb.gov.au
    name: Data Standards Body
    url: https://dsb.gov.au/
  description: Specifications for resource endpoints applicable to data holders in
    the Energy sector.
  title: CDR Energy API
  version: 1.34.1
servers:
- description: MTLS
  url: https://mtls.dh.example.com/cds-au/v1
tags:
- description: Energy Plan endpoints
  name: Energy Plans
  x-shortName: Plans
- description: Electricity Service Point endpoints
  name: Electricity Service Points
  x-shortName: Service Points
- description: Electricity Usage endpoints
  name: Electricity Usage
  x-shortName: Usage
- description: Distributed Energy Resource endpoints
  name: Distributed Energy Resources
  x-shortName: Distributed Energy Resources
- description: Energy Account endpoints
  name: Energy Accounts
  x-shortName: Accounts
- description: Energy Account Balance endpoints
  name: Energy Account Balances
  x-shortName: Account Balances
- description: Energy Account Billing endpoints
  name: Energy Account Billing
  x-shortName: Billing
paths:
  /energy/plans:
    get:
      description: |-
        Obtain a list of energy plans that are currently offered to the market.

        Note that the results returned by this endpoint are expected to be ordered in descending order according to _lastUpdated_.
      operationId: listEnergyPlans
      parameters:
      - description: Used to filter results on the _type_ field. Any one of the valid
          values for this field can be supplied plus `ALL`. If absent defaults to
          `ALL`.
        explode: true
        in: query
        name: type
        required: false
        schema:
          default: ALL
          enum:
          - STANDING
          - MARKET
          - REGULATED
          - ALL
          type: string
        style: form
      - description: Used to filter results on the _fuelType_ field. Any one of the
          valid values for this field can be supplied plus `ALL`. If absent defaults
          to `ALL`.
        explode: true
        in: query
        name: fuelType
        required: false
        schema:
          default: ALL
          enum:
          - ELECTRICITY
          - GAS
          - DUAL
          - ALL
          type: string
        style: form
      - description: Allows for the filtering of plans based on whether the current
          time is within the period of time defined as effective by the _effectiveFrom_
          and _effectiveTo_ fields. Valid values are `CURRENT`, `FUTURE` and `ALL`.
          If absent defaults to `CURRENT`.
        explode: true
        in: query
        name: effective
        required: false
        schema:
          default: CURRENT
          enum:
          - CURRENT
          - FUTURE
          - ALL
          type: string
        style: form
      - description: Only include plans that have been updated after the specified
          date and time. If absent defaults to include all plans.
        explode: true
        in: query
        name: updated-since
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateTimeString
      - description: Used to filter results on the _brand_ field. If absent defaults
          to include all plans.
        explode: true
        in: query
        name: brand
        required: false
        schema:
          type: string
        style: form
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyPlanListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
      servers:
      - description: TLS
        url: https://tls.dh.example.com/cds-au/v1
      summary: Get Generic Plans
      tags:
      - Energy Plans
      x-version: "1"
  /energy/plans/{planId}:
    get:
      description: |-
        Obtain detailed information on a single energy plan offered openly to the market.

        Other Versions: [v1](includes/obsolete/get-generic-plan-detail-v1.html), [v2](includes/obsolete/get-generic-plan-detail-v2.html).
      operationId: getEnergyPlanDetail
      parameters:
      - description: ID of the specific plan requested.
        explode: false
        in: path
        name: planId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyPlanId'
        style: simple
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyPlanResponseV3'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Invalid Resource](#error-404-resource-invalid)</li></ul>
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      servers:
      - description: TLS
        url: https://tls.dh.example.com/cds-au/v1
      summary: Get Generic Plan Detail
      tags:
      - Energy Plans
      x-version: "3"
      x-version-notes: The <i>dailySupplyChargeType</i> field was added in endpoint
        v3 as part of Standards v1.30.0. In Standards v1.32.0, the description of
        that field was changed to remove the default value, but it did not result
        in a new endpoint version. Refer to the [v1.32.0 release notes](includes/releasenotes/releasenotes.1.32.0.html)
        for more details.
  /energy/electricity/servicepoints:
    get:
      description: |-
        Obtain a list of service points owned by the customer that has authorised the current session.

        Other Versions: [v1](includes/obsolete/get-service-points-v1.html).
      operationId: listElectricityServicePoints
      parameters:
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyServicePointListResponseV2'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Service Points
      tags:
      - Electricity Service Points
      x-scopes:
      - energy:electricity.servicepoints.basic:read
      x-version: "2"
  /energy/electricity/servicepoints/{servicePointId}:
    get:
      description: |-
        Obtain detailed standing information for a specific service point that is owned by the customer that has authorised the current session.

        Other Versions: [v1](includes/obsolete/get-service-point-detail-v1.html).
      operationId: getElectricityServicePointDetail
      parameters:
      - description: The _servicePointId_ to obtain data for. _servicePointId_ values
          are returned by service point list endpoints. Note that it is not a _nationalMeteringId_.
        explode: false
        in: path
        name: servicePointId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyServicePointId'
        style: simple
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyServicePointDetailResponseV2'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Service Point](#error-404-unavailable-service-point)</li><li>[404
            - Invalid Service Point](#error-404-invalid-service-point)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Service Point Detail
      tags:
      - Electricity Service Points
      x-scopes:
      - energy:electricity.servicepoints.detail:read
      x-version: "2"
  /energy/electricity/servicepoints/{servicePointId}/usage:
    get:
      description: Obtain a list of electricity usage data from a particular service
        point.
      operationId: getElectricityServicePointUsage
      parameters:
      - description: The _servicePointId_ to obtain data for. _servicePointId_ values
          are returned by service point list endpoints. Note that it is not a _nationalMeteringId_.
        explode: false
        in: path
        name: servicePointId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyServicePointId'
        style: simple
      - description: Constrain the request to records with effective date at or after
          this date. If absent defaults to _newest-date_ minus 24 months. Format is
          aligned to DateString common type.
        explode: true
        in: query
        name: oldest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Constrain the request to records with effective date at or before
          this date. If absent defaults to current date. Format is aligned to DateString
          common type.
        explode: true
        in: query
        name: newest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Type of interval reads. Any one of the valid values for this
          field can be supplied. If absent defaults to `NONE`.
        explode: true
        in: query
        name: interval-reads
        required: false
        schema:
          default: NONE
          enum:
          - NONE
          - MIN_30
          - FULL
          type: string
        style: form
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyUsageListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Service Point](#error-404-unavailable-service-point)</li><li>[404
            - Invalid Service Point](#error-404-invalid-service-point)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Usage For Service Point
      tags:
      - Electricity Usage
      x-scopes:
      - energy:electricity.usage:read
      x-version: "1"
  /energy/electricity/servicepoints/usage:
    get:
      description: Obtain usage data for all service points associated with the customer.
      operationId: listElectricityUsageBulk
      parameters:
      - description: Type of interval reads. Any one of the valid values for this
          field can be supplied. If absent defaults to `NONE`.
        explode: true
        in: query
        name: interval-reads
        required: false
        schema:
          default: NONE
          enum:
          - NONE
          - MIN_30
          - FULL
          type: string
        style: form
      - description: Constrain the request to records with effective date at or after
          this date. If absent defaults to _newest-date_ minus 24 months. Format is
          aligned to DateString common type.
        explode: true
        in: query
        name: oldest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Constrain the request to records with effective date at or before
          this date. If absent defaults to current date. Format is aligned to DateString
          common type.
        explode: true
        in: query
        name: newest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyUsageListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Bulk Usage
      tags:
      - Electricity Usage
      x-scopes:
      - energy:electricity.usage:read
      x-version: "1"
    post:
      description: Obtain the electricity usage data for a specific set of service
        points.
      operationId: listElectricityUsageForServicePoints
      parameters:
      - description: Constrain the request to records with effective date at or after
          this date. If absent defaults to _newest-date_ minus 24 months. Format is
          aligned to DateString common type.
        explode: true
        in: query
        name: oldest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Constrain the request to records with effective date at or before
          this date. If absent defaults to current date. Format is aligned to DateString
          common type.
        explode: true
        in: query
        name: newest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Type of interval reads. Any one of the valid values for this
          field can be supplied. If absent defaults to `NONE`.
        explode: true
        in: query
        name: interval-reads
        required: false
        schema:
          default: NONE
          enum:
          - NONE
          - MIN_30
          - FULL
          type: string
        style: form
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      requestBody:
        $ref: '#/components/requestBodies/RequestServicePointIds'
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyUsageListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
            Service Point](#error-422-unavailable-service-point)</li><li>[422 - Invalid
            Service Point](#error-422-invalid-service-point)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Usage For Specific Service Points
      tags:
      - Electricity Usage
      x-scopes:
      - energy:electricity.usage:read
      x-version: "1"
  /energy/electricity/servicepoints/{servicePointId}/der:
    get:
      description: Obtain a list of DER data from a particular service point.
      operationId: getElectricityDERForServicePoint
      parameters:
      - description: The _servicePointId_ to obtain data for. _servicePointId_ values
          are returned by service point list endpoints. Note that it is not a _nationalMeteringId_.
        explode: false
        in: path
        name: servicePointId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyServicePointId'
        style: simple
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyDerDetailResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Service Point](#error-404-unavailable-service-point)</li><li>[404
            - Invalid Service Point](#error-404-invalid-service-point)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get DER For Service Point
      tags:
      - Distributed Energy Resources
      x-scopes:
      - energy:electricity.der:read
      x-version: "1"
  /energy/electricity/servicepoints/der:
    get:
      description: Obtain DER data for all service points associated with the customer.
      operationId: listElectricityDERBulk
      parameters:
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyDerListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Bulk DER
      tags:
      - Distributed Energy Resources
      x-scopes:
      - energy:electricity.der:read
      x-version: "1"
    post:
      description: Obtain DER data for a specific set of service points.
      operationId: listElectricityDERForSpecificServicePoints
      parameters:
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      requestBody:
        $ref: '#/components/requestBodies/RequestServicePointIds'
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyDerListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
            Service Point](#error-422-unavailable-service-point)</li><li>[422 - Invalid
            Service Point](#error-422-invalid-service-point)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get DER For Specific Service Points
      tags:
      - Distributed Energy Resources
      x-scopes:
      - energy:electricity.der:read
      x-version: "1"
  /energy/accounts:
    get:
      description: |-
        Obtain the list of energy accounts available under the authorised consent.

        Other Versions: [v1](includes/obsolete/get-energy-accounts-v1.html).
      operationId: listEnergyAccounts
      parameters:
      - description: Used to filter results according to open/closed status. Values
          can be `OPEN`, `CLOSED` or `ALL`. If absent then `ALL` is assumed.
        explode: true
        in: query
        name: open-status
        required: false
        schema:
          default: ALL
          enum:
          - ALL
          - CLOSED
          - OPEN
          type: string
        style: form
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyAccountListResponseV2'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Energy Accounts
      tags:
      - Energy Accounts
      x-scopes:
      - energy:accounts.basic:read
      x-version: "2"
  /energy/accounts/{accountId}:
    get:
      description: |-
        Obtain detailed information for a specific energy account.

        Other Versions: [v1](includes/obsolete/get-energy-account-detail-v1.html), [v2](includes/obsolete/get-energy-account-detail-v2.html), [v3](includes/obsolete/get-energy-account-detail-v3.html).
      operationId: getEnergyAccountDetail
      parameters:
      - description: The _accountId_ to obtain data for. _accountId_ values are returned
          by account list endpoints.
        explode: false
        in: path
        name: accountId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyAccountId'
        style: simple
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyAccountDetailResponseV4'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
            - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Energy Account Detail
      tags:
      - Energy Accounts
      x-scopes:
      - energy:accounts.detail:read
      x-version: "4"
      x-version-notes: The <i>dailySupplyChargeType</i> field was added in endpoint
        v3 as part of Standards v1.30.0. In Standards v1.32.0, the description of
        that field was changed to remove the default value, but it did not result
        in a new endpoint version. Refer to the [v1.32.0 release notes](includes/releasenotes/releasenotes.1.32.0.html)
        for more details.
  /energy/accounts/{accountId}/payment-schedule:
    get:
      description: |-
        Obtain the agreed payment schedule and details, if any, for a specific energy account.

        Some general notes about this endpoint:

         <ul><li>This API describes how the consumer has elected to pay for their account</li><li>Payments initiated by the consumer are classified as manual payments. The billing frequency is captured for manual payments. The consumer may choose to pay on a different schedule/frequency. The payment method and frequency is not captured for manual payments</li><li>Payments that can be initiated by the retailer, based on a consumer's preferences and permission, include payments based on a direct debit, card debit or digital wallet setup. Each of these requires a payment frequency to be provided along with other relevant fields</li><li>Information about payment plans related to debt repayments or arrangements due to hardship is not captured within this API.</li></ul>
      operationId: getEnergyAccountPaymentSchedule
      parameters:
      - description: The _accountId_ to obtain data for. _accountId_ values are returned
          by account list endpoints.
        explode: false
        in: path
        name: accountId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyAccountId'
        style: simple
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyPaymentScheduleResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
            - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Agreed Payment Schedule
      tags:
      - Energy Accounts
      x-scopes:
      - energy:accounts.paymentschedule:read
      x-version: "1"
  /energy/accounts/{accountId}/concessions:
    get:
      description: Obtain the details of any concessions or arrangements applied to
        a specific energy account.
      operationId: getEnergyAccountConcessions
      parameters:
      - description: The _accountId_ to obtain data for. _accountId_ values are returned
          by account list endpoints.
        explode: false
        in: path
        name: accountId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyAccountId'
        style: simple
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyConcessionsResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
            - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Concessions
      tags:
      - Energy Accounts
      x-scopes:
      - energy:accounts.concessions:read
      x-version: "1"
  /energy/accounts/{accountId}/balance:
    get:
      description: Obtain the current balance for a specific account.
      operationId: getEnergyAccountBalance
      parameters:
      - description: The _accountId_ to obtain data for. _accountId_ values are returned
          by account list endpoints.
        explode: false
        in: path
        name: accountId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyAccountId'
        style: simple
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyBalanceResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
            - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Balance For Energy Account
      tags:
      - Energy Account Balances
      x-scopes:
      - energy:billing:read
      x-version: "1"
  /energy/accounts/balances:
    get:
      description: Obtain the current balance for all accounts.
      operationId: listEnergyAccountBalancesBulk
      parameters:
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyBalanceListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Bulk Balances for Energy
      tags:
      - Energy Account Balances
      x-scopes:
      - energy:billing:read
      x-version: "1"
    post:
      description: Obtain the current balance for a specified set of accounts.
      operationId: listEnergyAccountBalancesSpecificAccounts
      parameters:
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      requestBody:
        $ref: '#/components/requestBodies/RequestAccountIds'
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyBalanceListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
            Energy Account](#error-422-unavailable-energy-account)</li><li>[422 -
            Invalid Energy Account](#error-422-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Balances For Specific Energy Accounts
      tags:
      - Energy Account Balances
      x-scopes:
      - energy:billing:read
      x-version: "1"
  /energy/accounts/{accountId}/invoices:
    get:
      description: Obtain the invoices for a specific account.
      operationId: getEnergyAccountInvoices
      parameters:
      - description: The _accountId_ to obtain data for. _accountId_ values are returned
          by account list endpoints.
        explode: false
        in: path
        name: accountId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyAccountId'
        style: simple
      - description: Constrain the request to records with issue date at or before
          this date. If absent defaults to current date. Format is aligned to DateString
          common type.
        explode: true
        in: query
        name: newest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Constrain the request to records with issue date at or after
          this date. If absent defaults to _newest-date_ minus 24 months. Format is
          aligned to DateString common type.
        explode: true
        in: query
        name: oldest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyInvoiceListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
            - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Invoices For Account
      tags:
      - Energy Account Billing
      x-scopes:
      - energy:billing:read
      x-version: "1"
  /energy/accounts/invoices:
    get:
      description: Obtain the invoices for all accounts.
      operationId: listEnergyAccountInvoicesBulk
      parameters:
      - description: Constrain the request to records with issue date at or before
          this date. If absent defaults to current date. Format is aligned to DateString
          common type.
        explode: true
        in: query
        name: newest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Constrain the request to records with issue date at or after
          this date. If absent defaults to _newest-date_ minus 24 months. Format is
          aligned to DateString common type.
        explode: true
        in: query
        name: oldest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyInvoiceListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Bulk Invoices
      tags:
      - Energy Account Billing
      x-scopes:
      - energy:billing:read
      x-version: "1"
    post:
      description: Obtain invoices for a specified set of accounts.
      operationId: listEnergyInvoicesForSpecificAccounts
      parameters:
      - description: Constrain the request to records with issue date at or before
          this date. If absent defaults to current date. Format is aligned to DateString
          common type.
        explode: true
        in: query
        name: newest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Constrain the request to records with issue date at or after
          this date. If absent defaults to _newest-date_ minus 24 months. Format is
          aligned to DateString common type.
        explode: true
        in: query
        name: oldest-date
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateString
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      requestBody:
        $ref: '#/components/requestBodies/RequestAccountIds'
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyInvoiceListResponse'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
            Energy Account](#error-422-unavailable-energy-account)</li><li>[422 -
            Invalid Energy Account](#error-422-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Invoices For Specific Accounts
      tags:
      - Energy Account Billing
      x-scopes:
      - energy:billing:read
      x-version: "1"
  /energy/accounts/{accountId}/billing:
    get:
      description: "Obtain the billing transactions for a specific account.\n\nDeprecated\
        \ Versions: \n\n- [v1](includes/obsolete/get-billing-for-account-v1.html)\
        \ - This version is to be ceased to be called by data recipients by September\
        \ 9th 2024 and **MAY** be decommissioned by data holders as of that date \n\
        - [v2](includes/obsolete/get-billing-for-account-v2.html) - This version **MAY**\
        \ be retired by September 9th 2024 if v3 is implemented."
      operationId: getBillingForEnergyAccount
      parameters:
      - description: The _accountId_ to obtain data for. _accountId_ values are returned
          by account list endpoints.
        explode: false
        in: path
        name: accountId
        required: true
        schema:
          $ref: '#/components/schemas/EnergyAccountId'
        style: simple
      - description: Constrain the request to records with effective time at or before
          this date/time. If absent defaults to current date/time. Format is aligned
          to DateTimeString common type.
        explode: true
        in: query
        name: newest-time
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateTimeString
      - description: Constrain the request to records with effective time at or after
          this date/time. If absent defaults to _newest-time_ minus 12 months. Format
          is aligned to DateTimeString common type.
        explode: true
        in: query
        name: oldest-time
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateTimeString
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyBillingListResponseV3'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "404":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
            - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
            - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Billing For Account
      tags:
      - Energy Account Billing
      x-scopes:
      - energy:billing:read
      x-version: "3"
  /energy/accounts/billing:
    get:
      description: "Obtain billing transactions for all accounts.\n\nDeprecated Versions:\
        \ \n\n- [v1](includes/obsolete/get-bulk-billing-v1.html) - This version is\
        \ to be ceased to be called by data recipients by September 9th 2024 and **MAY**\
        \ be decommissioned by data holders as of that date \n- [v2](includes/obsolete/get-bulk-billing-v2.html)\
        \ - This version **MAY** be retired by September 9th 2024 if v3 is implemented."
      operationId: listEnergyAccountBillingBulk
      parameters:
      - description: Constrain the request to records with effective time at or before
          this date/time. If absent defaults to current date/time. Format is aligned
          to DateTimeString common type.
        explode: true
        in: query
        name: newest-time
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateTimeString
      - description: Constrain the request to records with effective time at or after
          this date/time. If absent defaults to _newest-time_ minus 12 months. Format
          is aligned to DateTimeString common type.
        explode: true
        in: query
        name: oldest-time
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateTimeString
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyBillingListResponseV3'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Bulk Billing
      tags:
      - Energy Account Billing
      x-scopes:
      - energy:billing:read
      x-version: "3"
    post:
      description: "Obtain billing for a specified set of accounts.\n\nDeprecated\
        \ Versions: \n\n- [v1](includes/obsolete/get-billing-for-specific-accounts-v1.html)\
        \ - This version is to be ceased to be called by data recipients by September\
        \ 9th 2024 and **MAY** be decommissioned by data holders as of that date \n\
        - [v2](includes/obsolete/get-billing-for-specific-accounts-v2.html) - This\
        \ version **MAY** be retired by September 9th 2024 if v3 is implemented."
      operationId: listEnergyAccountBillingForSpecificAccounts
      parameters:
      - description: Constrain the request to records with effective time at or before
          this date/time. If absent defaults to current date/time. Format is aligned
          to DateTimeString common type.
        explode: true
        in: query
        name: newest-time
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateTimeString
      - description: Constrain the request to records with effective time at or after
          this date/time. If absent defaults to _newest-time_ minus 12 months. Format
          is aligned to DateTimeString common type.
        explode: true
        in: query
        name: oldest-time
        required: false
        schema:
          type: string
        style: form
        x-cds-type: DateTimeString
      - description: Page of results to request (standard pagination).
        explode: true
        in: query
        name: page
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Page size to request. Default is 25 (standard pagination).
        explode: true
        in: query
        name: page-size
        required: false
        schema:
          type: integer
        style: form
        x-cds-type: PositiveInteger
      - description: Version of the API endpoint requested by the client. Must be
          set to a positive integer. The endpoint should respond with the highest
          supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
          If the value of [_x-min-v_](#request-headers) is equal to or higher than
          the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
          header should be treated as absent. If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
          Headers](#request-headers).
        explode: false
        in: header
        name: x-v
        required: true
        schema:
          type: string
        style: simple
      - description: Minimum version of the API endpoint requested by the client.
          Must be set to a positive integer if provided. The endpoint should respond
          with the highest supported version between [_x-min-v_](#request-headers)
          and [_x-v_](#request-headers). If all versions requested are not supported
          then the endpoint **MUST** respond with a `406 Not Acceptable`.
        explode: false
        in: header
        name: x-min-v
        required: false
        schema:
          type: string
        style: simple
      - description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation
          id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
          response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
          is required to be provided in the response header to track the interaction.
        explode: false
        in: header
        name: x-fapi-interaction-id
        required: false
        schema:
          type: string
        style: simple
      - description: The time when the customer last logged in to the Data Recipient
          Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
          Required for all resource calls (customer present and unattended). Not required
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-auth-date
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
      - description: The customer's original IP address if the customer is currently
          logged in to the data recipient. The presence of this header indicates that
          the API is being called in a customer present context. Not to be included
          for unauthenticated calls.
        explode: false
        in: header
        name: x-fapi-customer-ip-address
        required: false
        schema:
          type: string
        style: simple
      - description: The customer's original standard http headers [Base64](#common-field-types)
          encoded, including the original User-Agent header, if the customer is currently
          logged in to the data recipient. Mandatory for customer present calls. Not
          required for unattended or unauthenticated calls.
        explode: false
        in: header
        name: x-cds-client-headers
        required: false
        schema:
          type: string
        style: simple
        x-conditional: true
        x-cds-type: Base64
      requestBody:
        $ref: '#/components/requestBodies/RequestAccountIds'
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnergyBillingListResponseV3'
          description: Successful response
          headers:
            x-v:
              $ref: '#/components/headers/XV'
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "400":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
            - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
            Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
            - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
            - Invalid Version](#error-400-header-invalid-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "406":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
            - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
        "422":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseErrorListV2'
          description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
            - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
            Energy Account](#error-422-unavailable-energy-account)</li><li>[422 -
            Invalid Energy Account](#error-422-invalid-energy-account)</li></ul>
          headers:
            x-fapi-interaction-id:
              $ref: '#/components/headers/XFAPIInteractionId'
      summary: Get Billing For Specific Accounts
      tags:
      - Energy Account Billing
      x-scopes:
      - energy:billing:read
      x-version: "3"
components:
  headers:
    XV:
      description: The [payload version](#response-headers) that the endpoint has
        responded with.
      explode: false
      required: true
      schema:
        type: string
      style: simple
    XFAPIInteractionId:
      description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id.
        If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
        response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
        is required to be provided in the response header to track the interaction.
      explode: false
      required: true
      schema:
        type: string
      style: simple
  parameters:
    PathServicePointId:
      description: The _servicePointId_ to obtain data for. _servicePointId_ values
        are returned by service point list endpoints. Note that it is not a _nationalMeteringId_.
      explode: false
      in: path
      name: servicePointId
      required: true
      schema:
        $ref: '#/components/schemas/EnergyServicePointId'
      style: simple
    PathAccountId:
      description: The _accountId_ to obtain data for. _accountId_ values are returned
        by account list endpoints.
      explode: false
      in: path
      name: accountId
      required: true
      schema:
        $ref: '#/components/schemas/EnergyAccountId'
      style: simple
    QueryEnergyAccountOpenStatus:
      description: Used to filter results according to open/closed status. Values
        can be `OPEN`, `CLOSED` or `ALL`. If absent then `ALL` is assumed.
      explode: true
      in: query
      name: open-status
      required: false
      schema:
        default: ALL
        enum:
        - ALL
        - CLOSED
        - OPEN
        type: string
      style: form
    QueryEnergyIntervalReads:
      description: Type of interval reads. Any one of the valid values for this field
        can be supplied. If absent defaults to `NONE`.
      explode: true
      in: query
      name: interval-reads
      required: false
      schema:
        default: NONE
        enum:
        - NONE
        - MIN_30
        - FULL
        type: string
      style: form
    QueryNewestTime:
      description: Constrain the request to records with effective time at or before
        this date/time. If absent defaults to current date/time. Format is aligned
        to DateTimeString common type.
      explode: true
      in: query
      name: newest-time
      required: false
      schema:
        type: string
      style: form
      x-cds-type: DateTimeString
    QueryOldestTime:
      description: Constrain the request to records with effective time at or after
        this date/time. If absent defaults to _newest-time_ minus 12 months. Format
        is aligned to DateTimeString common type.
      explode: true
      in: query
      name: oldest-time
      required: false
      schema:
        type: string
      style: form
      x-cds-type: DateTimeString
    QueryNewestDate:
      description: Constrain the request to records with effective date at or before
        this date. If absent defaults to current date. Format is aligned to DateString
        common type.
      explode: true
      in: query
      name: newest-date
      required: false
      schema:
        type: string
      style: form
      x-cds-type: DateString
    QueryOldestDate:
      description: Constrain the request to records with effective date at or after
        this date. If absent defaults to _newest-date_ minus 24 months. Format is
        aligned to DateString common type.
      explode: true
      in: query
      name: oldest-date
      required: false
      schema:
        type: string
      style: form
      x-cds-type: DateString
    QueryNewestDateInvoices:
      description: Constrain the request to records with issue date at or before this
        date. If absent defaults to current date. Format is aligned to DateString
        common type.
      explode: true
      in: query
      name: newest-date
      required: false
      schema:
        type: string
      style: form
      x-cds-type: DateString
    QueryOldestDateInvoices:
      description: Constrain the request to records with issue date at or after this
        date. If absent defaults to _newest-date_ minus 24 months. Format is aligned
        to DateString common type.
      explode: true
      in: query
      name: oldest-date
      required: false
      schema:
        type: string
      style: form
      x-cds-type: DateString
    QueryPage:
      description: Page of results to request (standard pagination).
      explode: true
      in: query
      name: page
      required: false
      schema:
        type: integer
      style: form
      x-cds-type: PositiveInteger
    QueryPageSize:
      description: Page size to request. Default is 25 (standard pagination).
      explode: true
      in: query
      name: page-size
      required: false
      schema:
        type: integer
      style: form
      x-cds-type: PositiveInteger
    HeaderXV:
      description: Version of the API endpoint requested by the client. Must be set
        to a positive integer. The endpoint should respond with the highest supported
        version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
        If the value of [_x-min-v_](#request-headers) is equal to or higher than the
        value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers)
        header should be treated as absent. If all versions requested are not supported
        then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP
        Headers](#request-headers).
      explode: false
      in: header
      name: x-v
      required: true
      schema:
        type: string
      style: simple
    HeaderXMinV:
      description: Minimum version of the API endpoint requested by the client. Must
        be set to a positive integer if provided. The endpoint should respond with
        the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers).
        If all versions requested are not supported then the endpoint **MUST** respond
        with a `406 Not Acceptable`.
      explode: false
      in: header
      name: x-min-v
      required: false
      schema:
        type: string
      style: simple
    HeaderXFAPIInteractionId:
      description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id.
        If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_
        response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value
        is required to be provided in the response header to track the interaction.
      explode: false
      in: header
      name: x-fapi-interaction-id
      required: false
      schema:
        type: string
      style: simple
    HeaderXFAPIAuthDate:
      description: The time when the customer last logged in to the Data Recipient
        Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**.
        Required for all resource calls (customer present and unattended). Not required
        for unauthenticated calls.
      explode: false
      in: header
      name: x-fapi-auth-date
      required: false
      schema:
        type: string
      style: simple
      x-conditional: true
    HeaderXFAPICustomerIPAddress:
      description: The customer's original IP address if the customer is currently
        logged in to the data recipient. The presence of this header indicates that
        the API is being called in a customer present context. Not to be included
        for unauthenticated calls.
      explode: false
      in: header
      name: x-fapi-customer-ip-address
      required: false
      schema:
        type: string
      style: simple
    HeaderXCDSClientHeaders:
      description: The customer's original standard http headers [Base64](#common-field-types)
        encoded, including the original User-Agent header, if the customer is currently
        logged in to the data recipient. Mandatory for customer present calls. Not
        required for unattended or unauthenticated calls.
      explode: false
      in: header
      name: x-cds-client-headers
      required: false
      schema:
        type: string
      style: simple
      x-conditional: true
      x-cds-type: Base64
  requestBodies:
    RequestServicePointIds:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RequestServicePointIdListV1'
      description: Request payload containing a list of _servicePointId_ values to
        obtain data for.
      required: true
    RequestAccountIds:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RequestAccountIdListV1'
      description: Request payload containing a list of _accountId_ values to obtain
        data for.
      required: true
  responses:
    ListEnergyPlans200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyPlanListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
    ListEnergyPlans400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
    ListEnergyPlans406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
    ListEnergyPlans422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
    GetEnergyPlanDetail200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyPlanResponseV3'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
    GetEnergyPlanDetail400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
    GetEnergyPlanDetail404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Invalid Resource](#error-404-resource-invalid)</li></ul>
    GetEnergyPlanDetail406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
    ListElectricityServicePoints200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyServicePointListResponseV2'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityServicePoints400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
        - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityServicePoints406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityServicePoints422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointDetail200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyServicePointDetailResponseV2'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointDetail400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointDetail404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Service Point](#error-404-unavailable-service-point)</li><li>[404
        - Invalid Service Point](#error-404-invalid-service-point)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointDetail406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointUsage200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyUsageListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointUsage400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointUsage404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Service Point](#error-404-unavailable-service-point)</li><li>[404
        - Invalid Service Point](#error-404-invalid-service-point)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointUsage406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityServicePointUsage422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityUsageBulk200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyUsageListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityUsageBulk400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityUsageBulk406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityUsageBulk422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityUsageForServicePoints200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyUsageListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityUsageForServicePoints400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityUsageForServicePoints406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityUsageForServicePoints422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
        Service Point](#error-422-unavailable-service-point)</li><li>[422 - Invalid
        Service Point](#error-422-invalid-service-point)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityDERForServicePoint200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyDerDetailResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityDERForServicePoint400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityDERForServicePoint404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Service Point](#error-404-unavailable-service-point)</li><li>[404
        - Invalid Service Point](#error-404-invalid-service-point)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetElectricityDERForServicePoint406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityDERBulk200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyDerListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityDERBulk400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
        - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityDERBulk406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityDERBulk422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityDERForSpecificServicePoints200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyDerListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityDERForSpecificServicePoints400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
        - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityDERForSpecificServicePoints406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListElectricityDERForSpecificServicePoints422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
        Service Point](#error-422-unavailable-service-point)</li><li>[422 - Invalid
        Service Point](#error-422-invalid-service-point)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccounts200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyAccountListResponseV2'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccounts400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
        - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccounts406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccounts422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountDetail200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyAccountDetailResponseV4'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountDetail400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountDetail404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
        - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountDetail406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountPaymentSchedule200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyPaymentScheduleResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountPaymentSchedule400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountPaymentSchedule404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
        - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountPaymentSchedule406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountConcessions200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyConcessionsResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountConcessions400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountConcessions404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
        - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountConcessions406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountBalance200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyBalanceResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountBalance400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountBalance404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
        - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountBalance406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBalancesBulk200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyBalanceListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBalancesBulk400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
        - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBalancesBulk406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBalancesBulk422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBalancesSpecificAccounts200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyBalanceListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBalancesSpecificAccounts400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400
        - Invalid Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBalancesSpecificAccounts406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBalancesSpecificAccounts422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
        Energy Account](#error-422-unavailable-energy-account)</li><li>[422 - Invalid
        Energy Account](#error-422-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountInvoices200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyInvoiceListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountInvoices400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountInvoices404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
        - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountInvoices406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetEnergyAccountInvoices422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountInvoicesBulk200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyInvoiceListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountInvoicesBulk400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountInvoicesBulk406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountInvoicesBulk422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyInvoicesForSpecificAccounts200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyInvoiceListResponse'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyInvoicesForSpecificAccounts400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyInvoicesForSpecificAccounts406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyInvoicesForSpecificAccounts422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
        Energy Account](#error-422-unavailable-energy-account)</li><li>[422 - Invalid
        Energy Account](#error-422-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetBillingForEnergyAccount200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyBillingListResponseV3'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetBillingForEnergyAccount400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetBillingForEnergyAccount404:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[404
        - Unavailable Energy Account](#error-404-unavailable-energy-account)</li><li>[404
        - Invalid Energy Account](#error-404-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetBillingForEnergyAccount406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    GetBillingForEnergyAccount422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBillingBulk200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyBillingListResponseV3'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBillingBulk400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBillingBulk406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBillingBulk422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBillingForSpecificAccounts200:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnergyBillingListResponseV3'
      description: Successful response
      headers:
        x-v:
          $ref: '#/components/headers/XV'
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBillingForSpecificAccounts400:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[400
        - Invalid Field](#error-400-field-invalid)</li><li>[400 - Missing Required
        Field](#error-400-field-missing)</li><li>[400 - Invalid Date](#error-400-field-invalid-date-time)</li><li>[400
        - Invalid Page Size](#error-400-field-invalid-page-size)</li><li>[400 - Invalid
        Version](#error-400-header-invalid-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBillingForSpecificAccounts406:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[406
        - Unsupported Version](#error-406-header-unsupported-version)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
    ListEnergyAccountBillingForSpecificAccounts422:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseErrorListV2'
      description: The following error codes **MUST** be supported:<br/><ul class="error-code-list"><li>[422
        - Invalid Page](#error-422-field-invalid-page)</li><li>[422 - Unavailable
        Energy Account](#error-422-unavailable-energy-account)</li><li>[422 - Invalid
        Energy Account](#error-422-invalid-energy-account)</li></ul>
      headers:
        x-fapi-interaction-id:
          $ref: '#/components/headers/XFAPIInteractionId'
  schemas:
    EnergyPlanListResponse:
      example:
        data:
          plans:
          - additionalInformation:
              eligibilityUri: eligibilityUri
              bundleUri: bundleUri
              pricingUri: pricingUri
              termsUri: termsUri
              overviewUri: overviewUri
            brandName: brandName
            displayName: displayName
            description: description
            type: STANDING
            effectiveTo: effectiveTo
            lastUpdated: lastUpdated
            customerType: RESIDENTIAL
            fuelType: ELECTRICITY
            geography:
              excludedPostcodes:
              - excludedPostcodes
              - excludedPostcodes
              distributors:
              - distributors
              - distributors
              includedPostcodes:
              - includedPostcodes
              - includedPostcodes
            planId: planId
            applicationUri: applicationUri
            effectiveFrom: effectiveFrom
            brand: brand
          - additionalInformation:
              eligibilityUri: eligibilityUri
              bundleUri: bundleUri
              pricingUri: pricingUri
              termsUri: termsUri
              overviewUri: overviewUri
            brandName: brandName
            displayName: displayName
            description: description
            type: STANDING
            effectiveTo: effectiveTo
            lastUpdated: lastUpdated
            customerType: RESIDENTIAL
            fuelType: ELECTRICITY
            geography:
              excludedPostcodes:
              - excludedPostcodes
              - excludedPostcodes
              distributors:
              - distributors
              - distributors
              includedPostcodes:
              - includedPostcodes
              - includedPostcodes
            planId: planId
            applicationUri: applicationUri
            effectiveFrom: effectiveFrom
            brand: brand
        meta:
          totalRecords: 0
          totalPages: 6
        links:
          next: next
          last: last
          prev: prev
          self: self
          first: first
      properties:
        data:
          $ref: '#/components/schemas/EnergyPlanListResponse_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
      - data
      - links
      - meta
      type: object
    EnergyPlanResponseV3:
      example:
        meta: '{}'
        links:
          self: self
      properties:
        data:
          $ref: '#/components/schemas/EnergyPlanDetailV3'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          type: object
      required:
      - data
      - links
      type: object
    EnergyServicePointListResponseV2:
      example:
        data:
          servicePoints:
          - lastUpdateDateTime: lastUpdateDateTime
            consumerProfile:
              threshold: LOW
              classification: BUSINESS
            servicePointId: ""
            jurisdictionCode: ALL
            validFromDate: validFromDate
            nationalMeteringId: nationalMeteringId
            servicePointStatus: ACTIVE
            servicePointClassification: EXTERNAL_PROFILE
            lastConsumerChangeDate: lastConsumerChangeDate
            isGenerator: false
          - lastUpdateDateTime: lastUpdateDateTime
            consumerProfile:
              threshold: LOW
              classification: BUSINESS
            servicePointId: ""
            jurisdictionCode: ALL
            validFromDate: validFromDate
            nationalMeteringId: nationalMeteringId
            servicePointStatus: ACTIVE
            servicePointClassification: EXTERNAL_PROFILE
            lastConsumerChangeDate: lastConsumerChangeDate
            isGenerator: false
        meta:
          totalRecords: 0
          totalPages: 6
        links:
          next: next
          last: last
          prev: prev
          self: self
          first: first
      properties:
        data:
          $ref: '#/components/schemas/EnergyServicePointListResponseV2_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
      - data
      - links
      - meta
      type: object
    EnergyServicePointDetailResponseV2:
      example:
        meta: '{}'
        links:
          self: self
      properties:
        data:
          $ref: '#/components/schemas/EnergyServicePointDetailV2'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          type: object
      required:
      - data
      - links
      type: object
    EnergyUsageListResponse:
      example:
        data:
          reads:
          - basicRead:
              value: 0.8008281904610115
              quality: ACTUAL
            unitOfMeasure: unitOfMeasure
            registerId: registerId
            meterId: meterId
            intervalRead:
              readIntervalLength: 6
              intervalReads:
              - 5.962133916683182
              - 5.962133916683182
              readQualities:
              - startInterval: 1
                endInterval: 1
                quality: SUBSTITUTE
              - startInterval: 1
                endInterval: 1
                quality: SUBSTITUTE
              aggregateValue: 1.4658129805029452
            servicePointId: ""
            registerSuffix: registerSuffix
            readEndDate: readEndDate
            readStartDate: readStartDate
            controlledLoad: true
            readUType: basicRead
          - basicRead:
              value: 0.8008281904610115
              quality: ACTUAL
            unitOfMeasure: unitOfMeasure
            registerId: registerId
            meterId: meterId
            intervalRead:
              readIntervalLength: 6
              intervalReads:
              - 5.962133916683182
              - 5.962133916683182
              readQualities:
              - startInterval: 1
                endInterval: 1
                quality: SUBSTITUTE
              - startInterval: 1
                endInterval: 1
                quality: SUBSTITUTE
              aggregateValue: 1.4658129805029452
            servicePointId: ""
            registerSuffix: registerSuffix
            readEndDate: readEndDate
            readStartDate: readStartDate
            controlledLoad: true
            readUType: basicRead
        meta:
          totalRecords: 0
          totalPages: 6
        links:
          next: next
          last: last
          prev: prev
          self: self
          first: first
      properties:
        data:
          $ref: '#/components/schemas/EnergyUsageListResponse_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
      - data
      - links
      - meta
      type: object
    EnergyDerListResponse:
      example:
        data:
          derRecords:
          - protectionMode:
              interTripScheme: interTripScheme
              underFrequencyProtectionDelay: 2.3021358869347655
              underVoltageProtection: 3.616076749251911
              exportLimitKva: 5.962133916683182
              overFrequencyProtectionDelay: 9.301444243932576
              overFrequencyProtection: 7.061401241503109
              overVoltageProtectionDelay: 7.386281948385884
              sustainedOverVoltageDelay: 1.0246457001441578
              frequencyRateOfChange: 1.4894159098541704
              underFrequencyProtection: 5.637376656633329
              underVoltageProtectionDelay: 2.027123023002322
              overVoltageProtection: 4.145608029883936
              neutralVoltageDisplacement: 7.457744773683766
              sustainedOverVoltage: 1.2315135367772556
              voltageVectorShift: 6.84685269835264
            installedPhasesCount: 0
            availablePhasesCount: 1
            islandableInstallation: true
            servicePointId: ""
            approvedCapacity: 0.8008281904610115
            hasCentralProtectionControl: false
            acConnections:
            - inverterSeries: inverterSeries
              inverterModelNumber: inverterModelNumber
              inverterDeviceCapacity: 5.025004791520295
              manufacturerName: manufacturerName
              count: 4
              connectionIdentifier: 1.1730742509559433
              commissioningDate: commissioningDate
              derDevices:
              - nominalRatedCapacity: 6.683562403749608
                deviceIdentifier: 9.965781217890562
                nominalStorageCapacity: 8.762042012749001
                subtype: subtype
                count: 9
                modelNumber: modelNumber
                type: FOSSIL
                manufacturer: manufacturer
                status: ACTIVE
              - nominalRatedCapacity: 6.683562403749608
                deviceIdentifier: 9.965781217890562
                nominalStorageCapacity: 8.762042012749001
                subtype: subtype
                count: 9
                modelNumber: modelNumber
                type: FOSSIL
                manufacturer: manufacturer
                status: ACTIVE
              equipmentType: OTHER
              status: ACTIVE
            - inverterSeries: inverterSeries
              inverterModelNumber: inverterModelNumber
              inverterDeviceCapacity: 5.025004791520295
              manufacturerName: manufacturerName
              count: 4
              connectionIdentifier: 1.1730742509559433
              commissioningDate: commissioningDate
              derDevices:
              - nominalRatedCapacity: 6.683562403749608
                deviceIdentifier: 9.965781217890562
                nominalStorageCapacity: 8.762042012749001
                subtype: subtype
                count: 9
                modelNumber: modelNumber
                type: FOSSIL
                manufacturer: manufacturer
                status: ACTIVE
              - nominalRatedCapacity: 6.683562403749608
                deviceIdentifier: 9.965781217890562
                nominalStorageCapacity: 8.762042012749001
                subtype: subtype
                count: 9
                modelNumber: modelNumber
                type: FOSSIL
                manufacturer: manufacturer
                status: ACTIVE
              equipmentType: OTHER
              status: ACTIVE
          - protectionMode:
              interTripScheme: interTripScheme
              underFrequencyProtectionDelay: 2.3021358869347655
              underVoltageProtection: 3.616076749251911
              exportLimitKva: 5.962133916683182
              overFrequencyProtectionDelay: 9.301444243932576
              overFrequencyProtection: 7.061401241503109
              overVoltageProtectionDelay: 7.386281948385884
              sustainedOverVoltageDelay: 1.0246457001441578
              frequencyRateOfChange: 1.4894159098541704
              underFrequencyProtection: 5.637376656633329
              underVoltageProtectionDelay: 2.027123023002322
              overVoltageProtection: 4.145608029883936
              neutralVoltageDisplacement: 7.457744773683766
              sustainedOverVoltage: 1.2315135367772556
              voltageVectorShift: 6.84685269835264
            installedPhasesCount: 0
            availablePhasesCount: 1
            islandableInstallation: true
            servicePointId: ""
            approvedCapacity: 0.8008281904610115
            hasCentralProtectionControl: false
            acConnections:
            - inverterSeries: inverterSeries
              inverterModelNumber: inverterModelNumber
              inverterDeviceCapacity: 5.025004791520295
              manufacturerName: manufacturerName
              count: 4
              connectionIdentifier: 1.1730742509559433
              commissioningDate: commissioningDate
              derDevices:
              - nominalRatedCapacity: 6.683562403749608
                deviceIdentifier: 9.965781217890562
                nominalStorageCapacity: 8.762042012749001
                subtype: subtype
                count: 9
                modelNumber: modelNumber
                type: FOSSIL
                manufacturer: manufacturer
                status: ACTIVE
              - nominalRatedCapacity: 6.683562403749608
                deviceIdentifier: 9.965781217890562
                nominalStorageCapacity: 8.762042012749001
                subtype: subtype
                count: 9
                modelNumber: modelNumber
                type: FOSSIL
                manufacturer: manufacturer
                status: ACTIVE
              equipmentType: OTHER
              status: ACTIVE
            - inverterSeries: inverterSeries
              inverterModelNumber: inverterModelNumber
              inverterDeviceCapacity: 5.025004791520295
              manufacturerName: manufacturerName
              count: 4
              connectionIdentifier: 1.1730742509559433
              commissioningDate: commissioningDate
              derDevices:
              - nominalRatedCapacity: 6.683562403749608
                deviceIdentifier: 9.965781217890562
                nominalStorageCapacity: 8.762042012749001
                subtype: subtype
                count: 9
                modelNumber: modelNumber
                type: FOSSIL
                manufacturer: manufacturer
                status: ACTIVE
              - nominalRatedCapacity: 6.683562403749608
                deviceIdentifier: 9.965781217890562
                nominalStorageCapacity: 8.762042012749001
                subtype: subtype
                count: 9
                modelNumber: modelNumber
                type: FOSSIL
                manufacturer: manufacturer
                status: ACTIVE
              equipmentType: OTHER
              status: ACTIVE
        meta:
          totalRecords: 0
          totalPages: 6
        links:
          next: next
          last: last
          prev: prev
          self: self
          first: first
      properties:
        data:
          $ref: '#/components/schemas/EnergyDerListResponse_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
      - data
      - links
      - meta
      type: object
    EnergyDerDetailResponse:
      example:
        data:
          protectionMode:
            interTripScheme: interTripScheme
            underFrequencyProtectionDelay: 2.3021358869347655
            underVoltageProtection: 3.616076749251911
            exportLimitKva: 5.962133916683182
            overFrequencyProtectionDelay: 9.301444243932576
            overFrequencyProtection: 7.061401241503109
            overVoltageProtectionDelay: 7.386281948385884
            sustainedOverVoltageDelay: 1.0246457001441578
            frequencyRateOfChange: 1.4894159098541704
            underFrequencyProtection: 5.637376656633329
            underVoltageProtectionDelay: 2.027123023002322
            overVoltageProtection: 4.145608029883936
            neutralVoltageDisplacement: 7.457744773683766
            sustainedOverVoltage: 1.2315135367772556
            voltageVectorShift: 6.84685269835264
          installedPhasesCount: 0
          availablePhasesCount: 1
          islandableInstallation: true
          servicePointId: ""
          approvedCapacity: 0.8008281904610115
          hasCentralProtectionControl: false
          acConnections:
          - inverterSeries: inverterSeries
            inverterModelNumber: inverterModelNumber
            inverterDeviceCapacity: 5.025004791520295
            manufacturerName: manufacturerName
            count: 4
            connectionIdentifier: 1.1730742509559433
            commissioningDate: commissioningDate
            derDevices:
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            equipmentType: OTHER
            status: ACTIVE
          - inverterSeries: inverterSeries
            inverterModelNumber: inverterModelNumber
            inverterDeviceCapacity: 5.025004791520295
            manufacturerName: manufacturerName
            count: 4
            connectionIdentifier: 1.1730742509559433
            commissioningDate: commissioningDate
            derDevices:
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            equipmentType: OTHER
            status: ACTIVE
        meta: '{}'
        links:
          self: self
      properties:
        data:
          $ref: '#/components/schemas/EnergyDerRecord'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          type: object
      required:
      - data
      - links
      type: object
    EnergyAccountListResponseV2:
      example:
        data:
          accounts:
          - null
          - null
        meta:
          totalRecords: 0
          totalPages: 6
        links:
          next: next
          last: last
          prev: prev
          self: self
          first: first
      properties:
        data:
          $ref: '#/components/schemas/EnergyAccountListResponseV2_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
      - data
      - links
      - meta
      type: object
    EnergyAccountDetailResponseV4:
      example:
        meta: '{}'
        links:
          self: self
      properties:
        data:
          $ref: '#/components/schemas/EnergyAccountDetailV4'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          type: object
      required:
      - data
      - links
      type: object
    EnergyPaymentScheduleResponse:
      example:
        data:
          paymentSchedules:
          - manualPayment:
              billFrequency: billFrequency
            amount: amount
            digitalWallet:
              calculationType: STATIC
              identifier: identifier
              provider: PAYPAL_AU
              name: name
              type: EMAIL
              paymentFrequency: paymentFrequency
            cardDebit:
              calculationType: STATIC
              cardScheme: VISA
              paymentFrequency: paymentFrequency
            directDebit:
              bsb: bsb
              calculationType: STATIC
              accountNumber: accountNumber
              paymentFrequency: paymentFrequency
              isTokenised: false
            paymentScheduleUType: cardDebit
          - manualPayment:
              billFrequency: billFrequency
            amount: amount
            digitalWallet:
              calculationType: STATIC
              identifier: identifier
              provider: PAYPAL_AU
              name: name
              type: EMAIL
              paymentFrequency: paymentFrequency
            cardDebit:
              calculationType: STATIC
              cardScheme: VISA
              paymentFrequency: paymentFrequency
            directDebit:
              bsb: bsb
              calculationType: STATIC
              accountNumber: accountNumber
              paymentFrequency: paymentFrequency
              isTokenised: false
            paymentScheduleUType: cardDebit
        meta: '{}'
        links:
          self: self
      properties:
        data:
          $ref: '#/components/schemas/EnergyPaymentScheduleResponse_data'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          type: object
      required:
      - data
      - links
      type: object
    EnergyConcessionsResponse:
      example:
        data:
          concessions:
          - amount: amount
            additionalInfoUri: additionalInfoUri
            endDate: endDate
            displayName: displayName
            appliedTo:
            - USAGE
            - USAGE
            percentage: percentage
            additionalInfo: additionalInfo
            type: FIXED_AMOUNT
            discountFrequency: discountFrequency
            startDate: startDate
          - amount: amount
            additionalInfoUri: additionalInfoUri
            endDate: endDate
            displayName: displayName
            appliedTo:
            - USAGE
            - USAGE
            percentage: percentage
            additionalInfo: additionalInfo
            type: FIXED_AMOUNT
            discountFrequency: discountFrequency
            startDate: startDate
        meta: '{}'
        links:
          self: self
      properties:
        data:
          $ref: '#/components/schemas/EnergyConcessionsResponse_data'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          type: object
      required:
      - data
      - links
      type: object
    EnergyBalanceListResponse:
      example:
        data:
          balances:
          - accountId: ""
            balance: balance
          - accountId: ""
            balance: balance
        meta:
          totalRecords: 0
          totalPages: 6
        links:
          next: next
          last: last
          prev: prev
          self: self
          first: first
      properties:
        data:
          $ref: '#/components/schemas/EnergyBalanceListResponse_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
      - data
      - links
      - meta
      type: object
    EnergyBalanceResponse:
      example:
        data:
          balance: balance
        meta: '{}'
        links:
          self: self
      properties:
        data:
          $ref: '#/components/schemas/EnergyBalanceResponse_data'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          type: object
      required:
      - data
      - links
      type: object
    EnergyInvoiceListResponse:
      example:
        data:
          invoices:
          - gstAmount: "0.00"
            period:
              endDate: endDate
              startDate: startDate
            accountCharges:
              totalGst: "0.00"
              totalDiscounts: totalDiscounts
              totalCharges: totalCharges
            dueDate: dueDate
            servicePoints:
            - servicePoints
            - servicePoints
            invoiceAmount: invoiceAmount
            electricity: ""
            balanceAtIssue: balanceAtIssue
            accountId: ""
            invoiceNumber: invoiceNumber
            gas: ""
            issueDate: issueDate
            payOnTimeDiscount:
              date: date
              gstAmount: "0.00"
              discountAmount: discountAmount
            paymentStatus: PAID
          - gstAmount: "0.00"
            period:
              endDate: endDate
              startDate: startDate
            accountCharges:
              totalGst: "0.00"
              totalDiscounts: totalDiscounts
              totalCharges: totalCharges
            dueDate: dueDate
            servicePoints:
            - servicePoints
            - servicePoints
            invoiceAmount: invoiceAmount
            electricity: ""
            balanceAtIssue: balanceAtIssue
            accountId: ""
            invoiceNumber: invoiceNumber
            gas: ""
            issueDate: issueDate
            payOnTimeDiscount:
              date: date
              gstAmount: "0.00"
              discountAmount: discountAmount
            paymentStatus: PAID
        meta:
          totalRecords: 0
          totalPages: 6
        links:
          next: next
          last: last
          prev: prev
          self: self
          first: first
      properties:
        data:
          $ref: '#/components/schemas/EnergyInvoiceListResponse_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
      - data
      - links
      - meta
      type: object
    EnergyBillingListResponseV3:
      example:
        data:
          transactions:
          - accountId: ""
            onceOff: ""
            otherCharges: ""
            usage: ""
            gst: "0.00"
            payment: ""
            executionDateTime: executionDateTime
            transactionUType: usage
            demand: ""
          - accountId: ""
            onceOff: ""
            otherCharges: ""
            usage: ""
            gst: "0.00"
            payment: ""
            executionDateTime: executionDateTime
            transactionUType: usage
            demand: ""
        meta:
          totalRecords: 0
          totalPages: 6
        links:
          next: next
          last: last
          prev: prev
          self: self
          first: first
      properties:
        data:
          $ref: '#/components/schemas/EnergyBillingListResponseV3_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
      required:
      - data
      - links
      - meta
      type: object
    ResponseErrorListV2:
      properties:
        errors:
          description: List of errors.
          items:
            $ref: '#/components/schemas/ErrorV2'
          type: array
      required:
      - errors
      type: object
    ErrorV2:
      properties:
        code:
          description: The code of the error encountered. Where the error is specific
            to the respondent, an application-specific error code, expressed as a
            string value. If the error is application-specific, the URN code that
            the specific error extends must be provided in the _meta_ object. Otherwise,
            the value is the error code URN.
          type: string
        title:
          description: A short, human-readable summary of the problem that **MUST
            NOT** change from occurrence to occurrence of the problem represented
            by the error code.
          type: string
        detail:
          description: A human-readable explanation specific to this occurrence of
            the problem.
          type: string
        meta:
          $ref: '#/components/schemas/ErrorV2_meta'
      required:
      - code
      - detail
      - title
      type: object
      x-conditional:
      - meta
    EnergyPlan:
      example:
        additionalInformation:
          eligibilityUri: eligibilityUri
          bundleUri: bundleUri
          pricingUri: pricingUri
          termsUri: termsUri
          overviewUri: overviewUri
        brandName: brandName
        displayName: displayName
        description: description
        type: STANDING
        effectiveTo: effectiveTo
        lastUpdated: lastUpdated
        customerType: RESIDENTIAL
        fuelType: ELECTRICITY
        geography:
          excludedPostcodes:
          - excludedPostcodes
          - excludedPostcodes
          distributors:
          - distributors
          - distributors
          includedPostcodes:
          - includedPostcodes
          - includedPostcodes
        planId: planId
        applicationUri: applicationUri
        effectiveFrom: effectiveFrom
        brand: brand
      properties:
        planId:
          description: The unique identifier for the Energy plan.
          type: string
          x-cds-type: ASCIIString
        effectiveFrom:
          description: The date and time from which this plan is effective (i.e. is
            available for origination). Used to enable the articulation of products
            to the regime before they are available for customers to originate.
          type: string
          x-cds-type: DateTimeString
        effectiveTo:
          description: The date and time at which this plan will be retired and will
            no longer be offered. Used to enable the managed deprecation of plans.
          type: string
          x-cds-type: DateTimeString
        lastUpdated:
          description: The last date and time that the information for this plan was
            changed (or the creation date for the plan if it has never been altered).
          type: string
          x-cds-type: DateTimeString
        displayName:
          description: The display name of the plan.
          type: string
        description:
          description: A description of the plan.
          type: string
        type:
          description: The type of the plan.
          enum:
          - STANDING
          - MARKET
          - REGULATED
          type: string
        fuelType:
          description: The fuel types covered by the plan.
          enum:
          - ELECTRICITY
          - GAS
          - DUAL
          type: string
        brand:
          description: The ID of the brand under which this plan is offered.
          type: string
          x-cds-type: ASCIIString
        brandName:
          description: The display name of the brand under which this plan is offered.
          type: string
        applicationUri:
          description: A link to an application web page where this plan can be applied
            for.
          type: string
          x-cds-type: URIString
        additionalInformation:
          $ref: '#/components/schemas/EnergyPlan_additionalInformation'
        customerType:
          description: The type of customer that the plan is offered to. If absent
            then the plan is available to all customers.
          enum:
          - RESIDENTIAL
          - BUSINESS
          type: string
        geography:
          $ref: '#/components/schemas/EnergyPlan_geography'
      required:
      - brand
      - brandName
      - fuelType
      - lastUpdated
      - planId
      - type
      type: object
    EnergyPlanDetailV3:
      allOf:
      - $ref: '#/components/schemas/EnergyPlan'
      - $ref: '#/components/schemas/EnergyPlanDetailV3_allOf'
    EnergyPlanContractV3:
      properties:
        additionalFeeInformation:
          description: Free text field containing additional information of the fees
            for this contract.
          type: string
        pricingModel:
          description: 'The pricing model for the contract. Contracts for gas must
            use `SINGLE_RATE`. Note that the detail for the enumeration values are:<ul><li>`SINGLE_RATE`:
            all energy usage is charged at a single unit rate no matter when it is
            consumed. Multiple unit rates may exist that correspond to varying volumes
            of usage i.e. a ''block'' or ''step'' tariff (first 50kWh @ X cents, next
            50kWh at Y cents etc.)</li><li>`SINGLE_RATE_CONT_LOAD`: as above, but
            with an additional, separate unit rate charged for all energy usage from
            a controlled load i.e. separately metered appliance like hot water service,
            pool pump etc.</li><li>`TIME_OF_USE`: energy usage is charged at unit
            rates that vary dependent on time of day and day of week that the energy
            is consumed</li><li>`TIME_OF_USE_CONT_LOAD`: as above, but with an additional,
            separate unit rate charged for all energy usage from a controlled load
            i.e. separately metered appliance like hot water service, pool pump etc.</li><li>`FLEXIBLE`:
            energy usage is charged at unit rates that vary based on external factors</li><li>`FLEXIBLE_CONT_LOAD`:
            as above, but with an additional, separate unit rate charged for all energy
            usage from a controlled load i.e. separately metered appliance like hot
            water service, pool pump etc.</li><li>`QUOTA`: all energy usage is charged
            at a single fixed rate, up to a specified usage quota/allowance. All excess
            usage beyond the allowance is then charged at a single unit rate. i.e.
            $50/month for up to 150kWh included usage.</li></ul>'
          enum:
          - SINGLE_RATE
          - SINGLE_RATE_CONT_LOAD
          - TIME_OF_USE
          - TIME_OF_USE_CONT_LOAD
          - FLEXIBLE
          - FLEXIBLE_CONT_LOAD
          - QUOTA
          type: string
        timeZone:
          default: AEST
          description: Required if _pricingModel_ is set to `TIME_OF_USE`. Defines
            the time zone to use for calculation of the time of use thresholds. Defaults
            to `AEST` if absent.
          enum:
          - LOCAL
          - AEST
          type: string
        isFixed:
          description: Flag indicating whether prices are fixed or variable.
          type: boolean
        variation:
          description: Free text description of price variation policy and conditions
            for the contract. Mandatory if _isFixed_ is `false`.
          type: string
        onExpiryDescription:
          description: Free text field that describes what will occur on or prior
            to expiry of the fixed contract term or benefit period.
          type: string
        paymentOption:
          description: Payment options for this contract.
          items:
            enum:
            - PAPER_BILL
            - CREDIT_CARD
            - DIRECT_DEBIT
            - BPAY
            - OTHER
            type: string
          type: array
        intrinsicGreenPower:
          $ref: '#/components/schemas/EnergyPlanContractV3_intrinsicGreenPower'
        controlledLoad:
          description: Required if pricing model is `SINGLE_RATE_CONT_LOAD` or `TIME_OF_USE_CONT_LOAD`
            or `FLEXIBLE_CONT_LOAD`.
          items:
            properties:
              displayName:
                description: A display name for the controlled load.
                type: string
              rateBlockUType:
                description: Specifies the type of controlled load rate.
                enum:
                - singleRate
                - timeOfUseRates
                type: string
              startDate:
                description: Optional start date of the application of the controlled
                  load rate.
                type: string
                x-cds-type: DateString
              endDate:
                description: Optional end date of the application of the controlled
                  load rate.
                type: string
                x-cds-type: DateString
              singleRate:
                description: Object representing a single controlled load rate. Required
                  if _rateBlockUType_ is `singleRate`.
                properties:
                  displayName:
                    description: Display name of the controlled load rate.
                    type: string
                  description:
                    description: Description of the controlled load rate.
                    type: string
                  dailySupplyCharge:
                    description: The daily supply charge (exclusive of GST) for this
                      controlled load tier.
                    type: string
                    x-cds-type: AmountString
                  rates:
                    description: Array of controlled load rates in order of usage
                      volume.
                    items:
                      properties:
                        unitPrice:
                          description: Unit price of usage per measure unit (exclusive
                            of GST).
                          type: string
                          x-cds-type: AmountString
                        measureUnit:
                          allOf:
                          - $ref: '#/components/schemas/MeasureUnitEnum'
                          default: KWH
                          description: The measurement unit of rate. Assumed to be
                            `KWH` if absent.
                          type: string
                        volume:
                          description: Volume in kWh that this rate applies to. Only
                            applicable for 'stepped' rates where different rates apply
                            for different volumes of usage in a period.
                          type: number
                      required:
                      - unitPrice
                      type: object
                    type: array
                  period:
                    default: P1Y
                    description: Usage period for which the block rate applies. Formatted
                      according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                      (excludes recurrence syntax). Defaults to `P1Y` if absent.
                    type: string
                    x-cds-type: ExternalRef
                required:
                - displayName
                - rates
                type: object
              timeOfUseRates:
                description: Array of objects representing time of use rates. Required
                  if _rateBlockUType_ is `timeOfUseRates`.
                items:
                  properties:
                    displayName:
                      description: Display name of the controlled load rate.
                      type: string
                    description:
                      description: Description of the controlled load rate.
                      type: string
                    dailySupplyCharge:
                      description: The daily supply charge (exclusive of GST) for
                        this controlled load tier.
                      type: string
                      x-cds-type: AmountString
                    rates:
                      description: Array of controlled load rates in order of usage
                        volume.
                      items:
                        properties:
                          unitPrice:
                            description: Unit price of usage per measure unit (exclusive
                              of GST).
                            type: string
                            x-cds-type: AmountString
                          measureUnit:
                            allOf:
                            - $ref: '#/components/schemas/MeasureUnitEnum'
                            default: KWH
                            description: The measurement unit of rate. Assumed to
                              be `KWH` if absent.
                            type: string
                          volume:
                            description: Volume in kWh that this rate applies to.
                              Only applicable for 'stepped' rates where different
                              rates apply for different volumes of usage in a period.
                            type: number
                        required:
                        - unitPrice
                        type: object
                      type: array
                    period:
                      default: P1Y
                      description: Usage period for which the block rate applies.
                        Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                        (excludes recurrence syntax). Defaults to `P1Y` if absent.
                      type: string
                      x-cds-type: ExternalRef
                    timeOfUse:
                      description: Array of times of use.
                      items:
                        properties:
                          days:
                            description: The days that the rate applies to.
                            items:
                              $ref: '#/components/schemas/EnergyDaysEnum'
                            type: array
                          startTime:
                            description: |-
                              The beginning of the time period per day for which the controlled load rate applies. Required if _endTime_ provided.

                              Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                            type: string
                            x-cds-type: ExternalRef
                          endTime:
                            description: |-
                              The end of the time period per day for which the controlled load rate applies. Required if _startTime_ provided.

                              Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                            type: string
                            x-cds-type: ExternalRef
                          additionalInfo:
                            description: Display text providing more information on
                              the controlled load, for e.g., controlled load availability
                              if specific day/time is not known. Required if _startTime_
                              and _endTime_ absent or if _additionalInfoUri_ provided.
                            type: string
                          additionalInfoUri:
                            description: Optional link to additional information regarding
                              the controlled load.
                            type: string
                            x-cds-type: URIString
                        type: object
                        x-conditional:
                        - startTime
                        - endTime
                        - additionalInfo
                      type: array
                    type:
                      description: The type of usage that the rate applies to.
                      enum:
                      - PEAK
                      - OFF_PEAK
                      - SHOULDER
                      - SOLAR_SPONGE
                      type: string
                  required:
                  - displayName
                  - rates
                  - timeOfUse
                  - type
                  type: object
                type: array
            required:
            - displayName
            - rateBlockUType
            type: object
            x-conditional:
            - singleRate
            - timeOfUseRates
          type: array
        incentives:
          description: Optional list of incentives available for the contract.
          items:
            properties:
              displayName:
                description: The display name of the incentive.
                type: string
              description:
                description: The description of the incentive.
                type: string
              category:
                description: The type of the incentive.
                enum:
                - GIFT
                - ACCOUNT_CREDIT
                - OTHER
                type: string
              eligibility:
                description: A display message outlining an eligibility criteria that
                  may apply.
                type: string
            required:
            - category
            - description
            - displayName
            type: object
          type: array
        discounts:
          description: Optional list of discounts available for the contract.
          items:
            properties:
              displayName:
                description: The display name of the discount.
                type: string
              description:
                description: The description of the discount.
                type: string
              type:
                description: The type of the discount.
                enum:
                - CONDITIONAL
                - GUARANTEED
                - OTHER
                type: string
              category:
                description: The type of the discount. Mandatory if the discount _type_
                  is `CONDITIONAL`.
                enum:
                - PAY_ON_TIME
                - DIRECT_DEBIT
                - GUARANTEED_DISCOUNT
                - OTHER
                type: string
              endDate:
                description: Optional end date for the discount after which the discount
                  is no longer available.
                type: string
                x-cds-type: DateString
              methodUType:
                description: The method of calculation of the discount.
                enum:
                - percentOfBill
                - percentOfUse
                - fixedAmount
                - percentOverThreshold
                type: string
              percentOfBill:
                description: Required if _methodUType_ is `percentOfBill`.
                properties:
                  rate:
                    description: The rate of the discount applied to the bill amount.
                    type: string
                    x-cds-type: RateString
                required:
                - rate
                type: object
              percentOfUse:
                description: Required if _methodUType_ is `percentOfUse`.
                properties:
                  rate:
                    description: The rate of the discount applied to the _usageamount_.
                    type: string
                    x-cds-type: RateString
                required:
                - rate
                type: object
              fixedAmount:
                description: Required if _methodUType_ is `fixedAmount`.
                properties:
                  amount:
                    description: The amount of the discount.
                    type: string
                    x-cds-type: AmountString
                required:
                - amount
                type: object
              percentOverThreshold:
                description: Required if _methodUType_ is `percentOverThreshold`.
                properties:
                  rate:
                    description: The rate of the discount over the usage amount.
                    type: string
                    x-cds-type: RateString
                  usageAmount:
                    description: The usage amount threshold above which the discount
                      applies.
                    type: string
                    x-cds-type: AmountString
                required:
                - rate
                - usageAmount
                type: object
            required:
            - displayName
            - methodUType
            - type
            type: object
            x-conditional:
            - percentOfBill
            - percentOfUse
            - fixedAmount
            - percentOverThreshold
          type: array
        greenPowerCharges:
          description: Optional list of charges applicable to green power.
          items:
            properties:
              displayName:
                description: The display name of the charge.
                type: string
              description:
                description: The description of the charge.
                type: string
              scheme:
                description: The applicable green power scheme.
                enum:
                - GREENPOWER
                - OTHER
                type: string
              type:
                description: The type of charge.
                enum:
                - FIXED_PER_DAY
                - FIXED_PER_WEEK
                - FIXED_PER_MONTH
                - FIXED_PER_UNIT
                - PERCENT_OF_USE
                - PERCENT_OF_BILL
                type: string
              tiers:
                description: Array of charge tiers based on the percentage of green
                  power used for the period implied by the type. Array is in order
                  of increasing percentage of green power.
                items:
                  properties:
                    percentGreen:
                      description: The upper percentage of green power used applicable
                        for this tier.
                      type: string
                      x-cds-type: RateString
                    rate:
                      description: The rate of the charge if the type implies the
                        application of a rate.
                      type: string
                      x-cds-type: RateString
                    amount:
                      description: The amount of the charge if the type implies the
                        application of a fixed amount.
                      type: string
                      x-cds-type: AmountString
                  required:
                  - percentGreen
                  type: object
                  x-conditional:
                  - rate
                  - amount
                type: array
            required:
            - displayName
            - scheme
            - tiers
            - type
            type: object
          type: array
        eligibility:
          description: Eligibility restrictions or requirements.
          items:
            properties:
              type:
                description: The type of the eligibility restriction.<br/>The `CONTINGENT_PLAN`
                  value indicates that the plan is contingent on the customer taking
                  up an alternate fuel plan from the same retailer (for instance,
                  if the _fuelType_ is `ELECTRICITY` then a `GAS` plan from the same
                  retailer must be taken up).
                enum:
                - EXISTING_CUST
                - EXISTING_POOL
                - EXISTING_SOLAR
                - EXISTING_BATTERY
                - EXISTING_SMART_METER
                - EXISTING_BASIC_METER
                - SENIOR_CARD
                - SMALL_BUSINESS
                - NO_SOLAR_FIT
                - NEW_CUSTOMER
                - ONLINE_ONLY
                - REQ_EQUIP_SUPPLIER
                - THIRD_PARTY_ONLY
                - SPORT_CLUB_MEMBER
                - ORG_MEMBER
                - SPECIFIC_LOCATION
                - MINIMUM_USAGE
                - LOYALTY_MEMBER
                - GROUP_BUY_MEMBER
                - CONTINGENT_PLAN
                - OTHER
                type: string
              information:
                description: Information of the eligibility restriction specific to
                  the type of the restriction.
                type: string
              description:
                description: A description of the eligibility restriction.
                type: string
            required:
            - information
            - type
            type: object
          type: array
        fees:
          description: An array of fees applicable to the plan.
          items:
            properties:
              type:
                description: The type of the fee.
                enum:
                - EXIT
                - ESTABLISHMENT
                - LATE_PAYMENT
                - DISCONNECTION
                - DISCONNECT_MOVE_OUT
                - DISCONNECT_NON_PAY
                - RECONNECTION
                - CONNECTION
                - PAYMENT_PROCESSING
                - CC_PROCESSING
                - CHEQUE_DISHONOUR
                - DD_DISHONOUR
                - MEMBERSHIP
                - CONTRIBUTION
                - PAPER_BILL
                - OTHER
                type: string
              term:
                description: The term of the fee.
                enum:
                - FIXED
                - 1_YEAR
                - 2_YEAR
                - 3_YEAR
                - 4_YEAR
                - 5_YEAR
                - PERCENT_OF_BILL
                - ANNUAL
                - DAILY
                - WEEKLY
                - MONTHLY
                - BIANNUAL
                - VARIABLE
                type: string
              amount:
                description: The fee amount. Required if _term_ is not `PERCENT_OF_BILL`.
                type: string
                x-cds-type: AmountString
              rate:
                description: The fee rate. Required if _term_ is `PERCENT_OF_BILL`.
                type: string
                x-cds-type: RateString
              description:
                description: A description of the fee.
                type: string
            required:
            - term
            - type
            type: object
            x-conditional:
            - amount
            - rate
          type: array
        solarFeedInTariff:
          description: Array of feed in tariffs for solar power.
          items:
            properties:
              displayName:
                description: The name of the tariff.
                type: string
              description:
                description: A description of the tariff.
                type: string
              startDate:
                description: The start date of the application of the feed in tariff.
                type: string
                x-cds-type: DateString
              endDate:
                description: The end date of the application of the feed in tariff.
                type: string
                x-cds-type: DateString
              scheme:
                description: The applicable scheme.
                enum:
                - PREMIUM
                - CURRENT
                - VARIABLE
                - OTHER
                type: string
              payerType:
                description: The type of the payer.
                enum:
                - GOVERNMENT
                - RETAILER
                type: string
              tariffUType:
                description: Reference to the applicable tariff structure.
                enum:
                - singleTariff
                - timeVaryingTariffs
                type: string
              singleTariff:
                description: Represents a constant tariff. Mandatory if _tariffUType_
                  is set to `singleTariff`.
                properties:
                  rates:
                    description: Array of feed in rates.
                    items:
                      properties:
                        unitPrice:
                          description: Unit price of usage per measure unit (exclusive
                            of GST).
                          type: string
                          x-cds-type: AmountString
                        measureUnit:
                          allOf:
                          - $ref: '#/components/schemas/MeasureUnitEnum'
                          default: KWH
                          description: The measurement unit of rate. Assumed to be
                            `KWH` if absent.
                          type: string
                        volume:
                          description: Volume that this rate applies to. Only applicable
                            for 'stepped' rates where different rates apply for different
                            volumes of usage in a period.
                          type: number
                      required:
                      - unitPrice
                      type: object
                    type: array
                  period:
                    default: P1Y
                    description: Usage period for which the block rate applies. Formatted
                      according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                      (excludes recurrence syntax). Defaults to `P1Y` if absent.
                    type: string
                    x-cds-type: ExternalRef
                required:
                - rates
                type: object
              timeVaryingTariffs:
                description: Represents a tariff based on time. Mandatory if _tariffUType_
                  is set to `timeVaryingTariffs`.
                items:
                  properties:
                    type:
                      description: The type of the charging time period. If absent
                        applies to all periods.
                      enum:
                      - PEAK
                      - OFF_PEAK
                      - SHOULDER
                      type: string
                    displayName:
                      description: Display name of the tariff.
                      type: string
                    rates:
                      description: Array of feed in rates.
                      items:
                        properties:
                          unitPrice:
                            description: Unit price of usage per measure unit (exclusive
                              of GST).
                            type: string
                            x-cds-type: AmountString
                          measureUnit:
                            allOf:
                            - $ref: '#/components/schemas/MeasureUnitEnum'
                            default: KWH
                            description: The measurement unit of rate. Assumed to
                              be `KWH` if absent.
                            type: string
                          volume:
                            description: Volume that this rate applies to. Only applicable
                              for 'stepped' rates where different rates apply for
                              different volumes of usage in a period.
                            type: number
                        required:
                        - unitPrice
                        type: object
                      type: array
                    period:
                      default: P1Y
                      description: Usage period for which the block rate applies.
                        Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                        (excludes recurrence syntax). Defaults to `P1Y` if absent.
                      type: string
                      x-cds-type: ExternalRef
                    timeVariations:
                      description: Array of time periods for which this tariff is
                        applicable.
                      items:
                        properties:
                          days:
                            description: The days that the tariff applies to. At least
                              one entry required.
                            items:
                              $ref: '#/components/schemas/EnergyDaysEnum'
                            type: array
                          startTime:
                            description: |-
                              The beginning of the time period per day for which the tariff applies. If absent assumes start of day (i.e. midnight).

                              Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                            type: string
                            x-cds-type: ExternalRef
                          endTime:
                            description: |-
                              The end of the time period per day for which the tariff applies. If absent assumes end of day (i.e. one second before midnight).

                              Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                            type: string
                            x-cds-type: ExternalRef
                        required:
                        - days
                        type: object
                      type: array
                  required:
                  - displayName
                  - timeVariations
                  type: object
                type: array
            required:
            - displayName
            - payerType
            - scheme
            - tariffUType
            type: object
            x-conditional:
            - singleTariff
            - timeVaryingTariffs
          type: array
        tariffPeriod:
          description: Array of tariff periods.
          items:
            properties:
              type:
                default: OTHER
                description: Type of charge. Assumed to be `OTHER` if absent.
                enum:
                - ENVIRONMENTAL
                - REGULATED
                - NETWORK
                - METERING
                - RETAIL_SERVICE
                - RCTI
                - OTHER
                type: string
              displayName:
                description: The name of the tariff period.
                type: string
              startDate:
                description: The start date of the tariff period in a calendar year.
                  Formatted in mm-dd format.
                type: string
              endDate:
                description: The end date of the tariff period in a calendar year.
                  Formatted in mm-dd format.
                type: string
              dailySupplyChargeType:
                description: Specifies if daily supply charge is single or banded.
                enum:
                - SINGLE
                - BAND
                type: string
              dailySupplyCharge:
                description: The amount of access charge for the tariff period, in
                  dollars per day exclusive of GST. Mandatory if _dailySupplyChargeType_
                  is `SINGLE`.
                type: string
                x-cds-type: AmountString
              bandedDailySupplyCharges:
                description: Array representing banded daily supply charge rates.
                  Mandatory if _dailySupplyChargeType_ is `BAND`.
                items:
                  properties:
                    unitPrice:
                      description: The amount of daily supply charge for the band,
                        in dollars per day exclusive of GST.
                      type: string
                      x-cds-type: AmountString
                    measureUnit:
                      allOf:
                      - $ref: '#/components/schemas/MeasureUnitEnum'
                      default: DAYS
                      description: The measurement unit of rate. Assumed to be `DAYS`
                        if absent.
                      type: string
                    volume:
                      description: Volume the charge applies to.
                      type: number
                  required:
                  - unitPrice
                  type: object
                type: array
              timeZone:
                description: Specifies the charge specific time zone for calculation
                  of the time of use thresholds. If absent, timezone value in EnergyPlanContract
                  is assumed.
                enum:
                - LOCAL
                - AEST
                type: string
              rateBlockUType:
                description: Specifies the type of rate applicable to this tariff
                  period.
                enum:
                - singleRate
                - timeOfUseRates
                - demandCharges
                type: string
              singleRate:
                description: Object representing a single rate. Required if _rateBlockUType_
                  is `singleRate`.
                properties:
                  displayName:
                    description: Display name of the rate.
                    type: string
                  description:
                    description: Description of the rate.
                    type: string
                  generalUnitPrice:
                    description: The block rate (unit price) for any usage above the
                      included fixed usage, in dollars per kWh inclusive of GST. Only
                      required if _pricingModel_ field is `QUOTA`.
                    type: string
                    x-cds-type: AmountString
                  rates:
                    description: Array of controlled load rates in order of usage
                      volume.
                    items:
                      properties:
                        unitPrice:
                          description: Unit price of usage per measure unit (exclusive
                            of GST).
                          type: string
                          x-cds-type: AmountString
                        measureUnit:
                          allOf:
                          - $ref: '#/components/schemas/MeasureUnitEnum'
                          default: KWH
                          description: The measurement unit of rate. Assumed to be
                            `KWH` if absent.
                          type: string
                        volume:
                          description: Volume in kWh that this rate applies to. Only
                            applicable for 'stepped' rates where different rates apply
                            for different volumes of usage in a period.
                          type: number
                      required:
                      - unitPrice
                      type: object
                    type: array
                  period:
                    description: Usage period for which the block rate applies. Formatted
                      according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                      (excludes recurrence syntax).
                    type: string
                    x-cds-type: ExternalRef
                required:
                - displayName
                - rates
                type: object
                x-conditional:
                - generalUnitPrice
              timeOfUseRates:
                description: Array of objects representing time of use rates. Required
                  if _rateBlockUType_ is `timeOfUseRates`.
                items:
                  properties:
                    displayName:
                      description: Display name of the rate.
                      type: string
                    description:
                      description: Description of the rate.
                      type: string
                    rates:
                      description: Array of controlled load rates in order of usage
                        volume.
                      items:
                        properties:
                          unitPrice:
                            description: Unit price of usage per measure unit (exclusive
                              of GST).
                            type: string
                            x-cds-type: AmountString
                          measureUnit:
                            allOf:
                            - $ref: '#/components/schemas/MeasureUnitEnum'
                            default: KWH
                            description: The measurement unit of rate. Assumed to
                              be `KWH` if absent.
                            type: string
                          volume:
                            description: Volume in kWh that this rate applies to.
                              Only applicable for 'stepped' rates where different
                              rates apply for different volumes of usage in a period.
                            type: number
                        required:
                        - unitPrice
                        type: object
                      type: array
                    period:
                      default: P1Y
                      description: Usage period for which the block rate applies.
                        Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                        (excludes recurrence syntax). Defaults to `P1Y` if absent.
                      type: string
                      x-cds-type: ExternalRef
                    timeOfUse:
                      description: Array of times of use.
                      items:
                        properties:
                          days:
                            description: The days that the rate applies to.
                            items:
                              $ref: '#/components/schemas/EnergyDaysEnum'
                            type: array
                          startTime:
                            description: |-
                              Start of the period.

                              Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                            type: string
                            x-cds-type: ExternalRef
                          endTime:
                            description: |-
                              End of the period.

                              Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                            type: string
                            x-cds-type: ExternalRef
                        required:
                        - days
                        - endTime
                        - startTime
                        type: object
                      type: array
                    type:
                      description: The type of usage that the rate applies to.
                      enum:
                      - PEAK
                      - OFF_PEAK
                      - SHOULDER
                      - SHOULDER1
                      - SHOULDER2
                      type: string
                  required:
                  - displayName
                  - rates
                  - timeOfUse
                  - type
                  type: object
                type: array
              demandCharges:
                description: Array of demand charges. Required if _rateBlockUType_
                  is `demandCharges`.
                items:
                  properties:
                    displayName:
                      description: Display name of the charge.
                      type: string
                    description:
                      description: Description of the charge.
                      type: string
                    amount:
                      description: The charge amount per measure unit exclusive of
                        GST.
                      type: string
                      x-cds-type: AmountString
                    measureUnit:
                      allOf:
                      - $ref: '#/components/schemas/MeasureUnitEnum'
                      default: KWH
                      description: The measurement unit of charge amount. Assumed
                        to be `KWH` if absent.
                      type: string
                    startTime:
                      description: |-
                        Start of the period.

                        Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                      type: string
                      x-cds-type: ExternalRef
                    endTime:
                      description: |-
                        End of the period.

                        Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                      type: string
                      x-cds-type: ExternalRef
                    days:
                      description: The days that the demand tariff applies to.
                      items:
                        $ref: '#/components/schemas/EnergyDaysEnum'
                      type: array
                    minDemand:
                      default: "0.00"
                      description: Minimum demand for this demand tariff in kW. If
                        absent then `0.00` is assumed.
                      type: string
                      x-cds-type: AmountString
                    maxDemand:
                      description: Maximum demand for this demand tariff in kW. If
                        present, must be higher than the value of the _minDemand_
                        field.
                      type: string
                      x-cds-type: AmountString
                    measurementPeriod:
                      description: Application period for the demand tariff.
                      enum:
                      - DAY
                      - MONTH
                      - TARIFF_PERIOD
                      type: string
                    chargePeriod:
                      description: Charge period for the demand tariff.
                      enum:
                      - DAY
                      - MONTH
                      - TARIFF_PERIOD
                      type: string
                  required:
                  - amount
                  - chargePeriod
                  - displayName
                  - endTime
                  - measurementPeriod
                  - startTime
                  type: object
                type: array
            required:
            - displayName
            - endDate
            - rateBlockUType
            - startDate
            type: object
            x-conditional:
            - singleRate
            - timeOfUseRates
            - demandCharges
            - dailySupplyCharge
            - bandedDailySupplyCharges
          type: array
      required:
      - isFixed
      - paymentOption
      - pricingModel
      - tariffPeriod
      type: object
      x-conditional:
      - timeZone
      - variation
      - controlledLoad
    EnergyPlanContractFullV3:
      allOf:
      - $ref: '#/components/schemas/EnergyPlanContractV3'
      - $ref: '#/components/schemas/EnergyPlanContractFullV3_allOf'
    EnergyPlanControlledLoadV2:
      description: Required if pricing model is `SINGLE_RATE_CONT_LOAD` or `TIME_OF_USE_CONT_LOAD`
        or `FLEXIBLE_CONT_LOAD`.
      items:
        properties:
          displayName:
            description: A display name for the controlled load.
            type: string
          rateBlockUType:
            description: Specifies the type of controlled load rate.
            enum:
            - singleRate
            - timeOfUseRates
            type: string
          startDate:
            description: Optional start date of the application of the controlled
              load rate.
            type: string
            x-cds-type: DateString
          endDate:
            description: Optional end date of the application of the controlled load
              rate.
            type: string
            x-cds-type: DateString
          singleRate:
            description: Object representing a single controlled load rate. Required
              if _rateBlockUType_ is `singleRate`.
            properties:
              displayName:
                description: Display name of the controlled load rate.
                type: string
              description:
                description: Description of the controlled load rate.
                type: string
              dailySupplyCharge:
                description: The daily supply charge (exclusive of GST) for this controlled
                  load tier.
                type: string
                x-cds-type: AmountString
              rates:
                description: Array of controlled load rates in order of usage volume.
                items:
                  properties:
                    unitPrice:
                      description: Unit price of usage per measure unit (exclusive
                        of GST).
                      type: string
                      x-cds-type: AmountString
                    measureUnit:
                      allOf:
                      - $ref: '#/components/schemas/MeasureUnitEnum'
                      default: KWH
                      description: The measurement unit of rate. Assumed to be `KWH`
                        if absent.
                      type: string
                    volume:
                      description: Volume in kWh that this rate applies to. Only applicable
                        for 'stepped' rates where different rates apply for different
                        volumes of usage in a period.
                      type: number
                  required:
                  - unitPrice
                  type: object
                type: array
              period:
                default: P1Y
                description: Usage period for which the block rate applies. Formatted
                  according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                  (excludes recurrence syntax). Defaults to `P1Y` if absent.
                type: string
                x-cds-type: ExternalRef
            required:
            - displayName
            - rates
            type: object
          timeOfUseRates:
            description: Array of objects representing time of use rates. Required
              if _rateBlockUType_ is `timeOfUseRates`.
            items:
              properties:
                displayName:
                  description: Display name of the controlled load rate.
                  type: string
                description:
                  description: Description of the controlled load rate.
                  type: string
                dailySupplyCharge:
                  description: The daily supply charge (exclusive of GST) for this
                    controlled load tier.
                  type: string
                  x-cds-type: AmountString
                rates:
                  description: Array of controlled load rates in order of usage volume.
                  items:
                    properties:
                      unitPrice:
                        description: Unit price of usage per measure unit (exclusive
                          of GST).
                        type: string
                        x-cds-type: AmountString
                      measureUnit:
                        allOf:
                        - $ref: '#/components/schemas/MeasureUnitEnum'
                        default: KWH
                        description: The measurement unit of rate. Assumed to be `KWH`
                          if absent.
                        type: string
                      volume:
                        description: Volume in kWh that this rate applies to. Only
                          applicable for 'stepped' rates where different rates apply
                          for different volumes of usage in a period.
                        type: number
                    required:
                    - unitPrice
                    type: object
                  type: array
                period:
                  default: P1Y
                  description: Usage period for which the block rate applies. Formatted
                    according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                    (excludes recurrence syntax). Defaults to `P1Y` if absent.
                  type: string
                  x-cds-type: ExternalRef
                timeOfUse:
                  description: Array of times of use.
                  items:
                    properties:
                      days:
                        description: The days that the rate applies to.
                        items:
                          $ref: '#/components/schemas/EnergyDaysEnum'
                        type: array
                      startTime:
                        description: |-
                          The beginning of the time period per day for which the controlled load rate applies. Required if _endTime_ provided.

                          Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                        type: string
                        x-cds-type: ExternalRef
                      endTime:
                        description: |-
                          The end of the time period per day for which the controlled load rate applies. Required if _startTime_ provided.

                          Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                        type: string
                        x-cds-type: ExternalRef
                      additionalInfo:
                        description: Display text providing more information on the
                          controlled load, for e.g., controlled load availability
                          if specific day/time is not known. Required if _startTime_
                          and _endTime_ absent or if _additionalInfoUri_ provided.
                        type: string
                      additionalInfoUri:
                        description: Optional link to additional information regarding
                          the controlled load.
                        type: string
                        x-cds-type: URIString
                    type: object
                    x-conditional:
                    - startTime
                    - endTime
                    - additionalInfo
                  type: array
                type:
                  description: The type of usage that the rate applies to.
                  enum:
                  - PEAK
                  - OFF_PEAK
                  - SHOULDER
                  - SOLAR_SPONGE
                  type: string
              required:
              - displayName
              - rates
              - timeOfUse
              - type
              type: object
            type: array
        required:
        - displayName
        - rateBlockUType
        type: object
        x-conditional:
        - singleRate
        - timeOfUseRates
      type: array
    EnergyPlanIncentives:
      description: Optional list of incentives available for the contract.
      items:
        properties:
          displayName:
            description: The display name of the incentive.
            type: string
          description:
            description: The description of the incentive.
            type: string
          category:
            description: The type of the incentive.
            enum:
            - GIFT
            - ACCOUNT_CREDIT
            - OTHER
            type: string
          eligibility:
            description: A display message outlining an eligibility criteria that
              may apply.
            type: string
        required:
        - category
        - description
        - displayName
        type: object
      type: array
    EnergyPlanDiscounts:
      description: Optional list of discounts available for the contract.
      items:
        properties:
          displayName:
            description: The display name of the discount.
            type: string
          description:
            description: The description of the discount.
            type: string
          type:
            description: The type of the discount.
            enum:
            - CONDITIONAL
            - GUARANTEED
            - OTHER
            type: string
          category:
            description: The type of the discount. Mandatory if the discount _type_
              is `CONDITIONAL`.
            enum:
            - PAY_ON_TIME
            - DIRECT_DEBIT
            - GUARANTEED_DISCOUNT
            - OTHER
            type: string
          endDate:
            description: Optional end date for the discount after which the discount
              is no longer available.
            type: string
            x-cds-type: DateString
          methodUType:
            description: The method of calculation of the discount.
            enum:
            - percentOfBill
            - percentOfUse
            - fixedAmount
            - percentOverThreshold
            type: string
          percentOfBill:
            description: Required if _methodUType_ is `percentOfBill`.
            properties:
              rate:
                description: The rate of the discount applied to the bill amount.
                type: string
                x-cds-type: RateString
            required:
            - rate
            type: object
          percentOfUse:
            description: Required if _methodUType_ is `percentOfUse`.
            properties:
              rate:
                description: The rate of the discount applied to the _usageamount_.
                type: string
                x-cds-type: RateString
            required:
            - rate
            type: object
          fixedAmount:
            description: Required if _methodUType_ is `fixedAmount`.
            properties:
              amount:
                description: The amount of the discount.
                type: string
                x-cds-type: AmountString
            required:
            - amount
            type: object
          percentOverThreshold:
            description: Required if _methodUType_ is `percentOverThreshold`.
            properties:
              rate:
                description: The rate of the discount over the usage amount.
                type: string
                x-cds-type: RateString
              usageAmount:
                description: The usage amount threshold above which the discount applies.
                type: string
                x-cds-type: AmountString
            required:
            - rate
            - usageAmount
            type: object
        required:
        - displayName
        - methodUType
        - type
        type: object
        x-conditional:
        - percentOfBill
        - percentOfUse
        - fixedAmount
        - percentOverThreshold
      type: array
    EnergyPlanGreenPowerCharges:
      description: Optional list of charges applicable to green power.
      items:
        properties:
          displayName:
            description: The display name of the charge.
            type: string
          description:
            description: The description of the charge.
            type: string
          scheme:
            description: The applicable green power scheme.
            enum:
            - GREENPOWER
            - OTHER
            type: string
          type:
            description: The type of charge.
            enum:
            - FIXED_PER_DAY
            - FIXED_PER_WEEK
            - FIXED_PER_MONTH
            - FIXED_PER_UNIT
            - PERCENT_OF_USE
            - PERCENT_OF_BILL
            type: string
          tiers:
            description: Array of charge tiers based on the percentage of green power
              used for the period implied by the type. Array is in order of increasing
              percentage of green power.
            items:
              properties:
                percentGreen:
                  description: The upper percentage of green power used applicable
                    for this tier.
                  type: string
                  x-cds-type: RateString
                rate:
                  description: The rate of the charge if the type implies the application
                    of a rate.
                  type: string
                  x-cds-type: RateString
                amount:
                  description: The amount of the charge if the type implies the application
                    of a fixed amount.
                  type: string
                  x-cds-type: AmountString
              required:
              - percentGreen
              type: object
              x-conditional:
              - rate
              - amount
            type: array
        required:
        - displayName
        - scheme
        - tiers
        - type
        type: object
      type: array
    EnergyPlanEligibility:
      description: Eligibility restrictions or requirements.
      items:
        properties:
          type:
            description: The type of the eligibility restriction.<br/>The `CONTINGENT_PLAN`
              value indicates that the plan is contingent on the customer taking up
              an alternate fuel plan from the same retailer (for instance, if the
              _fuelType_ is `ELECTRICITY` then a `GAS` plan from the same retailer
              must be taken up).
            enum:
            - EXISTING_CUST
            - EXISTING_POOL
            - EXISTING_SOLAR
            - EXISTING_BATTERY
            - EXISTING_SMART_METER
            - EXISTING_BASIC_METER
            - SENIOR_CARD
            - SMALL_BUSINESS
            - NO_SOLAR_FIT
            - NEW_CUSTOMER
            - ONLINE_ONLY
            - REQ_EQUIP_SUPPLIER
            - THIRD_PARTY_ONLY
            - SPORT_CLUB_MEMBER
            - ORG_MEMBER
            - SPECIFIC_LOCATION
            - MINIMUM_USAGE
            - LOYALTY_MEMBER
            - GROUP_BUY_MEMBER
            - CONTINGENT_PLAN
            - OTHER
            type: string
          information:
            description: Information of the eligibility restriction specific to the
              type of the restriction.
            type: string
          description:
            description: A description of the eligibility restriction.
            type: string
        required:
        - information
        - type
        type: object
      type: array
    EnergyPlanFees:
      description: An array of fees applicable to the plan.
      items:
        properties:
          type:
            description: The type of the fee.
            enum:
            - EXIT
            - ESTABLISHMENT
            - LATE_PAYMENT
            - DISCONNECTION
            - DISCONNECT_MOVE_OUT
            - DISCONNECT_NON_PAY
            - RECONNECTION
            - CONNECTION
            - PAYMENT_PROCESSING
            - CC_PROCESSING
            - CHEQUE_DISHONOUR
            - DD_DISHONOUR
            - MEMBERSHIP
            - CONTRIBUTION
            - PAPER_BILL
            - OTHER
            type: string
          term:
            description: The term of the fee.
            enum:
            - FIXED
            - 1_YEAR
            - 2_YEAR
            - 3_YEAR
            - 4_YEAR
            - 5_YEAR
            - PERCENT_OF_BILL
            - ANNUAL
            - DAILY
            - WEEKLY
            - MONTHLY
            - BIANNUAL
            - VARIABLE
            type: string
          amount:
            description: The fee amount. Required if _term_ is not `PERCENT_OF_BILL`.
            type: string
            x-cds-type: AmountString
          rate:
            description: The fee rate. Required if _term_ is `PERCENT_OF_BILL`.
            type: string
            x-cds-type: RateString
          description:
            description: A description of the fee.
            type: string
        required:
        - term
        - type
        type: object
        x-conditional:
        - amount
        - rate
      type: array
    EnergyPlanSolarFeedInTariffV3:
      description: Array of feed in tariffs for solar power.
      items:
        properties:
          displayName:
            description: The name of the tariff.
            type: string
          description:
            description: A description of the tariff.
            type: string
          startDate:
            description: The start date of the application of the feed in tariff.
            type: string
            x-cds-type: DateString
          endDate:
            description: The end date of the application of the feed in tariff.
            type: string
            x-cds-type: DateString
          scheme:
            description: The applicable scheme.
            enum:
            - PREMIUM
            - CURRENT
            - VARIABLE
            - OTHER
            type: string
          payerType:
            description: The type of the payer.
            enum:
            - GOVERNMENT
            - RETAILER
            type: string
          tariffUType:
            description: Reference to the applicable tariff structure.
            enum:
            - singleTariff
            - timeVaryingTariffs
            type: string
          singleTariff:
            description: Represents a constant tariff. Mandatory if _tariffUType_
              is set to `singleTariff`.
            properties:
              rates:
                description: Array of feed in rates.
                items:
                  properties:
                    unitPrice:
                      description: Unit price of usage per measure unit (exclusive
                        of GST).
                      type: string
                      x-cds-type: AmountString
                    measureUnit:
                      allOf:
                      - $ref: '#/components/schemas/MeasureUnitEnum'
                      default: KWH
                      description: The measurement unit of rate. Assumed to be `KWH`
                        if absent.
                      type: string
                    volume:
                      description: Volume that this rate applies to. Only applicable
                        for 'stepped' rates where different rates apply for different
                        volumes of usage in a period.
                      type: number
                  required:
                  - unitPrice
                  type: object
                type: array
              period:
                default: P1Y
                description: Usage period for which the block rate applies. Formatted
                  according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                  (excludes recurrence syntax). Defaults to `P1Y` if absent.
                type: string
                x-cds-type: ExternalRef
            required:
            - rates
            type: object
          timeVaryingTariffs:
            description: Represents a tariff based on time. Mandatory if _tariffUType_
              is set to `timeVaryingTariffs`.
            items:
              properties:
                type:
                  description: The type of the charging time period. If absent applies
                    to all periods.
                  enum:
                  - PEAK
                  - OFF_PEAK
                  - SHOULDER
                  type: string
                displayName:
                  description: Display name of the tariff.
                  type: string
                rates:
                  description: Array of feed in rates.
                  items:
                    properties:
                      unitPrice:
                        description: Unit price of usage per measure unit (exclusive
                          of GST).
                        type: string
                        x-cds-type: AmountString
                      measureUnit:
                        allOf:
                        - $ref: '#/components/schemas/MeasureUnitEnum'
                        default: KWH
                        description: The measurement unit of rate. Assumed to be `KWH`
                          if absent.
                        type: string
                      volume:
                        description: Volume that this rate applies to. Only applicable
                          for 'stepped' rates where different rates apply for different
                          volumes of usage in a period.
                        type: number
                    required:
                    - unitPrice
                    type: object
                  type: array
                period:
                  default: P1Y
                  description: Usage period for which the block rate applies. Formatted
                    according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                    (excludes recurrence syntax). Defaults to `P1Y` if absent.
                  type: string
                  x-cds-type: ExternalRef
                timeVariations:
                  description: Array of time periods for which this tariff is applicable.
                  items:
                    properties:
                      days:
                        description: The days that the tariff applies to. At least
                          one entry required.
                        items:
                          $ref: '#/components/schemas/EnergyDaysEnum'
                        type: array
                      startTime:
                        description: |-
                          The beginning of the time period per day for which the tariff applies. If absent assumes start of day (i.e. midnight).

                          Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                        type: string
                        x-cds-type: ExternalRef
                      endTime:
                        description: |-
                          The end of the time period per day for which the tariff applies. If absent assumes end of day (i.e. one second before midnight).

                          Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                        type: string
                        x-cds-type: ExternalRef
                    required:
                    - days
                    type: object
                  type: array
              required:
              - displayName
              - timeVariations
              type: object
            type: array
        required:
        - displayName
        - payerType
        - scheme
        - tariffUType
        type: object
        x-conditional:
        - singleTariff
        - timeVaryingTariffs
      type: array
    EnergyPlanTariffPeriodV2:
      description: Array of tariff periods.
      items:
        properties:
          type:
            default: OTHER
            description: Type of charge. Assumed to be `OTHER` if absent.
            enum:
            - ENVIRONMENTAL
            - REGULATED
            - NETWORK
            - METERING
            - RETAIL_SERVICE
            - RCTI
            - OTHER
            type: string
          displayName:
            description: The name of the tariff period.
            type: string
          startDate:
            description: The start date of the tariff period in a calendar year. Formatted
              in mm-dd format.
            type: string
          endDate:
            description: The end date of the tariff period in a calendar year. Formatted
              in mm-dd format.
            type: string
          dailySupplyChargeType:
            description: Specifies if daily supply charge is single or banded.
            enum:
            - SINGLE
            - BAND
            type: string
          dailySupplyCharge:
            description: The amount of access charge for the tariff period, in dollars
              per day exclusive of GST. Mandatory if _dailySupplyChargeType_ is `SINGLE`.
            type: string
            x-cds-type: AmountString
          bandedDailySupplyCharges:
            description: Array representing banded daily supply charge rates. Mandatory
              if _dailySupplyChargeType_ is `BAND`.
            items:
              properties:
                unitPrice:
                  description: The amount of daily supply charge for the band, in
                    dollars per day exclusive of GST.
                  type: string
                  x-cds-type: AmountString
                measureUnit:
                  allOf:
                  - $ref: '#/components/schemas/MeasureUnitEnum'
                  default: DAYS
                  description: The measurement unit of rate. Assumed to be `DAYS`
                    if absent.
                  type: string
                volume:
                  description: Volume the charge applies to.
                  type: number
              required:
              - unitPrice
              type: object
            type: array
          timeZone:
            description: Specifies the charge specific time zone for calculation of
              the time of use thresholds. If absent, timezone value in EnergyPlanContract
              is assumed.
            enum:
            - LOCAL
            - AEST
            type: string
          rateBlockUType:
            description: Specifies the type of rate applicable to this tariff period.
            enum:
            - singleRate
            - timeOfUseRates
            - demandCharges
            type: string
          singleRate:
            description: Object representing a single rate. Required if _rateBlockUType_
              is `singleRate`.
            properties:
              displayName:
                description: Display name of the rate.
                type: string
              description:
                description: Description of the rate.
                type: string
              generalUnitPrice:
                description: The block rate (unit price) for any usage above the included
                  fixed usage, in dollars per kWh inclusive of GST. Only required
                  if _pricingModel_ field is `QUOTA`.
                type: string
                x-cds-type: AmountString
              rates:
                description: Array of controlled load rates in order of usage volume.
                items:
                  properties:
                    unitPrice:
                      description: Unit price of usage per measure unit (exclusive
                        of GST).
                      type: string
                      x-cds-type: AmountString
                    measureUnit:
                      allOf:
                      - $ref: '#/components/schemas/MeasureUnitEnum'
                      default: KWH
                      description: The measurement unit of rate. Assumed to be `KWH`
                        if absent.
                      type: string
                    volume:
                      description: Volume in kWh that this rate applies to. Only applicable
                        for 'stepped' rates where different rates apply for different
                        volumes of usage in a period.
                      type: number
                  required:
                  - unitPrice
                  type: object
                type: array
              period:
                description: Usage period for which the block rate applies. Formatted
                  according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                  (excludes recurrence syntax).
                type: string
                x-cds-type: ExternalRef
            required:
            - displayName
            - rates
            type: object
            x-conditional:
            - generalUnitPrice
          timeOfUseRates:
            description: Array of objects representing time of use rates. Required
              if _rateBlockUType_ is `timeOfUseRates`.
            items:
              properties:
                displayName:
                  description: Display name of the rate.
                  type: string
                description:
                  description: Description of the rate.
                  type: string
                rates:
                  description: Array of controlled load rates in order of usage volume.
                  items:
                    properties:
                      unitPrice:
                        description: Unit price of usage per measure unit (exclusive
                          of GST).
                        type: string
                        x-cds-type: AmountString
                      measureUnit:
                        allOf:
                        - $ref: '#/components/schemas/MeasureUnitEnum'
                        default: KWH
                        description: The measurement unit of rate. Assumed to be `KWH`
                          if absent.
                        type: string
                      volume:
                        description: Volume in kWh that this rate applies to. Only
                          applicable for 'stepped' rates where different rates apply
                          for different volumes of usage in a period.
                        type: number
                    required:
                    - unitPrice
                    type: object
                  type: array
                period:
                  default: P1Y
                  description: Usage period for which the block rate applies. Formatted
                    according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
                    (excludes recurrence syntax). Defaults to `P1Y` if absent.
                  type: string
                  x-cds-type: ExternalRef
                timeOfUse:
                  description: Array of times of use.
                  items:
                    properties:
                      days:
                        description: The days that the rate applies to.
                        items:
                          $ref: '#/components/schemas/EnergyDaysEnum'
                        type: array
                      startTime:
                        description: |-
                          Start of the period.

                          Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                        type: string
                        x-cds-type: ExternalRef
                      endTime:
                        description: |-
                          End of the period.

                          Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                        type: string
                        x-cds-type: ExternalRef
                    required:
                    - days
                    - endTime
                    - startTime
                    type: object
                  type: array
                type:
                  description: The type of usage that the rate applies to.
                  enum:
                  - PEAK
                  - OFF_PEAK
                  - SHOULDER
                  - SHOULDER1
                  - SHOULDER2
                  type: string
              required:
              - displayName
              - rates
              - timeOfUse
              - type
              type: object
            type: array
          demandCharges:
            description: Array of demand charges. Required if _rateBlockUType_ is
              `demandCharges`.
            items:
              properties:
                displayName:
                  description: Display name of the charge.
                  type: string
                description:
                  description: Description of the charge.
                  type: string
                amount:
                  description: The charge amount per measure unit exclusive of GST.
                  type: string
                  x-cds-type: AmountString
                measureUnit:
                  allOf:
                  - $ref: '#/components/schemas/MeasureUnitEnum'
                  default: KWH
                  description: The measurement unit of charge amount. Assumed to be
                    `KWH` if absent.
                  type: string
                startTime:
                  description: |-
                    Start of the period.

                    Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                  type: string
                  x-cds-type: ExternalRef
                endTime:
                  description: |-
                    End of the period.

                    Formatted according to [ISO 8601 Times](https://en.wikipedia.org/wiki/ISO_8601#Times). If the time is provided without a UTC offset, the time zone will be determined by the value of EnergyPlanContract.timeZone.
                  type: string
                  x-cds-type: ExternalRef
                days:
                  description: The days that the demand tariff applies to.
                  items:
                    $ref: '#/components/schemas/EnergyDaysEnum'
                  type: array
                minDemand:
                  default: "0.00"
                  description: Minimum demand for this demand tariff in kW. If absent
                    then `0.00` is assumed.
                  type: string
                  x-cds-type: AmountString
                maxDemand:
                  description: Maximum demand for this demand tariff in kW. If present,
                    must be higher than the value of the _minDemand_ field.
                  type: string
                  x-cds-type: AmountString
                measurementPeriod:
                  description: Application period for the demand tariff.
                  enum:
                  - DAY
                  - MONTH
                  - TARIFF_PERIOD
                  type: string
                chargePeriod:
                  description: Charge period for the demand tariff.
                  enum:
                  - DAY
                  - MONTH
                  - TARIFF_PERIOD
                  type: string
              required:
              - amount
              - chargePeriod
              - displayName
              - endTime
              - measurementPeriod
              - startTime
              type: object
            type: array
        required:
        - displayName
        - endDate
        - rateBlockUType
        - startDate
        type: object
        x-conditional:
        - singleRate
        - timeOfUseRates
        - demandCharges
        - dailySupplyCharge
        - bandedDailySupplyCharges
      type: array
    EnergyDaysEnum:
      enum:
      - SUN
      - MON
      - TUE
      - WED
      - THU
      - FRI
      - SAT
      - PUBLIC_HOLIDAYS
      type: string
    EnergyServicePointV2:
      example:
        lastUpdateDateTime: lastUpdateDateTime
        consumerProfile:
          threshold: LOW
          classification: BUSINESS
        servicePointId: ""
        jurisdictionCode: ALL
        validFromDate: validFromDate
        nationalMeteringId: nationalMeteringId
        servicePointStatus: ACTIVE
        servicePointClassification: EXTERNAL_PROFILE
        lastConsumerChangeDate: lastConsumerChangeDate
        isGenerator: false
      properties:
        servicePointId:
          allOf:
          - $ref: '#/components/schemas/EnergyServicePointId'
          description: Unique identifier for the service point.
        nationalMeteringId:
          description: The independent ID of the service point, known in the industry
            as the NMI.
          type: string
        servicePointClassification:
          description: The classification of the service point as defined in MSATS
            procedures.
          enum:
          - EXTERNAL_PROFILE
          - GENERATOR
          - LARGE
          - SMALL
          - WHOLESALE
          - NON_CONTEST_UNMETERED_LOAD
          - NON_REGISTERED_EMBEDDED_GENERATOR
          - DISTRIBUTION_WHOLESALE
          type: string
        servicePointStatus:
          description: 'Code used to indicate the status of the service point. Note
            the details for the enumeration values below:<ul><li>`ACTIVE`: An active,
            energised, service point</li><li>`DE_ENERGISED`: The service point exists
            but is deenergised</li><li>`EXTINCT`: The service point has been permanently
            decommissioned</li><li>`GREENFIELD`: Applies to a service point that has
            never been energised</li><li>`OFF_MARKET`: Applies when the service point
            is no longer settled in the NEM.</li></ul>'
          enum:
          - ACTIVE
          - DE_ENERGISED
          - EXTINCT
          - GREENFIELD
          - OFF_MARKET
          type: string
        jurisdictionCode:
          description: 'Jurisdiction code to which the service point belongs.This
            code defines the jurisdictional rules which apply to the service point.
            Note the details of enumeration values below:<ul><li>`ALL`: All Jurisdictions</li><li>`ACT`:
            Australian Capital Territory</li><li>`NEM`: National Electricity Market</li><li>`NSW`:
            New South Wales</li><li>`QLD`: Queensland</li><li>`SA`: South Australia</li><li>`TAS`:
            Tasmania</li><li>`VIC`: Victoria.</li></ul>'
          enum:
          - ALL
          - ACT
          - NEM
          - NSW
          - QLD
          - SA
          - TAS
          - VIC
          type: string
        isGenerator:
          default: false
          description: This flag determines whether the energy at this connection
            point is to be treated as consumer load or as a generating unit (this
            may include generator auxiliary loads). If absent defaults to `false`.
            <br>**Note:** Only applicable for scheduled or semischeduled generators,
            does not indicate on site generation by consumer.
          type: boolean
        validFromDate:
          description: The latest start date from which the constituent data sets
            of this service point became valid.
          type: string
          x-cds-type: DateString
        lastUpdateDateTime:
          description: The date and time that the information for this service point
            was modified.
          type: string
          x-cds-type: DateTimeString
        lastConsumerChangeDate:
          description: The date the account holder changed for the NMI.
          type: string
          x-cds-type: DateString
        consumerProfile:
          $ref: '#/components/schemas/EnergyServicePointV2_consumerProfile'
      required:
      - jurisdictionCode
      - lastUpdateDateTime
      - nationalMeteringId
      - servicePointClassification
      - servicePointId
      - servicePointStatus
      - validFromDate
      type: object
    EnergyServicePointDetailV2:
      allOf:
      - $ref: '#/components/schemas/EnergyServicePointV2'
      - $ref: '#/components/schemas/EnergyServicePointDetailV2_allOf'
    EnergyUsageRead:
      example:
        basicRead:
          value: 0.8008281904610115
          quality: ACTUAL
        unitOfMeasure: unitOfMeasure
        registerId: registerId
        meterId: meterId
        intervalRead:
          readIntervalLength: 6
          intervalReads:
          - 5.962133916683182
          - 5.962133916683182
          readQualities:
          - startInterval: 1
            endInterval: 1
            quality: SUBSTITUTE
          - startInterval: 1
            endInterval: 1
            quality: SUBSTITUTE
          aggregateValue: 1.4658129805029452
        servicePointId: ""
        registerSuffix: registerSuffix
        readEndDate: readEndDate
        readStartDate: readStartDate
        controlledLoad: true
        readUType: basicRead
      properties:
        servicePointId:
          allOf:
          - $ref: '#/components/schemas/EnergyServicePointId'
          description: Unique identifier for the service point.
        registerId:
          description: Register ID of the meter register where the meter reads are
            obtained.
          type: string
        registerSuffix:
          description: Register suffix of the meter register where the meter reads
            are obtained.
          type: string
        meterId:
          description: Meter id/serial number as it appears in customer's bill. ID
            permanence rules do not apply.
          type: string
        controlledLoad:
          description: Indicates whether the energy recorded by this register is created
            under a Controlled Load regime.
          type: boolean
        readStartDate:
          description: Date when the meter reads start in AEST and assumed to start
            from 12:00am AEST.
          type: string
          x-cds-type: DateString
        readEndDate:
          description: Date when the meter reads end in AEST. If absent then assumed
            to be equal to _readStartDate_. In this case the entry represents data
            for a single date specified by _readStartDate_.
          type: string
          x-cds-type: DateString
        unitOfMeasure:
          description: Unit of measure of the meter reads. Refer to Appendix B of
            <a href='https://www.aemo.com.au/-/media/files/stakeholder_consultation/consultations/nem-consultations/2019/5ms-metering-package-2/final-determination/mdff-specification-nem12-nem13-v21-final-determination-clean.pdf?la=en&hash=03FCBA0D60E091DE00F2361AE76206EA'>MDFF
            Specification NEM12 NEM13 v2.1</a> for a list of possible values.
          type: string
          x-cds-type: ExternalRef
        readUType:
          description: Specify the type of the meter read data.
          enum:
          - basicRead
          - intervalRead
          type: string
        basicRead:
          $ref: '#/components/schemas/EnergyUsageRead_basicRead'
        intervalRead:
          $ref: '#/components/schemas/EnergyUsageRead_intervalRead'
      required:
      - readStartDate
      - readUType
      - registerSuffix
      - servicePointId
      type: object
      x-conditional:
      - basicRead
      - intervalRead
    EnergyDerRecord:
      example:
        protectionMode:
          interTripScheme: interTripScheme
          underFrequencyProtectionDelay: 2.3021358869347655
          underVoltageProtection: 3.616076749251911
          exportLimitKva: 5.962133916683182
          overFrequencyProtectionDelay: 9.301444243932576
          overFrequencyProtection: 7.061401241503109
          overVoltageProtectionDelay: 7.386281948385884
          sustainedOverVoltageDelay: 1.0246457001441578
          frequencyRateOfChange: 1.4894159098541704
          underFrequencyProtection: 5.637376656633329
          underVoltageProtectionDelay: 2.027123023002322
          overVoltageProtection: 4.145608029883936
          neutralVoltageDisplacement: 7.457744773683766
          sustainedOverVoltage: 1.2315135367772556
          voltageVectorShift: 6.84685269835264
        installedPhasesCount: 0
        availablePhasesCount: 1
        islandableInstallation: true
        servicePointId: ""
        approvedCapacity: 0.8008281904610115
        hasCentralProtectionControl: false
        acConnections:
        - inverterSeries: inverterSeries
          inverterModelNumber: inverterModelNumber
          inverterDeviceCapacity: 5.025004791520295
          manufacturerName: manufacturerName
          count: 4
          connectionIdentifier: 1.1730742509559433
          commissioningDate: commissioningDate
          derDevices:
          - nominalRatedCapacity: 6.683562403749608
            deviceIdentifier: 9.965781217890562
            nominalStorageCapacity: 8.762042012749001
            subtype: subtype
            count: 9
            modelNumber: modelNumber
            type: FOSSIL
            manufacturer: manufacturer
            status: ACTIVE
          - nominalRatedCapacity: 6.683562403749608
            deviceIdentifier: 9.965781217890562
            nominalStorageCapacity: 8.762042012749001
            subtype: subtype
            count: 9
            modelNumber: modelNumber
            type: FOSSIL
            manufacturer: manufacturer
            status: ACTIVE
          equipmentType: OTHER
          status: ACTIVE
        - inverterSeries: inverterSeries
          inverterModelNumber: inverterModelNumber
          inverterDeviceCapacity: 5.025004791520295
          manufacturerName: manufacturerName
          count: 4
          connectionIdentifier: 1.1730742509559433
          commissioningDate: commissioningDate
          derDevices:
          - nominalRatedCapacity: 6.683562403749608
            deviceIdentifier: 9.965781217890562
            nominalStorageCapacity: 8.762042012749001
            subtype: subtype
            count: 9
            modelNumber: modelNumber
            type: FOSSIL
            manufacturer: manufacturer
            status: ACTIVE
          - nominalRatedCapacity: 6.683562403749608
            deviceIdentifier: 9.965781217890562
            nominalStorageCapacity: 8.762042012749001
            subtype: subtype
            count: 9
            modelNumber: modelNumber
            type: FOSSIL
            manufacturer: manufacturer
            status: ACTIVE
          equipmentType: OTHER
          status: ACTIVE
      properties:
        servicePointId:
          allOf:
          - $ref: '#/components/schemas/EnergyServicePointId'
          description: Unique identifier for the service point.
        approvedCapacity:
          description: Approved small generating unit capacity as agreed with NSP
            in the connection agreement, expressed in kVA. Value of `0` indicates
            no DER record exists for the given _servicePointId_.
          type: number
        availablePhasesCount:
          description: The number of phases available for the installation of DER.
            Acceptable values are `0`, `1`, `2` or `3`. Value of `0` indicates no
            DER record exists for the given _servicePointId_.
          maximum: 3
          minimum: 0
          type: integer
          x-cds-type: NaturalNumber
        installedPhasesCount:
          description: The number of phases that DER is connected to. Acceptable values
            are `0`, `1`, `2` or `3`. Value of `0` indicates no DER record exists
            for the given _servicePointId_.
          maximum: 3
          minimum: 0
          type: integer
          x-cds-type: NaturalNumber
        islandableInstallation:
          description: For identification of small generating units designed with
            the ability to operate in an islanded mode.
          type: boolean
        hasCentralProtectionControl:
          default: false
          description: For DER installations where NSPs specify the need for additional
            forms of protection above those inbuilt in an inverter. If absent then
            assumed to be `false`.
          type: boolean
        protectionMode:
          $ref: '#/components/schemas/EnergyDerRecord_protectionMode'
        acConnections:
          items:
            $ref: '#/components/schemas/EnergyDerRecord_acConnections'
          type: array
      required:
      - acConnections
      - approvedCapacity
      - availablePhasesCount
      - installedPhasesCount
      - islandableInstallation
      - servicePointId
      type: object
      x-conditional:
      - protectionMode
    EnergyAccountBaseV2:
      properties:
        accountId:
          allOf:
          - $ref: '#/components/schemas/EnergyAccountId'
          description: Unique identifier for the account.
        accountNumber:
          description: Optional identifier of the account as defined by the data holder.
            This must be the value presented on physical statements (if it exists)
            and must not be used for the value of _accountId_.
          type: string
        displayName:
          description: An optional display name for the account if one exists or can
            be derived. The content of this field is at the discretion of the data
            holder.
          type: string
        openStatus:
          default: OPEN
          description: Open or closed status for the account. If not present then
            `OPEN` is assumed.
          enum:
          - CLOSED
          - OPEN
          type: string
        creationDate:
          description: The date that the account was created or opened. Mandatory
            if _openStatus_ is `OPEN`.
          type: string
          x-cds-type: DateString
      required:
      - accountId
      type: object
      x-conditional:
      - creationDate
    EnergyAccountV2:
      allOf:
      - $ref: '#/components/schemas/EnergyAccountBaseV2'
      - $ref: '#/components/schemas/EnergyAccountV2_allOf'
    EnergyAccountDetailV4:
      allOf:
      - $ref: '#/components/schemas/EnergyAccountBaseV2'
      - $ref: '#/components/schemas/EnergyAccountDetailV4_allOf'
    EnergyPaymentSchedule:
      example:
        manualPayment:
          billFrequency: billFrequency
        amount: amount
        digitalWallet:
          calculationType: STATIC
          identifier: identifier
          provider: PAYPAL_AU
          name: name
          type: EMAIL
          paymentFrequency: paymentFrequency
        cardDebit:
          calculationType: STATIC
          cardScheme: VISA
          paymentFrequency: paymentFrequency
        directDebit:
          bsb: bsb
          calculationType: STATIC
          accountNumber: accountNumber
          paymentFrequency: paymentFrequency
          isTokenised: false
        paymentScheduleUType: cardDebit
      properties:
        amount:
          description: Optional payment amount indicating that a constant payment
            amount is scheduled to be paid (used in bill smoothing scenarios).
          type: string
          x-cds-type: AmountString
        paymentScheduleUType:
          description: The type of object present in this response.
          enum:
          - cardDebit
          - directDebit
          - manualPayment
          - digitalWallet
          type: string
        cardDebit:
          $ref: '#/components/schemas/EnergyPaymentSchedule_cardDebit'
        directDebit:
          $ref: '#/components/schemas/EnergyPaymentSchedule_directDebit'
        digitalWallet:
          $ref: '#/components/schemas/EnergyPaymentSchedule_digitalWallet'
        manualPayment:
          $ref: '#/components/schemas/EnergyPaymentSchedule_manualPayment'
      required:
      - paymentScheduleUType
      type: object
      x-conditional:
      - cardDebit
      - directDebit
      - manualPayment
      - digitalWallet
    EnergyConcession:
      example:
        amount: amount
        additionalInfoUri: additionalInfoUri
        endDate: endDate
        displayName: displayName
        appliedTo:
        - USAGE
        - USAGE
        percentage: percentage
        additionalInfo: additionalInfo
        type: FIXED_AMOUNT
        discountFrequency: discountFrequency
        startDate: startDate
      properties:
        type:
          description: Indicator of the method of concession calculation.
          enum:
          - FIXED_AMOUNT
          - FIXED_PERCENTAGE
          - VARIABLE
          type: string
        displayName:
          description: The display name of the concession.
          type: string
        additionalInfo:
          description: Display text providing more information on the concession.
            Mandatory if _type_ is `VARIABLE`.
          type: string
        additionalInfoUri:
          description: Optional link to additional information regarding the concession.
          type: string
          x-cds-type: URIString
        startDate:
          description: Optional start date for the application of the concession.
          type: string
          x-cds-type: DateString
        endDate:
          description: Optional end date for the application of the concession.
          type: string
          x-cds-type: DateString
        discountFrequency:
          description: Conditional attribute for frequency at which a concession is
            applied. Required if type is `FIXED_AMOUNT` or `FIXED_PERCENTAGE`. Formatted
            according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
            (excludes recurrence syntax).
          type: string
          x-cds-type: ExternalRef
        amount:
          description: Conditional attribute for the amount of discount for the concession-
            required if type is `FIXED_AMOUNT`.
          type: string
          x-cds-type: AmountString
        percentage:
          description: Conditional attribute for the percentage of discount of concession
            - required if type is `FIXED_PERCENTAGE`.
          type: string
          x-cds-type: RateString
        appliedTo:
          description: Array of ENUMs to specify what the concession applies to. Multiple
            ENUM values can be provided. If absent, `USAGE` is assumed.
          items:
            default: USAGE
            enum:
            - INVOICE
            - USAGE
            - SERVICE_CHARGE
            - CONTROLLED_LOAD
            type: string
          type: array
      required:
      - displayName
      - type
      type: object
      x-conditional:
      - additionalInfo
      - discountFrequency
      - amount
      - percentage
    EnergyInvoice:
      example:
        gstAmount: "0.00"
        period:
          endDate: endDate
          startDate: startDate
        accountCharges:
          totalGst: "0.00"
          totalDiscounts: totalDiscounts
          totalCharges: totalCharges
        dueDate: dueDate
        servicePoints:
        - servicePoints
        - servicePoints
        invoiceAmount: invoiceAmount
        electricity: ""
        balanceAtIssue: balanceAtIssue
        accountId: ""
        invoiceNumber: invoiceNumber
        gas: ""
        issueDate: issueDate
        payOnTimeDiscount:
          date: date
          gstAmount: "0.00"
          discountAmount: discountAmount
        paymentStatus: PAID
      properties:
        accountId:
          allOf:
          - $ref: '#/components/schemas/EnergyAccountId'
          description: Unique identifier for the account.
        invoiceNumber:
          description: The number assigned to this invoice by the energy Retailer.
          type: string
        issueDate:
          description: The date that the invoice was actually issued (as opposed to
            generated or calculated).
          type: string
          x-cds-type: DateString
        dueDate:
          description: The date that the invoice is due to be paid.
          type: string
          x-cds-type: DateString
        period:
          $ref: '#/components/schemas/EnergyInvoice_period'
        invoiceAmount:
          description: The net amount due for this invoice regardless of previous
            balance.
          type: string
          x-cds-type: AmountString
        gstAmount:
          default: "0.00"
          description: The total GST amount for this invoice. If absent then zero
            is assumed.
          type: string
          x-cds-type: AmountString
        payOnTimeDiscount:
          $ref: '#/components/schemas/EnergyInvoice_payOnTimeDiscount'
        balanceAtIssue:
          description: The account balance at the time the invoice was issued.
          type: string
          x-cds-type: AmountString
        servicePoints:
          description: Array of service point IDs to which this invoice applies. May
            be empty if the invoice contains no electricity usage related charges.
          items:
            type: string
          type: array
        gas:
          allOf:
          - $ref: '#/components/schemas/EnergyInvoiceGasUsageCharges'
          description: Object containing charges and credits related to gas usage.
        electricity:
          allOf:
          - $ref: '#/components/schemas/EnergyInvoiceElectricityUsageCharges'
          description: Object containing charges and credits related to electricity
            usage.
        accountCharges:
          $ref: '#/components/schemas/EnergyInvoiceAccountCharges'
        paymentStatus:
          description: Indicator of the payment status for the invoice.
          enum:
          - PAID
          - PARTIALLY_PAID
          - NOT_PAID
          type: string
      required:
      - accountId
      - balanceAtIssue
      - invoiceNumber
      - issueDate
      - paymentStatus
      - servicePoints
      type: object
      x-conditional:
      - period
    EnergyInvoiceGasUsageCharges:
      properties:
        totalUsageCharges:
          description: The aggregate total of usage charges for the period covered
            by the invoice (exclusive of GST).
          type: string
          x-cds-type: AmountString
        totalGenerationCredits:
          description: The aggregate total of generation credits for the period covered
            by the invoice (exclusive of GST).
          type: string
          x-cds-type: AmountString
        totalOnceOffCharges:
          description: The aggregate total of any once off charges arising from gas
            usage for the period covered by the invoice (exclusive of GST).
          type: string
          x-cds-type: AmountString
        totalOnceOffDiscounts:
          description: The aggregate total of any once off discounts or credits arising
            from gas usage for the period covered by the invoice (exclusive of GST).
          type: string
          x-cds-type: AmountString
        otherCharges:
          description: Optional array of charges that may be part of the invoice (for
            e.g., environmental charges for C&I consumers) (exclusive of GST).
          items:
            $ref: '#/components/schemas/EnergyInvoiceGasUsageCharges_otherCharges'
          type: array
        totalGst:
          default: "0.00"
          description: The total GST for all gas usage charges. If absent then zero
            is assumed.
          type: string
          x-cds-type: AmountString
      required:
      - totalGenerationCredits
      - totalOnceOffCharges
      - totalOnceOffDiscounts
      - totalUsageCharges
      type: object
    EnergyInvoiceElectricityUsageCharges:
      properties:
        totalUsageCharges:
          description: The aggregate total of usage charges for the period covered
            by the invoice (exclusive of GST).
          type: string
          x-cds-type: AmountString
        totalGenerationCredits:
          description: The aggregate total of generation credits for the period covered
            by the invoice (exclusive of GST).
          type: string
          x-cds-type: AmountString
        totalOnceOffCharges:
          description: The aggregate total of any once off charges arising from electricity
            usage for the period covered by the invoice (exclusive of GST).
          type: string
          x-cds-type: AmountString
        totalOnceOffDiscounts:
          description: The aggregate total of any once off discounts or credits arising
            from electricity usage for the period covered by the invoice (exclusive
            of GST).
          type: string
          x-cds-type: AmountString
        otherCharges:
          description: Optional array of charges that may be part of the invoice (for
            e.g., environmental charges for C&I consumers) (exclusive of GST).
          items:
            $ref: '#/components/schemas/EnergyInvoiceGasUsageCharges_otherCharges'
          type: array
        totalGst:
          default: "0.00"
          description: The total GST for all electricity usage charges. If absent
            then zero is assumed.
          type: string
          x-cds-type: AmountString
      required:
      - totalGenerationCredits
      - totalOnceOffCharges
      - totalOnceOffDiscounts
      - totalUsageCharges
      type: object
    EnergyInvoiceAccountCharges:
      description: Object contains account level charges and credits related to electricity
        usage.
      example:
        totalGst: "0.00"
        totalDiscounts: totalDiscounts
        totalCharges: totalCharges
      properties:
        totalCharges:
          description: The aggregate total of account level charges for the period
            covered by the invoice.
          type: string
          x-cds-type: AmountString
        totalDiscounts:
          description: The aggregate total of account level discounts or credits for
            the period covered by the invoice.
          type: string
          x-cds-type: AmountString
        totalGst:
          default: "0.00"
          description: The total GST for all account level charges. If absent then
            zero is assumed.
          type: string
          x-cds-type: AmountString
      required:
      - totalCharges
      - totalDiscounts
      type: object
    EnergyBillingTransactionV3:
      example:
        accountId: ""
        onceOff: ""
        otherCharges: ""
        usage: ""
        gst: "0.00"
        payment: ""
        executionDateTime: executionDateTime
        transactionUType: usage
        demand: ""
      properties:
        accountId:
          allOf:
          - $ref: '#/components/schemas/EnergyAccountId'
          description: Unique identifier for the account.
        executionDateTime:
          description: The date and time that the transaction occurred.
          type: string
          x-cds-type: DateTimeString
        gst:
          default: "0.00"
          description: The GST incurred in the transaction. Should not be included
            for credits or payments. If absent then zero is assumed.
          type: string
          x-cds-type: AmountString
        transactionUType:
          description: Indicator of the type of transaction object present in this
            record.
          enum:
          - usage
          - demand
          - onceOff
          - otherCharges
          - payment
          type: string
        usage:
          allOf:
          - $ref: '#/components/schemas/EnergyBillingUsageTransactionV2'
          description: Represents a usage charge or generation credit. Mandatory if
            _transactionUType_ is equal to `usage`.
        demand:
          allOf:
          - $ref: '#/components/schemas/EnergyBillingDemandTransactionV3'
          description: Represents a demand charge or generation credit. Mandatory
            if _transactionUType_ is equal to `demand`.
        onceOff:
          allOf:
          - $ref: '#/components/schemas/EnergyBillingOnceOffTransaction'
          description: Represents a once off charge or credit. Mandatory if _transactionUType_
            is equal to `onceOff`.
        otherCharges:
          allOf:
          - $ref: '#/components/schemas/EnergyBillingOtherTransaction'
          description: Represents charge other than usage and once off. Mandatory
            if _transactionUType_ is equal to `otherCharges`.
        payment:
          allOf:
          - $ref: '#/components/schemas/EnergyBillingPaymentTransaction'
          description: Represents a payment to the account. Mandatory if _transactionUType_
            is equal to `payment`.
      required:
      - accountId
      - executionDateTime
      - transactionUType
      type: object
      x-conditional:
      - usage
      - onceOff
      - payment
    EnergyBillingUsageTransactionV2:
      properties:
        servicePointId:
          allOf:
          - $ref: '#/components/schemas/EnergyServicePointId'
          description: Unique identifier for the service point.
        invoiceNumber:
          description: The number of the invoice in which this transaction is included
            if it has been issued.
          type: string
        timeOfUseType:
          description: The time of use type that the transaction applies to.
          enum:
          - PEAK
          - OFF_PEAK
          - OFF_PEAK_DEMAND_CHARGE
          - SHOULDER
          - SHOULDER1
          - SHOULDER2
          - CONTROLLED_LOAD
          - SOLAR
          - AGGREGATE
          - ALL_DAY
          type: string
        description:
          description: Optional description of the transaction that can be used for
            display purposes.
          type: string
        isEstimate:
          default: false
          description: Flag indicating if the usage is estimated or actual. `true`
            indicates estimate. `false` or absent indicates actual.
          type: boolean
        startDate:
          description: Date and time when the usage period starts.
          type: string
          x-cds-type: DateTimeString
        endDate:
          description: Date and time when the usage period ends.
          type: string
          x-cds-type: DateTimeString
        measureUnit:
          allOf:
          - $ref: '#/components/schemas/MeasureUnitEnum'
          default: KWH
          description: The measurement unit of rate. Assumed to be `KWH` if absent.
          type: string
        usage:
          description: The usage for the period in measure unit. A negative value
            indicates power generated.
          type: number
        amount:
          description: The amount charged or credited for this transaction prior to
            any adjustments being applied. A negative value indicates a credit.
          type: string
          x-cds-type: AmountString
        calculationFactors:
          description: Additional calculation factors that inform the transaction.
          items:
            $ref: '#/components/schemas/EnergyBillingUsageTransactionV2_calculationFactors'
          type: array
        adjustments:
          description: Optional array of adjustments arising for this transaction.
          items:
            $ref: '#/components/schemas/EnergyBillingUsageTransactionV2_adjustments'
          type: array
      required:
      - amount
      - endDate
      - startDate
      - timeOfUseType
      - usage
      type: object
    EnergyBillingDemandTransactionV3:
      properties:
        servicePointId:
          allOf:
          - $ref: '#/components/schemas/EnergyServicePointId'
          description: Unique identifier for the service point.
        invoiceNumber:
          description: The number of the invoice in which this transaction is included
            if it has been issued.
          type: string
        timeOfUseType:
          description: The time of use type that the transaction applies to.
          enum:
          - PEAK
          - OFF_PEAK
          - OFF_PEAK_DEMAND_CHARGE
          - SHOULDER
          - SHOULDER1
          - SHOULDER2
          - CONTROLLED_LOAD
          - SOLAR
          - AGGREGATE
          - ALL_DAY
          - EXCESS
          type: string
        description:
          description: Optional description of the transaction that can be used for
            display purposes.
          type: string
        isEstimate:
          default: false
          description: Flag indicating if the usage is estimated or actual. `true`
            indicates estimate. `false` or absent indicates actual.
          type: boolean
        startDate:
          description: Date and time when the demand period starts.
          type: string
          x-cds-type: DateTimeString
        endDate:
          description: Date and time when the demand period ends.
          type: string
          x-cds-type: DateTimeString
        measureUnit:
          allOf:
          - $ref: '#/components/schemas/MeasureUnitEnum'
          default: KVA
          description: The measurement unit of rate. Assumed to be `KVA` if absent.
          type: string
        rate:
          description: The rate for the demand charge in _measureUnit_. Assumed to
            be `KVA` if _measureUnit_ not provided. A negative value indicates power
            generated.
          type: number
        amount:
          description: The amount charged or credited for this transaction prior to
            any adjustments being applied. A negative value indicates a credit.
          type: string
          x-cds-type: AmountString
        calculationFactors:
          description: Additional calculation factors that inform the transaction.
          items:
            $ref: '#/components/schemas/EnergyBillingUsageTransactionV2_calculationFactors'
          type: array
        adjustments:
          description: Optional array of adjustments arising for this transaction.
          items:
            $ref: '#/components/schemas/EnergyBillingUsageTransactionV2_adjustments'
          type: array
      required:
      - amount
      - endDate
      - rate
      - startDate
      - timeOfUseType
      type: object
    MeasureUnitEnum:
      enum:
      - KWH
      - KVA
      - KVAR
      - KVARH
      - KW
      - DAYS
      - METER
      - MONTH
      type: string
    EnergyBillingOnceOffTransaction:
      properties:
        servicePointId:
          allOf:
          - $ref: '#/components/schemas/EnergyServicePointId'
          description: Unique identifier for the service point.
        invoiceNumber:
          description: The number of the invoice in which this transaction is included
            if it has been issued.
          type: string
        amount:
          description: The amount of the charge or credit. A positive value indicates
            a charge and a negative value indicates a credit.
          type: string
          x-cds-type: AmountString
        description:
          description: A free text description of the item.
          type: string
      required:
      - amount
      - description
      type: object
    EnergyBillingOtherTransaction:
      properties:
        servicePointId:
          allOf:
          - $ref: '#/components/schemas/EnergyServicePointId'
          description: Unique identifier for the service point.
        invoiceNumber:
          description: The number of the invoice in which this transaction is included
            if it has been issued.
          type: string
        startDate:
          description: Optional start date for the application of the charge.
          type: string
          x-cds-type: DateString
        endDate:
          description: Optional end date for the application of the charge.
          type: string
          x-cds-type: DateString
        type:
          default: OTHER
          description: Type of charge. Assumed to be `OTHER` if absent.
          enum:
          - ENVIRONMENTAL
          - REGULATED
          - NETWORK
          - METERING
          - RETAIL_SERVICE
          - RCTI
          - OTHER
          type: string
        amount:
          description: The amount of the charge.
          type: string
          x-cds-type: AmountString
        description:
          description: A free text description of the item.
          type: string
        calculationFactors:
          description: Additional calculation factors that inform the transaction.
          items:
            $ref: '#/components/schemas/EnergyBillingUsageTransactionV2_calculationFactors'
          type: array
        adjustments:
          description: Optional array of adjustments arising for this transaction.
          items:
            $ref: '#/components/schemas/EnergyBillingUsageTransactionV2_adjustments'
          type: array
      required:
      - amount
      - description
      type: object
    EnergyBillingPaymentTransaction:
      properties:
        amount:
          description: The amount paid.
          type: string
          x-cds-type: AmountString
        method:
          description: The method of payment.
          enum:
          - DIRECT_DEBIT
          - CARD
          - TRANSFER
          - BPAY
          - CASH
          - CHEQUE
          - OTHER
          type: string
      required:
      - amount
      - method
      type: object
    CommonPhysicalAddress:
      properties:
        addressUType:
          description: The type of address object present.
          enum:
          - paf
          - simple
          type: string
        simple:
          $ref: '#/components/schemas/CommonSimpleAddress'
        paf:
          $ref: '#/components/schemas/CommonPAFAddress'
      required:
      - addressUType
      type: object
      x-conditional:
      - simple
      - paf
    CommonSimpleAddress:
      description: Required if _addressUType_ is set to `simple`.
      properties:
        mailingName:
          description: Name of the individual or business formatted for inclusion
            in an address used for physical mail.
          type: string
        addressLine1:
          description: First line of the standard address object.
          type: string
        addressLine2:
          description: Second line of the standard address object.
          type: string
        addressLine3:
          description: Third line of the standard address object.
          type: string
        postcode:
          description: Mandatory for Australian addresses.
          type: string
        city:
          description: Name of the city or locality.
          type: string
        state:
          description: Free text if the country is not Australia. If country is Australia
            then must be one of the values defined by the [State Type Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf)
            in the PAF file format. `NSW`, `QLD`, `VIC`, `NT`, `WA`, `SA`, `TAS`,
            `ACT`, `AAT`.
          type: string
        country:
          default: AUS
          description: A valid [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html)
            country code. Australia (`AUS`) is assumed if country is not present.
          type: string
          x-cds-type: ExternalRef
      required:
      - addressLine1
      - city
      - state
      type: object
      x-conditional:
      - postcode
    CommonPAFAddress:
      description: Australian address formatted according to the file format defined
        by the [PAF file format](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf).
        Required if _addressUType_ is set to `paf`.
      properties:
        dpid:
          description: Unique identifier for an address as defined by Australia Post.
            Also known as Delivery Point Identifier.
          type: string
        thoroughfareNumber1:
          description: Thoroughfare number for a property (first number in a property
            ranged address).
          type: integer
          x-cds-type: PositiveInteger
        thoroughfareNumber1Suffix:
          description: Suffix for the thoroughfare number. Only relevant if _thoroughfareNumber1_
            is populated.
          type: string
        thoroughfareNumber2:
          description: Second thoroughfare number (only used if the property has a
            ranged address e.g., 23-25).
          type: integer
          x-cds-type: PositiveInteger
        thoroughfareNumber2Suffix:
          description: Suffix for the second thoroughfare number. Only relevant if
            _thoroughfareNumber2_ is populated.
          type: string
        flatUnitType:
          description: Type of flat or unit for the address.
          type: string
        flatUnitNumber:
          description: Unit number (including suffix, if applicable).
          type: string
        floorLevelType:
          description: Type of floor or level for the address.
          type: string
        floorLevelNumber:
          description: Floor or level number (including alpha characters).
          type: string
        lotNumber:
          description: Allotment number for the address.
          type: string
        buildingName1:
          description: Building/Property name 1.
          type: string
        buildingName2:
          description: Building/Property name 2.
          type: string
        streetName:
          description: The name of the street.
          type: string
        streetType:
          description: The street type. Valid enumeration defined by Australia Post
            PAF code file.
          type: string
        streetSuffix:
          description: The street type suffix. Valid enumeration defined by Australia
            Post PAF code file.
          type: string
        postalDeliveryType:
          description: Postal delivery type. (e.g., PO BOX). Valid enumeration defined
            by Australia Post PAF code file.
          type: string
        postalDeliveryNumber:
          description: Postal delivery number if the address is a postal delivery
            type.
          type: integer
          x-cds-type: PositiveInteger
        postalDeliveryNumberPrefix:
          description: Postal delivery number prefix related to the postal delivery
            number.
          type: string
        postalDeliveryNumberSuffix:
          description: Postal delivery number suffix related to the postal delivery
            number.
          type: string
        localityName:
          description: Full name of locality.
          type: string
        postcode:
          description: Postcode for the locality.
          type: string
        state:
          description: State in which the address belongs. Valid enumeration defined
            by Australia Post PAF code file [State Type Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf).
            `NSW`, `QLD`, `VIC`, `NT`, `WA`, `SA`, `TAS`, `ACT`, `AAT`.
          type: string
      required:
      - localityName
      - postcode
      - state
      type: object
    RequestServicePointIdListV1:
      example:
        data:
          servicePointIds:
          - null
          - null
        meta: '{}'
      properties:
        data:
          $ref: '#/components/schemas/RequestServicePointIdListV1_data'
        meta:
          type: object
      required:
      - data
      type: object
    RequestAccountIdListV1:
      example:
        data:
          accountIds:
          - null
          - null
        meta: '{}'
      properties:
        data:
          $ref: '#/components/schemas/RequestAccountIdListV1_data'
        meta:
          type: object
      required:
      - data
      type: object
    EnergyPlanId:
      description: The unique identifier for the Energy plan.
      type: string
      x-cds-type: ASCIIString
    EnergyServicePointId:
      description: A unique identifier for an Energy service point, generated according
        to [CDR ID Permanence](#id-permanence) requirements.
      type: string
      x-cds-type: ASCIIString
    EnergyAccountId:
      description: A unique identifier for an Energy account, generated according
        to [CDR ID Permanence](#id-permanence) requirements.
      type: string
      x-cds-type: ASCIIString
    Links:
      example:
        self: self
      properties:
        self:
          description: Fully qualified link that generated the current response document.
          type: string
          x-cds-type: URIString
      required:
      - self
      type: object
    Meta:
      type: object
    LinksPaginated:
      example:
        next: next
        last: last
        prev: prev
        self: self
        first: first
      properties:
        self:
          description: Fully qualified link that generated the current response document.
          type: string
          x-cds-type: URIString
        first:
          description: URI to the first page of this set. Mandatory if this response
            is not the first page.
          type: string
          x-cds-type: URIString
        prev:
          description: URI to the previous page of this set. Mandatory if this response
            is not the first page.
          type: string
          x-cds-type: URIString
        next:
          description: URI to the next page of this set. Mandatory if this response
            is not the last page.
          type: string
          x-cds-type: URIString
        last:
          description: URI to the last page of this set. Mandatory if this response
            is not the last page.
          type: string
          x-cds-type: URIString
      required:
      - self
      type: object
      x-conditional:
      - first
      - prev
      - next
      - last
    MetaPaginated:
      example:
        totalRecords: 0
        totalPages: 6
      properties:
        totalRecords:
          description: The total number of records in the full set. See [pagination](#pagination).
          type: integer
          x-cds-type: NaturalNumber
        totalPages:
          description: The total number of pages in the full set. See [pagination](#pagination).
          type: integer
          x-cds-type: NaturalNumber
      required:
      - totalPages
      - totalRecords
      type: object
    EnergyPlanListResponse_data:
      example:
        plans:
        - additionalInformation:
            eligibilityUri: eligibilityUri
            bundleUri: bundleUri
            pricingUri: pricingUri
            termsUri: termsUri
            overviewUri: overviewUri
          brandName: brandName
          displayName: displayName
          description: description
          type: STANDING
          effectiveTo: effectiveTo
          lastUpdated: lastUpdated
          customerType: RESIDENTIAL
          fuelType: ELECTRICITY
          geography:
            excludedPostcodes:
            - excludedPostcodes
            - excludedPostcodes
            distributors:
            - distributors
            - distributors
            includedPostcodes:
            - includedPostcodes
            - includedPostcodes
          planId: planId
          applicationUri: applicationUri
          effectiveFrom: effectiveFrom
          brand: brand
        - additionalInformation:
            eligibilityUri: eligibilityUri
            bundleUri: bundleUri
            pricingUri: pricingUri
            termsUri: termsUri
            overviewUri: overviewUri
          brandName: brandName
          displayName: displayName
          description: description
          type: STANDING
          effectiveTo: effectiveTo
          lastUpdated: lastUpdated
          customerType: RESIDENTIAL
          fuelType: ELECTRICITY
          geography:
            excludedPostcodes:
            - excludedPostcodes
            - excludedPostcodes
            distributors:
            - distributors
            - distributors
            includedPostcodes:
            - includedPostcodes
            - includedPostcodes
          planId: planId
          applicationUri: applicationUri
          effectiveFrom: effectiveFrom
          brand: brand
      properties:
        plans:
          description: Array of plans.
          items:
            $ref: '#/components/schemas/EnergyPlan'
          type: array
      required:
      - plans
      type: object
    EnergyServicePointListResponseV2_data:
      example:
        servicePoints:
        - lastUpdateDateTime: lastUpdateDateTime
          consumerProfile:
            threshold: LOW
            classification: BUSINESS
          servicePointId: ""
          jurisdictionCode: ALL
          validFromDate: validFromDate
          nationalMeteringId: nationalMeteringId
          servicePointStatus: ACTIVE
          servicePointClassification: EXTERNAL_PROFILE
          lastConsumerChangeDate: lastConsumerChangeDate
          isGenerator: false
        - lastUpdateDateTime: lastUpdateDateTime
          consumerProfile:
            threshold: LOW
            classification: BUSINESS
          servicePointId: ""
          jurisdictionCode: ALL
          validFromDate: validFromDate
          nationalMeteringId: nationalMeteringId
          servicePointStatus: ACTIVE
          servicePointClassification: EXTERNAL_PROFILE
          lastConsumerChangeDate: lastConsumerChangeDate
          isGenerator: false
      properties:
        servicePoints:
          items:
            $ref: '#/components/schemas/EnergyServicePointV2'
          type: array
      required:
      - servicePoints
      type: object
    EnergyUsageListResponse_data:
      example:
        reads:
        - basicRead:
            value: 0.8008281904610115
            quality: ACTUAL
          unitOfMeasure: unitOfMeasure
          registerId: registerId
          meterId: meterId
          intervalRead:
            readIntervalLength: 6
            intervalReads:
            - 5.962133916683182
            - 5.962133916683182
            readQualities:
            - startInterval: 1
              endInterval: 1
              quality: SUBSTITUTE
            - startInterval: 1
              endInterval: 1
              quality: SUBSTITUTE
            aggregateValue: 1.4658129805029452
          servicePointId: ""
          registerSuffix: registerSuffix
          readEndDate: readEndDate
          readStartDate: readStartDate
          controlledLoad: true
          readUType: basicRead
        - basicRead:
            value: 0.8008281904610115
            quality: ACTUAL
          unitOfMeasure: unitOfMeasure
          registerId: registerId
          meterId: meterId
          intervalRead:
            readIntervalLength: 6
            intervalReads:
            - 5.962133916683182
            - 5.962133916683182
            readQualities:
            - startInterval: 1
              endInterval: 1
              quality: SUBSTITUTE
            - startInterval: 1
              endInterval: 1
              quality: SUBSTITUTE
            aggregateValue: 1.4658129805029452
          servicePointId: ""
          registerSuffix: registerSuffix
          readEndDate: readEndDate
          readStartDate: readStartDate
          controlledLoad: true
          readUType: basicRead
      properties:
        reads:
          description: Array of meter reads sorted by NMI in ascending order followed
            by _readStartDate_ in descending order.
          items:
            $ref: '#/components/schemas/EnergyUsageRead'
          type: array
      required:
      - reads
      type: object
    EnergyDerListResponse_data:
      example:
        derRecords:
        - protectionMode:
            interTripScheme: interTripScheme
            underFrequencyProtectionDelay: 2.3021358869347655
            underVoltageProtection: 3.616076749251911
            exportLimitKva: 5.962133916683182
            overFrequencyProtectionDelay: 9.301444243932576
            overFrequencyProtection: 7.061401241503109
            overVoltageProtectionDelay: 7.386281948385884
            sustainedOverVoltageDelay: 1.0246457001441578
            frequencyRateOfChange: 1.4894159098541704
            underFrequencyProtection: 5.637376656633329
            underVoltageProtectionDelay: 2.027123023002322
            overVoltageProtection: 4.145608029883936
            neutralVoltageDisplacement: 7.457744773683766
            sustainedOverVoltage: 1.2315135367772556
            voltageVectorShift: 6.84685269835264
          installedPhasesCount: 0
          availablePhasesCount: 1
          islandableInstallation: true
          servicePointId: ""
          approvedCapacity: 0.8008281904610115
          hasCentralProtectionControl: false
          acConnections:
          - inverterSeries: inverterSeries
            inverterModelNumber: inverterModelNumber
            inverterDeviceCapacity: 5.025004791520295
            manufacturerName: manufacturerName
            count: 4
            connectionIdentifier: 1.1730742509559433
            commissioningDate: commissioningDate
            derDevices:
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            equipmentType: OTHER
            status: ACTIVE
          - inverterSeries: inverterSeries
            inverterModelNumber: inverterModelNumber
            inverterDeviceCapacity: 5.025004791520295
            manufacturerName: manufacturerName
            count: 4
            connectionIdentifier: 1.1730742509559433
            commissioningDate: commissioningDate
            derDevices:
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            equipmentType: OTHER
            status: ACTIVE
        - protectionMode:
            interTripScheme: interTripScheme
            underFrequencyProtectionDelay: 2.3021358869347655
            underVoltageProtection: 3.616076749251911
            exportLimitKva: 5.962133916683182
            overFrequencyProtectionDelay: 9.301444243932576
            overFrequencyProtection: 7.061401241503109
            overVoltageProtectionDelay: 7.386281948385884
            sustainedOverVoltageDelay: 1.0246457001441578
            frequencyRateOfChange: 1.4894159098541704
            underFrequencyProtection: 5.637376656633329
            underVoltageProtectionDelay: 2.027123023002322
            overVoltageProtection: 4.145608029883936
            neutralVoltageDisplacement: 7.457744773683766
            sustainedOverVoltage: 1.2315135367772556
            voltageVectorShift: 6.84685269835264
          installedPhasesCount: 0
          availablePhasesCount: 1
          islandableInstallation: true
          servicePointId: ""
          approvedCapacity: 0.8008281904610115
          hasCentralProtectionControl: false
          acConnections:
          - inverterSeries: inverterSeries
            inverterModelNumber: inverterModelNumber
            inverterDeviceCapacity: 5.025004791520295
            manufacturerName: manufacturerName
            count: 4
            connectionIdentifier: 1.1730742509559433
            commissioningDate: commissioningDate
            derDevices:
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            equipmentType: OTHER
            status: ACTIVE
          - inverterSeries: inverterSeries
            inverterModelNumber: inverterModelNumber
            inverterDeviceCapacity: 5.025004791520295
            manufacturerName: manufacturerName
            count: 4
            connectionIdentifier: 1.1730742509559433
            commissioningDate: commissioningDate
            derDevices:
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            - nominalRatedCapacity: 6.683562403749608
              deviceIdentifier: 9.965781217890562
              nominalStorageCapacity: 8.762042012749001
              subtype: subtype
              count: 9
              modelNumber: modelNumber
              type: FOSSIL
              manufacturer: manufacturer
              status: ACTIVE
            equipmentType: OTHER
            status: ACTIVE
      properties:
        derRecords:
          description: Array of meter reads.
          items:
            $ref: '#/components/schemas/EnergyDerRecord'
          type: array
      required:
      - derRecords
      type: object
    EnergyAccountListResponseV2_data:
      example:
        accounts:
        - null
        - null
      properties:
        accounts:
          description: Array of accounts.
          items:
            $ref: '#/components/schemas/EnergyAccountV2'
          type: array
      required:
      - accounts
      type: object
    EnergyPaymentScheduleResponse_data:
      example:
        paymentSchedules:
        - manualPayment:
            billFrequency: billFrequency
          amount: amount
          digitalWallet:
            calculationType: STATIC
            identifier: identifier
            provider: PAYPAL_AU
            name: name
            type: EMAIL
            paymentFrequency: paymentFrequency
          cardDebit:
            calculationType: STATIC
            cardScheme: VISA
            paymentFrequency: paymentFrequency
          directDebit:
            bsb: bsb
            calculationType: STATIC
            accountNumber: accountNumber
            paymentFrequency: paymentFrequency
            isTokenised: false
          paymentScheduleUType: cardDebit
        - manualPayment:
            billFrequency: billFrequency
          amount: amount
          digitalWallet:
            calculationType: STATIC
            identifier: identifier
            provider: PAYPAL_AU
            name: name
            type: EMAIL
            paymentFrequency: paymentFrequency
          cardDebit:
            calculationType: STATIC
            cardScheme: VISA
            paymentFrequency: paymentFrequency
          directDebit:
            bsb: bsb
            calculationType: STATIC
            accountNumber: accountNumber
            paymentFrequency: paymentFrequency
            isTokenised: false
          paymentScheduleUType: cardDebit
      properties:
        paymentSchedules:
          description: Array may be empty if no payment schedules exist.
          items:
            $ref: '#/components/schemas/EnergyPaymentSchedule'
          type: array
      required:
      - paymentSchedules
      type: object
    EnergyConcessionsResponse_data:
      example:
        concessions:
        - amount: amount
          additionalInfoUri: additionalInfoUri
          endDate: endDate
          displayName: displayName
          appliedTo:
          - USAGE
          - USAGE
          percentage: percentage
          additionalInfo: additionalInfo
          type: FIXED_AMOUNT
          discountFrequency: discountFrequency
          startDate: startDate
        - amount: amount
          additionalInfoUri: additionalInfoUri
          endDate: endDate
          displayName: displayName
          appliedTo:
          - USAGE
          - USAGE
          percentage: percentage
          additionalInfo: additionalInfo
          type: FIXED_AMOUNT
          discountFrequency: discountFrequency
          startDate: startDate
      properties:
        concessions:
          description: Array may be empty if no concessions exist.
          items:
            $ref: '#/components/schemas/EnergyConcession'
          type: array
      required:
      - concessions
      type: object
    EnergyBalanceListResponse_data_balances:
      example:
        accountId: ""
        balance: balance
      properties:
        accountId:
          allOf:
          - $ref: '#/components/schemas/EnergyAccountId'
          description: Unique identifier for the account.
        balance:
          description: The current balance of the account. A positive value indicates
            that amount is owing to be paid. A negative value indicates that the account
            is in credit.
          type: string
          x-cds-type: AmountString
      required:
      - accountId
      - balance
      type: object
    EnergyBalanceListResponse_data:
      example:
        balances:
        - accountId: ""
          balance: balance
        - accountId: ""
          balance: balance
      properties:
        balances:
          description: Array of account balances.
          items:
            $ref: '#/components/schemas/EnergyBalanceListResponse_data_balances'
          type: array
      required:
      - balances
      type: object
    EnergyBalanceResponse_data:
      example:
        balance: balance
      properties:
        balance:
          description: The current balance of the account. A positive value indicates
            that amount is owing to be paid. A negative value indicates that the account
            is in credit.
          type: string
          x-cds-type: AmountString
      required:
      - balance
      type: object
    EnergyInvoiceListResponse_data:
      example:
        invoices:
        - gstAmount: "0.00"
          period:
            endDate: endDate
            startDate: startDate
          accountCharges:
            totalGst: "0.00"
            totalDiscounts: totalDiscounts
            totalCharges: totalCharges
          dueDate: dueDate
          servicePoints:
          - servicePoints
          - servicePoints
          invoiceAmount: invoiceAmount
          electricity: ""
          balanceAtIssue: balanceAtIssue
          accountId: ""
          invoiceNumber: invoiceNumber
          gas: ""
          issueDate: issueDate
          payOnTimeDiscount:
            date: date
            gstAmount: "0.00"
            discountAmount: discountAmount
          paymentStatus: PAID
        - gstAmount: "0.00"
          period:
            endDate: endDate
            startDate: startDate
          accountCharges:
            totalGst: "0.00"
            totalDiscounts: totalDiscounts
            totalCharges: totalCharges
          dueDate: dueDate
          servicePoints:
          - servicePoints
          - servicePoints
          invoiceAmount: invoiceAmount
          electricity: ""
          balanceAtIssue: balanceAtIssue
          accountId: ""
          invoiceNumber: invoiceNumber
          gas: ""
          issueDate: issueDate
          payOnTimeDiscount:
            date: date
            gstAmount: "0.00"
            discountAmount: discountAmount
          paymentStatus: PAID
      properties:
        invoices:
          description: Array of invoices sorted by issue date in descending order.
          items:
            $ref: '#/components/schemas/EnergyInvoice'
          type: array
      required:
      - invoices
      type: object
    EnergyBillingListResponseV3_data:
      example:
        transactions:
        - accountId: ""
          onceOff: ""
          otherCharges: ""
          usage: ""
          gst: "0.00"
          payment: ""
          executionDateTime: executionDateTime
          transactionUType: usage
          demand: ""
        - accountId: ""
          onceOff: ""
          otherCharges: ""
          usage: ""
          gst: "0.00"
          payment: ""
          executionDateTime: executionDateTime
          transactionUType: usage
          demand: ""
      properties:
        transactions:
          description: Array of transactions sorted by date and time in descending
            order.
          items:
            $ref: '#/components/schemas/EnergyBillingTransactionV3'
          type: array
      required:
      - transactions
      type: object
    ErrorV2_meta:
      description: Additional data for customised error codes.
      properties:
        urn:
          description: The CDR error code URN which the application-specific error
            code extends. Mandatory if the error _code_ is an application-specific
            error rather than a standardised error code.
          type: string
      type: object
      x-conditional:
      - urn
    EnergyPlan_additionalInformation:
      description: Object that contains links to additional information on specific
        topics.
      example:
        eligibilityUri: eligibilityUri
        bundleUri: bundleUri
        pricingUri: pricingUri
        termsUri: termsUri
        overviewUri: overviewUri
      properties:
        overviewUri:
          description: A link to a general overview of the plan.
          type: string
          x-cds-type: URIString
        termsUri:
          description: A link to terms and conditions for the plan.
          type: string
          x-cds-type: URIString
        eligibilityUri:
          description: A link to detail on eligibility criteria for the plan.
          type: string
          x-cds-type: URIString
        pricingUri:
          description: A link to detail on pricing for the plan.
          type: string
          x-cds-type: URIString
        bundleUri:
          description: A link to detail on bundles that this plan can be a part of.
          type: string
          x-cds-type: URIString
      type: object
    EnergyPlan_geography:
      description: Describes the geographical area that the plan is available for.
        If absent then it is assumed the plan is not geographically limited.
      example:
        excludedPostcodes:
        - excludedPostcodes
        - excludedPostcodes
        distributors:
        - distributors
        - distributors
        includedPostcodes:
        - includedPostcodes
        - includedPostcodes
      properties:
        excludedPostcodes:
          description: Array of valid Australian postcodes that are specifically excluded
            from the plan. Each element is a single four digit postcode (e.g., `3000`)
            or a range of postcodes defined by two four digit postcodes and a hyphen
            (e.g., `3000-3999`).
          items:
            type: string
          type: array
        includedPostcodes:
          description: Array of valid Australian postcodes that are included from
            the plan. If absent defaults to all non-excluded postcodes. Each element
            is a single four digit postcode (e.g., `3000`) or a range of postcodes
            defined by two four digit postcodes and a hyphen (e.g., `3000-3999`).
          items:
            type: string
          type: array
        distributors:
          description: Array of distributors for the plan. Must have at least one
            entry.
          items:
            type: string
          type: array
      required:
      - distributors
      type: object
    EnergyPlanDetailV3_allOf_meteringCharges:
      properties:
        displayName:
          description: Display name of the charge.
          type: string
        description:
          description: Description of the charge.
          type: string
        minimumValue:
          description: Minimum value of the charge if the charge is a range or the
            absolute value of the charge if no range is specified.
          type: string
          x-cds-type: AmountString
        maximumValue:
          description: The upper limit of the charge if the charge could occur in
            a range.
          type: string
          x-cds-type: AmountString
        period:
          description: The charges that occur on a schedule indicates the frequency.
            Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
            (excludes recurrence syntax).
          type: string
          x-cds-type: ExternalRef
      required:
      - displayName
      - minimumValue
      type: object
    EnergyPlanDetailV3_allOf:
      properties:
        meteringCharges:
          description: Charges for metering included in the plan.
          items:
            $ref: '#/components/schemas/EnergyPlanDetailV3_allOf_meteringCharges'
          type: array
        gasContract:
          allOf:
          - $ref: '#/components/schemas/EnergyPlanContractFullV3'
          description: The details of the terms for the supply of electricity under
            this plan. Is mandatory if _fuelType_ is set to `GAS` or `DUAL`.
        electricityContract:
          allOf:
          - $ref: '#/components/schemas/EnergyPlanContractFullV3'
          description: The details of the terms for the supply of electricity under
            this plan. Is mandatory if _fuelType_ is set to `ELECTRICITY` or `DUAL`.
      type: object
      x-conditional:
      - gasContract
      - electricityContract
    EnergyPlanContractV3_intrinsicGreenPower:
      description: Describes intrinsic green power for the plan. If present then the
        plan includes a percentage of green power in the base plan. Should not be
        present for gas contracts.
      properties:
        greenPercentage:
          description: Percentage of green power intrinsically included in the plan.
          type: string
          x-cds-type: RateString
      required:
      - greenPercentage
      type: object
    EnergyPlanContractFullV3_allOf:
      properties:
        termType:
          description: The term for the contract. If absent assumes no specified term.
          enum:
          - 1_YEAR
          - 2_YEAR
          - 3_YEAR
          - 4_YEAR
          - 5_YEAR
          - ONGOING
          - OTHER
          type: string
        benefitPeriod:
          description: Description of the benefit period. Should only be present if
            _termType_ has the value `ONGOING`.
          type: string
        terms:
          description: Free text description of the terms for the contract.
          type: string
        meterTypes:
          description: An array of the meter types that this contract is available
            for.
          items:
            type: string
          type: array
        coolingOffDays:
          description: Number of days in the cooling off period for the contract.
            Mandatory for plans with type of `MARKET`.
          type: integer
          x-cds-type: PositiveInteger
        billFrequency:
          description: An array of the available billing schedules for this contract.
            Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
            (excludes recurrence syntax).
          items:
            type: string
          type: array
      required:
      - billFrequency
      type: object
      x-conditional:
      - benefitPeriod
      - variation
      - coolingOffDays
    EnergyServicePointV2_consumerProfile:
      example:
        threshold: LOW
        classification: BUSINESS
      properties:
        classification:
          description: A code that defines the consumer class as defined in the National
            Energy Retail Regulations, or in overriding Jurisdictional instruments.
          enum:
          - BUSINESS
          - RESIDENTIAL
          type: string
        threshold:
          description: 'A code that defines the consumption threshold as defined in
            the National Energy Retail Regulations, or in overriding Jurisdictional
            instruments. Note the details of enumeration values below: <ul><li>`LOW`:
            Consumption is less than the ''lower consumption threshold'' as defined
            in the National Energy Retail Regulations</li><li>`MEDIUM`: Consumption
            is equal to or greater than the ''lower consumption threshold'', but less
            than the ''upper consumption threshold'', as defined in the National Energy
            Retail Regulations</li><li>`HIGH`: Consumption is equal to or greater
            than the ''upper consumption threshold'' as defined in the National Energy
            Retail Regulations.</li></ul>'
          enum:
          - LOW
          - MEDIUM
          - HIGH
          type: string
      type: object
    EnergyServicePointDetailV2_allOf_distributionLossFactor:
      properties:
        code:
          description: A code used to identify data loss factor for the service point
            values. Refer to AEMO distribution loss factor documents for each financial
            year to interpret.
          type: string
        description:
          description: Description of the data loss factor code and value.
          type: string
        lossValue:
          description: The value associated with the loss factor code.
          type: string
      required:
      - code
      - description
      - lossValue
      type: object
    EnergyServicePointDetailV2_allOf_relatedParticipants:
      properties:
        party:
          description: The name of the party/organisation related to this service
            point.
          type: string
        role:
          description: 'The role performed by this participant in relation to the
            service point. Note the details of enumeration values below: <ul><li>`FRMP`:
            Financially Responsible Market Participant</li><li>`LNSP`: Local Network
            Service Provider or Embedded Network Manager for child connection points</li><li>`DRSP`:
            wholesale Demand Response and/or market ancillary Service Provider and
            note that where it is not relevant for a NMI it will not be included.</li></ul>'
          enum:
          - FRMP
          - LNSP
          - DRSP
          type: string
      required:
      - party
      - role
      type: object
    EnergyServicePointDetailV2_allOf_specifications:
      description: Technical characteristics of the meter.
      properties:
        status:
          description: 'A code to denote the status of the meter. Note the details
            of enumeration values below: <ul><li>`CURRENT`: Applies when a meter is
            current and not disconnected</li><li>`DISCONNECTED`: Applies when a meter
            is present but has been remotely disconnected.</li></ul>'
          enum:
          - CURRENT
          - DISCONNECTED
          type: string
        installationType:
          description: 'The metering Installation type code indicates whether the
            metering installation has to be manually read. Note the details of enumeration
            values below: <ul><li>`BASIC`: Accumulation Meter – Type 6</li><li>`COMMS1`:
            Interval Meter with communications – Type 1</li><li>`COMMS2`: Interval
            Meter with communications – Type 2</li><li>`COMMS3`: Interval Meter with
            communications – Type 3</li><li>`COMMS4`: Interval Meter with communications
            – Type 4</li><li>`COMMS4C`: CT connected metering installation that meets
            the minimum services specifications</li><li>`COMMS4D`: Whole current metering
            installation that meets the minimum services specifications</li><li>`MRAM`:
            Small customer metering installation – Type 4A</li><li>`MRIM`: Manually
            Read Interval Meter – Type 5</li><li>`UMCP`: Unmetered Supply – Type 7</li><li>`VICAMI`:
            A relevant metering installation as defined in clause 9.9C of the NER</li><li>`NCONUML`:
            Non-contestable unmeter load - Introduced as part of Global Settlement.</li></ul>'
          enum:
          - BASIC
          - COMMS1
          - COMMS2
          - COMMS3
          - COMMS4
          - COMMS4C
          - COMMS4D
          - MRAM
          - MRIM
          - PROF
          - SAMPLE
          - UMCP
          - VICAMI
          - NCOLNUML
          type: string
        manufacturer:
          description: Free text field to identify the manufacturer of the installed
            meter.
          type: string
        model:
          description: Free text field to identify the meter manufacturer's designation
            for the meter model.
          type: string
        readType:
          description: 'Code to denote the method and frequency of Meter Reading.
            The value is formatted as follows: <ul><li>First Character = Remote (`R`)
            or Manual (`M`)</li><li>Second Character = Mode: `T` = telephone, `W`
            = wireless, `P` = powerline, `I` = infra-red, `G` = galvanic, `V` = visual</li><li>Third
            Character = Frequency of Scheduled Meter Readings: `1` = Twelve times
            per year, `2` = Six times per year, `3` = Four times per year, `D` = Daily
            or weekly</li><li>Optional Fourth Character = to identify what interval
            length the meter is capable of reading. This includes five, 15 and 30
            minute granularity as the following: `A` = 5 minute, `B` = 15 minute,
            `C` = 30 minute, `D` = Cannot convert to 5 minute (i.e. due to metering
            installation de-energised), `M` = Manually Read Accumulation Meter.</li></ul>For
            example, <ul><li>`MV3` = Manual, Visual, Quarterly</li><li>`MV3M` = Manual,
            Visual, Quarterly, Manually Read Accumulation Meter</li><li>`RWDC` = Remote,
            Wireless, Daily, 30 minutes interval.</li></ul>'
          type: string
        nextScheduledReadDate:
          description: This date is the next scheduled meter read date (NSRD) if a
            manual Meter Reading is required.
          type: string
          x-cds-type: DateString
      required:
      - installationType
      - status
      type: object
    EnergyServicePointDetailV2_allOf_registers:
      properties:
        registerId:
          description: Unique identifier of the register within this service point.
            Is not globally unique.
          type: string
        registerSuffix:
          description: Register suffix of the meter register where the meter reads
            are obtained.
          type: string
        averagedDailyLoad:
          description: The energy delivered through a connection point or metering
            point over an extended period normalised to a 'per day' basis (kWh). This
            value is calculated annually.
          type: number
        registerConsumptionType:
          description: Indicates the consumption type of register.
          enum:
          - INTERVAL
          - BASIC
          - PROFILE_DATA
          - ACTIVE_IMPORT
          - ACTIVE
          - REACTIVE_IMPORT
          - REACTIVE
          type: string
        networkTariffCode:
          description: The Network Tariff Code is a free text field containing a code
            supplied and published by the local network service provider.
          type: string
        unitOfMeasure:
          description: The unit of measure for data held in this register.
          type: string
        timeOfDay:
          description: Code to identify the time validity of register contents.
          enum:
          - ALLDAY
          - INTERVAL
          - PEAK
          - BUSINESS
          - SHOULDER
          - EVENING
          - OFFPEAK
          - CONTROLLED
          - DEMAND
          type: string
        multiplier:
          description: Multiplier required to take a register value and turn it into
            a value representing billable energy.
          type: number
        controlledLoad:
          description: Indicates whether the energy recorded by this register is created
            under a Controlled Load regime.
          type: boolean
        consumptionType:
          description: 'Actual/Subtractive Indicator. Note the details of enumeration
            values below: <ul><li>`ACTUAL`: implies volume of energy actually metered
            between two dates</li><li>`CUMULATIVE`: indicates a meter reading for
            a specific date. A second Meter Reading is required to determine the consumption
            between those two Meter Reading dates.</li></ul>'
          enum:
          - ACTUAL
          - CUMULATIVE
          type: string
      required:
      - registerConsumptionType
      - registerId
      type: object
    EnergyServicePointDetailV2_allOf_meters:
      properties:
        meterId:
          description: The meter ID uniquely identifies a meter for a given service
            point. It is unique in the context of the service point. It is not globally
            unique.
          type: string
        specifications:
          $ref: '#/components/schemas/EnergyServicePointDetailV2_allOf_specifications'
        registers:
          description: Usage data registers available from the meter. This may be
            empty where there are no meters physically installed at the service point.
          items:
            $ref: '#/components/schemas/EnergyServicePointDetailV2_allOf_registers'
          type: array
      required:
      - meterId
      - specifications
      type: object
    EnergyServicePointDetailV2_allOf:
      properties:
        distributionLossFactor:
          $ref: '#/components/schemas/EnergyServicePointDetailV2_allOf_distributionLossFactor'
        relatedParticipants:
          items:
            $ref: '#/components/schemas/EnergyServicePointDetailV2_allOf_relatedParticipants'
          type: array
        location:
          allOf:
          - $ref: '#/components/schemas/CommonPhysicalAddress'
          description: Location of the servicepoint.
        meters:
          description: The meters associated with the service point. This may be empty
            where there are no meters physically installed at the service point.
          items:
            $ref: '#/components/schemas/EnergyServicePointDetailV2_allOf_meters'
          type: array
      required:
      - distributionLossFactor
      - location
      - relatedParticipants
    EnergyUsageRead_basicRead:
      description: Mandatory if _readUType_ is set to `basicRead`.
      example:
        value: 0.8008281904610115
        quality: ACTUAL
      properties:
        quality:
          default: ACTUAL
          description: The quality of the read taken. If absent then assumed to be
            `ACTUAL`.
          enum:
          - ACTUAL
          - SUBSTITUTE
          - FINAL_SUBSTITUTE
          type: string
        value:
          description: Meter read value. If positive then it means consumption, if
            negative it means export.
          type: number
      required:
      - value
      type: object
    EnergyUsageRead_intervalRead_readQualities:
      example:
        startInterval: 1
        endInterval: 1
        quality: SUBSTITUTE
      properties:
        startInterval:
          description: Start interval for read quality flag. First read begins at
            `1`.
          example: 1
          type: integer
          x-cds-type: PositiveInteger
        endInterval:
          description: End interval for read quality flag.
          example: 1
          type: integer
          x-cds-type: PositiveInteger
        quality:
          description: The quality of the read taken.
          enum:
          - SUBSTITUTE
          - FINAL_SUBSTITUTE
          type: string
      required:
      - endInterval
      - quality
      - startInterval
      type: object
    EnergyUsageRead_intervalRead:
      description: Mandatory if _readUType_ is set to `intervalRead`.
      example:
        readIntervalLength: 6
        intervalReads:
        - 5.962133916683182
        - 5.962133916683182
        readQualities:
        - startInterval: 1
          endInterval: 1
          quality: SUBSTITUTE
        - startInterval: 1
          endInterval: 1
          quality: SUBSTITUTE
        aggregateValue: 1.4658129805029452
      properties:
        readIntervalLength:
          description: Read interval length in minutes. Required when _interval-reads_
            query parameter equals `FULL` or `MIN_30`.
          type: integer
          x-cds-type: PositiveInteger
        aggregateValue:
          description: The aggregate sum of the interval read values. If positive
            then it means net consumption, if negative it means net export.
          type: number
        intervalReads:
          description: Array of Interval read values. If positive then it means consumption,
            if negative it means export. Required when _interval-reads_ query parameter
            equals `FULL` or `MIN_30`.<br>Each read value indicates the read for the
            interval specified by _readIntervalLength_ beginning at midnight of _readStartDate_
            (for example 00:00 to 00:30 would be the first reading in a 30 minute
            Interval).
          items:
            type: number
          type: array
        readQualities:
          description: ' Specifies quality of reads that are not `ACTUAL`. For read
            indices that are not specified, quality is assumed to be `ACTUAL`. If
            not present, all quality of all reads are assumed to be actual. Required
            when _interval-reads_ query parameter equals `FULL` or `MIN_30`.'
          items:
            $ref: '#/components/schemas/EnergyUsageRead_intervalRead_readQualities'
          type: array
      required:
      - aggregateValue
      type: object
      x-conditional:
      - readIntervalLength
      - intervalReads
      - readQualities
    EnergyDerRecord_protectionMode:
      description: Required only when the _hasCentralProtectionControl_ flag is set
        to `true`. One or more of the object fields will be provided to describe the
        protection modes in place.
      example:
        interTripScheme: interTripScheme
        underFrequencyProtectionDelay: 2.3021358869347655
        underVoltageProtection: 3.616076749251911
        exportLimitKva: 5.962133916683182
        overFrequencyProtectionDelay: 9.301444243932576
        overFrequencyProtection: 7.061401241503109
        overVoltageProtectionDelay: 7.386281948385884
        sustainedOverVoltageDelay: 1.0246457001441578
        frequencyRateOfChange: 1.4894159098541704
        underFrequencyProtection: 5.637376656633329
        underVoltageProtectionDelay: 2.027123023002322
        overVoltageProtection: 4.145608029883936
        neutralVoltageDisplacement: 7.457744773683766
        sustainedOverVoltage: 1.2315135367772556
        voltageVectorShift: 6.84685269835264
      properties:
        exportLimitKva:
          description: Maximum amount of power (kVA) that may be exported from a connection
            point to the grid, as monitored by a control/relay function. An absent
            value indicates no limit.
          type: number
        underFrequencyProtection:
          description: Protective function limit in Hz.
          type: number
        underFrequencyProtectionDelay:
          description: Trip delay time in seconds.
          type: number
        overFrequencyProtection:
          description: Protective function limit in Hz.
          type: number
        overFrequencyProtectionDelay:
          description: Trip delay time in seconds.
          type: number
        underVoltageProtection:
          description: Protective function limit in V.
          type: number
        underVoltageProtectionDelay:
          description: Trip delay time in seconds.
          type: number
        overVoltageProtection:
          description: Protective function limit in V.
          type: number
        overVoltageProtectionDelay:
          description: Trip delay time in seconds.
          type: number
        sustainedOverVoltage:
          description: Sustained over voltage.
          type: number
        sustainedOverVoltageDelay:
          description: Sustained Over voltage protection delay in seconds.
          type: number
        frequencyRateOfChange:
          description: Rate of change of frequency trip point (Hz/s).
          type: number
        voltageVectorShift:
          description: Trip angle in degrees.
          type: number
        interTripScheme:
          description: Description of the form of inter-trip (e.g., 'from local substation').
          type: string
        neutralVoltageDisplacement:
          description: Trip voltage.
          type: number
      type: object
    EnergyDerRecord_derDevices:
      example:
        nominalRatedCapacity: 6.683562403749608
        deviceIdentifier: 9.965781217890562
        nominalStorageCapacity: 8.762042012749001
        subtype: subtype
        count: 9
        modelNumber: modelNumber
        type: FOSSIL
        manufacturer: manufacturer
        status: ACTIVE
      properties:
        deviceIdentifier:
          description: Unique identifier for a single DER device or a group of DER
            devices with the same attributes. Does not align with CDR ID permanence
            standards.
          type: number
        count:
          description: Number of devices in the group of DER devices.
          type: integer
          x-cds-type: PositiveInteger
        manufacturer:
          description: The name of the device manufacturer. If absent then assumed
            to be "unknown".
          type: string
        modelNumber:
          description: The model number of the device. If absent then assumed to be
            "unknown".
          type: string
        status:
          description: Code used to indicate the status of the device. This will be
            used to identify if an inverter is active or inactive or decommissioned.
          enum:
          - ACTIVE
          - INACTIVE
          - DECOMMISSIONED
          type: string
        type:
          description: Used to indicate the primary technology used in the DER device.
          enum:
          - FOSSIL
          - HYDRO
          - WIND
          - SOLAR_PV
          - RENEWABLE
          - GEOTHERMAL
          - STORAGE
          - OTHER
          type: string
        subtype:
          description: Used to indicate the primary technology used in the DER device.
            This field is also used to record for example the battery chemistry, or
            the type of PV panel. It is also used to record if a battery is contained
            in an electric vehicle connected in a vehicle-to-grid arrangement. If
            absent then assumed to be "other".
          type: string
        nominalRatedCapacity:
          description: Maximum output in kVA that is listed in the product specification
            by the manufacturer. This refers to the capacity of each unit within the
            device group. Default is `0` if value not known.
          type: number
        nominalStorageCapacity:
          description: Maximum storage capacity in kVAh. This refers to the capacity
            of each storage module within the device group. Mandatory if type is equal
            to `STORAGE`. Default is `0` if value not known.
          type: number
      required:
      - count
      - deviceIdentifier
      - nominalRatedCapacity
      - type
      type: object
      x-conditional:
      - nominalStorageCapacity
    EnergyDerRecord_acConnections:
      example:
        inverterSeries: inverterSeries
        inverterModelNumber: inverterModelNumber
        inverterDeviceCapacity: 5.025004791520295
        manufacturerName: manufacturerName
        count: 4
        connectionIdentifier: 1.1730742509559433
        commissioningDate: commissioningDate
        derDevices:
        - nominalRatedCapacity: 6.683562403749608
          deviceIdentifier: 9.965781217890562
          nominalStorageCapacity: 8.762042012749001
          subtype: subtype
          count: 9
          modelNumber: modelNumber
          type: FOSSIL
          manufacturer: manufacturer
          status: ACTIVE
        - nominalRatedCapacity: 6.683562403749608
          deviceIdentifier: 9.965781217890562
          nominalStorageCapacity: 8.762042012749001
          subtype: subtype
          count: 9
          modelNumber: modelNumber
          type: FOSSIL
          manufacturer: manufacturer
          status: ACTIVE
        equipmentType: OTHER
        status: ACTIVE
      properties:
        connectionIdentifier:
          description: AC Connection ID as defined in the DER register. Does not align
            with CDR ID permanence standards.
          type: number
        count:
          description: Number of AC Connections in the group. For the suite of AC
            Connections to be considered as a group, all of the AC Connections included
            must have the same attributes.
          type: integer
          x-cds-type: PositiveInteger
        equipmentType:
          default: OTHER
          description: Indicates whether the DER device is connected via an inverter
            (and what category of inverter it is) or not (e.g., rotating machine).
            If absent, assume equipment type to be `OTHER`.
          enum:
          - INVERTER
          - OTHER
          type: string
        manufacturerName:
          description: The name of the inverter manufacturer. Mandatory if _equipmentType_
            is `INVERTER`.
          type: string
        inverterSeries:
          description: The inverter series. Mandatory if _equipmentType_ is `INVERTER`.
          type: string
        inverterModelNumber:
          description: The inverter model number. Mandatory if _equipmentType_ is
            `INVERTER`.
          type: string
        commissioningDate:
          description: The date that the DER installation is commissioned.
          type: string
          x-cds-type: DateString
        status:
          description: Code used to indicate the status of the Inverter. This will
            be used to identify if an inverter is active or inactive or decommissioned.
          enum:
          - ACTIVE
          - INACTIVE
          - DECOMMISSIONED
          type: string
        inverterDeviceCapacity:
          description: The rated AC output power that is listed in the product specified
            by the manufacturer. Mandatory if _equipmentType_ is `INVERTER`. Default
            is `0` if value not known.
          type: number
        derDevices:
          items:
            $ref: '#/components/schemas/EnergyDerRecord_derDevices'
          type: array
      required:
      - commissioningDate
      - connectionIdentifier
      - count
      - derDevices
      - status
      type: object
      x-conditional:
      - manufacturerName
      - inverterSeries
      - inverterModelNumber
      - inverterDeviceCapacity
    EnergyAccountV2_allOf_planOverview:
      description: Mandatory if _openStatus_ is `OPEN`.
      properties:
        displayName:
          description: The name of the plan if one exists.
          type: string
        startDate:
          description: The start date of the applicability of this plan.
          type: string
          x-cds-type: DateString
        endDate:
          description: The end date of the applicability of this plan.
          type: string
          x-cds-type: DateString
      required:
      - startDate
      type: object
    EnergyAccountV2_allOf_plans:
      properties:
        nickname:
          description: Optional display name for the plan provided by the customer
            to help differentiate multiple plans.
          type: string
        servicePointIds:
          description: An array of _servicePointId_ values, representing NMIs, that
            this plan is linked to. If there are no service points allocated to this
            plan then an empty array would be expected.
          items:
            $ref: '#/components/schemas/EnergyServicePointId'
          type: array
        planOverview:
          $ref: '#/components/schemas/EnergyAccountV2_allOf_planOverview'
      required:
      - servicePointIds
      type: object
      x-conditional:
      - planOverview
    EnergyAccountV2_allOf:
      description: The array of plans containing service points and associated plan
        details.
      properties:
        plans:
          description: The array of plans containing service points and associated
            plan details.
          items:
            $ref: '#/components/schemas/EnergyAccountV2_allOf_plans'
          type: array
      required:
      - plans
      type: object
    EnergyAccountDetailV4_allOf_planDetail:
      description: Detail on the plan applicable to this account. Mandatory if _openStatus_
        is `OPEN`.
      properties:
        fuelType:
          description: The fuel types covered by the plan.
          enum:
          - ELECTRICITY
          - GAS
          - DUAL
          type: string
        isContingentPlan:
          default: false
          description: Flag that indicates that the plan is contingent on the customer
            taking up an alternate fuel plan from the same retailer (for instance,
            if the _fuelType_ is `ELECTRICITY` then a `GAS` plan from the same retailer
            must be taken up). Has no meaning if the plan has a _fuelType_ of `DUAL`.
            If absent the value is assumed to be `false`.
          type: boolean
        meteringCharges:
          description: Charges for metering included in the plan.
          items:
            $ref: '#/components/schemas/EnergyPlanDetailV3_allOf_meteringCharges'
          type: array
        gasContract:
          allOf:
          - $ref: '#/components/schemas/EnergyPlanContractV3'
          description: The details of the terms for the supply of electricity under
            this plan. Is mandatory if _fuelType_ is set to `GAS` or `DUAL`.
        electricityContract:
          allOf:
          - $ref: '#/components/schemas/EnergyPlanContractV3'
          description: The details of the terms for the supply of electricity under
            this plan. Is mandatory if _fuelType_ is set to `ELECTRICITY` or `DUAL`.
      required:
      - fuelType
      type: object
      x-conditional:
      - gasContract
      - electricityContract
    EnergyAccountDetailV4_allOf_authorisedContacts:
      properties:
        firstName:
          description: For people with single names this field need not be present.
            The single name should be in the _lastName_ field.
          type: string
        lastName:
          description: For people with single names the single name should be in this
            field.
          type: string
        middleNames:
          description: Field is mandatory but array may be empty.
          items:
            type: string
          type: array
        prefix:
          description: Also known as title or salutation. The prefix to the name (e.g.,
            Mr, Mrs, Ms, Miss, Sir, etc.)
          type: string
        suffix:
          description: Used for a trailing suffix to the name (e.g., Jr.)
          type: string
      required:
      - lastName
      type: object
    EnergyAccountDetailV4_allOf_plans:
      properties:
        nickname:
          description: Optional display name for the plan provided by the customer
            to help differentiate multiple plans.
          type: string
        servicePointIds:
          description: An array of _servicePointId_ values, representing NMIs, that
            this account is linked to.
          items:
            $ref: '#/components/schemas/EnergyServicePointId'
          type: array
        planOverview:
          $ref: '#/components/schemas/EnergyAccountV2_allOf_planOverview'
        planDetail:
          $ref: '#/components/schemas/EnergyAccountDetailV4_allOf_planDetail'
        authorisedContacts:
          description: An array of additional contacts that are authorised to act
            on this account.
          items:
            $ref: '#/components/schemas/EnergyAccountDetailV4_allOf_authorisedContacts'
          type: array
      required:
      - servicePointIds
      type: object
      x-conditional:
      - planOverview
      - planDetail
    EnergyAccountDetailV4_allOf:
      description: The array of plans containing service points and associated plan
        details.
      properties:
        plans:
          description: The array of plans containing service points and associated
            plan details.
          items:
            $ref: '#/components/schemas/EnergyAccountDetailV4_allOf_plans'
          type: array
      required:
      - plans
      type: object
    EnergyPaymentSchedule_cardDebit:
      description: Represents a regular credit card payment schedule. Mandatory if
        _paymentScheduleUType_ is set to `cardDebit`.
      example:
        calculationType: STATIC
        cardScheme: VISA
        paymentFrequency: paymentFrequency
      properties:
        cardScheme:
          description: The type of credit card held on file.
          enum:
          - VISA
          - MASTERCARD
          - AMEX
          - DINERS
          - OTHER
          - UNKNOWN
          type: string
        paymentFrequency:
          description: The frequency that payments will occur. Formatted according
            to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
            (excludes recurrence syntax).
          type: string
          x-cds-type: ExternalRef
        calculationType:
          description: 'The mechanism by which the payment amount is calculated. Explanation
            of values are as follows:<br/><ul><li>`STATIC`: Indicates a consistent,
            static amount, per payment</li><li>`BALANCE`: Indicates that the outstanding
            balance for the account is paid per period</li><li>`CALCULATED`: Indicates
            that the payment amount is variable and calculated using a pre-defined
            algorithm.</li></ul>'
          enum:
          - STATIC
          - BALANCE
          - CALCULATED
          type: string
      required:
      - calculationType
      - cardScheme
      - paymentFrequency
      type: object
    EnergyPaymentSchedule_directDebit:
      description: Represents a regular direct debit from a specified bank account.
        Mandatory if _paymentScheduleUType_ is set to `directDebit`.
      example:
        bsb: bsb
        calculationType: STATIC
        accountNumber: accountNumber
        paymentFrequency: paymentFrequency
        isTokenised: false
      properties:
        isTokenised:
          default: false
          description: Flag indicating that the account details are tokenised, or
            held in a closed system, and is not accessible through any other channels.
            `false` if absent.
          type: boolean
        bsb:
          description: The unmasked BSB for the account to be debited. Is expected
            to be formatted as digits only with leading zeros included and no punctuation
            or spaces. Is required if _isTokenised_ is absent or `false`.
          type: string
        accountNumber:
          description: The unmasked account number for the account to be debited.
            Is expected to be formatted as digits only with leading zeros included
            and no punctuation or spaces. Is required if _isTokenised_ is absent or
            `false`.
          type: string
        paymentFrequency:
          description: The frequency that payments will occur. Formatted according
            to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
            (excludes recurrence syntax).
          type: string
          x-cds-type: ExternalRef
        calculationType:
          description: 'The mechanism by which the payment amount is calculated. Explanation
            of values are as follows:<br/><ul><li>`STATIC`: Indicates a consistent,
            static amount, per payment</li><li>`BALANCE`: Indicates that the outstanding
            balance for the account is paid per period</li><li>`CALCULATED`: Indicates
            that the payment amount is variable and calculated using a pre-defined
            algorithm.</li></ul>'
          enum:
          - STATIC
          - BALANCE
          - CALCULATED
          type: string
      required:
      - calculationType
      - paymentFrequency
      type: object
      x-conditional:
      - bsb
      - accountNumber
    EnergyPaymentSchedule_digitalWallet:
      description: Represents a regular payment from a digital wallet. Mandatory if
        _paymentScheduleUType_ is set to `digitalWallet`.
      example:
        calculationType: STATIC
        identifier: identifier
        provider: PAYPAL_AU
        name: name
        type: EMAIL
        paymentFrequency: paymentFrequency
      properties:
        name:
          description: The display name of the wallet as given by the customer, else
            a default value defined by the data holder.
          type: string
        identifier:
          description: The identifier of the digital wallet (dependent on type).
          type: string
        type:
          description: The type of the digital wallet identifier.
          enum:
          - EMAIL
          - CONTACT_NAME
          - TELEPHONE
          type: string
        provider:
          description: The provider of the digital wallet.
          enum:
          - PAYPAL_AU
          - OTHER
          type: string
        paymentFrequency:
          description: The frequency that payments will occur. Formatted according
            to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
            (excludes recurrence syntax).
          type: string
          x-cds-type: ExternalRef
        calculationType:
          description: 'The mechanism by which the payment amount is calculated. Explanation
            of values are as follows:<br/><ul><li>`STATIC`: Indicates a consistent,
            static amount, per payment</li><li>`BALANCE`: Indicates that the outstanding
            balance for the account is paid per period</li><li>`CALCULATED`: Indicates
            that the payment amount is variable and calculated using a pre-defined
            algorithm.</li></ul>'
          enum:
          - STATIC
          - BALANCE
          - CALCULATED
          type: string
      required:
      - calculationType
      - identifier
      - name
      - paymentFrequency
      - provider
      - type
      type: object
    EnergyPaymentSchedule_manualPayment:
      description: Represents a manual payment schedule where the customer pays in
        response to a delivered statement. Mandatory if _paymentScheduleUType_ is
        set to `manualPayment`.
      example:
        billFrequency: billFrequency
      properties:
        billFrequency:
          description: The frequency with which a bill will be issued. Formatted according
            to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations)
            (excludes recurrence syntax).
          type: string
          x-cds-type: ExternalRef
      required:
      - billFrequency
      type: object
    EnergyInvoice_period:
      description: Object containing the start and end date for the period covered
        by the invoice. Mandatory if any usage or demand based charges are included
        in the invoice.
      example:
        endDate: endDate
        startDate: startDate
      properties:
        startDate:
          description: The start date of the period covered by this invoice.
          type: string
          x-cds-type: DateString
        endDate:
          description: The end date of the period covered by this invoice.
          type: string
          x-cds-type: DateString
      required:
      - endDate
      - startDate
      type: object
    EnergyInvoice_payOnTimeDiscount:
      description: A discount for on time payment.
      example:
        date: date
        gstAmount: "0.00"
        discountAmount: discountAmount
      properties:
        discountAmount:
          description: The amount that will be discounted if the invoice is paid by
            the date specified.
          type: string
          x-cds-type: AmountString
        gstAmount:
          default: "0.00"
          description: The GST amount that will be discounted if the invoice is paid
            by the date specified. If absent then zero is assumed.
          type: string
          x-cds-type: AmountString
        date:
          description: The date by which the invoice must be paid to receive the pay
            on time discount.
          type: string
          x-cds-type: DateString
      required:
      - date
      - discountAmount
      type: object
    EnergyInvoiceGasUsageCharges_otherCharges:
      properties:
        type:
          default: OTHER
          description: Type of charge. Assumed to be `OTHER` if absent.
          enum:
          - ENVIRONMENTAL
          - REGULATED
          - NETWORK
          - METERING
          - RETAIL_SERVICE
          - RCTI
          - OTHER
          type: string
        amount:
          description: The aggregate total of charges for this item (exclusive of
            GST).
          type: string
          x-cds-type: AmountString
        description:
          description: A free text description of the type of charge.
          type: string
      required:
      - amount
      - description
      type: object
    EnergyBillingUsageTransactionV2_calculationFactors:
      properties:
        value:
          description: The value of the calculation factor.
          type: number
        type:
          description: The type of the calculation factor.
          enum:
          - DLF
          - MLF
          type: string
      required:
      - type
      - value
      type: object
    EnergyBillingUsageTransactionV2_adjustments:
      properties:
        amount:
          description: The amount of the adjustment.
          type: string
          x-cds-type: AmountString
        description:
          description: A free text description of the adjustment.
          type: string
      required:
      - amount
      - description
      type: object
    RequestServicePointIdListV1_data:
      example:
        servicePointIds:
        - null
        - null
      properties:
        servicePointIds:
          description: Array of _servicePointId_ values to obtain data for.
          items:
            $ref: '#/components/schemas/EnergyServicePointId'
          type: array
      required:
      - servicePointIds
      type: object
    RequestAccountIdListV1_data:
      example:
        accountIds:
        - null
        - null
      properties:
        accountIds:
          description: Array of _accountId_ values to obtain data for.
          items:
            $ref: '#/components/schemas/EnergyAccountId'
          type: array
      required:
      - accountIds
      type: object
