Adressprocessing

Processus de traitement des adresses

Le processus par lots se compose des étapes suivantes :

Fonctions

Create

Un lot (Batch) est le cadre dans lequel le traitement a lieu. Un nouveau lot doit être créé pour chaque exécution d’adresses.

Paramètres de requête
Explication

orderNr

Numéro de référence personnalisé pouvant être attribué pour identifier une commande de manière unique, par exemple pour des demandes ultérieures ou des clarifications.

dataGroupCode

Identification unique du groupe de données.

userDescription

Nom de la campagne ou du lot.

→ Généré lors de la création du lot de données (/dataGroups/create). Doit être référencé ici.

processId

ID attribué par le système pour le processus.

→ Valeur par défaut : 400

processingDate

Définit quand le lot doit être lancé (par exemple, création du lot aujourd’hui, traitement pendant le week-end).

businessCase

Définit le déroulement du processus en fonction de préréglages définis à l’avance.

→ Valeur par défaut : 0

product

Sélection du produit souhaité, par exemple :

  • 1 Enrich : Enrichissement des données existantes.

  • 2 Reference : Analyse des données par rapport aux sources de données disponibles, sans modification des données → Résultat : Rapport d’analyse de Multisource et, le cas échéant, de la Poste Suisse.

  • 3 AdressUpdate : Mise à jour des adresses existantes.

notificationEmail

Adresse e-mail pour les notifications. Si aucune adresse spécifique n’est renseignée, l’adresse e-mail de l’utilisateur actuellement connecté sera utilisée par défaut.

post
/AddressProcessing/Create
Autorisations
AuthorizationstringRequis

Please enter a valid token

Corps
orderNrstring | nullableOptionnel
dataGroupCodestring | nullableOptionnel
userDescriptionstring | nullableOptionnel
processIdinteger · int32Optionnel
processingDatestring · date-timeOptionnel
businessCaseinteger · int32Optionnel
productinteger · enumOptionnelValeurs possibles:
notificationEmailstring | nullableOptionnel
Réponses
200

OK

post
/AddressProcessing/Create
POST /v2/AddressProcessing/Create HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 180

{
  "orderNr": "text",
  "dataGroupCode": "text",
  "userDescription": "text",
  "processId": 1,
  "processingDate": "2025-11-19T19:03:35.639Z",
  "businessCase": 1,
  "product": 1,
  "notificationEmail": "text"
}
200

OK

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

FileUpload

Ajoute un fichier au traitement.

post
/AddressProcessing/FileUpload
Autorisations
AuthorizationstringRequis

Please enter a valid token

Paramètres de requête
batchIdinteger · int32Optionnel
batchUidstring · uuidOptionnel
descriptionstringOptionnel
Corps
filestring · binaryOptionnel
Réponses
200

OK

Aucun contenu

