Adressprocessing

Adressprocessing Ablauf

Der Batch-Prozess besteht aus den folgenden Schritten:

Funktionen

Create

Ein Batch ist die Hülle, die als Rahmen für die Verarbeitung dient. Für jeden Adresslauf muss ein neuer Batch erstellt werden.

Request-Parameter
Erklärung

orderNr

Benutzerdefinierte Referenznummer, die zur eindeutigen Identifikation einer Bestellung vergeben werden kann, z. B. für spätere Rückfragen oder Abklärungen.

dataGroupCode

Eindeutige Identifikation der Data Group.

→ Wird bei der Erstellung der Data Group (/dataGroups/create) generiert. Muss hier referenziert werden.

userDescription

Name der Kampagne oder des Batches.

processId

Systemseitig vergebene ID für den Prozess.

→ Standardwert: 400

processingDate

Definiert, wann der Batch gestartet werden soll (z.B. Batch heute erstellen, Verarbeitung am Wochenende).

businessCase

Definiert den Prozessverlauf basierend auf vordefinierten Presets.

→ Standardwert: 0

product

Auswahl des gewünschten Produkts, z.B.:

  • 1 Enrich: Anreicherung bestehender Daten.

  • 2 Reference: Nur Analyse der Daten gegen die verfügbaren Datenquellen, keine Datenänderungen → Ergebnis: Analysebericht von multisource und gegebenenfalls der Schweizerischen Post.

  • 3 AdressUpdate: Aktualisierung bestehender Adressen.

notificationEmail

E-Mail-Adresse für Benachrichtigungen. Falls keine spezifische E-Mail-Adresse hinterlegt ist, wird standardmässig die E-Mail-Adresse des aktuell eingeloggten Benutzers verwendet.

post
/api/addressprocessing/Create
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Rumpf
orderNrstringErforderlich
dataGroupIdinteger · int32Optional
dataGroupCodestring | nullfähigOptional
userDescriptionstring | nullfähigErforderlich
processIdinteger · int32Erforderlich
businessCaseinteger · int32Optional
productinteger · enumErforderlichMögliche Werte:
notificationEmailstringOptional
processingDatestring · date-timeOptional
runParallelbooleanOptional
Antworten
200

OK

post
/api/addressprocessing/Create
POST /v2/api/addressprocessing/Create HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 272

{
  "orderNr": "text",
  "dataGroupId": 1,
  "dataGroupCode": "text",
  "userDescription": "text",
  "processId": 1,
  "businessCase": 1,
  "product": "1 = Enrich",
  "notificationEmail": "text",
  "processingDate": "2025-11-18T10:06:44.169Z",
  "runParallel": true,
  "settings": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  }
}
200

OK

{
  "batchId": 1,
  "batchUniqueId": "123e4567-e89b-12d3-a456-426614174000",
  "processGroup": 1,
  "insertBy": "text",
  "insertAt": "2025-11-18T10:06:44.169Z",
  "description": "text",
  "userDescription": "text",
  "status": "text",
  "startDate": "2025-11-18T10:06:44.169Z",
  "endDate": "2025-11-18T10:06:44.169Z",
  "processingDate": "2025-11-18T10:06:44.169Z",
  "duration": 1,
  "errorCount": 1,
  "warningCount": 1,
  "warningRejectCount": 1,
  "createTypeId": 1,
  "runSingle": true,
  "agent": "text",
  "datagroupId": 1,
  "orderNr": "text",
  "settings": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  },
  "files": [
    {
      "fileUniqueId": "123e4567-e89b-12d3-a456-426614174000",
      "direction": "text",
      "fileName": "text",
      "processFileDetection": "text",
      "description": "text"
    }
  ],
  "steps": [
    {
      "stepId": 1,
      "status": "text",
      "sortOrder": 1,
      "startDate": "2025-11-18T10:06:44.169Z",
      "endDate": "2025-11-18T10:06:44.169Z",
      "duration": 1,
      "errorCount": 1,
      "warningCount": 1,
      "warningRejectCount": 1,
      "recordCount": 1,
      "description": "text",
      "modulUniqueId": "123e4567-e89b-12d3-a456-426614174000",
      "descriptionAdd": "text"
    }
  ]
}

FileUpload

Fügt eine Datei zur Verarbeitung hinzu.

post
/api/addressprocessing/FileUpload
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Abfrageparameter
batchIdinteger · int32Optional
batchUidstring · uuidOptional
descriptionstringOptional
Rumpf
filestring · binaryOptional
Antworten
200

OK

