Appels unitaires de Profils V4
L'API de Profils vous permet de gérer les données de vos profils en effectuant des opérations CRUD sur un seul profil à la fois.
L'API de Profils V5 simplifie vos développements en couvrant exactement le même périmètre que l'API de Profils V4, mais en ne nécessitant que 5 appels, grâce à l'utilisation repensée des méthodes HTTP.
Quel est le timing ?
Les appels Profils V4 doivent être remplacés par les équivalents V5 d'ici la fin du 1er trimestre 2026.
Récupérer des informations de profil
Récupérer un profil
L'appel V4 'Get a profile' pouvait être utilisé pour obtenir les détails d'un profil unitaire correspondant à la référence unique fournie.
GET /v4/entity/{entity}/table/{table}/profile/{profileKey}
Il peut être remplacé par l'appel V5 'Get a single profile'.
GET /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles/{profileKey}
Récupérer tous les abonnements d'un profil
L'appel V4 'Get all subscriptions of a profile' pouvait être utilisé pour obtenir la liste des abonnements d'un profil donné.
GET /v4/entity/{entity}/table/{table}/profile/{profileKey}/subscription
Il peut être remplacé par l'appel standard V5 'Get a single profile' en utilisant le paramètre de requête subscriptions
pour seulement récupérer les abonnements dont vous avez besoin du statut.
GET /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles/{profileKey}?subscriptions=newsletter,marketing
Récupérer toutes les segmentations d'un profil
L'appel V4 'Get all segmentations of a profile' pouvait être utilisé pour récupérer toutes les segmentations auxquelles appartenaient un profil.
GET /v4/entity/{entity}/table/{table}/profile/{profileKey}/segmentation
Il peut être remplacé par l'appel standard V5 'Get a single profile' en utilisant le paramètre de requête segmentations
pour seulement récupérer les segmentations dont vous avez besoin du statut.
Le paramètre includeNulls
vous permet d'aussi récupérer les segmentations non-obligatoires qui n'ont pas de valeur, pour avoir une vue d'ensemble.
GET /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles/{profileKey}?segmentations=client,VIP&includeNulls=true
Créer/ mettre à jour/ gérer les abonnements et segmentations d'un profil
Créer ou mettre à jour un profil
L'appel V4 'Create or update a profile' pouvait être utilisé pour mettre à jour un profil avec les attributs fournis s'ils correspondaient à la référence unique d'un profil existant dans la DB ou d'en créer un nouveau si aucune ne correspond.
POST /v4/entity/{entity}/table/{table}/profile
Il y a 2 options pour implémenter l'équivalent V5 à cet appel:
- Si vous voulez seulement CREER un nouveau profil, sans possibilité de mettre à jour un existant, vous pouvez utiliser l'appel V5 Create a new profile.
POST /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles
- Si vous devez pouvoir CREER un nouveau profil si n'existe pas ou METTRE A JOUR un profil existant si la valeur d'une clé correspond à une valeur en DB, vous pouvez utiliser l'appel V5 'Create or update a profile'.
PUT /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles
Mettre à jour un profil
L'appel V4 'Update a profile' pouvait être utilisé pour mettre à jour un profil existant correspondant à la référence unique, avec les attributs fournis.
PUT /v4/entity/{entity}/table/{table}/profile/{profileKey}
Cet appel présuppose que le profil est connu car il est directement référencé dans le path de l'appel.
L'équivalent direct est l'appel V5 'Patch an existing profile':
PATCH /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles/{profileKey}
Comme son prédécesseur, cet appel présuppose que le profil est déjà connu. Si ce n'est pas le cas, vous pouvez utiliser l'appel V5 en PUT pour créer ou mettre à jour un profil.
Abonner ou désabonner un profil
L'appel V4 'Subscribe a profile' pouvait être utilisé pour ajouter un abonnement à un profil connu.
POST /v4/entity/{entity}/table/{table}/profile/{profileKey}/subscription/{subscription}
L'appel V4 'Unsubscribe a profile' pouvait être utilisé pour retirer un abonnement à un profil connu.
DELETE /v4/entity/{entity}/table/{table}/profile/{profileKey}/subscription/{subscription}
Tous deux référençaient directement l'abonnement dans leur path et ne pouvaient être utilisés que pour ajouter 1 abonnement par appel.
L'équivalent V5 est l'appel 'Patch an existing profile':
PATCH /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles/{profileKey}
Grâce à la méthode PATCH
, seuls les éléments fournis sont mis à jour. De ce fait, vous pouvez pousser de multiples mises à jour d'abonnement (à la fois abonner et désabonner) directement dans le corps de l'appel, sans modifier d'autre élément.
Les champs de 'Data Collection' fields, ou attributs GDPR sont des informations supplémentaires que vous pouvez pousser pour fournir du contexte sur comment/quand vous avez obtenu l'optin du profil.
{
"subscriptions": {
"newsletter": false,
"product": true
},
"dataCollection": {
"date": "2019-03-14T12:00:00Z",
"source": "a profile collection source",
"way": "a profile collection way"
}
}
Ajouter ou retirer un profil d'une segmentation
L'appel V4 'Add or update a segmentation for a profile' pouvait être utilisé pour mettre à jour une segmentation (exclusive) si le profil est déjà membre d'un segment, ou l'y ajouter s'il n'en fait pas encore partie.
PUT /v4/entity/{entity}/table/{table}/profile/{profileKey}/segmentation/{segmentation}
L'appel V4 'Remove a segmentation' pouvait être utilisé pour retirer un profil d'une segmentation donnée.
DELETE /v4/entity/{entity}/table/{table}/profile/{profileKey}/segmentation/{segmentation}
Tous deux référençaient directement la segmentation dans leur path et ne pouvaient être utilisés que pour ajouter 1 segmentation par appel.
L'équivalent V5 est l'appel'Patch an existing profile':
PATCH /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles/{profileKey}
Grâce à la méthode PATCH
, seuls les éléments fournis sont mis à jour. De ce fait, vous pouvez pousser de multiples mises à jour de segmentation (à la fois ajouter et retirer d'un segment) directement dans le corps de l'appel, sans modifier d'autre élément.
{
"segments": {
"client": false,
"rfm": "SILVER"
}
}
Supprimer un profil
L'appel V4 'Delete a profile' pouvait être utilisé pour complètement supprimer un profil de la DB
DELETE /v4/entity/{entity}/table/{table}/profile/{profileKey}
Son équivalent V5 est 'Delete a single profile'.
DELETE /profiles/v5/entities/{entity}/profile-tables/{profileTableId}/profiles/{profileKey}
L'appel V5 vous permet de pousser les champs de 'Data Collection' fields (ou attributs GDPR) pour ajouter du ocntexte sur pourquoi/quand le profil est supprimé.