Erscheinungsbild
Identifizierung
Um die verfügbaren Daten der Kunden bei der Identifizierung prüfen zu können, erfolgt die Identifizierung in zwei Schritten.
Zunächst wird nur mit der Partner- oder Policennummer, sowie den implementierten Identifizierungsmethoden bei der WebApi angefragt, welche Identifizierungsmethode angewendet werden kann.
Anschließend werden die weiteren Felder, absierend auf der Identifizierungsmethode, angegeben und die Identifizierung wird durchgeführt.
Am Ende des Identifizierungsprozesses wird ein AccessToken-Ticket ausgestellt, mit dem dann schlussendlich in einem dritten Schritt ein AccessToken beantragt werden kann. Mit dem AccessToken kann dann alles weitere abgewickelt werden.
Schritt 3 wirkt zunächst überflüssig, da auch direkt ein AccessToken ausgestellt werden könnte. Allerdings ist es so möglich, dass Systeme, die Ihrerseits einen Kunden identifiziert haben (z.B. per Anmeldung im Kundenportal), selbst Tickets erzeugen können, um direkt ein AccessToken anfragen zu können, ohne den Identifizierungsprozess erneut durchführen zu müssen. Schritt 1 und 2 können in den Fällen somit übesprungen werden.
Ablaufdiagramm
INFO
Die ID in allen folgenden Schritten sollte immer die gleiche sein, um einen Bezug zwischen den Schritten herstellen zu können.
INFO
Weitere Details zu den möglichen Werten im nachfolgenden verwendeten Objekte sind im Abschnitt Models der API-Dokumentation zu finden.
Schritt 1: Auswählen der Identifizierungsmethode (Select Identifizierungsmethode)
Da nicht für alle Kunden alle Informationen vorliegen, kann es basierend auf den vorhandenen Daten unterschiedliche Identifizierungsmethoden geben. Zum Beispiel hat der eine Kunde eine E-Mail-Adresse hinterlegt, der andere aber nicht, dafür aber ein Geburtsdatum. Die WebApi gibt anhand der vorhandenen Daten die möglichen Identifizierungsmethoden zurück.
Da nicht jeder Client alle Methoden unterstützt oder unterstützen kann, kann er diese an die WebApi zur Auswahl geben. Beispielhaft wird ein Serviceforumlar, dass eine E-Mail-Adresse verifiziert nicht die E-Mail-Adresse als Identifikationsmerkmal verwenden wollen.
Es stehen derzeit die folgenden Identifizierungsmethoden zur Verfügung:
- Geburtsdatum
- E-Mail-Adresse
- Name
- Vorname und Name
- Rechnungsnummer
Die Reihenfolge der Methoden im Feld identifizierungsMethoden gibt die Priorität an. Die WebApi wird die Methoden in der Reihenfolge prüfen und die erste Methode, die passt, zurückgeben.
Es ist entweder die Partnernummer oder die Policennummer anzugeben.
json
// SelectIdentifizierungsMethodeReq
{
"id": "string", // UUIDv4
"identifizierungsMethoden": [
"string"
],
"partnerNr": 0,
"policenNr": 0
}json
// SelectIdentifizierungsMethodeRes
{
"id": "string", // UUIDv4
"selectedIdentifizierungsMethode": "string"
}Schritt 2: Identifizierung durchführen (Check Angaben)
Im zweiten Schritt werden die benötigten Daten gemäß der ausgewählten Identifizierungsmethode übergeben. Die WebApi prüft die angegebenen Werte und gibt einen Fehler oder ein AccessToken-Ticket zurück.
Es sind die Angaben gemäß der ausgewählten Zugriffseben und Identifizierungsmethode zu übergeben.
| Zugriffsebene / Identifizierungsmethode | Geburtsdatum | E-Mail-Adresse | Name | Vorname und Name | Rechnungsnummer* |
|---|---|---|---|---|---|
| Partner | partnerNr oder policenNr, geburtsdatum | partnerNr oder policenNr, email | partnerNr oder policenNr, name | partnerNr oder policenNr, vorname, name | partnerNr oder policenNr, rechnungsNr |
| Police | policenNr, geburtsdatum | policenNr, email | policenNr, name | policenNr, vorname, name | policenNr, rechnungsNr |
| Vertrag* | policenNr, vertragNr oder produktArt, geburtsdatum | policenNr, vertragNr oder produktArt, email | policenNr, vertragNr oder produktArt, name | policenNr, vertragNr oder produktArt, vorname, name | policenNr, vertragNr oder produktArt, rechnungsNr |
| Schaden* | schadenNr, geburtsdatum | schadenNr, email | schadenNr, name | schadenNr, vorname, name | schadenNr, rechnungsNr |
INFO
- Die Zugriffsebenen Vertrag und Schaden, sowie die Methode Rechnungsnr. sind noch nicht implementiert.
json
// CheckAngabenReq
{
"id": "string", // UUIDv4
"selectedIdentifizierungsMethode": "string",
"zugriffsEbene": "Partner",
"partnerNr": 0,
"policenNr": 0,
"vertragsNr": 0,
// Wird benötigt, wenn die angeforderte Zugriffsebene Vertrag ist
// Kann leer gelassen werden, wenn die Vertragsnummer bereits bekannt ist
"produktArt": "string",
"vorname": "string",
"nachname": "string",
"geburtsdatum": "string", // dd.mm.yyyy
"email": "string",
"rechnungsNr": 0
}json
{
// CheckAngabenRes
"accessTokenTicket": {
"id": "string", // UUIDv4
"signature": "string",
"signatureIssuer": "string",
"signatureTimestamp": "string",
"zugriffsEbene": "Partner",
"context": {
"partnerNr": 0,
"policenNr": 0,
"vertragsNr": 0,
"schadenNr": "string"
},
}
}INFO
Das hier ausgestellte Ticket kann nun unverändert in der nächsten Anfrage verwendet werden, um ein AccessToken zu erhalten.
Schritt 3: AccessToken anfragen
Mit dem AccessToken-Ticket kann nun ein AccessToken angefragt werden. Das AccessToken-Objekt enthält alle notwendigen Informationen, um die weiteren Funktionen der WebApi nutzen zu können. Es wird in den Anfrage-Objekten der weiteren Requests mitgegeben.
Anfrage
json
// IssueAccessTokenReq
{
"accessTokenTicket": {
"id": "string", // UUIDv4
"signature": "string",
"signatureIssuer": "string",
"signatureTimestamp": "string",
"zugriffsEbene": "Partner",
"context": {
"partnerNr": 0,
"policenNr": 0,
"vertragsNr": 0,
"schadenNr": "string"
},
}
}Antwort
json
// IssueAccessTokenRes
{
"accessToken": {
"id": "string", // UUIDv4
"signature": "string",
"signatureIssuer": "string",
"signatureTimestamp": "string",
"context": {
"partnerNr": 0,
"policenNr": 0,
"vertragsNr": 0,
"schadenNr": "string"
},
}
}