Antwortstring
post
/api/addressprocessing/FileUpload
POST /v2/api/addressprocessing/FileUpload HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Content-Type: multipart/form-data
Accept: */*
Content-Length: 17

{
  "file": "binary"
}
200

OK

text

AddRecords

Einzelne Datenrecords hochladen – unabhängig von einem FileUpload. Die Funktion kann verwendet werden, um einzelne neue Records zu übermitteln oder bestehende Uploads durch zusätzliche Records zu ergänzen.

put
/api/addressprocessing/AddRecords
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Abfrageparameter
idinteger · int32Optional
uidstring · uuidOptional
Rumpfobject[]
customerIdstring | nullfähigOptional
classificationstring | nullfähigOptional
dwhIdstring | nullfähigOptional
kbbCompanyIdinteger · int32 | nullfähigOptional
kbcPersonIdinteger · int32 | nullfähigOptional
kbcHouseholdIdinteger · int32 | nullfähigOptional
beacinteger · int32 | nullfähigOptional
egidstring | nullfähigOptional
edidstring | nullfähigOptional
postAddressIdstring | nullfähigOptional
freetext1string | nullfähigOptional
freetext2string | nullfähigOptional
freetext3string | nullfähigOptional
freetext4string | nullfähigOptional
freetext5string | nullfähigOptional
firstnamestring | nullfähigOptional
companyNamestring | nullfähigOptional
namestring | nullfähigOptional
birthDatestring | nullfähigOptional
streetstring | nullfähigOptional
streetNostring | nullfähigOptional
streetAddstring | nullfähigOptional
careOfstring | nullfähigOptional
poBoxstring | nullfähigOptional
poZipstring | nullfähigOptional
poTownstring | nullfähigOptional
zipstring | nullfähigOptional
townstring | nullfähigOptional
mobileNostring | nullfähigOptional
phoneNostring | nullfähigOptional
emailstring | nullfähigOptional
uidstring | nullfähigOptional
chnrstring | nullfähigOptional
Antworten
200

OK

Antwortstring
put
/api/addressprocessing/AddRecords
PUT /v2/api/addressprocessing/AddRecords HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 561

[
  {
    "customerId": "text",
    "classification": "text",
    "dwhId": "text",
    "kbbCompanyId": 1,
    "kbcPersonId": 1,
    "kbcHouseholdId": 1,
    "beac": 1,
    "egid": "text",
    "edid": "text",
    "postAddressId": "text",
    "freetext1": "text",
    "freetext2": "text",
    "freetext3": "text",
    "freetext4": "text",
    "freetext5": "text",
    "firstname": "text",
    "companyName": "text",
    "name": "text",
    "birthDate": "text",
    "street": "text",
    "streetNo": "text",
    "streetAdd": "text",
    "careOf": "text",
    "poBox": "text",
    "poZip": "text",
    "poTown": "text",
    "zip": "text",
    "town": "text",
    "mobileNo": "text",
    "phoneNo": "text",
    "email": "text",
    "uid": "text",
    "chnr": "text"
  }
]
200

OK

text

Start

Startet die Verarbeitung.

get
/api/addressprocessing/Detail
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Abfrageparameter
idinteger · int32Optional
uidstring · uuidOptional
Antworten
200

OK

get
/api/addressprocessing/Detail
GET /v2/api/addressprocessing/Detail HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Accept: */*
200

OK

{
  "batchId": 1,
  "batchUniqueId": "123e4567-e89b-12d3-a456-426614174000",
  "processGroup": 1,
  "insertBy": "text",
  "insertAt": "2025-11-18T10:06:44.169Z",
  "description": "text",
  "userDescription": "text",
  "status": "text",
  "startDate": "2025-11-18T10:06:44.169Z",
  "endDate": "2025-11-18T10:06:44.169Z",
  "processingDate": "2025-11-18T10:06:44.169Z",
  "duration": 1,
  "errorCount": 1,
  "warningCount": 1,
  "warningRejectCount": 1,
  "createTypeId": 1,
  "runSingle": true,
  "agent": "text",
  "datagroupId": 1,
  "orderNr": "text",
  "settings": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  },
  "files": [
    {
      "fileUniqueId": "123e4567-e89b-12d3-a456-426614174000",
      "direction": "text",
      "fileName": "text",
      "processFileDetection": "text",
      "description": "text"
    }
  ],
  "steps": [
    {
      "stepId": 1,
      "status": "text",
      "sortOrder": 1,
      "startDate": "2025-11-18T10:06:44.169Z",
      "endDate": "2025-11-18T10:06:44.169Z",
      "duration": 1,
      "errorCount": 1,
      "warningCount": 1,
      "warningRejectCount": 1,
      "recordCount": 1,
      "description": "text",
      "modulUniqueId": "123e4567-e89b-12d3-a456-426614174000",
      "descriptionAdd": "text"
    }
  ]
}

Detail

Bietet eine Übersicht aller verfügbaren Dateien und deren Verarbeitungsschritte. Enthält zudem die eindeutige Identifikationsnummer (fileUniqueId) jeder Datei.

Batch Status

Status ID
Name
Beschreibung

0

Created

