{
  "swagger": "2.0",
  "info": {
    "title": "reading-series",
    "description": "API Version: 2.0.0 <h2>Wijzigingshistorie:</h2><p>\r\n</p><p>\r\n</p><ul><li>2021-05-17 - V1.3.0 - Eerste versie op basis van IC263 voor review naar NEDU, NEDU WG-API, NEDU IC-K, EDSN, Netbeheerders</li><li>2021-05-25 - V1.6.0 - Review verwerkt van NEDU, NEDU WG-API, NEDU IC-K, EDSN, Netbeheerders</li><li>2021-06-10 - V1.9.0 - Review verwerkt van NEDU, NEDU WG-API, NEDU IC-K, EDSN, Netbeheerders</li><li>2021-06-21 - V1.9.1 - Toevoeging X-Sender-ID header en verwijdering X-Message-ID header op basis van API Ontwerprichtlijnen 2.0 (ID20)</li><li>2021-06-21 - V2.0 - Versie ter goedkeuring ALV NEDU</li></ul><p>\r\n</p><h2>Omschrijving API:</h2><p>\r\n</p><p>Deze API stelt afnemers in staat om binnen het 'metering' domein dagstanden te administreren.</p><p>\r\n</p><h2>Beschikbare resources:</h2><p>\r\n</p><ul>\r\n<li>Historische dagstanden</li>\r\n<li>Starten / stoppen continu beschikbaar stellen historische dagstanden</li>\r\n<li>Beschikbare dagstanden</li>\r\n</ul>",
    "termsOfService": "https://localhost",
    "contact": {
      "name": "EDSN",
      "url": "https://www.edsn.nl",
      "email": "servicedesk@edsn.nl"
    },
    "license": {
      "name": "Apache 2.0",
      "url": "https://www.apache.org/licenses/LICENSE-2.0"
    },
    "version": "v2",
    "x-date": "21-06-2021"
  },
  "host": "gateway.edsn.nl",
  "basePath": "/metering/reading-series/v2",
  "schemes": [
    "https"
  ],
  "produces": [
    "application/json"
  ],
  "consumes": [
    "application/json"
  ],
  "tags": [
    {
      "name": "HistoricalSmartMeterReadingSeries",
      "description": "Raadplegen historische dagstanden van een aansluiting met slimme meter"
    },
    {
      "name": "HistoricalSmartMeterReadingSeriesDifferential",
      "description": "Raadplegen beschikbaar gestelde dagstanden van aansluitingen met slimme meter"
    },
    {
      "name": "Subscriptions",
      "description": "Continu beschikbaar stellen dagstanden van aansluiting met slimme meter"
    }
  ],
  "paths": {
    "/readings": {
      "post": {
        "tags": [
          "HistoricalSmartMeterReadingSeries"
        ],
        "summary": "Raadplegen historische dagstanden van een aansluiting",
        "description": "Raadplegen historische dagstanden van een aansluiting met slimme meter op basis van een periode waarop de leverancier actief was op de aansluiting en de meter technisch en administratief uitleesbaar was en de meter niet in storing heeft gestaan.",
        "operationId": "historicalSmartMeterReadingSeries",
        "parameters": [
          {
            "$ref": "#/parameters/X-Request-ID"
          },
          {
            "name": "request_reading_series",
            "in": "body",
            "description": "Object voor het uitwisselen van standen",
            "required": true,
            "schema": {
              "$ref": "#/definitions/request_Reading_Series"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/reading_Series"
            }
          },
          "500": {
            "description": "The server encountered an unexpected condition which prevented it from fulfilling the request.",
            "schema": {
              "$ref": "#/definitions/readingSeriesOperationResult500Type"
            }
          },
          "503": {
            "description": "The server cannot handle the request (because it is overloaded or down for maintenance).",
            "schema": {
              "$ref": "#/definitions/readingSeriesOperationResult503Type"
            }
          }
        }
      }
    },
    "/readings-differential": {
      "post": {
        "tags": [
          "HistoricalSmartMeterReadingSeriesDifferential"
        ],
        "summary": "Raadplegen beschikbare historische dagstanden",
        "description": "Raadplegen beschikbare historische dagstanden van een aansluiting met slimme meter waarbij de meter technisch en administratief uitleesbaar was en de meter niet in storing heeft gestaan.\r\n\r\nDe X-Request-ID header kan gebruikt worden om het antwoord van een eerdere raadpleging nogmaals op te vragen (Zie ontwerpkeuzes - Idempotentie)",
        "operationId": "historicalSmartMeterReadingSeriesDifferential",
        "parameters": [
          {
            "$ref": "#/parameters/X-Request-ID"
          },
          {
            "name": "request_reading_series_differential",
            "in": "body",
            "description": "Object voor het uitwisselen van gereedstaande delta standen",
            "required": true,
            "schema": {
              "$ref": "#/definitions/request_Reading_Series_Differential"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/reading_Series_Differential"
            }
          },
          "500": {
            "description": "The server encountered an unexpected condition which prevented it from fulfilling the request.",
            "schema": {
              "$ref": "#/definitions/readingSeriesOperationResult500Type"
            }
          },
          "503": {
            "description": "The server cannot handle the request (because it is overloaded or down for maintenance).",
            "schema": {
              "$ref": "#/definitions/readingSeriesOperationResult503Type"
            }
          }
        }
      }
    },
    "/subscriptions": {
      "post": {
        "tags": [
          "Subscriptions"
        ],
        "operationId": "subcsription",
        "parameters": [
          {
            "$ref": "#/parameters/X-Request-ID"
          },
          {
            "name": "request_subscription_start_end",
            "in": "body",
            "description": "Object met abonnementsgegevens",
            "required": true,
            "schema": {
              "$ref": "#/definitions/request_Subscription_Start_End"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/start_Subscription"
            }
          },
          "500": {
            "description": "The server encountered an unexpected condition which prevented it from fulfilling the request.",
            "schema": {
              "$ref": "#/definitions/readingSeriesOperationResult500Type"
            }
          },
          "503": {
            "description": "The server cannot handle the request (because it is overloaded or down for maintenance).",
            "schema": {
              "$ref": "#/definitions/readingSeriesOperationResult503Type"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Subscriptions"
        ],
        "operationId": "subscription",
        "parameters": [
          {
            "$ref": "#/parameters/X-Request-ID"
          },
          {
            "name": "request_subscription_start_end",
            "in": "body",
            "description": "Object met abonnementsgegevens",
            "required": true,
            "schema": {
              "$ref": "#/definitions/request_Subscription_Start_End"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/end_Subscription"
            }
          },
          "500": {
            "description": "The server encountered an unexpected condition which prevented it from fulfilling the request.",
            "schema": {
              "$ref": "#/definitions/readingSeriesOperationResult500Type"
            }
          },
          "503": {
            "description": "The server cannot handle the request (because it is overloaded or down for maintenance).",
            "schema": {
              "$ref": "#/definitions/readingSeriesOperationResult503Type"
            }
          }
        }
      }
    }
  },
  "definitions": {
    "dateAndOrTime": {
      "title": "dateAndOrTime",
      "description": "Datum en tijd",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "DateTime": {
          "title": "DateTimeType",
          "description": "Datum en tijd (CET/CEST) op basis van standaard ISO 8601",
          "example": "2021-06-09T21:03:23Z",
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "DateTime"
      ]
    },
    "end_Subscription": {
      "title": "end_Subscription",
      "description": "Object waaraan andere klassen gelinkt zijn met informatie rondom de be&#235;indiging van het continu beschikbaar stellen.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "EndSubscriptionMarketEvaluationPoint": {
          "$ref": "#/definitions/marketEvaluationPoint_Subscription"
        },
        "EndSubscriptionReferenceInformation": {
          "$ref": "#/definitions/referenceInformation"
        },
        "EndSubscriptionSubscriptionStatus": {
          "$ref": "#/definitions/subscriptionStatus_End"
        },
        "Subscriber": {
          "$ref": "#/definitions/marketParticipant"
        }
      },
      "required": [
        "EndSubscriptionSubscriptionStatus",
        "Subscriber",
        "EndSubscriptionMarketEvaluationPoint"
      ]
    },
    "endDateAndOrTime": {
      "title": "endDateAndOrTime",
      "description": "Eind datum (en tijd)",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Date": {
          "title": "DateType",
          "description": "Datum (CET/CEST) op basis van standaard ISO 8601",
          "example": "2021-03-23",
          "type": "string",
          "format": "date"
        }
      },
      "required": [
        "Date"
      ]
    },
    "marketEvaluationPoint": {
      "title": "marketEvaluationPoint",
      "description": "Een of meer verbindingen tussen een net en een onroerende zaak als bedoeld in artikel 16, onderdelen a tot en met d, van de Wet waardering onroerende zaken.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "MRID": {
          "title": "GSRNEANCode",
          "description": "Aansluiting EAN (LDT).",
          "example": "871687120052440179",
          "type": "string",
          "minLength": 18,
          "maxLength": 18,
          "pattern": "[0-9]{18}"
        },
        "RegisterList": {
          "title": "registerListType",
          "type": "array",
          "items": {
            "$ref": "#/definitions/register"
          }
        }
      },
      "required": [
        "MRID"
      ]
    },
    "marketEvaluationPoint_Differential": {
      "title": "marketEvaluationPoint_Differential",
      "description": "Een of meer verbindingen tussen een net en een onroerende zaak als bedoeld in artikel 16, onderdelen a tot en met d, van de Wet waardering onroerende zaken.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "ExternalIdentifiedObject": {
          "$ref": "#/definitions/referenceInformation"
        },
        "MRID": {
          "title": "GSRNEANCode",
          "description": "Aansluiting EAN (LDT).",
          "example": "871687120052440179",
          "type": "string",
          "minLength": 18,
          "maxLength": 18,
          "pattern": "[0-9]{18}"
        },
        "RegisterList": {
          "title": "registerListType",
          "type": "array",
          "items": {
            "$ref": "#/definitions/register"
          }
        }
      },
      "required": [
        "MRID"
      ]
    },
    "marketEvaluationPoint_Subscription": {
      "title": "marketEvaluationPoint_Subscription",
      "description": "E&#233;n of meer verbindingen tussen een net en een onroerende zaak als bedoeld in artikel 16, onderdelen a tot en met d, van de Wet waardering onroerende zaken.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "MRID": {
          "title": "GSRNEANCode",
          "description": "Aansluiting EAN (LDT).",
          "example": "871687120052440179",
          "type": "string",
          "minLength": 18,
          "maxLength": 18,
          "pattern": "[0-9]{18}"
        }
      },
      "required": [
        "MRID"
      ]
    },
    "marketParticipant": {
      "title": "marketParticipant",
      "description": "Identificatie van een partij die onderdeel uitmaakt van een business process in de energysector. Deze klasse wordt gebruikt om organisaties te identificeren die deelnemen aan markt processen.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "MarketRole": {
          "$ref": "#/definitions/marketRole"
        },
        "MRID": {
          "title": "GLNEANCode",
          "description": "Marktpartij EAN (LDT).",
          "example": "876820054017",
          "type": "string",
          "minLength": 13,
          "maxLength": 13,
          "pattern": "[0-9]{13}"
        }
      },
      "required": [
        "MRID",
        "MarketRole"
      ]
    },
    "marketRole": {
      "title": "marketRole",
      "description": "De rol die de marktpartij heeft op basis van ebIX code list",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Marktrol code": {
          "title": "MarketRoleCode",
          "description": "Afkorting Marktrol op basis van ebIX Code list",
          "example": "DDQ",
          "type": "string",
          "enum": [
            "DDQ"
          ]
        }
      },
      "required": [
        "Marktrol code"
      ]
    },
    "meter": {
      "title": "meter",
      "description": "Apparaat waarmee het energiegebruik geregistreerd kan worden.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "MRID": {
          "title": "EnergyMeterIDType",
          "description": "Meternummer",
          "type": "string",
          "minLength": 1,
          "maxLength": 70
        }
      },
      "required": [
        "MRID"
      ]
    },
    "reading": {
      "title": "reading",
      "description": "Informatie over stand telwerk.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "DateAndOrTime": {
          "$ref": "#/definitions/dateAndOrTime"
        },
        "ReadingType": {
          "$ref": "#/definitions/readingType"
        },
        "Value": {
          "title": "Measure",
          "description": "Uitgelezen waarde.",
          "example": "12345678911.123",
          "type": "number",
          "minLength": 1,
          "maxLength": 15
        }
      },
      "required": [
        "Value",
        "DateAndOrTime",
        "ReadingType"
      ]
    },
    "reading_Series": {
      "title": "reading_Series",
      "description": "Object voor het uitwisselen van standen.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "ExternalIdentifiedObject": {
          "$ref": "#/definitions/referenceInformation"
        },
        "MarketEvaluationPoint": {
          "$ref": "#/definitions/marketEvaluationPoint"
        }
      },
      "required": [
        "MarketEvaluationPoint"
      ]
    },
    "reading_Series_Differential": {
      "title": "reading_Series_Differential",
      "description": "Object voor het uitwisselen van gereedstaande standen.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "MarketEvaluationPointList": {
          "title": "marketEvaluationPoint_DifferentialListType",
          "type": "array",
          "items": {
            "$ref": "#/definitions/marketEvaluationPoint_Differential"
          },
          "minItems": 1
        },
        "MarketParticipant": {
          "$ref": "#/definitions/marketParticipant"
        }
      },
      "required": [
        "MarketEvaluationPointList",
        "MarketParticipant"
      ]
    },
    "readingSeriesOperationResult500Type": {
      "title": "readingSeriesOperationResult500Type",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "ResultClassificationCode": {
          "title": "ReadingSeriesResultClassificationCode500Type",
          "description": "The server returned a unexpected error",
          "example": "ServerError",
          "type": "string",
          "enum": [
            "ServerError"
          ]
        }
      },
      "required": [
        "ResultClassificationCode"
      ]
    },
    "readingSeriesOperationResult503Type": {
      "title": "readingSeriesOperationResult503Type",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "ResultClassificationCode": {
          "title": "ReadingSeriesResultClassificationCode503Type",
          "description": "The server returned a unexpected error",
          "example": "ServiceUnavailabeError",
          "type": "string",
          "enum": [
            "ServiceUnavailableError"
          ]
        }
      },
      "required": [
        "ResultClassificationCode"
      ]
    },
    "readingType": {
      "title": "readingType",
      "description": "Datatypering bestaande uit een vermenigingsvuldigingsfactor en een Meeteenheid",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Multiplier": {
          "title": "UnitMultiplier",
          "description": "Vermenigvuldigingseenheid",
          "type": "string",
          "enum": [
            "k"
          ]
        },
        "Unit": {
          "title": "UnitSymbol",
          "description": "Meeteenheid",
          "type": "string",
          "enum": [
            "Wh",
            "m3"
          ]
        }
      },
      "required": [
        "Unit"
      ]
    },
    "referenceInformation": {
      "title": "referenceInformation",
      "description": "Referentie informatie",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "MRID": {
          "title": "ReferenceTextType",
          "description": "Door de aanvragende partij verstrekt referentienummer.",
          "type": "string",
          "minLength": 1,
          "maxLength": 60
        }
      },
      "required": [
        "MRID"
      ]
    },
    "register": {
      "title": "register",
      "description": "Inrichting voor het omvatten en presenteren van aantallen en hoeveelheden.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Meter": {
          "$ref": "#/definitions/meter"
        },
        "MRID": {
          "title": "Identifier",
          "description": "Telwerkidentificatie",
          "example": "1.8.1",
          "type": "string"
        },
        "ReadingList": {
          "title": "readingListType",
          "type": "array",
          "items": {
            "$ref": "#/definitions/reading"
          },
          "minItems": 1
        }
      },
      "required": [
        "MRID",
        "Meter",
        "ReadingList"
      ]
    },
    "request_MarketEvaluationPoint": {
      "title": "request_MarketEvaluationPoint",
      "description": "E&#233;n of meer verbindingen tussen een net en een onroerende zaak als bedoeld in artikel 16, onderdelen a tot en met d, van de Wet waardering onroerende zaken.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "MRID": {
          "title": "GSRNEANCode",
          "description": "Aansluiting EAN (LDT).",
          "example": "871687120052440179",
          "type": "string",
          "minLength": 18,
          "maxLength": 18,
          "pattern": "[0-9]{18}"
        }
      }
    },
    "request_Reading_Series": {
      "title": "request_Reading_Series",
      "description": "Object voor het uitwisselen van standen",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "EndDateAndOrTime": {
          "$ref": "#/definitions/endDateAndOrTime"
        },
        "ExternalIdentifiedObject": {
          "$ref": "#/definitions/referenceInformation"
        },
        "MarketEvaluationPoint": {
          "$ref": "#/definitions/request_MarketEvaluationPoint"
        },
        "MarketParticipant": {
          "$ref": "#/definitions/marketParticipant"
        },
        "StartDateAndOrTime": {
          "$ref": "#/definitions/startDateAndOrTime"
        }
      },
      "required": [
        "EndDateAndOrTime",
        "StartDateAndOrTime",
        "MarketParticipant",
        "MarketEvaluationPoint"
      ]
    },
    "request_Reading_Series_Differential": {
      "title": "request_Reading_Series_Differential",
      "description": "Object voor het uitwisselen van gereedstaande delta standen",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "MarketParticipant": {
          "$ref": "#/definitions/marketParticipant"
        }
      },
      "required": [
        "MarketParticipant"
      ]
    },
    "request_Subscription_Start_End": {
      "title": "request_Subscription_Start_End",
      "description": "Object met abonnementsgegevens",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "ExternalIdentifiedObject": {
          "$ref": "#/definitions/referenceInformation"
        },
        "StartEndSubscriptionMarketEvaluationPoint": {
          "$ref": "#/definitions/marketEvaluationPoint_Subscription"
        },
        "Subscriber": {
          "$ref": "#/definitions/marketParticipant"
        }
      },
      "required": [
        "StartEndSubscriptionMarketEvaluationPoint",
        "Subscriber"
      ]
    },
    "start_Subscription": {
      "title": "start_Subscription",
      "description": "Object met abonnementsgegevens",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "StartSubscriptionMarketEvaluationPoint": {
          "$ref": "#/definitions/marketEvaluationPoint_Subscription"
        },
        "StartSubscriptionReferenceInformation": {
          "$ref": "#/definitions/referenceInformation"
        },
        "StartSubscriptionSubscriptionStatus": {
          "$ref": "#/definitions/subscriptionStatus_Start"
        },
        "Subscriber": {
          "$ref": "#/definitions/marketParticipant"
        }
      },
      "required": [
        "Subscriber",
        "StartSubscriptionSubscriptionStatus",
        "StartSubscriptionMarketEvaluationPoint"
      ]
    },
    "startDateAndOrTime": {
      "title": "startDateAndOrTime",
      "description": "Start datum (en tijd)",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Date": {
          "title": "DateType",
          "description": "Datum (CET/CEST) op basis van standaard ISO 8601",
          "example": "2021-03-23",
          "type": "string",
          "format": "date"
        }
      },
      "required": [
        "Date"
      ]
    },
    "subscriptionStatus_End": {
      "title": "subscriptionStatus_End",
      "description": "Toelichting op het stoppen van een abonnement",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Reason": {
          "title": "ReasonKind_End",
          "description": "De reden van actief of inactief zijn van het abonnement",
          "type": "string",
          "enum": [
            "END",
            "NON"
          ]
        }
      },
      "required": [
        "Reason"
      ]
    },
    "subscriptionStatus_Start": {
      "title": "subscriptionStatus_Start",
      "description": "Toelichting op het starten van een abonnement",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "Reason": {
          "title": "ReasonKind_Start",
          "description": "De reden van actief of inactief zijn van het abonnement",
          "type": "string",
          "enum": [
            "ACT",
            "DBL",
            "LEV",
            "UIT",
            "SMN"
          ]
        }
      },
      "required": [
        "Reason"
      ]
    }
  },
  "parameters": {
    "X-Request-ID": {
      "name": "X-Request-ID",
      "in": "header",
      "description": "UUID voor het uniek identificeren van elke business document instantie. De UUID wordt uitgegeven door de infrastructuur.",
      "type": "string"
    }
  }
}