.NET SDK (Zedal.Sdk)¶
Das offizielle ZEDAL-SDK für .NET. Es kapselt Verbindungsaufbau, Authentifizierung mit Token-Rotation, Deadlines und die mehrstufigen Dokument-Lebenszyklen von DiWaSS hinter einer typisierten Fassade.
Target-Framework ist netstandard2.0; das Paket läuft damit unter .NET Framework 4.6.1+, .NET Core 2.0+ und .NET 5+.
Alternativ in der Package Manager Console mit Install-Package Zedal.Sdk oder als Eintrag in der .csproj:
Die Versionierung folgt Semantic Versioning (MAJOR.MINOR.PATCH, z. B. 1.3.0); Pre-Releases tragen ein Suffix und werden ohne --prerelease nicht aufgelöst. Die generierten gRPC-/Protobuf-Typen kommen transitiv mit — du brauchst kein eigenes Codegen und keine .proto-Dateien.
Diese Seite ist die Vertiefung, nicht der Einstieg
Client erzeugen, einloggen, erster Aufruf: Erste Schritte. Dort steht auch, wie du Zugangsdaten und App-Token bekommst und welche Umgebungen es gibt. Hier geht es um die Bauteile: Fassade, Transport, Session-Modell, Zeitgrenzen, Handler.
Architektur¶
IZedalClient ist die einzige Klasse, die Anwendungs-Code selbst erzeugt (über ZedalClientFactory). Sie bündelt die ZEDAL-APIs als Properties und hält die Session.
| Property | Zuständigkeit | Beispiel-Zugriff |
|---|---|---|
CoreApi |
Auth, Dokumente, Akten, Vorlagen, Queries, Stammdaten, Account | client.CoreApi.Documents.ListInbox(…) |
DiwassApi |
DiWaSS-Direktzugriffe: Operator-Verzeichnis, Behördenverzeichnis, Anhänge, Retrieval | client.DiwassApi.RetrievalApi.LookupEventList(…) |
BxaApi |
Dokument-Operationen auf ZeWaSS- und BMU-XML (die Handler bauen darauf auf) | client.BxaApi.CompanyDocumentApi.* |
DocumentHandler |
Factory für die Lebenszyklus-Handler und den Inbox-Importer | client.DocumentHandler.CreateNotificationHandler() |
DiscoveryApi |
Provider-Verzeichnis (ListProvider) — ohne Token aufrufbar |
client.DiscoveryApi.ListProvider() |
TransformApi |
Grafische Repräsentation eines Dokuments erzeugen (ToPdf) |
client.TransformApi.ToPdf(inputType, xml) |
MyAccount |
Kennungen des angemeldeten Accounts | client.MyAccount.GetOwnDiwassOperatorIds() |
SignerApi |
Signaturvorgänge (SigningProcesses), Signaturprüfung (VerifyApi), Vertrauensauskunft (CertificateInfo) |
client.SignerApi.SigningProcesses.SignAsync(…) |
Connection |
Transport-Ebene: Adresse, Transport, Kanal, Diagnose | client.Connection.CheckConnection() |
Die Unter-APIs im Einzelnen:
| API | Members |
|---|---|
CoreApi |
Auth, Common, Documents, Templates, File, Query, MasterData, AccountManager, AccountManagerV2, WasteNote |
DiwassApi |
OperatorApi, AuthorityDirectoryApi, AttachmentApi, RetrievalApi, SoapProxyApi |
BxaApi |
CompanyDocumentApi, AuthorityDocumentApi, BmuDocumentApi, EbvDocumentApi, DocumentBlockApi |
SignerApi |
SigningProcesses, VerifyApi, CertificateInfo |
Den Ablauf mit SignerApi.SigningProcesses zeigt Signieren mit dem SDK.
Kapitel¶
| Kapitel | Seiten |
|---|---|
| Grundlagen | Client und Verbindung, Sessions und Tokens, Fehlerbehandlung |
| Dokumente | Handler und Lebenszyklus, Felder bauen, Anhänge, Eingänge und Kennungen |
| DiWaSS | Notifizierung, Movement, Behördenseite, Rollen und Berechtigungen |
| eANV (BMU) | BMU-Dokumente, Begleitschein je Rolle |
| Signieren | Signieren mit dem SDK |
| Beispiele | Lauffähige Konsolenbeispiele zum Herunterladen: Login, Notifizierung, neues Transportpapier und seine Daten, Transportpapier-Nummern, Änderungen abholen, geändert seit |
API-Referenz¶
Die vollständige, aus den XML-Doc-Kommentaren des veröffentlichten Pakets erzeugte Referenz listet alle öffentlichen Typen, Methoden und Eigenschaften:
Sie wird pro Release neu erzeugt und bleibt damit auf dem Stand des Pakets.
Weiter¶
- Erste Schritte — Zugang, erster Aufruf, Auth-Modell
- Lebenszyklus — Stage-Reihenfolgen und Zeitbudgets
- Aufrufe und Synchronisation — Sequenzialität, Abgleich, Inbox-Import
- Feldregeln — was das Schema nicht sagt
- REST / JSON — der Weg ohne SDK, samt seiner Grenzen