{
  "openapi": "3.0.3",
  "info": {
    "title": "metering-data-management",
    "description": "### ServiceId: BSCMF0202\n\n# API Version - 2.0.0\n#### Generated by ECDM Toolkit version 2.12.1\nService to request for quantification of meter readings and volumes\n# Release History\n\n## 2.0.0 (2025-05-09)\nAdded RFC-026: query parameter as request date. \nApproved version.\n\n## 1.0.0 (2024-11-08)\nFinalised after approval service description document\n\n## 0.9.0 (2024-07-04)\nChanged resource name to meter-readings\n\n## 0.3.0 (2024-07-03)\nChanged resource name to meter-readings-sa<br>\nChanged operation name to request-for-quantification\n\n\n## 0.2.0 (2024-07-01)\nChanged design to controller without a body\n\n## 0.1.1 (2024-06-10)\nFirst draft\n",
    "termsOfService": "https://www.edsn.nl",
    "contact": {
      "name": "EDSN B.V.",
      "url": "https://www.edsn.nl",
      "email": "servicedesk@edsn.nl"
    },
    "license": {
      "name": "Apache 2.0",
      "url": "https://www.apache.org/licenses/LICENSE-2.0"
    },
    "version": "2.0.0",
    "x-releaseDate": "2025-05-09"
  },
  "servers": [
    {
      "url": "/energy-market/measurement/measurement/metering-data-management/v2",
      "description": "Default host only has API context, name and version,"
    }
  ],
  "tags": [
    {
      "name": "Requests"
    }
  ],
  "paths": {
    "/meter-readings/{accounting-point-mrid}/request-for-quantification": {
      "post": {
        "tags": [
          "Requests"
        ],
        "summary": "send request for quantification of readings and volumes",
        "description": "a selling or buying market participant can send a request to quantify readings and volumes of a single accountingpoint (EAN18)",
        "deprecated": false,
        "operationId": "postDeterminationRequest",
        "parameters": [
          {
            "name": "requested-date",
            "in": "query",
            "description": "The requested date as query parameter, format is the ISO 8601 date YYYY-MM-DD, i.e. year-month-day format.\r\n",
            "required": true,
            "deprecated": false,
            "allowReserved": false,
            "style": "form",
            "schema": {
              "type": "string",
              "format": "date"
            },
            "example": "2027-08-23"
          }
        ],
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Rfc7807ProblemResultType"
                },
                "examples": {
                  "Error400_SFn8Z0G81c": {
                    "$ref": "#/components/examples/Error400_SFn8Z0G81c"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Rfc7807ProblemResultType"
                },
                "examples": {
                  "Error401_PL9bRR7hNj": {
                    "$ref": "#/components/examples/Error401_PL9bRR7hNj"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Rfc7807ProblemResultType"
                },
                "examples": {
                  "Error403_E8cVV7vTpd": {
                    "$ref": "#/components/examples/Error403_E8cVV7vTpd"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Rfc7807ProblemResultType"
                },
                "examples": {
                  "Error404_S3zYo4x5Yh": {
                    "$ref": "#/components/examples/Error404_S3zYo4x5Yh"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Rfc7807WithErrorCodeProblemResultType"
                },
                "examples": {
                  "Error422_IlLazHKtXi": {
                    "$ref": "#/components/examples/Error422_IlLazHKtXi"
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Rfc7807ProblemResultType"
                },
                "examples": {
                  "Error500_XISYCPQuI7": {
                    "$ref": "#/components/examples/Error500_XISYCPQuI7"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Rfc7807ProblemResultType"
                },
                "examples": {
                  "Error503_XYCGd7baT2": {
                    "$ref": "#/components/examples/Error503_XYCGd7baT2"
                  }
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "name": "accounting-point-mrid",
          "in": "path",
          "description": "The unique identification of the accounting point (EAN18).\r\n",
          "required": true,
          "deprecated": false,
          "allowReserved": false,
          "style": "simple",
          "explode": false,
          "schema": {
            "type": "string"
          },
          "example": "870011223344556677"
        }
      ]
    }
  },
  "components": {
    "examples": {
      "Error400_SFn8Z0G81c": {
        "value": {
          "type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
          "title": "Bad Request",
          "status": 400
        }
      },
      "Error401_PL9bRR7hNj": {
        "value": {
          "type": "https://datatracker.ietf.org/doc/html/rfc7235#section-3.1",
          "title": "Unauthorized",
          "status": 401
        }
      },
      "Error403_E8cVV7vTpd": {
        "value": {
          "type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
          "title": "Forbidden",
          "status": 403
        }
      },
      "Error404_S3zYo4x5Yh": {
        "value": {
          "type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.4",
          "title": "Not Found",
          "status": 404
        }
      },
      "Error422_IlLazHKtXi": {
        "value": {
          "type": "https://datatracker.ietf.org/doc/html/rfc4918#section-11.2",
          "title": "Unprocessable Entity",
          "status": 422,
          "detail": "{ A description of the business rules that prevented the request being processed. }",
          "errorCode": "{ An error code that is used to uniquely identify the error type within the application. }"
        }
      },
      "Error500_XISYCPQuI7": {
        "value": {
          "type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
          "title": "Internal Server Error",
          "status": 500
        }
      },
      "Error503_XYCGd7baT2": {
        "value": {
          "type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.4",
          "title": "Service Unavailable",
          "status": 503
        }
      }
    },
    "schemas": {
      "Rfc7807ProblemResultType": {
        "title": "Rfc7807ProblemResultType",
        "description": "English descriptions",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "title": {
            "title": "NameType",
            "description": "HTTP Status code error containing information (based on RFC7807).",
            "type": "string"
          },
          "type": {
            "title": "TextType",
            "description": "A URI reference [RFC3986] that identifies the problem type. This specification encourages that, when dereferenced, it provide human-readable documentation for the problem type. When this member is not present, its value is assumed to be about:blank.",
            "type": "string"
          },
          "detail": {
            "title": "TextType",
            "description": "A human-readable explanation specific to this occurrence of the problem.",
            "type": "string"
          },
          "status": {
            "title": "IntegerType",
            "description": "The HTTP status code generated by the origin server for this occurrence of the problem.",
            "type": "integer"
          },
          "instance": {
            "title": "TextType",
            "description": "A URI reference that identifies the specific occurrence of the problem.",
            "type": "string"
          },
          "traceId": {
            "title": "TextType",
            "description": "Contains the trace ID added to the request by the entry gateway, unless a trace ID is already present in the incoming data exchange. In that case, the existing trace ID is used.\n\nFormat according to the W3C standard: {version}-{trace_id}-{span_id}-{trace_flags}",
            "example": "</b>00-80e1afed08e019fc1110464cfa66635c-7a085853722dc6d2-01",
            "type": "string"
          }
        },
        "required": [
          "title",
          "type",
          "status"
        ]
      },
      "Rfc7807WithErrorCodeProblemResultType": {
        "title": "Rfc7807WithErrorCodeProblemResultType",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "title": {
            "title": "NameType",
            "description": "HTTP-statuscode with details (based on RFC7807)",
            "type": "string"
          },
          "type": {
            "title": "TextType",
            "description": "A URI reference [RFC3986] that identifies the problem type. This specification encourages that, when dereferenced, it provide human-readable documentation for the problem type. When this member is not present, its value is assumed to be about:blank.",
            "type": "string"
          },
          "detail": {
            "title": "TextType",
            "description": "A human-readable explanation specific to this occurrence of the problem.",
            "example": "De aansluiting is niet gesloopt in de gehele periode waar het bericht betrekking op heeft.",
            "type": "string"
          },
          "status": {
            "title": "IntegerType",
            "description": "The HTTP status code generated by the origin server for this occurrence of the problem.",
            "type": "integer"
          },
          "errorCode": {
            "title": "TextType",
            "description": "Een (alfa)numerieke code van desbetreffende business rule.",
            "example": "657",
            "type": "string"
          },
          "instance": {
            "title": "TextType",
            "description": "A URI reference that identifies the specific occurrence of the problem.",
            "type": "string"
          },
          "traceId": {
            "title": "TextType",
            "description": "Contains the trace ID added to the request by the entry gateway, unless a trace ID is already present in the incoming data exchange. In that case, the existing trace ID is used.\n\nFormat according to the W3C standard: {version}-{trace_id}-{span_id}-{trace_flags}",
            "example": "</b>00-80e1afed08e019fc1110464cfa66635c-7a085853722dc6d2-01",
            "type": "string"
          }
        },
        "required": [
          "title",
          "type",
          "detail",
          "status",
          "errorCode"
        ]
      }
    }
  }
}