# KWP API: lizenzierter HiveGrid-Scope > Generiert aus der am 2026-07-24 secretsicher gelesenen Tenant-OpenAPI. Die kundenspezifische > Roh-Spezifikation, Server-URL und Credentials werden nicht eingecheckt. ## Inventur - OpenAPI-Operationen gesamt: **554** - Über die fünf HiveGrid-`*-extern`-Scopes erreichbar: **113** - Semantisch lesend und runtime-allowlisted: **77** - Mutierend, nur Contract/Fixture und runtime-gesperrt: **36** - Außerhalb des lizenzierten HiveGrid-Scopes: **441** | Capability | Gesamt | Read | Mutation | | ---------- | -----: | ---: | -------: | | activity | 30 | 14 | 16 | | address | 23 | 15 | 8 | | archive | 14 | 11 | 3 | | project | 32 | 27 | 5 | | schedule | 14 | 10 | 4 | Die OpenAPI-Security-Arrays nennen mehrere alternative KWP-Produkte und die fünf externen Scopes, obwohl die OAuth-Flow-Scope-Liste diese externen Namen nicht aufführt. HiveGrid klassifiziert eine Operation nur dann als scoped, wenn mindestens einer der fünf tatsächlich angeforderten externen Scopes am Endpoint steht. ## Sicherheitsvertrag - Fachcode übergibt nur eine feste Operation-ID plus deren typisierten Input, niemals URL, Pfad, Token, Mandant oder Kundenkürzel. - `Search`, `Load`, `Count`, `Get` und `Check` können trotz `POST` read-only sein. - `Save`, `Add`, `Delete`, `Remove`, `Import`, `Publish` und `Reset` sind Mutation. - Mutation wird vor Rate-Budget, Relay-Auflösung und HTTP blockiert. - Der Scoped-Contract enthält nur rekursiv benötigte Schemas und keine tenant-spezifische Server-URL. ## Operationen | ID | Capability | Modus | Methode | Pfad | KWP-Zusammenfassung | | ---------------------------------------------------------- | ---------- | -------- | -------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | | `aktivitaetAddAktivitaet` | activity | mutation | `POST` | `/api/Aktivitaet/AddAktivitaet` | Fuegt eine neue Aktivitaet mit allen Eigenschaften hinzu. | | `aktivitaetAddAktivitaetBase` | activity | mutation | `POST` | `/api/Aktivitaet/AddAktivitaetBase` | Fuegt eine neue Aktivitaet mit eingeschraenkten Eigenschaften hinzu. | | `aktivitaetAddHilfreich` | activity | mutation | `POST` | `/api/Aktivitaet/AddHilfreich` | Setzt eine Aktivitaet fuer den aktuellen Benutzer auf hilfreich | | `aktivitaetAddInfoEintrag` | activity | mutation | `POST` | `/api/Aktivitaet/AddInfoEintrag` | Fuegt einer bestehenden Aktivitaet einen neuen Info-Eintrag hinzu und gibt die Id des Datensatzes zurueck. | | `aktivitaetAddVerknuepfung` | activity | mutation | `POST` | `/api/Aktivitaet/AddVerknuepfung` | Legt eine neue Verknuepfung zwischen zwei Aktivitaeten (Parent und Child) an | | `aktivitaetAddZusatzadresse` | activity | mutation | `POST` | `/api/Aktivitaet/AddZusatzadresse` | Legt eine neue Zusatzadresse zu einer Aktivitaet an | | `aktivitaetDeleteHilfreich` | activity | mutation | `POST` | `/api/Aktivitaet/DeleteHilfreich` | Loescht einen vorhandenen Hilfreich-Eintrag | | `aktivitaetDeleteInfoEintrag` | activity | mutation | `DELETE` | `/api/Aktivitaet/DeleteInfoEintrag` | Loescht einen bestehenden Infoeintrag | | `aktivitaetDeleteVerknuepfung` | activity | mutation | `POST` | `/api/Aktivitaet/DeleteVerknuepfung` | Loescht eine Verknuepfung zwischen zwei Aktivitaeten | | `aktivitaetDeleteZusatzadresse` | activity | mutation | `POST` | `/api/Aktivitaet/DeleteZusatzadresse` | Loescht eine vorhandene Zusatzadresse | | `aktivitaetLoadAktivitaetTerminIdGet` | activity | read | `GET` | `/api/Aktivitaet/LoadAktivitaetTerminId` | Laedt die TerminId eines Termins anhand einer AktivitaetenId | | `aktivitaetLoadAktivitaetTerminIdPost` | activity | read | `POST` | `/api/Aktivitaet/LoadAktivitaetTerminId` | Laedt die TerminId eines Termins anhand einer AktivitaetenId | | `aktivitaetLoadArten` | activity | read | `GET` | `/api/Aktivitaet/LoadArten` | Gibt eine Auflistung von Aktivitaetenarten zurueck. | | `aktivitaetLoadKennzeichen` | activity | read | `GET` | `/api/Aktivitaet/LoadKennzeichen` | Gibt eine Auflistung von Aktivitaetenkennzeichen zurueck. | | `aktivitaetSaveAktivitaetProperties` | activity | mutation | `POST` | `/api/Aktivitaet/SaveAktivitaetProperties` | Speichert eine oder mehrere Properties der Aktivitaet. | | `aktivitaetSaveInfoEintrag` | activity | mutation | `POST` | `/api/Aktivitaet/SaveInfoEintrag` | Speichert einen bestehenden Infoeintrag ab. | | `aktivitaetSaveInformierteBenutzer` | activity | mutation | `POST` | `/api/Aktivitaet/SaveInformierteBenutzer` | Speichert die Liste der zu informierenden Benutzer | | `aktivitaetSaveInformierteBenutzerProperties` | activity | mutation | `POST` | `/api/Aktivitaet/SaveInformierteBenutzerProperties` | Speichert eine oder mehrere Properties des zu informierenden Benutzers. | | `aktivitaetSaveZusatzadresse` | activity | mutation | `POST` | `/api/Aktivitaet/SaveZusatzadresse` | Speichert die Bemerkung zu einer vorhandenen Zusatzadresse | | `aktivitaetenverwaltungCount` | activity | read | `POST` | `/api/Aktivitaetenverwaltung/Count` | Zaehlt Aktivitaeten anhand eines oder mehrerer Suchbegriffe | | `aktivitaetenverwaltungGetSetup` | activity | read | `GET` | `/api/Aktivitaetenverwaltung/GetSetup` | Liefert die Setup-Konfiguration zur initialen Anzeige der Aktivitaetenverwaltung-PWA | | `aktivitaetenverwaltungLoadAdressen` | activity | read | `GET` | `/api/Aktivitaetenverwaltung/LoadAdressen` | Liefert die zur Aktivitaet verknuepften Adressen | | `aktivitaetenverwaltungLoadAktivitaet` | activity | read | `GET` | `/api/Aktivitaetenverwaltung/LoadAktivitaet` | Liefert die Aktivitaet zur uebergebenen Id | | `aktivitaetenverwaltungLoadAktivitaeten` | activity | read | `GET` | `/api/Aktivitaetenverwaltung/LoadAktivitaeten` | Liefert die Aktivaeten gemaess den Parametern | | `aktivitaetenverwaltungLoadAktivitaetenByAdresskuerzel` | activity | read | `GET` | `/api/Aktivitaetenverwaltung/LoadAktivitaetenByAdresskuerzel` | Liefert die vom Parameter Count spezifizierte Anzahl vom Offset an Aktivaeten zu einer bestimmten Adresse | | `aktivitaetenverwaltungLoadAktivitaetenByVorgang` | activity | read | `GET` | `/api/Aktivitaetenverwaltung/LoadAktivitaetenByVorgang` | Liefert die vom Parameter Count spezifizierte Anzahl vom Offset an Aktivaeten zu einem bestimmten Vorgang | | `aktivitaetenverwaltungLoadEinstellungen` | activity | read | `GET` | `/api/Aktivitaetenverwaltung/LoadEinstellungen` | Laedt die Einstellungen zur Aktivitaetenverwaltung | | `aktivitaetenverwaltungLoadVerknuepfungen` | activity | read | `GET` | `/api/Aktivitaetenverwaltung/LoadVerknuepfungen` | Liefert den Baum aller verknuepften Aktivitaeten ausgehend der Aktivitaeten-Id | | `aktivitaetenverwaltungSaveEinstellungen` | activity | mutation | `POST` | `/api/Aktivitaetenverwaltung/SaveEinstellungen` | Speichert die uebergebenen Einstellungen | | `aktivitaetenverwaltungSearch` | activity | read | `POST` | `/api/Aktivitaetenverwaltung/Search` | Sucht Aktivitaeten anhand eines oder mehrerer Suchbegriffe | | `adresseAddAdresse` | address | mutation | `POST` | `/api/Adresse/AddAdresse` | Legt eine neue Adresse an | | `adresseAddAnsprechpartner` | address | mutation | `POST` | `/api/Adresse/AddAnsprechpartner` | Fuegt einer Adresse einen neuen Ansprechpartner hinzu | | `adresseAddKontakt` | address | mutation | `POST` | `/api/Adresse/AddKontakt` | Fuegt einer Adresse einen neuen Kontakt hinzu | | `adresseCheckDebitKreditNummerVergeben` | address | read | `POST` | `/api/Adresse/CheckDebitKreditNummerVergeben` | Ueberprueft die eingegebene DebitKreditNummer | | `adresseGetDebitKreditNummer` | address | read | `POST` | `/api/Adresse/GetDebitKreditNummer` | Ermittelt die naechste DebitKreditNummer | | `adresseGetGeoLocation` | address | read | `POST` | `/api/Adresse/GetGeoLocation` | Laedt die Geo Koordinaten zu einer Adresse | | `adresseGetSetup` | address | read | `GET` | `/api/Adresse/GetSetup` | Liefert die Setup-Konfiguration zur initialen Anzeige der Adress-APP | | `adresseLoadAdressDetails` | address | read | `GET` | `/api/Adresse/LoadAdressDetails` | Laedt eine Adresse anhand des Adresskuerzels | | `adresseLoadAdressKomplett` | address | read | `GET` | `/api/Adresse/LoadAdressKomplett` | Laedt eine komplette Adresse anhand des Adresskuerzels inkl. Kontakte und Ansprechpartner | | `adresseLoadAnreden` | address | read | `GET` | `/api/Adresse/LoadAnreden` | Liefert verwendeten Anreden | | `adresseLoadAnruferInformation` | address | read | `GET` | `/api/Adresse/LoadAnruferInformation` | Laedt zu einer uebergebenen Telefonnummer die potentiellen Adressen | | `adresseLoadAnsprechpartnerById` | address | read | `GET` | `/api/Adresse/LoadAnsprechpartnerById` | Laedt einen Ansprechpartner via ID | | `adresseLoadBriefanreden` | address | read | `GET` | `/api/Adresse/LoadBriefanreden` | Liefert angelegte Briefanreden | | `adresseLoadSelekts` | address | read | `GET` | `/api/Adresse/LoadSelekts` | Laedt alle verwendeten Selekts | | `adresseLoadWunschtermine` | address | read | `GET` | `/api/Adresse/LoadWunschtermine` | Liefert die Wunschtermine zu einer Adresse | | `adresseRemoveAnsprechpartner` | address | mutation | `POST` | `/api/Adresse/RemoveAnsprechpartner` | Entfernt einen Ansprechpartner | | `adresseRemoveKontakt` | address | mutation | `POST` | `/api/Adresse/RemoveKontakt` | Entfernt einen Kontakt | | `adresseSaveAdresse` | address | mutation | `POST` | `/api/Adresse/SaveAdresse` | Aendert eine bestehende Adresse | | `adresseSaveAnsprechpartner` | address | mutation | `POST` | `/api/Adresse/SaveAnsprechpartner` | Aendert einen bestehenden Kontakt | | `adresseSaveKontakt` | address | mutation | `POST` | `/api/Adresse/SaveKontakt` | Aendert einen bestehenden Kontakt | | `adresseSearch` | address | read | `POST` | `/api/Adresse/Search` | Sucht Adressen, Kontakte und Ansprechpartner anhand eines Suchbegriffs | | `adresseSearchBenutzerfeldInhalt` | address | read | `POST` | `/api/Adresse/SearchBenutzerfeldInhalt` | Sucht fuer den uebergebenen Benutzerfeldindex (1-5) zum Suchbegriff passende Benutzerfeldinhalte | | `adresseSearchKontakt` | address | read | `POST` | `/api/Adresse/SearchKontakt` | Sucht Adressen anhand eines oder mehrerer Suchbegriffe. Dabei wird das Ergebnis auf die uebergebenen Kontaktarten gefiltert | | `archivExternalCountHeader` | archive | read | `GET` | `/api/archiv-extern/CountHeader` | Ermittelt fuer die uebergebene Bezugsart/-Nummer die Anzahl der Archiv-Eintraege (nur Header, nicht Dateien) | | `archivExternalDeleteEintrag` | archive | mutation | `DELETE` | `/api/archiv-extern/DeleteEintrag` | Loescht einen bestehenden ArchivEintrag samt Dateien | | `archivExternalExportDatei` | archive | read | `GET` | `/api/archiv-extern/ExportDatei` | Fordert die Bereitstellung der gewuenschten Datei an | | `archivExternalGetBezug` | archive | read | `GET` | `/api/archiv-extern/GetBezug` | Liefert fuer einen Bezug die standardmaessigen Archiv-Bezuege | | `archivExternalGetSetup` | archive | read | `GET` | `/api/archiv-extern/GetSetup` | Liefert die Setup-Konfiguration zur initialen Anzeige der Archiv-APP | | `archivExternalImportAdditionalDatei` | archive | mutation | `POST` | `/api/archiv-extern/ImportAdditionalDatei` | Fuegt einem bestehenden Archiveintrag eine weitere Datei hinzu | | `archivExternalImportDatei` | archive | mutation | `POST` | `/api/archiv-extern/ImportDatei` | Importiert aus einem Azure-Storage eine Datei | | `archivExternalLoadDateienByVerzeichnisId` | archive | read | `GET` | `/api/archiv-extern/LoadDateienByVerzeichnisId` | Laedt Datei-Informationen fuer das optionale angegebene Verzeichnis mit Paging | | `archivExternalLoadEinstellungen` | archive | read | `GET` | `/api/archiv-extern/LoadEinstellungen` | Laedt die benutzerbezogenen Einstellungen zum Archiv | | `archivExternalLoadEintragDetails` | archive | read | `GET` | `/api/archiv-extern/LoadEintragDetails` | Laedt die Archiveintragdetails zurueck | | `archivExternalLoadLetzteRevisionArchivEintragFilesForIds` | archive | read | `POST` | `/api/archiv-extern/LoadLetzteRevisionArchivEintragFilesForIds` | Laedt die letzten ArchivEintragFiles fuer die uebergebenen ArchivfilesIds | | `archivExternalLoadVerzeichnisse` | archive | read | `GET` | `/api/archiv-extern/LoadVerzeichnisse` | Laedt Verzeichnisse und die Anzahl der darin enthaltenen Dateien (gemaess Filter) | | `archivExternalSearchDateienByVerzeichnisId` | archive | read | `GET` | `/api/archiv-extern/SearchDateienByVerzeichnisId` | Sucht Datei-Informationen fuer das optionale angegebene Verzeichnis mit Paging und Suchbegriffen | | `archivExternalSearchVorgaenge` | archive | read | `POST` | `/api/archiv-extern/SearchVorgaenge` | Sucht die Top 10 Vorgaenge anhand eines Suchbegriffs des jeweilig moeglichen Bezugs | | `projektLoad` | project | read | `GET` | `/api/Projekt/Load` | Laedt Projektbezeichnung und Projektnummer zu einer uebergebenen Projektnummer, sofern der Anwender zm lesen berechtigt ist | | `projektLoadKategorien` | project | read | `GET` | `/api/Projekt/LoadKategorien` | Laedt die verwendeten Projekt-Kategorien | | `projektLoadSachbearbeiter` | project | read | `GET` | `/api/Projekt/LoadSachbearbeiter` | Laedt die verwendenten Projekt-Sachbearbeiter | | `projektSave` | project | mutation | `POST` | `/api/Projekt/Save` | Speichert fuer ein Projekt eine neue Bezeichnung | | `projektSearch` | project | read | `POST` | `/api/Projekt/Search` | Sucht ein Projekt anhand eines Suchbegriffs und liefert lesbaren Projekte | | `projektampelGetSetup` | project | read | `GET` | `/api/Projektampel/GetSetup` | Liefert die Setup-Konfiguration zur initialen Anzeige der Projektampel-PWA | | `projektampelLoadBenutzerDetails` | project | read | `GET` | `/api/Projektampel/LoadBenutzerDetails` | Laedt die Projektampelspezifischen Details zu einem Benutzer | | `projektampelLoadBenutzerNachFilter` | project | read | `GET` | `/api/Projektampel/LoadBenutzerNachFilter` | Laedt eine Liste von Benutzerplatzhaltern gemaeß den gesetzten Einstellungen | | `projektampelLoadEinstellungen` | project | read | `GET` | `/api/Projektampel/LoadEinstellungen` | Laedt die benutzerbezogenen Einstellungen zur Projektampel | | `projektampelLoadProjektDetailsGet` | project | read | `GET` | `/api/Projektampel/LoadProjektDetails` | Laedt die projektampelspezifischen Details zu einer Projektnummer | | `projektampelLoadProjektDetailsPost` | project | read | `POST` | `/api/Projektampel/LoadProjektDetails` | Laedt die projektampelspezifischen Details zu einer Projektnummer | | `projektampelLoadProjekteNachFilter` | project | read | `GET` | `/api/Projektampel/LoadProjekteNachFilter` | Laedt eine Liste von Projektplatzhaltern gemaeß den gesetzten Einstellungen | | `projektampelResetBenutzergruppenFilter` | project | mutation | `POST` | `/api/Projektampel/ResetBenutzergruppenFilter` | Setzt die Einstellungen fuer den benutzergruppenbezogenen Filter zurueck | | `projektampelResetProjektFilter` | project | mutation | `POST` | `/api/Projektampel/ResetProjektFilter` | Setzt die benutzerbezogenen Einstellungen fuer den projektbezogenen Filter zurueck | | `projektampelSaveEinstellungen` | project | mutation | `POST` | `/api/Projektampel/SaveEinstellungen` | Speichert die uebergebenen benutzerbezogenen Einstellungen | | `projektampelSearch` | project | read | `POST` | `/api/Projektampel/Search` | Sucht ein Projekt anhand eines Suchbegriffs | | `vorgangAnzeigeGetSetup` | project | read | `GET` | `/api/VorgangAnzeige/GetSetup` | Liefert das Setup fuer die Vorgangsanzeige | | `vorgangAnzeigeLoadAdressen` | project | read | `GET` | `/api/VorgangAnzeige/LoadAdressen` | Laedt die Adressen zum Vorgang | | `vorgangAnzeigeLoadAngebote` | project | read | `POST` | `/api/VorgangAnzeige/LoadAngebote` | Laedt die Angebote zum Vorgang | | `vorgangAnzeigeLoadAnzahlen` | project | read | `GET` | `/api/VorgangAnzeige/LoadAnzahlen` | Laedt die Anzahlen der verkuepften Vorgaenge | | `vorgangAnzeigeLoadBestellungen` | project | read | `POST` | `/api/VorgangAnzeige/LoadBestellungen` | Laedt die Bestellungen zum Vorgang | | `vorgangAnzeigeLoadDetails` | project | read | `GET` | `/api/VorgangAnzeige/LoadDetails` | Laedt die Details zum Vorgang | | `vorgangAnzeigeLoadEingangsrechnungen` | project | read | `POST` | `/api/VorgangAnzeige/LoadEingangsrechnungen` | Laedt die Eingangsrechnungen zum Vorgang | | `vorgangAnzeigeLoadMontageauftraege` | project | read | `POST` | `/api/VorgangAnzeige/LoadMontageauftraege` | Laedt die Montageauftraege zum Vorgang | | `vorgangAnzeigeLoadNachtraege` | project | read | `POST` | `/api/VorgangAnzeige/LoadNachtraege` | Laedt die Nachtraege zum Projekt | | `vorgangAnzeigeLoadPositionen` | project | read | `POST` | `/api/VorgangAnzeige/LoadPositionen` | Laedt die Positionen zum Vorgang | | `vorgangAnzeigeLoadRechnungen` | project | read | `POST` | `/api/VorgangAnzeige/LoadRechnungen` | Laedt die Rechnungen zum Vorgang | | `vorgangAnzeigeLoadRegieauftraege` | project | read | `POST` | `/api/VorgangAnzeige/LoadRegieauftraege` | Laedt die Regieauftraege zum Projekt | | `vorgangAnzeigeLoadTableMeta` | project | read | `GET` | `/api/VorgangAnzeige/LoadTableMeta` | Laedt den benutzerdefinierten Tabellenaufbau | | `vorgangAnzeigeLoadVorgaenge` | project | read | `GET` | `/api/VorgangAnzeige/LoadVorgaenge` | Laedt dem Benutzer zugewiesene Auftraege und die Favoriten des Benutzers | | `vorgangAnzeigeSaveTableMeta` | project | mutation | `POST` | `/api/VorgangAnzeige/SaveTableMeta` | Speichert den benutzerdefinierten Tabellenaufbau | | `vorgangInfoLoadVorgangInfo` | project | read | `GET` | `/api/VorgangInfo/LoadVorgangInfo` | Laedt zu einem uebergebenen Vorgang die zum Stempeln noetigen Informationenen | | `monteursteuerungGetSetup` | schedule | read | `GET` | `/api/Monteursteuerung/GetSetup` | Liefert die Setup-Konfiguration zur initialen Anzeige der Monteutsteuerung-APP | | `monteursteuerungLoadTermine` | schedule | read | `POST` | `/api/Monteursteuerung/LoadTermine` | Laedt alle Termine des uebergebenen Filters im Zeitraum | | `monteursteuerungLoadTermineProjektplanung` | schedule | read | `POST` | `/api/Monteursteuerung/LoadTermineProjektplanung` | Laedt alle Projekt-Termine des uebergebenen Filters im Zeitraum | | `terminDeleteTermin` | schedule | mutation | `POST` | `/api/Termin/DeleteTermin` | Loescht einen bestehenden Termin | | `terminGetTeilnehmerverfuegbargeit` | schedule | read | `POST` | `/api/Termin/GetTeilnehmerverfuegbargeit` | prueft ob die Terminteilnehmer im angegebenen Zeitraum verfuegbar sind | | `terminGetTerminUeberschneidungen` | schedule | read | `POST` | `/api/Termin/GetTerminUeberschneidungen` | prueft einen Termin auf Terminueberschneidungen | | `terminLoadEigeneTermine` | schedule | read | `GET` | `/api/Termin/LoadEigeneTermine` | Laedt alle eigene Termine des aktuellen Benutzers (inkl. des korrespondierenden Monteures) im Zeitraum | | `terminLoadFeiertage` | schedule | read | `GET` | `/api/Termin/LoadFeiertage` | Laedt die Feiertage im Zeitraum | | `terminLoadLastWartungAuftragTerminIntervall` | schedule | read | `GET` | `/api/Termin/LoadLastWartungAuftragTerminIntervall` | Liefert den letzten Termin der automatisch im WW durch ein Intervall erzeugt wurde | | `terminLoadTerminById` | schedule | read | `GET` | `/api/Termin/LoadTerminById` | Laedt einen Termin zur uebergebenen TerminId | | `terminLoadTermine` | schedule | read | `GET` | `/api/Termin/LoadTermine` | Laedt alle Termine des uebergebenen Teilnehmers im Zeitraum | | `terminPublishTermin` | schedule | mutation | `POST` | `/api/Termin/PublishTermin` | Veroeffentlicht einen Termin | | `terminSaveTermin` | schedule | mutation | `POST` | `/api/Termin/SaveTermin` | speichert einen Termin | | `terminSaveTerminAktivitaet` | schedule | mutation | `POST` | `/api/Termin/SaveTerminAktivitaet` | speichert eine Termin-Aktivitaet, dabei wird einem neuen oder bestehenden Termin eine dazugehoerige Terminaktivitaet erzeugt |