Angelegt, noch nicht bearbeitet

1

Execute

Eingereiht; sobald Ressourcen verfügbar sind, startet die Verarbeitung

2

Processing

Verarbeitung läuft

3

Marked for processing

Übergangsstatus zwischen Execute und Processing

4

Done

Verarbeitung erfolgreich abgeschlossen

6

Error

Verarbeitung fehlgeschlagen; es ist ein Fehler aufgetreten

8

Skipped

einzelne Module wurden übersprungen

FileDownload

Lädt die Resultate eines AdressProcessing-Batches als Datei herunter.

Die Ausgabe erfolgt im TSV-Format (tabulatorgetrennte Werte).

Über den Parameter compressed kann gesteuert werden, ob die Datei komprimiert (.txt.gz) (false) oder unkomprimiert (.txt) (true) ausgeliefert wird.

get
/api/addressprocessing/FileDownload
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Abfrageparameter
idinteger · int32Optional
uidstring · uuidOptional
decompressbooleanOptionalDefault: false
Antworten
200

OK

Kein Inhalt

get
/api/addressprocessing/FileDownload
GET /v2/api/addressprocessing/FileDownload HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Accept: */*
200

OK

Kein Inhalt

GetRecords

Ruft die Resultate eines AdressProcessing-Batches direkt als JSON ab.

Dieser Endpoint eignet sich, wenn die Daten unmittelbar im System weiterverarbeitet werden sollen, ohne eine Datei herunterzuladen.

get
/api/addressprocessing/GetRecords
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Abfrageparameter
uidstring · uuidOptional
filebooleanOptionalDefault: false
fileDecompressbooleanOptionalDefault: false
Antworten
200

OK

Kein Inhalt

get
/api/addressprocessing/GetRecords
GET /v2/api/addressprocessing/GetRecords HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Accept: */*
200

OK

Kein Inhalt

Optionale Schritte (für erweiterte Anwendungsfälle)

AddDatagroup

Fügt eine Datengruppe hinzu.

Daten werden in sogenannten Data Groups organisiert. Diese dienen dazu, Datensätze bei Bedarf logisch zu trennen. So lassen sich zum Beispiel Bestandskunden, Neukunden oder Kampagnen getrennt verarbeiten und auswerten.

In vielen Fällen genügt jedoch auch eine einzelne Data Group, in die alle Daten geladen und fortlaufend aktualisiert werden.

Hinweis: Sobald eine Data Group gestartet wird, werden die bestehenden Daten in dieser Gruppe überschrieben.

put
/api/addressprocessing/AddDatagroup
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Abfrageparameter
descriptionstringOptional
Antworten
200

OK

Kein Inhalt

put
/api/addressprocessing/AddDatagroup
PUT /v2/api/addressprocessing/AddDatagroup HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Accept: */*
200

OK

Kein Inhalt

GetDataGroups

Listet die verfügbaren Datengruppen auf.

get
/api/addressprocessing/GetDatagroups
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Antworten
200

OK

Kein Inhalt

get
/api/addressprocessing/GetDatagroups
GET /v2/api/addressprocessing/GetDatagroups HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Accept: */*
200

OK

Kein Inhalt

SetBatchSettings

Setzt Batch-Einstellungen.

Request-Parameter
Erklärung

property-name

Setting Werte werden als Property im Body mit den jeweiligen Werten übergeben:

  • InputMapping Definiert, welches Datenmapping zur Datenverarbeitung angewendet wird.

  • RangeBack für zu betrachtende Adressänderungen (z.B. Umzüge der letzten 12 Monate). → Standardwert: 36 Monate

  • WebhookUrl zur Automatisierung nach Abschluss des Batches. Kann zur weiteren Automatisierung von Prozessen genutzt werden, um nach Abschluss des Batches Aktionen beim Kunden auszulösen (z.B. Aktualisierung von Reports in PowerBI).

  • webhookmethod Definiert die HTTP-Methode, die für den Aufruf verwendet wird (z. B. POST oder PUT).

  • webhookheader Optional – definiert die HTTP-Headers als Stringified JSON, z. B. zur Übergabe von Authentifizierungstokens.

  • webhookbody Optional – definiert den HTTP-Body als Stringified JSON, z. B. zur Übermittlung individueller Nutzdaten oder Payloads

post
/api/addressprocessing/SetBatchSettings
Autorisierungen
auth-keystringErforderlich

API Key required for authorized endpoints

Abfrageparameter
uidstring · uuidOptional
Rumpf
Other propertiesstringOptional
Antworten
200

OK

Antwortstring
post
/api/addressprocessing/SetBatchSettings
POST /v2/api/addressprocessing/SetBatchSettings HTTP/1.1
Host: api.multisource.ch
auth-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 34

{
  "ANY_ADDITIONAL_PROPERTY": "text"
}
200

OK

text

Zuletzt aktualisiert