{
  "openapi": "3.1.0",
  "info": {
    "title": "START_BERECHNUNGSFORMEL (NB)",
    "version": "202604",
    "description": "Das Ereignis `START_BERECHNUNGSFORMEL` der Marktrolle NB als eigenständige Spezifikation, abgeleitet aus der Auslöser-API der Formatversion 202604. Genau ein Pfad: `POST /inbound`; das Ereignis ergibt sich aus `zusatzdaten.eventname` im Rumpf."
  },
  "servers": [
    {
      "description": "Fake Env",
      "url": "https://api.macoapp.de"
    }
  ],
  "tags": [
    {
      "name": "START_BERECHNUNGSFORMEL"
    }
  ],
  "paths": {
    "/inbound": {
      "post": {
        "deprecated": false,
        "description": "Trigger-Event **START_BERECHNUNGSFORMEL** der Marktrolle NB.\n\n**Startet diese Rollensichten** (2):\n\n- [Ergänzende Daten zum Lokationsbündel von NBA an NBN — NBA](/prozessdoku/202604/NB--NBA/awh-netzbetreiberwechsel-erganzende-daten-zum-lokationsbundel-von-nba-an-nbn)\n- [Übermittlung der Berechnungsformel — NB](/prozessdoku/202604/NB/WiM-Teil2-uebermittlung-der-berechnungsformel)\n\n<a href=\"/apis/einzeln/202604/nb/START_BERECHNUNGSFORMEL.json\" data-maco=\"einzelschema\" download target=\"_blank\">Schema nur dieses Ereignisses herunterladen</a> (OpenAPI, JSON).\n\n<Hinweisbereich>\n\nDer Aufruf geht tatsächlich an `POST /inbound`; das Event ergibt sich aus `zusatzdaten.eventname` im Rumpf. Diese Seite trennt eine von 105 Rumpfvarianten heraus, damit sie einzeln lesbar und ausprobierbar sind.\n\n</Hinweisbereich>",
        "operationId": "trigger_NB_START_BERECHNUNGSFORMEL",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NB_START_BERECHNUNGSFORMEL"
              }
            }
          }
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/event_responses_success"
                }
              }
            },
            "description": "Erfolg | Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/event_response_fail"
                }
              }
            },
            "description": "Fehler | Fail"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "START_BERECHNUNGSFORMEL (NB)",
        "tags": [
          "START_BERECHNUNGSFORMEL"
        ],
        "x-actual-endpoint": "POST /inbound",
        "x-event-source": "event/202604/[NB]_START_BERECHNUNGSFORMEL.yaml",
        "x-handbuchsatz": true
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearer": {
        "scheme": "bearer",
        "type": "http"
      }
    },
    "schemas": {
      "ArithmetischeOperation": {
        "description": "Mit dieser Aufzählung können arithmetische Operationen festgelegt werden",
        "enum": [
          "ADDITION",
          "SUBTRAKTION",
          "DIVISION",
          "DIVIDEND",
          "MULTIPLIKATION",
          "POSITIVWERT"
        ],
        "title": "ArithmetischeOperation",
        "type": "string"
      },
      "Datenqualitaet": {
        "description": "Datenqualitaet",
        "enum": [
          "ERWARTETE_DATEN",
          "IM_SYSTEM_VORHANDENE_DATEN",
          "INFORMATIVE_DATEN",
          "GUELTIGE_DATEN",
          "KEINE_DATEN",
          "IM_SYSTEM_KEINE_DATEN_VORHANDEN",
          "KEINE_DATEN_ERWARTET",
          "DIFFERENZ_DATEN",
          "DIFFERENZ_ERWARTETE_DATEN",
          "DIFFERENZ_IM_SYSTEM_VORHANDENE_DATEN"
        ],
        "title": "Datenqualitaet",
        "type": "string"
      },
      "DefinitionenNotwendigkeit": {
        "description": "DefinitionenNotwendigkeit",
        "enum": [
          "ZAEHLZEITDEFINITIONEN_WERDEN_VERWENDET",
          "ZAEHLZEITDEFINITIONEN_WERDEN_NICHT_VERWENDET",
          "DEFINITIONEN_WERDEN_VERWENDET",
          "DEFINITIONEN_WERDEN_NICHT_VERWENDET"
        ],
        "title": "DefinitionenNotwendigkeit",
        "type": "string"
      },
      "Energierichtung": {
        "description": "Spezifiziert die Energierichtung einer Markt- und/oder Messlokation",
        "enum": [
          "AUSSP",
          "EINSP"
        ],
        "title": "Energierichtung",
        "type": "string"
      },
      "Lokationstyp": {
        "description": "Gibt an, ob es sich um eine Markt- oder Messlokation handelt",
        "enum": [
          "MALO",
          "MELO",
          "NELO",
          "TECHNISCHE_RESSOURCE"
        ],
        "title": "Lokationstyp",
        "type": "string"
      },
      "NB_START_BERECHNUNGSFORMEL": {
        "properties": {
          "stammdaten": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/PI_25001__stammdaten"
              }
            ]
          },
          "transaktionsdaten": {
            "properties": {
              "absender": {
                "properties": {
                  "rollencodenummer": {
                    "$ref": "#/components/schemas/rollencodenummer"
                  }
                },
                "type": "object"
              },
              "empfaenger": {
                "properties": {
                  "rollencodenummer": {
                    "$ref": "#/components/schemas/rollencodenummer"
                  }
                },
                "type": "object"
              },
              "kategorie": {
                "$ref": "#/components/schemas/kategorie"
              },
              "lokationsId": {
                "$ref": "#/components/schemas/lokationsId"
              },
              "lokationsTyp": {
                "$ref": "#/components/schemas/lokationsTyp"
              },
              "pruefidentifikator": {
                "description": "Wird dynamisch im Event-Prozess ermittelt. Ein vom Sender mitgegebener Wert wird ignoriert. Im Topic mögliche Prüfis — 25001.",
                "examples": [
                  "25001"
                ]
              },
              "sparte": {
                "$ref": "#/components/schemas/sparte"
              }
            },
            "required": [
              "absender",
              "empfaenger",
              "kategorie",
              "lokationsId",
              "lokationsTyp",
              "sparte"
            ],
            "type": "object"
          },
          "zusatzdaten": {
            "properties": {
              "eventname": {
                "const": "START_BERECHNUNGSFORMEL",
                "default": "START_BERECHNUNGSFORMEL",
                "type": "string"
              },
              "prozessId": {
                "type": "string"
              }
            },
            "required": [
              "prozessId",
              "eventname"
            ],
            "type": "object"
          }
        },
        "required": [
          "stammdaten",
          "transaktionsdaten",
          "zusatzdaten"
        ],
        "type": "object"
      },
      "PI_25001__stammdaten": {
        "properties": {
          "BERECHNUNGSFORMEL": {
            "items": {
              "$ref": "#/components/schemas/PI_25001__stammdaten__BERECHNUNGSFORMEL"
            },
            "type": "array"
          },
          "VERWENDUNGSZEITRAUM": {
            "items": {
              "$ref": "#/components/schemas/PI_25001__stammdaten__VERWENDUNGSZEITRAUM"
            },
            "type": "array"
          }
        },
        "required": [
          "VERWENDUNGSZEITRAUM"
        ],
        "type": "object",
        "title": "25001"
      },
      "PI_25001__stammdaten__BERECHNUNGSFORMEL": {
        "properties": {
          "gueltigkeitszeitraum": {
            "$ref": "#/components/schemas/PI_25001__stammdaten__BERECHNUNGSFORMEL__gueltigkeitszeitraum"
          },
          "notwendigkeit": {
            "$ref": "#/components/schemas/notwendigkeit",
            "x-edifact-segment": [
              "SG5.IDE+24.STS+Z23"
            ]
          },
          "rechenschrittId": {
            "$ref": "#/components/schemas/rechenschrittId",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z36.RFF+Z23"
            ]
          },
          "rechenschritte": {
            "items": {
              "$ref": "#/components/schemas/PI_25001__stammdaten__BERECHNUNGSFORMEL__rechenschritte"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "PI_25001__stammdaten__BERECHNUNGSFORMEL__gueltigkeitszeitraum": {
        "properties": {
          "zeitraumId": {
            "$ref": "#/components/schemas/zeitraumId",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z36.RFF+Z46",
              "SG5.IDE+24.SG8.SEQ+Z37.RFF+Z46",
              "SG5.IDE+24.STS+Z23"
            ]
          }
        },
        "type": "object"
      },
      "PI_25001__stammdaten__BERECHNUNGSFORMEL__rechenschritte": {
        "properties": {
          "aufteilungsfaktorEnergiemenge": {
            "$ref": "#/components/schemas/aufteilungsfaktorEnergiemenge",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z37.SG9.CCI++ZG6.CAV+ZH6"
            ]
          },
          "energieflussrichtung": {
            "$ref": "#/components/schemas/energieflussrichtung",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z37.SG9.CCI++Z87.CAV"
            ]
          },
          "messlokationsId": {
            "$ref": "#/components/schemas/messlokationsId",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z37.RFF+Z19"
            ]
          },
          "operation": {
            "$ref": "#/components/schemas/operation",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z37.SG9.CCI++Z86.CAV"
            ]
          },
          "rechenschrittBestandteilId": {
            "$ref": "#/components/schemas/rechenschrittBestandteilId",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z37"
            ]
          },
          "referenzRechenschrittId": {
            "$ref": "#/components/schemas/referenzRechenschrittId",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z37.RFF+Z23"
            ]
          },
          "verlustfaktorLeitung": {
            "$ref": "#/components/schemas/verlustfaktorLeitung",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z37.SG9.CCI++ZB2.CAV+Z28"
            ]
          },
          "verlustfaktorTrafo": {
            "$ref": "#/components/schemas/verlustfaktorTrafo",
            "x-edifact-segment": [
              "SG5.IDE+24.SG8.SEQ+Z37.SG9.CCI++Z16.CAV+Z28"
            ]
          }
        },
        "type": "object"
      },
      "PI_25001__stammdaten__VERWENDUNGSZEITRAUM": {
        "properties": {
          "datenqualitaet": {
            "$ref": "#/components/schemas/datenqualitaet",
            "x-edifact-segment": [
              "SG5.IDE+24.SG6.RFF+[Z49|Z53]"
            ]
          },
          "verwendungAb": {
            "$ref": "#/components/schemas/verwendungAb",
            "x-edifact-segment": [
              "SG5.IDE+24.SG6.RFF+[Z49|Z53].DTM+Z25"
            ]
          },
          "verwendungBis": {
            "$ref": "#/components/schemas/verwendungBis",
            "x-edifact-segment": [
              "SG5.IDE+24.SG6.RFF+[Z49|Z53].DTM+Z26"
            ]
          },
          "zeitraumId": {
            "$ref": "#/components/schemas/zeitraumId",
            "x-edifact-segment": [
              "SG5.IDE+24.SG6.RFF+[Z49|Z53]"
            ]
          }
        },
        "required": [
          "datenqualitaet",
          "verwendungAb",
          "zeitraumId"
        ],
        "type": "object"
      },
      "Sparte": {
        "description": "Sparte",
        "enum": [
          "STROM",
          "GAS",
          "FERNWAERME",
          "NAHWAERME",
          "WASSER",
          "ABWASSER"
        ],
        "title": "Sparte",
        "type": "string"
      },
      "aufteilungsfaktorEnergiemenge": {
        "description": "aufteilungsfaktorEnergiemenge",
        "format": "float",
        "type": "number"
      },
      "datenqualitaet": {
        "$ref": "#/components/schemas/Datenqualitaet"
      },
      "energieflussrichtung": {
        "$ref": "#/components/schemas/Energierichtung"
      },
      "event_response_fail": {
        "description": "Fehlermeldung auf Prozessdaten API Aufruf | Error message on process data API call",
        "properties": {
          "errorCode": {
            "description": "Error identifier",
            "example": "400",
            "type": "string"
          },
          "message": {
            "description": "Technische Meldung | Technische Meldung",
            "example": "Validation Failed",
            "type": "string"
          }
        },
        "type": "object"
      },
      "event_responses_success": {
        "description": "Erfolgsmeldung auf Prozessdaten API Aufruf | Success message on process data API call",
        "properties": {
          "businessKey": {
            "description": "Einzigartige Kennung des Geschäftsprozesses | Unique identifier of the business process",
            "format": "uuid",
            "type": "string"
          },
          "message": {
            "description": "Nachricht mit Details zum ausgelösten Event | Message with details about the triggered event",
            "example": "received event XXXXXXXXXXXX with id at 2024-08-08T12:58:22Z and started process with businessKey 4c7170ed-3518-41ee-8582-39ab65b00107",
            "type": "string"
          }
        },
        "required": [
          "businessKey",
          "message"
        ],
        "type": "object"
      },
      "kategorie": {
        "description": "Qualifier aus dem Beginn der EDIFact Nachricht / BGM",
        "type": "string"
      },
      "lokationsId": {
        "description": "Für welche Markt- oder Messlokation gilt diese Anfrage.",
        "type": "string"
      },
      "lokationsTyp": {
        "$ref": "#/components/schemas/Lokationstyp",
        "description": "Typ der Lokation"
      },
      "messlokationsId": {
        "description": "Die Messlokations-Identifikation. Das ist die frühere Zählpunktbezeichnung,\nz.B. DE 47108151234567",
        "type": "string"
      },
      "notwendigkeit": {
        "$ref": "#/components/schemas/DefinitionenNotwendigkeit"
      },
      "operation": {
        "$ref": "#/components/schemas/ArithmetischeOperation"
      },
      "rechenschrittBestandteilId": {
        "description": "rechenschrittBestandteilId",
        "type": "integer"
      },
      "rechenschrittId": {
        "description": "ID des Rechenschritts [1 - 99999]",
        "type": "integer"
      },
      "referenzRechenschrittId": {
        "description": "referenzRechenschrittId",
        "type": "integer"
      },
      "rollencodenummer": {
        "description": "Gibt die Codenummer der Marktrolle an.",
        "type": "string"
      },
      "sparte": {
        "$ref": "#/components/schemas/Sparte",
        "description": "Enthält Informationen über die Sparte"
      },
      "verlustfaktorLeitung": {
        "description": "verlustfaktorLeitung",
        "format": "float",
        "type": "number"
      },
      "verlustfaktorTrafo": {
        "description": "verlustfaktorTrafo",
        "format": "float",
        "type": "number"
      },
      "verwendungAb": {
        "description": "verwendungAb",
        "format": "date-time",
        "type": "string"
      },
      "verwendungBis": {
        "description": "verwendungBis",
        "format": "date-time",
        "type": "string"
      },
      "zeitraumId": {
        "description": "zeitraumId",
        "type": "integer"
      }
    }
  }
}