{
  "openapi": "3.0.3",
  "info": {
    "title": "connection-management",
    "description": "### ServiceId: BSCMF0201\n\n# API Version - 1.0.0\n#### Generated by ECDM Toolkit version 2.12.3\nThis interface is used to manage connection information in the connection register (aansluitingenregister).\n# Release history\n\n## 1.0.0 (2024-12-12)\n- Updated to support retrieval of connection info by ODA's (TS055).\n- Replaced deprecated error response model by latest version, RFC-9457 compliant.\n- Service ID updated to BSCMF0201.\n\n## 0.9.6 (2024-06-14)\n- CHA - processed internal review\n\n## 0.9.5 (2024-02-29)\n- CHA - processed internal review\n\n## 0.9.4 (2024-02-16)\n- CHA - buildingNature is now from type Max5CharactersType instead of 5CharactersType (min items=1).\n- CHA - a few exaples have been corrected.\n\n## 0.9.3 (2024-02-16)\n- Processed internal review.\n\n## 0.9.2 (2024-02-14)\n- Processed internal review. (#90,167,173,174,175,187,193)\n",
    "version": "1.0.0",
    "x-releaseDate": "2025-06-12"
  },
  "servers": [
    {
      "url": "/energy-market/connection/connection/connection-management/v1",
      "description": "Default host only has API context, name and version,"
    }
  ],
  "tags": [
    {
      "name": "AccountingPoint",
      "description": "The collection of accounting points for a given connection."
    }
  ],
  "paths": {
    "/accounting-points/{accounting-point-mrid}": {
      "get": {
        "tags": [
          "AccountingPoint"
        ],
        "summary": "Retrieve accounting point info by EAN",
        "description": "This endpoint can be used to retrieve a single accounting point and associated connection information based on the ean code and a validity date. If the validity date is not provided, the system date will be used. For a request that results in a status of 200 OK, a JSON object of that describes this accounting point will be returned.",
        "deprecated": false,
        "operationId": "getAccountingPoint",
        "parameters": [
          {
            "$ref": "#/components/parameters/valid-from-date"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountingPoint"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "400-Error-Example_PEuXgnxlBq": {
                    "$ref": "#/components/examples/400-Error-Example_PEuXgnxlBq"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "401-Error-Example_Ox7hMSgI9k": {
                    "$ref": "#/components/examples/401-Error-Example_Ox7hMSgI9k"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "403-Error-Example_NdO9U7i48s": {
                    "$ref": "#/components/examples/403-Error-Example_NdO9U7i48s"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "404-Error-Example_JiWhNGZvci": {
                    "$ref": "#/components/examples/404-Error-Example_JiWhNGZvci"
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/application+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "500-Error-Example_QFdLoQTMMS": {
                    "$ref": "#/components/examples/500-Error-Example_QFdLoQTMMS"
                  }
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "503-Error-Example_CCVKUXhRzA": {
                    "$ref": "#/components/examples/503-Error-Example_CCVKUXhRzA"
                  }
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "name": "accounting-point-mrid",
          "in": "path",
          "description": "The EAN18 that is used to identify the associated accounting point (either PAP or a SAP)",
          "required": true,
          "deprecated": false,
          "allowReserved": false,
          "style": "simple",
          "explode": false,
          "schema": {
            "type": "string",
            "pattern": "^[0-9]{18}$"
          }
        }
      ]
    }
  },
  "components": {
    "parameters": {
      "valid-from-date": {
        "name": "valid-from-date",
        "in": "query",
        "description": "valid-from-date: Optional date from which the market evaluation point is valid based on ISO 8601 (YYYY-MM-DD).",
        "required": false,
        "deprecated": false,
        "allowReserved": false,
        "style": "form",
        "schema": {
          "type": "string",
          "format": "date"
        },
        "example": "2023-04-30"
      }
    },
    "examples": {
      "400-Error-Example_PEuXgnxlBq": {
        "summary": "Example of a 400 syntax error.",
        "value": {
          "type": "https://cmf.energysector.nl/reference-data/error-catalogue/user-errors/bad-request",
          "title": "Request contains syntax errors.",
          "status": 400,
          "detail": "Parameter- and payload syntax errors prevented the request from being processed.",
          "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
          "traceID": "00-80e1afed08e019fc1110464cfa66635c-7a085853722dc6d2-01",
          "applicationProblem": [
            {
              "categoryCode": "SYNTAX_ERROR",
              "severityCode": "ERROR",
              "message": [
                {
                  "identifier": "ERR01",
                  "code": "MISSING",
                  "text": "Required parameters A and B are missing."
                },
                {
                  "identifier": "ERR03",
                  "code": "SCHEMA_ERROR",
                  "text": "Class C1 contains unrecognized attributes A1 and A2."
                },
                {
                  "identifier": "ERR02",
                  "code": "MISSING",
                  "text": "Required instance of class C2 is missing from payload."
                }
              ]
            },
            {
              "categoryCode": "RESULT_SET_SIZE",
              "severityCode": "WARNING",
              "message": [
                {
                  "identifier": "WRN03",
                  "code": "RESULT_SET",
                  "text": "Specified parameters may result in a very large result-set, not all results might be available."
                }
              ]
            }
          ]
        }
      },
      "401-Error-Example_Ox7hMSgI9k": {
        "summary": "Example of a 401 authentication error",
        "value": {
          "type": "https://cmf.energysector.nl/reference-data/error-catalogue/default/http-401",
          "title": "Unauthorized.",
          "status": 401,
          "detail": "No access to requested resource."
        }
      },
      "403-Error-Example_NdO9U7i48s": {
        "summary": "Example of a 403 authorization error.",
        "value": {
          "type": "https://cmf.energysector.nl/reference-data/error-catalogue/default/http-403",
          "title": "Forbidden.",
          "status": 403,
          "detail": "Requester has no permission to perform the requested operation."
        }
      },
      "404-Error-Example_JiWhNGZvci": {
        "summary": "Example of a 404 not found error.",
        "value": {
          "type": "https://cmf.energysector.nl/reference-data/error-catalogue/default/http-404",
          "title": "Not found.",
          "status": 404,
          "detail": "Requested resource R1 could not be found."
        }
      },
      "500-Error-Example_QFdLoQTMMS": {
        "summary": "Example of a 500 server error.",
        "value": {
          "type": "https://cmf.energysector.nl/reference-data/error-catalogue/default/http-500",
          "title": "Internal Server Error",
          "status": 500,
          "detail": "Application encountered a fatal exception."
        }
      },
      "503-Error-Example_CCVKUXhRzA": {
        "summary": "Example of a 503 service unavailable error.",
        "value": {
          "type": "https://cmf.energysector.nl/reference-data/error-catalogue/default/http-503",
          "title": "Service Unavailable.",
          "status": 503,
          "detail": "Requested endpoint is unreachable at this time."
        }
      }
    },
    "schemas": {
      "AccountingPoint": {
        "title": "AccountingPoint",
        "description": "Accounting Point",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mrid": {
            "title": "Ean18Type",
            "description": "Primary identifier, must be an EAN18.",
            "example": "578421895452365479",
            "type": "string",
            "pattern": "^[0-9]{18}$"
          },
          "administrativeStatus": {
            "title": "TrueFalseType",
            "description": "Administrative status.\n\n- true - On\n- false - Off\n\nExample:",
            "type": "boolean",
            "default": true
          },
          "billingMonth": {
            "title": "NumericMonthType",
            "description": "In the case of a connection where consumption is determined once a year: the month in which consumption determination takes place.\n\nNumber in the range 01-12 according to ISO 8601.",
            "example": "03",
            "type": "string",
            "pattern": "^(0[1-9]|1[0-2])$"
          },
          "type": {
            "title": "AccountingPointTypeCode",
            "description": "Accounting point type. \n\nOne of:\n\n- PAP - Primary accounting point.\n- SAP - Secundary accounting point.",
            "example": "PAP",
            "type": "string",
            "enum": [
              "PAP",
              "SAP"
            ]
          },
          "blockageForAutomatedMutations": {
            "title": "BlockageForAutomatedMutationsTypeCode",
            "description": "Indicator that specifies whether the accounting point and associated connection is blocked for automatic processing of mutation processes as specified in chapter 4 of the Informatiecode elektriciteit en gas.\n\nOne of:\n\n- NON - None\n- LVZ - Supply security\n- CON - Conditioned\n- TLK- Temporarily cancelled",
            "example": "NON",
            "type": "string",
            "enum": [
              "NON",
              "LVZ",
              "CON",
              "TLK"
            ]
          },
          "connectionCategory": {
            "title": "ConnectionCategoryTypeCode",
            "description": "Connection profile category.\n\nOne of:\n\nELK: \n- E1A\n- E1B\n- E1C\n- E2A\n- E2B\n- E3A\n- E3B\n- E3C\n- E3D\n- E4A\n- OPC\n\nNaturel GAS: \n- G1A\n- G2A\n- G2C\n- GXX\n- GGV\n- GIS\n- GIN\n\nHydrogen:\n- G1A\n- G2A\n- G2C\n- GXX\n- GGV\n- GIS\n- GIN",
            "example": "G2C",
            "type": "string",
            "enum": [
              "E1A",
              "E1B",
              "E2A",
              "E2B",
              "E3A",
              "E3B",
              "E3C",
              "E3D",
              "E4A",
              "OPC",
              "G1A",
              "G2A",
              "G2C",
              "GXX",
              "GGV",
              "GIS",
              "GIN",
              "E1C"
            ]
          },
          "inUseState": {
            "title": "InUseStateKindCode",
            "description": "Physical status, value based on ebIX code list (PhysicalStatusCode). \n\nOne of:\n\n- E22 - In use\n- E23 - Out of use\n- E30 - Construction\n- E31 - Demolished",
            "example": "E22",
            "type": "string",
            "enum": [
              "E23",
              "E22",
              "E30"
            ]
          },
          "readCycle": {
            "title": "MeteringMethodTypeCode",
            "description": "Applied measurement method.\n\nOne of:\n\n- OBM - Not measured\n- JRL - Annually\n- MND - Monthly\n- TMT - Telemetry\n- NCE - Not continuously\n- AND - Otherwise\n- OBK - Unknown",
            "example": "OBM",
            "type": "string",
            "enum": [
              "OBM",
              "JRL",
              "MND",
              "TMT",
              "NCE",
              "AND",
              "OBK"
            ]
          },
          "readRoute": {
            "title": "ReadRouteMethodTypeCode",
            "description": "Allocation method.\n\nOne of:\n\n- TMT - Telemetry\n- PRF - Profiled\n- SMA - Smart meter allocation",
            "example": "TMT",
            "type": "string",
            "enum": [
              "TMT",
              "PRF",
              "SMA"
            ]
          },
          "retiredReason": {
            "title": "RetiredReasonTypeCode",
            "description": "Reason for not in use.\n\nOne of:\n\n- FRD - Fraud\n- LGS - Vacancy\n- KVZ - Customer request\n- AND - Other\n- VLG - Security\n- WBT - Customer default",
            "example": "LGS",
            "type": "string",
            "enum": [
              "FRD",
              "LGS",
              "KVZ",
              "AND",
              "VLG",
              "WBT"
            ]
          },
          "retiredMethod": {
            "title": "RetiredMethodTypeCode",
            "description": "Disconnected kind.\n\nOne of: \n\n- BIN - Inside\n- BUI - Outside",
            "example": "BIN",
            "type": "string",
            "enum": [
              "BIN",
              "BUI"
            ]
          },
          "accountingPointUsagePoints": {
            "$ref": "#/components/schemas/ExtendedMarketEvaluationPoint"
          }
        },
        "required": [
          "mrid",
          "accountingPointUsagePoints"
        ]
      },
      "AdditionalAccountingPoint": {
        "title": "AdditionalAccountingPoint",
        "description": "Accounting Point",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mrid": {
            "title": "Ean18Type",
            "description": "Primary identifier, must be an EAN18.",
            "example": "578421895452365479",
            "type": "string",
            "pattern": "^[0-9]{18}$"
          },
          "administrativeStatus": {
            "title": "TrueFalseType",
            "description": "Administrative status.\n\n- true - On\n- false - Off\n\nExample:",
            "type": "boolean",
            "default": true
          },
          "billingMonth": {
            "title": "NumericMonthType",
            "description": "In the case of a connection where consumption is determined once a year: the month in which consumption determination takes place.\n\nNumber in the range 01-12 according to ISO 8601.",
            "example": "03",
            "type": "string",
            "pattern": "^(0[1-9]|1[0-2])$"
          },
          "type": {
            "title": "AccountingPointTypeCode",
            "description": "Accounting point type. \n\nOne of:\n\n- PAP - Primary accounting point.\n- SAP - Secundary accounting point.",
            "example": "PAP",
            "type": "string",
            "enum": [
              "PAP",
              "SAP"
            ]
          },
          "blockageForAutomatedMutations": {
            "title": "BlockageForAutomatedMutationsTypeCode",
            "description": "Indicator that specifies whether the accounting point and associated connection is blocked for automatic processing of mutation processes as specified in chapter 4 of the Informatiecode elektriciteit en gas.\n\nOne of:\n\n- NON - None\n- LVZ - Supply security\n- CON - Conditioned\n- TLK- Temporarily cancelled",
            "example": "NON",
            "type": "string",
            "enum": [
              "NON",
              "LVZ",
              "CON",
              "TLK"
            ]
          },
          "connectionCategory": {
            "title": "ConnectionCategoryTypeCode",
            "description": "Connection profile category.\n\nOne of:\n\nELK: \n- E1A\n- E1B\n- E1C\n- E2A\n- E2B\n- E3A\n- E3B\n- E3C\n- E3D\n- E4A\n- OPC\n\nNaturel GAS: \n- G1A\n- G2A\n- G2C\n- GXX\n- GGV\n- GIS\n- GIN\n\nHydrogen:\n- G1A\n- G2A\n- G2C\n- GXX\n- GGV\n- GIS\n- GIN",
            "example": "G2C",
            "type": "string",
            "enum": [
              "E1A",
              "E1B",
              "E2A",
              "E2B",
              "E3A",
              "E3B",
              "E3C",
              "E3D",
              "E4A",
              "OPC",
              "G1A",
              "G2A",
              "G2C",
              "GXX",
              "GGV",
              "GIS",
              "GIN",
              "E1C"
            ]
          },
          "inUseState": {
            "title": "InUseStateKindCode",
            "description": "Physical status, value based on ebIX code list (PhysicalStatusCode). \n\nOne of:\n\n- E22 - In use\n- E23 - Out of use\n- E30 - Construction\n- E31 - Demolished",
            "example": "E22",
            "type": "string",
            "enum": [
              "E23",
              "E22",
              "E30"
            ]
          },
          "readCycle": {
            "title": "MeteringMethodTypeCode",
            "description": "Applied measurement method.\n\nOne of:\n\n- OBM - Not measured\n- JRL - Annually\n- MND - Monthly\n- TMT - Telemetry\n- NCE - Not continuously\n- AND - Otherwise\n- OBK - Unknown",
            "example": "OBM",
            "type": "string",
            "enum": [
              "OBM",
              "JRL",
              "MND",
              "TMT",
              "NCE",
              "AND",
              "OBK"
            ]
          },
          "readRoute": {
            "title": "ReadRouteMethodTypeCode",
            "description": "Allocation method.\n\nOne of:\n\n- TMT - Telemetry\n- PRF - Profiled\n- SMA - Smart meter allocation",
            "example": "TMT",
            "type": "string",
            "enum": [
              "TMT",
              "PRF",
              "SMA"
            ]
          },
          "retiredReason": {
            "title": "RetiredReasonTypeCode",
            "description": "Reason for not in use.\n\nOne of:\n\n- FRD - Fraud\n- LGS - Vacancy\n- KVZ - Customer request\n- AND - Other\n- VLG - Security\n- WBT - Customer default",
            "example": "LGS",
            "type": "string",
            "enum": [
              "FRD",
              "LGS",
              "KVZ",
              "AND",
              "VLG",
              "WBT"
            ]
          },
          "retiredMethod": {
            "title": "RetiredMethodTypeCode",
            "description": "Disconnected kind.\n\nOne of: \n\n- BIN - Inside\n- BUI - Outside",
            "example": "BIN",
            "type": "string",
            "enum": [
              "BIN",
              "BUI"
            ]
          }
        },
        "required": [
          "mrid"
        ]
      },
      "Address": {
        "title": "Address",
        "description": "Unofficial address according to NEN 5825:2002",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "streetName": {
            "title": "_255charactersType",
            "description": "An identifying name given to a street or road.",
            "example": "Village street",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "number": {
            "title": "IntegerType",
            "description": "A numbering assigned to an object.",
            "example": 147,
            "type": "integer"
          },
          "addition": {
            "title": "Max6CharactersType",
            "description": "An additional addition to a house number assigned to an object.\nNote: Only official values from additional addition, otherwise use attribute location description.",
            "example": "bis",
            "type": "string",
            "minLength": 1,
            "maxLength": 6
          },
          "postalCode": {
            "title": "ZipCodeType",
            "description": "A short series of letters and/or numbers that is part of an address, and shows exactly where a place is.",
            "example": "1002RJ",
            "type": "string",
            "minLength": 1,
            "maxLength": 6
          },
          "cityName": {
            "title": "_255charactersType",
            "description": "The name of a geographical location, such as a town, or a city.",
            "example": "Amsterdam",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "country": {
            "title": "CountryTypeCode",
            "description": "The two-letter country identification according to ISO 3166-1.",
            "example": "NL",
            "type": "string",
            "enum": [
              "BE",
              "DE",
              "NL"
            ]
          }
        }
      },
      "ApplicationMessage": {
        "title": "ApplicationMessage",
        "description": "Each ApplicationProblem object can be associated with an array of error messages, represented by ApplicationMessage objects.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "identifier": {
            "title": "IdentifierType",
            "description": "A unique, application-specific identification of the message.",
            "example": "VAL01",
            "type": "string"
          },
          "code": {
            "title": "CodeListCodeType",
            "description": "An application-specific message code.",
            "example": "PARAM_CONFLICT",
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "content": {
                "title": "NormalizedString",
                "type": "string"
              },
              "_codeListName": {
                "title": "NormalizedString",
                "type": "string"
              },
              "_codeListVersion": {
                "title": "NormalizedString",
                "type": "string"
              }
            },
            "required": [
              "content"
            ]
          },
          "text": {
            "title": "TextType",
            "description": "Provides a detailed description of the error.",
            "example": "Parameters A and B can not occur at the same time.",
            "type": "string"
          }
        },
        "required": [
          "text"
        ]
      },
      "ApplicationProblem": {
        "title": "ApplicationProblem",
        "description": "The ApplicationProblem object provides an extension mechanism for the definition of more complex, structured error messages. It defines an array of error messages associated with a severity- and application-specific error code.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "categoryCode": {
            "title": "CodeListCodeType",
            "description": "An application-specific error category code.",
            "example": "PARAMETER_VALIDATION_ERROR",
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "content": {
                "title": "NormalizedString",
                "type": "string"
              },
              "_codeListName": {
                "title": "NormalizedString",
                "type": "string"
              },
              "_codeListVersion": {
                "title": "NormalizedString",
                "type": "string"
              }
            },
            "required": [
              "content"
            ]
          },
          "severityCode": {
            "title": "ProblemSeverityCodeType",
            "description": "Identifies the severity of the error.",
            "example": "ERROR",
            "type": "string",
            "default": "ERROR",
            "enum": [
              "INFORMATION",
              "WARNING",
              "ERROR",
              "CRITICAL_ERROR"
            ]
          },
          "message": {
            "title": "ApplicationMessage",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ApplicationMessage"
            }
          }
        },
        "required": [
          "categoryCode",
          "severityCode"
        ]
      },
      "Building": {
        "title": "Building",
        "description": "Building details",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "buildingNature": {
            "title": "Max5CharactersType",
            "description": "Building nature (based on the Inspire reference model).",
            "example": "abrie",
            "type": "string",
            "minLength": 1,
            "maxLength": 5
          },
          "geoPositionPoint": {
            "$ref": "#/components/schemas/GeoPositionPoint"
          }
        }
      },
      "Domain": {
        "title": "Domain",
        "description": "Grid area",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mrid": {
            "title": "Ean18Type",
            "description": "Grid area identification (EAN18).",
            "example": "914573258975645875",
            "type": "string",
            "pattern": "^[0-9]{18}$"
          },
          "name": {
            "title": "_255charactersType",
            "description": "Grid area name.",
            "example": "Name of grid area.",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "referencedSubUnitMarketParticipant": {
            "$ref": "#/components/schemas/ReferencedSubUnitMarketParticipant"
          },
          "serviceCategory": {
            "$ref": "#/components/schemas/ServiceCategory"
          }
        },
        "required": [
          "mrid",
          "referencedSubUnitMarketParticipant",
          "serviceCategory"
        ]
      },
      "ExchangePoint": {
        "title": "ExchangePoint",
        "description": "Exchange point",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mrid": {
            "title": "Ean18Type",
            "description": "Unique identification of exchange point (EAN18).",
            "example": "407000000719670720",
            "type": "string",
            "pattern": "^[0-9]{18}$"
          },
          "desiredPhysicalConnectionCapacity": {
            "title": "_255charactersType",
            "description": "Desired physical connection capacity.\n\nOne of:\n\nElectricity:\n- 1x6\n- 1x10\n- 1x25\n- 1x35\n- 1x50\n- 1x63\n- 1x80\n- 3x25\n- 3x35\n- 3x50\n- 3x63\n- 3x80\n- unkown: OBK\n- for large account (0..9999999999)\n\nNatural gas:\n- G4\n- G6\n- G10\n- G16\n- G25\n- unkown: OBK\n- for large account (0..9999999999)\n\nHydrogen:\n- G4\n- G6\n- G10\n- G16\n- G25\n- unkown: OBK\n- for large account (0..9999999999)",
            "example": "125544",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "desiredPressure": {
            "title": "DecimalType",
            "description": "Desired nominal delivery pressure in Bar.",
            "example": 20.5,
            "type": "number",
            "minimum": 0.0
          },
          "desiredVoltage": {
            "title": "IntegerType",
            "description": "Desired nominal connection voltage (in Volt).",
            "example": 230,
            "type": "integer"
          },
          "pressureGuaranteed": {
            "title": "TrueFalseType",
            "description": "Indicates that the connected party has requested a fixed pressure value for the exchange point.\n\nOne of:\n\n- true\n- false",
            "example": true,
            "type": "boolean"
          },
          "valueMainFuse": {
            "title": "PositiveNumericType",
            "description": "Value main fuse.\n\nMaximum current (Ampere) that allows general safety at the transfer point.\nIn case of a low voltage exchangepoint the main fuse is installed by the grid operator.",
            "example": 35,
            "type": "integer",
            "minimum": 0.0,
            "multipleOf": 1.0
          },
          "exchangePointUsagePointLocation": {
            "$ref": "#/components/schemas/ExchangePointUsagePointLocation"
          },
          "flowDirection": {
            "$ref": "#/components/schemas/FlowDirection"
          }
        },
        "required": [
          "exchangePointUsagePointLocation",
          "flowDirection"
        ]
      },
      "ExchangePointUsagePointLocation": {
        "title": "ExchangePointUsagePointLocation",
        "description": "Connection location",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mrid": {
            "title": "IdType",
            "description": "Unique identification of the connection location.",
            "example": "60b48ec6-bc9f-4da7-b349-c922175c4d87",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "floorIdentification": {
            "title": "NumericType",
            "description": "Indication on which floor the access door of the connection object is located.\nIt is represented by a whole number, with the ground floor (BG) designated as '0'. \nIf the entrance is located more than 1.5 meters below ground level, the floor is marked as '-1'.",
            "example": 1.0,
            "type": "number"
          },
          "accessMethod": {
            "title": "_2000charactersType",
            "description": "Instruction regarding the way to obtain access to the connection object.",
            "example": "Please take into account regular opening hours.",
            "type": "string",
            "minLength": 1,
            "maxLength": 2000
          },
          "building": {
            "$ref": "#/components/schemas/Building"
          },
          "positionPoint": {
            "$ref": "#/components/schemas/PositionPoint"
          },
          "basisObjectReferencedObject": {
            "$ref": "#/components/schemas/ReferencedObject"
          }
        },
        "required": [
          "mrid"
        ]
      },
      "ExtendedMarketEvaluationPoint": {
        "title": "ExtendedMarketEvaluationPoint",
        "description": "Connection",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "additionalAccountingPoint": {
            "title": "AdditionalAccountingPoint",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalAccountingPoint"
            }
          },
          "mrid": {
            "title": "Ean18Type",
            "description": "Unique identification of the connection (EAN18).",
            "example": "578421895452365479",
            "type": "string",
            "pattern": "^[0-9]{18}$"
          },
          "marketSegment": {
            "title": "MarketSegmentTypeCode",
            "description": "Market segment.\n\nOne of:\n\n- SML - Small usagepoint\n- LRG - Large usagepoint",
            "example": "LRG",
            "type": "string",
            "enum": [
              "SML",
              "LRG"
            ]
          },
          "contractedCapacity": {
            "title": "IntegerType",
            "description": "Maximum power (in kW/m3) that the connected party expects to need annualy at any moment in time.",
            "example": 9500,
            "type": "integer"
          },
          "powerGeneratingUnitsOnly": {
            "title": "TrueFalseType",
            "description": "Indication for production use only.\n\nOne of:\n\n- true - Yes\n- false - No",
            "example": false,
            "type": "boolean",
            "default": false
          },
          "accountSize": {
            "title": "AccountSizeTypeCode",
            "description": "indication of the size of the connection based on the desired connection capacities of the transfer points\n:info: Derivation rule/validation rule: if the desired connection capacity of one of the transfer points is 'large' or an integer then 'large' otherwise 'small'.\n\nOne of: \n\n- SML - Small accounts\n- LRG - Large accounts",
            "example": "LRG",
            "type": "string",
            "enum": [
              "SML",
              "LRG"
            ]
          },
          "mustMeasureWeekMax": {
            "title": "TrueFalseType",
            "description": "indication whether the kWmax should be measured per week\n\nOne of:\n\n- true - Yes\n- false - No",
            "example": true,
            "type": "boolean"
          },
          "party": {
            "$ref": "#/components/schemas/Party"
          },
          "exchangePointUsagePoints": {
            "title": "ExchangePoint",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExchangePoint"
            },
            "minItems": 1
          },
          "domain": {
            "$ref": "#/components/schemas/Domain"
          },
          "referencedSubUnitMarketParticipant": {
            "$ref": "#/components/schemas/ReferencedSubUnitMarketParticipant"
          },
          "registration": {
            "$ref": "#/components/schemas/Registration"
          },
          "serviceCategory": {
            "$ref": "#/components/schemas/ServiceCategory"
          },
          "validity": {
            "$ref": "#/components/schemas/Validity"
          }
        },
        "required": [
          "marketSegment",
          "exchangePointUsagePoints",
          "referencedSubUnitMarketParticipant",
          "registration",
          "validity"
        ]
      },
      "FlowDirection": {
        "title": "FlowDirection",
        "description": "Direction of energy flow.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "direction": {
            "title": "EnergyFlowDirectionTypeCode",
            "description": "Direction of energy flow. Values are based on an ebIX code list. \n\nOne of: \n\n- E17 - Abatement\n- E18 - Input\n- E19 - Combination",
            "example": "E17",
            "type": "string",
            "enum": [
              "E17",
              "E18",
              "E19"
            ]
          }
        },
        "required": [
          "direction"
        ]
      },
      "GeoPositionPoint": {
        "title": "GeoPositionPoint",
        "description": "GEO position points",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "rdXPosition": {
            "title": "Measure3DecimalsType",
            "description": "The value of the RD point (Rijksdriehoeksmeting) on the x-axis is accurate to three decimal places.",
            "example": 155.533,
            "type": "number",
            "multipleOf": 0.001
          },
          "rdYPosition": {
            "title": "Measure3DecimalsType",
            "description": "The value of the RD point (Rijksdriehoeksmeting) on the y-axis is accurate to three decimal places.",
            "example": 463.741,
            "type": "number",
            "multipleOf": 0.001
          }
        },
        "required": [
          "rdXPosition",
          "rdYPosition"
        ]
      },
      "NumberDesignationReferencedObject": {
        "title": "NumberDesignationReferencedObject",
        "description": "An object referenced in a formal (external) register of registration.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mrid": {
            "title": "IdType",
            "description": "Identification number of the data register as defined in the attribute domain within this class.",
            "example": "123e4567-e89b-12d3-a456-426655440000",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "domain": {
            "title": "NdBaseRegisterTypeCode",
            "description": "A data register regarding certain resources. Data relating to this resource can be used based on a unique identification within this class.\n\nOne of:\n\n- NRA - Nummeraanduiding (BAG)",
            "example": "NRA",
            "type": "string",
            "enum": [
              "NRA"
            ]
          }
        },
        "required": [
          "mrid",
          "domain"
        ]
      },
      "Party": {
        "title": "Party",
        "description": "Connected party",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cocRegistrationNumber": {
            "title": "_255charactersType",
            "description": "Chamber of Commerce number.",
            "example": "12345678B01",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "person": {
            "$ref": "#/components/schemas/Person"
          }
        },
        "required": [
          "person"
        ]
      },
      "Person": {
        "title": "Person",
        "description": "Person",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "lastName": {
            "title": "LastNameType",
            "description": "Last name.",
            "example": "De Groot",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "prefix": {
            "title": "PrefixLastNameType",
            "description": "Prefix.",
            "example": "van der",
            "type": "string",
            "minLength": 1,
            "maxLength": 16
          },
          "initials": {
            "title": "InitialsType",
            "description": "Initials.",
            "example": "N",
            "type": "string",
            "minLength": 1,
            "maxLength": 16
          },
          "dateOfBirth": {
            "title": "DateType",
            "description": "Date of birth based on ISO8601.",
            "example": "1982-12-27",
            "type": "string",
            "format": "date"
          },
          "postalAddress": {
            "$ref": "#/components/schemas/PostalAddress"
          }
        },
        "required": [
          "lastName"
        ]
      },
      "PositionPoint": {
        "title": "PositionPoint",
        "description": "Location indication",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "locationDescription": {
            "title": "_2000charactersType",
            "description": "A description of the location of a connection object, possibly in relation to a nearby addressable object.",
            "example": "3 meter richting het zuidoosten",
            "type": "string",
            "minLength": 1,
            "maxLength": 2000
          },
          "unofficialAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "numberDesignationReferencedObject": {
            "$ref": "#/components/schemas/NumberDesignationReferencedObject"
          }
        }
      },
      "PostalAddress": {
        "title": "PostalAddress",
        "description": "Postalcode address according to NEN 5825:2002",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "streetName": {
            "title": "_255charactersType",
            "description": "An identifying name given to a street or road.",
            "example": "Village street",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "number": {
            "title": "IntegerType",
            "description": "A numbering assigned to an object.",
            "example": 147,
            "type": "integer"
          },
          "addition": {
            "title": "Max6CharactersType",
            "description": "An additional addition to a house number assigned to an object.\nNote: Only official values from additional addition, otherwise use attribute location description.",
            "example": "bis",
            "type": "string",
            "minLength": 1,
            "maxLength": 6
          },
          "postalCode": {
            "title": "ZipCodeType",
            "description": "A short series of letters and/or numbers that is part of an address, and shows exactly where a place is.",
            "example": "1002RJ",
            "type": "string",
            "minLength": 1,
            "maxLength": 6
          },
          "cityName": {
            "title": "_255charactersType",
            "description": "The name of a geographical location, such as a town, or a city.",
            "example": "Amsterdam",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "country": {
            "title": "_2charactersType",
            "description": "The two-letter country identification according to ISO 3166-1.",
            "example": "NL",
            "type": "string",
            "minLength": 2,
            "maxLength": 2
          }
        }
      },
      "ProblemDetails": {
        "title": "ProblemDetails",
        "description": "The ProblemDetails error response object represents an application error that is compliant with the RFC9457 Problem Details specification.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "type": {
            "title": "NormalizedString",
            "description": "The type member is a JSON string containing a URI reference that identifies the problem type. Consumers MUST use the type URI (after resolution, if necessary) as the problem type's primary identifier.\n\nWhen this member is not present, its value is assumed to be about:blank.\n\nIf the type URI is a locator (e.g., those with an http or https scheme), dereferencing it SHOULD provide human-readable documentation for the problem type (e.g., using HTML). However, consumers SHOULD NOT automatically dereference the type URI, unless they do so when providing information to developers (e.g., when a debugging tool is in use).",
            "example": "https://standards.edsn.nl/REST/error-catalogue/user-errors/parameter-validation",
            "type": "string"
          },
          "title": {
            "title": "NameType",
            "description": "The title member is a JSON string containing a short, human-readable summary of the problem type.\n\nIt SHOULD NOT change from occurrence to occurrence of the problem, except for localization (e.g., using proactive content negotiation).",
            "example": "One or more parameters did not validate correctly",
            "type": "string"
          },
          "status": {
            "title": "IntegerType",
            "description": "The status member is a JSON number indicating the HTTP status code generated by the origin server for this occurrence of the problem.\n\nThe status member conveys the HTTP status code used for the convenience of the consumer. Generators MUST use the same status code in the actual HTTP response, to assure that generic HTTP software that does not understand this format still behaves correctly.\n\nConsumers can use the status member to determine what the original status code used by the generator was when it has been changed (e.g., by an intermediary or cache) and when a message's content is persisted without HTTP information. Generic HTTP software will still use the HTTP status code.",
            "example": 400,
            "type": "integer"
          },
          "detail": {
            "title": "TextType",
            "description": "The detail member is a JSON string containing a human-readable explanation specific to this occurrence of the problem.\n\nThe detail string, if present, ought to focus on helping the client correct the problem, rather than giving debugging information.\n\nConsumers SHOULD NOT parse the detail member for information; extensions are more suitable and less error-prone ways to obtain such information.",
            "example": "Conflicting parameters are: A, B, C, D",
            "type": "string"
          },
          "instance": {
            "title": "TextType",
            "description": "The instance member is a JSON string containing a URI reference that identifies the specific occurrence of the problem.\nWhen the instance URI is dereferenceable, the problem details object can be fetched from it. It might also return information about the problem occurrence in other formats through use of proactive content negotiation.\nWhen the instance URI is not dereferenceable, it serves as a unique identifier for the problem occurrence that may be of significance to the server but is opaque to the client.",
            "example": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
            "type": "string"
          },
          "traceId": {
            "title": "IdentifierType",
            "description": "This field provides an OpenTelemetry compliant trace identifier that can be used to correlate related (error) messages. The field is constructed as follows:\n{version}-{trace_id}-{span_id}-{trace_flags}\nIn which:\nversion = version of this trace;\ntrace-id = identification of a single trace (i.e. associated series of messages);\nspan-id = identification of a series of correlated messages within a single trace;\ntrace-flags = additional information.",
            "example": "00-80e1afed08e019fc1110464cfa66635c-7a085853722dc6d2-01",
            "type": "string"
          },
          "applicationProblem": {
            "title": "ApplicationProblem",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ApplicationProblem"
            }
          }
        },
        "required": [
          "type",
          "title",
          "status"
        ]
      },
      "ReferencedObject": {
        "title": "ReferencedObject",
        "description": "An object referenced in a formal (external) register of registration",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mrid": {
            "title": "IdType",
            "description": "Identification number of the data register as defined in the attribute domain within this class.",
            "example": "123e4567-e89b-12d3-a456-426655440000",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "domain": {
            "title": "BaseRegisterTypeCode",
            "description": "A data register regarding certain resources. Data relating to this resource can be used based on a unique identification within this class.\n\nOne of:\n\n- VBO - Verblijfsobject (BAG)\n- STP - Standplaats (BAG)\n- LGP - Ligplaats (BAG)\n- PND - Pand (BAG)\n- KDO - Kadastraalobject (KAD)\n- GTO - Grootschalig Topografisch object (GEO)\n- ECO - ECO movement location (ECO)",
            "example": "VBO",
            "type": "string",
            "enum": [
              "VBO",
              "STP",
              "LGP",
              "ECO",
              "KDO",
              "GTO",
              "PND"
            ]
          }
        },
        "required": [
          "mrid",
          "domain"
        ]
      },
      "ReferencedSubUnitMarketParticipant": {
        "title": "ReferencedSubUnitMarketParticipant",
        "description": "Organizational unit",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mrid": {
            "title": "IdType",
            "description": "Identification of the Referenced SubUnit MarketParticipant.",
            "example": "1234567891231",
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "mrid"
        ]
      },
      "Registration": {
        "title": "Registration",
        "description": "The Registration object captures the timeline of an entity's registration within the system. It includes details about when the registration started and, if applicable, when it ended. Based on NEN 3610.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "registrationDate": {
            "title": "DateTimeType",
            "description": "Start date and time of the latest update of the registration.",
            "example": "2024-05-01T14:46:46.988123Z",
            "type": "string",
            "format": "date-time"
          },
          "endRegistration": {
            "title": "DateTimeType",
            "description": "The date and time when the entity's registration ended, if applicable. This field, indicating the end of the registration period based on ISO 8601 format.",
            "example": "2024-06-25T00:00:00Z",
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "registrationDate"
        ]
      },
      "ServiceCategory": {
        "title": "ServiceCategory",
        "description": "Service category",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "productKind": {
            "title": "ServiceCategoryKindCode",
            "description": "Product kind, values based on ebIX code list. \n\nOne of: \n\n- 023 - Electricity\n- 027 - Natural gas\n- 031 - Hydrogen",
            "example": "031",
            "type": "string",
            "enum": [
              "023",
              "027",
              "031"
            ]
          }
        },
        "required": [
          "productKind"
        ]
      },
      "Validity": {
        "title": "Validity",
        "description": "The Validity object captures the validity period of an entity. It includes information on when the entity's validity starts and, if applicable, ends. Based on NEN 3610.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "beginDate": {
            "title": "DateType",
            "description": "The start date and time of the entity's validity period. This field indicates when the entity becomes/became valid in ISO 8601 format.",
            "example": "2024-06-25",
            "type": "string",
            "format": "date"
          },
          "endDate": {
            "title": "DateType",
            "description": "The end date and time of the entity's validity period, if applicable. This field indicates when the entity's validity expires in ISO 8601 format.",
            "example": "2024-06-25",
            "type": "string",
            "format": "date"
          }
        },
        "required": [
          "beginDate"
        ]
      }
    }
  }
}