post
/AddressProcessing/FileUpload
POST /v2/AddressProcessing/FileUpload HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: multipart/form-data
Accept: */*
Content-Length: 17

{
  "file": "binary"
}
200

OK

Aucun contenu

AddRecords

Cette fonction permet de téléverser des enregistrements un par un ou de compléter un envoi existant avec des enregistrements supplémentaires.

put
/AddressProcessing/AddRecords
Autorisations
AuthorizationstringRequis

Please enter a valid token

Paramètres de requête
idinteger · int32Optionnel
uidstring · uuidOptionnel
Corpsobject[]
customerIdstring | nullableOptionnel
classificationstring | nullableOptionnel
dwhIdstring | nullableOptionnel
beacinteger · int32 | nullableOptionnel
egidstring | nullableOptionnel
edidstring | nullableOptionnel
postAddressIdstring | nullableOptionnel
firstnamestring | nullableOptionnel
companyNamestring | nullableOptionnel
namestring | nullableOptionnel
birthDatestring | nullableOptionnel
streetstring | nullableOptionnel
streetNostring | nullableOptionnel
streetAddstring | nullableOptionnel
careOfstring | nullableOptionnel
poBoxstring | nullableOptionnel
poZipstring | nullableOptionnel
poTownstring | nullableOptionnel
zipstring | nullableOptionnel
townstring | nullableOptionnel
mobileNostring | nullableOptionnel
phoneNostring | nullableOptionnel
emailstring | nullableOptionnel
uidstring | nullableOptionnel
chnrstring | nullableOptionnel
freetext1string | nullableOptionnel
freetext2string | nullableOptionnel
freetext3string | nullableOptionnel
freetext4string | nullableOptionnel
freetext5string | nullableOptionnel
Réponses
200

OK

Aucun contenu

put
/AddressProcessing/AddRecords
PUT /v2/AddressProcessing/AddRecords HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 509

[
  {
    "customerId": "text",
    "classification": "text",
    "dwhId": "text",
    "beac": 1,
    "egid": "text",
    "edid": "text",
    "postAddressId": "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",
    "freetext1": "text",
    "freetext2": "text",
    "freetext3": "text",
    "freetext4": "text",
    "freetext5": "text"
  }
]
200

OK

Aucun contenu

Start

Lance le traitement.

post
/AddressProcessing/Start
Autorisations
AuthorizationstringRequis

Please enter a valid token

Paramètres de requête
uidstring · uuidOptionnel
Réponses
post
/AddressProcessing/Start
POST /v2/AddressProcessing/Start HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
202

Accepted

Aucun contenu

Detail

Fournit un aperçu de tous les fichiers disponibles et de leurs étapes de traitement. Contient également l'identifiant unique (fileUniqueId) de chaque fichier.

Batch-Status

ID du statut
Nom
Description

0

Created

Créé, pas encore traité

1

Execute

En file d’attente; le traitement démarre dès que les ressources sont disponibles

2

Processing

Traitement en cours

3

Marked for processing

Statut intermédiaire entre Execute et Processing

4

Done

Traitement terminé avec succès

6

Error

Erreur survenue pendant le traitement

8

Skipped

Certains modules ont été ignorés

get
/AddressProcessing/Detail
Autorisations
AuthorizationstringRequis

Please enter a valid token

Paramètres de requête
uidstring · uuidOptionnel
Réponses
200

OK

get
/AddressProcessing/Detail
GET /v2/AddressProcessing/Detail HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200

OK

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

FileDownload

Télécharge les résultats d’un batch AdressProcessing sous forme de fichier.

La sortie est fournie au format TSV (valeurs séparées par des tabulations).

Le paramètre compressed permet de définir si le fichier est livré compressé (.txt.gz) (false) ou non compressé (.txt) (true).

get
/AddressProcessing/FileDownload
Autorisations
AuthorizationstringRequis

Please enter a valid token

Paramètres de requête
uidstring · uuidOptionnel
decompressbooleanOptionnel
Réponses
200

OK

Aucun contenu

get
/AddressProcessing/FileDownload
GET /v2/AddressProcessing/FileDownload HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200

OK

Aucun contenu

GetRecords

Récupère les résultats d’un batch AdressProcessing directement au format JSON.

Cet endpoint est utile lorsque les données doivent être traitées directement dans le système, sans téléchargement de fichier.

get
/AddressProcessing/GetRecords
Autorisations
AuthorizationstringRequis

Please enter a valid token

Paramètres de requête
uidstring · uuidOptionnel
Réponses
200

OK

Aucun contenu

get
/AddressProcessing/GetRecords
GET /v2/AddressProcessing/GetRecords HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200

OK

Aucun contenu

Étapes optionnelles (pour des cas d'utilisation avancés)

AddDatagroup

Ajoute un groupe de données.

Data is organised into Data Groups. These allow you to logically separate records when needed – for example to process and analyse existing customers, new customers, or campaigns independently.

In many cases, however, a single Data Group is sufficient, where all data can be loaded and continuously updated.

Note: Once a Data Group is started, the existing data in that group will be overwritten.

put
/AddressProcessing/AddDatagroup
Autorisations
AuthorizationstringRequis

Please enter a valid token

Paramètres de requête
descriptionstringOptionnel
Réponses
200

OK

put
/AddressProcessing/AddDatagroup
PUT /v2/AddressProcessing/AddDatagroup HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200

OK

{
  "datagroupId": 1,
  "description": "text",
  "code": "text"
}

GetDataGroups

Liste les groupes de données disponibles.

get
/AddressProcessing/GetDatagroups
Autorisations
AuthorizationstringRequis

Please enter a valid token

Réponses
200

OK

get
/AddressProcessing/GetDatagroups
GET /v2/AddressProcessing/GetDatagroups HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200

OK

[
  {
    "datagroupId": 1,
    "description": "text",
    "code": "text"
  }
]

SetBatchSettings

Définit les paramètres du lot.

Paramètres de requête
Explication

property-name

Valeurs des paramètres de configuration :

  • InputMapping Définit le mapping des données appliqué au traitement des données.

  • RangeBack Définit la période des changements d’adresse à prendre en compte (par ex. déménagements des 12 derniers mois). → Valeur par défaut : 36 mois

  • WebhookUrl Permet l’automatisation après la fin du traitement du lot (actuellement uniquement en tant que requête GET avec des paramètres dans la query string). Peut être utilisé pour automatiser des processus supplémentaires et déclencher des actions chez le client après la fin du traitement (par ex. mise à jour de rapports dans Power BI).

  • webhookmethod Définit la méthode HTTP utilisée pour l’appel (par ex. POST ou PUT).

  • webhookheader Optionnel – définit les en-têtes HTTP sous forme de JSON stringifié, par exemple pour transmettre des tokens d’authentification.

  • webhookbody Optionnel – définit le corps HTTP sous forme de JSON stringifié, par exemple pour envoyer des données personnalisées ou des payloads.

post
/AddressProcessing/SetBatchSettings
Autorisations
AuthorizationstringRequis

Please enter a valid token

Paramètres de requête
uidstring · uuidOptionnel
Corps
Other propertiesstringOptionnel
Réponses
200

OK

Aucun contenu

post
/AddressProcessing/SetBatchSettings
POST /v2/AddressProcessing/SetBatchSettings HTTP/1.1
Host: api.multisource.ch
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 34

{
  "ANY_ADDITIONAL_PROPERTY": "text"
}
200

OK

Aucun contenu

Mis à jour