Service de synchronisation de personne
Le service de synchronisation de personne est un service Web entrant dont le rôle est d'ajouter ou de mettre à jour une personne dans HCL Commerce afin de synchroniser HCL Commerce avec le référentiel principal externe.
Cas d'utilisation typiques
- Création ou mise à jour d'une personne
- Création ou mise à jour d'une adresse pour une personne
URL du point d'extrémité et opération du service Web
L'URL de nœud final par défaut de ce service Web entrant est https://hostname:8000/webapp/wcs/services/MemberServices. L'opération mise à disposition par ce service Web entrant est SyncPerson, avec le BOD SyncPerson pour la requête et le BOD ConfirmBOD pour la réponse.
Demande
Les requêtes adressées à ce service Web entrant ont la forme de documents BOD (Business Object Documents) SyncPerson. Il existe deux types de demande pour ce service :
- Ajout ou mise à jour d'une personne
- Ajout ou mise à jour d'une adresse pour une personne
Ajout ou mise à jour d'une personne
Les requêtes d'ajout ou de mise à jour d'une personne sont mappées à com.ibm.commerce.usermanagement.commands.UserRegistrationAdminUpdateCmd et doivent contenir les informations suivantes :
| XPath* | Type | Mappé au paramètre de commande suivant | Description | Obligatoire |
|---|---|---|---|---|
| ApplicationArea/BusinessContext/ContextData | USERDATA | - | Données de contexte. Par exemple :
| N |
| DataArea/Sync/ActionCriteria/ActionExpression/@actionCode | chaîne | action | Le code d'action. Les valeurs admises sont les suivantes : Ajouter : pour ajouter une personne. Modifier : pour mettre à jour une personne existante. | O |
| DataArea/Sync/ActionCriteria/ActionExpression | chaîne | commerceObject | L'expression d'action. Elle doit être spécifiée comme suit :
| O |
| DataArea/Person/ParentIdentifier/DistinguishedName | chaîne | parentMember | Le nom distinctif de l'organisation parent. Si elles ne sont pas spécifiées, les valeurs par défaut sont les suivantes : o= organisation par défaut, o= organisation racine | N |
| DataArea/Person/Authentication/LogonID | chaîne | logonId | Connectez-vous à l'ID de la personne. | O |
| DataArea/Person/Authentication/Password | chaîne | logonPassword | Mot de passe de la personne. | Y - lorsque vous ajoutez une personne N - lorsque vous mettez à jour une personne |
| DataArea/Person/Authentication/SecurityHint/Question | chaîne | challengeQuestion | Question de confirmation d'identité de la personne. | N |
| DataArea/Person/Authentication/SecurityHint/Answer | chaîne | challengeAnswer | Réponse à la question de confirmation d'identité. | N |
| DataArea/Person/Authentication/@expired | boolean | passwordExpired | Indique si le mot de passe de l'utilisateur a expiré. Les valeurs admises sont les suivantes :
|
N |
| DataArea/Person/Authentication/@status | boolean | userStatus | Permet de désactiver l'ID de connexion de la personne sans la retirer du système.
| N |
| DataArea/Person/Authentication/UserData/UserDataField | USERDATA | - | Utilisé pour passer des paramètres additionnels à la commande cible. | N |
| DataArea/Person/PersonName/LastName | chaîne | lastName | Nom | N |
| DataArea/Person/PersonName/PersonTitle | chaîne | personTitle | Titre de la personne ; par exemple, Dr, M. ou Mme. | N |
| DataArea/Person/PersonName/FirstName | chaîne | firstName | Prénom de la personne. | N |
| DataArea/Person/PersonName/MiddleName | chaîne | middleName | Deuxième prénom de la personne | N |
| DataArea/Person/PersonalProfile/PreferredCurrency | chaîne | preferredCurrency | Devise préférée de la personne. Clé externe faisant référence à la colonne SETCCURR de la table SETCURR. | N |
| DataArea/Person/PersonalProfile/PreferredLanguage | chaîne | preferredLanguage | Langue préférée de la personne ; clé externe faisant référence à la colonne LANGUAGE_ID de la table LANGUAGE. | N |
| DataArea/Person/PersonalProfile/DisplayName | chaîne | displayName | Nom utilisé pour afficher le nom de la personne dans une liste récapitulative. | N |
| DataArea/Person/PersonalProfile/PhotoURL | chaîne | photo | Emplacement de la photo de la personne. | N |
| DataArea/Person/PersonalProfile/PreferredMeasure | chaîne | preferredMeasure | L'unité de mesure préférée. | N |
| DataArea/Person/PersonalProfile/PreferredCommunication | chaîne | preferredCommunication | Mode de communication préféré par téléphone. | N |
| DataArea/Person/PersonalProfile/PreferredDelivery | chaîne | preferredDelivery | Mode de livraison préféré. | N |
| DataArea/Person/PersonalProfile/Description | chaîne | description | Description de la personne. | N |
| DataArea/Person/PersonalProfile/Gender | chaîne | gender | Sexe de la personne. Les valeurs admises sont les suivantes :
| N |
| DataArea/Person/PersonalProfile/Income | int | income | Revenu annuel de la personne. | N |
| DataArea/Person/PersonalProfile/MaritalStatus | chaîne | maritalStatus | Situation de famille de la personne. | N |
| DataArea/Person/PersonalProfile/IncomeCurrency | chaîne | incomeCurrency | Devise dans laquelle est exprimé le revenu de la personne. | N |
| DataArea/Person/PersonalProfile/NumberOfChildren | int | children | Le nombre d'enfants de la personne. Si ce champ n'est pas renseigné, la valeur par défaut est 0. | N |
| DataArea/Person/PersonalProfile/Household | int | household | Nombre de personnes vivant au foyer. | N |
| DataArea/Person/PersonalProfile/CompanyName | chaîne | companyName | Société pour laquelle travaille la personne. | N |
| DataArea/Person/PersonalProfile/Hobbies | chaîne | hobbies | Principaux centres d'intérêt et passe-temps de la personne. | N |
| DataArea/Person/PersonalProfile/Timezone | chaîne | timeZone | Fuseau horaire du lieu de résidence de la personne. | N |
| DataArea/Person/PersonalProfile/UserData/UserDataField | USERDATA | - | Utilisé pour passer des paramètres additionnels à la commande cible. | N |
| DataArea/Person/BusinessProfile/BusinessTitle | chaîne | businessTitle | Titre ou fonction professionnelle. | N |
| DataArea/Person/BusinessProfile/OrganizationName | chaîne | organizationName | Nom de l'organisation. | N |
| DataArea/Person/BusinessProfile/OrganizationalUnitName | chaîne | organizationUnitName | Nom de l'unité organisationnelle. | N |
| DataArea/Person/BusinessProfile/EmployeeID | chaîne | employeeId | Méthode d'identification de l'employé ; par exemple, par son matricule. | N |
| DataArea/Person/BusinessProfile/AlternateID | chaîne | alternateId | ID spécial attribué par l'organisation ou l'unité organisationnelle dont fait partie cet utilisateur. | N |
| DataArea/Person/BusinessProfile/EmployeeType | chaîne | employeeType | Catégorie d'employé, telle que Employé, Employé à temps partiel, Employé à temps partiel spécial, Employé auxiliaire et Contractuel. | N |
| DataArea/Person/BusinessProfile/DepartmentNumber | chaîne | departmentNumber | Numéro de département ou code du service de l'utilisateur. | N |
| DataArea/Person/BusinessProfile/Manager | chaîne | manager | Nom du responsable ou du superviseur de cet utilisateur professionnel. | N |
| DataArea/Person/BusinessProfile/Secretary | chaîne | secretary | Nom du secrétaire ou de l'assistant administratif de l'utilisateur. | N |
| DataArea/Person/BusinessProfile/RequisitionerID | chaîne | requisitionerId | ID unique servant à identifier le demandeur. | N |
| DataArea/Person/BusinessProfile/UserData/UserDataField | USERDATA | - | Utilisé pour passer des paramètres additionnels à la commande cible. | N |
| DataArea/Person/ContactInfo/Telephone[1] | chaîne | phone1 | Le numéro de téléphone principal de la personne. | N |
| DataArea/Person/ContactInfo/Telephone[1]/@type | chaîne | phone1Type | Le type de téléphone utilisé pour le numéro de téléphone principal. Par exemple, TTY pour une personne malentendante, PCM pour la modulation par impulsions codées ou CEL (cellulaire) pour un portable. Cette valeur est une zone à trois caractères. | N |
| DataArea/Person/ContactInfo/Telephone[1]/@publish | boolean | publishPhone1 | Indique si le numéro de téléphone principal est publié dans l'annuaire. | N |
| DataArea/Person/ContactInfo/Telephone[2] | chaîne | phone2 | Le numéro de téléphone secondaire de la personne. | N |
| DataArea/Person/ContactInfo/Telephone[2]/@type | chaîne | phone2Type | Le type de téléphone utilisé pour le numéro de téléphone secondaire. Par exemple, TTY pour une personne malentendante, PCM pour la modulation par impulsions codées ou CEL (cellulaire) pour un portable. Cette valeur est une zone à trois caractères. | N |
| DataArea/Person/ContactInfo/Telephone[2]/@publish | boolean | publishPhone2 | Indique si le numéro de téléphone principal est publié dans l'annuaire. | N |
| DataArea/Person/ContactInfo/Email[1] | chaîne | email1 | L'adresse e-mail principale de la personne. | N |
| DataArea/Person/ContactInfo/Email[2] | chaîne | email2 | L'adresse e-mail secondaire de la personne. | N |
| DataArea/Person/ContactInfo/Fax[1] | chaîne | fax1 | Le numéro de fax principal de la personne. | N |
| DataArea/Person/ContactInfo/Fax[2] | chaîne | fax2 | Le numéro de fax secondaire de la personne. | N |
| DataArea/Person/ContactInfo/Address/@type | chaîne | addressType | L'utilisation de l'adresse. Les valeurs admises sont les suivantes :
| N |
| DataArea/Person/ContactInfo/Address/City | chaîne | city | La ville. | N |
| DataArea/Person/ContactInfo/Address/StateOrProvinceName | chaîne | état | L'état ou la province (Etats-Unis ou Canada). | N |
| DataArea/Person/ContactInfo/Address/Country | chaîne | country | Le pays ou la région. | N |
| DataArea/Person/ContactInfo/Address/PostalCode | chaîne | zipCode | Le code postal. | N |
| DataArea/Person/ContactInfo/Address/AddressLine[1] | chaîne | address1 | La première ligne de la partie 'numéro et rue' de l'adresse. | N |
| DataArea/Person/ContactInfo/Address/AddressLine[2] | chaîne | address2 | La deuxième ligne de la partie 'numéro et rue' de l'adresse. | N |
| DataArea/Person/ContactInfo/Address/AddressLine[3] | chaîne | address3 | La troisième ligne de la partie 'numéro et rue' de l'adresse. | N |
| DataArea/Person/ContactInfo/Address/UserData/UserDataField | USERDATA | - | Utilisé pour passer des paramètres additionnels à la commande cible. | N |
| DataArea/Person/ContactInfo/UserData/UserDataField | USERDATA | - | Utilisé pour passer des paramètres additionnels à la commande cible. | N |
| DataArea/Person/ContextAttribute[j]/Name | chaîne | attributeName partie de la spécification suivante, qui concerne un attribut de membre personnalisé : &attributeName_storeId_r_n=value | Le nom d'un attribut personnalisable. | N |
| DataArea/Person/ContextAttribute[j]/AttributeValue[k]/Value[n] | chaîne | value partie de la spécification suivante, qui concerne un attribut de membre personnalisé : &attributeName_storeId_r_n=value | La valeur d'un attribut personnalisable. | N |
| DataArea/Person/ContextAttribute[j]/AttributeValue[k]/StoreID | int | storeId partie de la spécification suivante, qui concerne un attribut de membre personnalisé : &attributeName_storeId_r_n=value | L'ID du magasin auquel s'applique la valeur de l'attribut. S'il n'est pas spécifié, la valeur s'appliquer à tous les magasins. | N |
| DataArea/Person/UserData/UserDataField | USERDATA | - | Utilisé pour passer des paramètres additionnels à la commande cible. | N |
Ajout ou mise à jour d'une adresse pour une personne :
Les requêtes d'ajout ou de mise à jour d'une adresse pour une personne sont mappées à com.ibm.commerce.usermanagement.commands.AddressAddCmd et com.ibm.commerce.usermanagement.commands.AddressUpdateCmd. Les demandes doivent contenir les informations suivantes :
| XPath* | Type | Mappé au paramètre de commande suivant | Description | Requis |
| ApplicationArea/BusinessContext/ContextData | USERDATA | - | Données de contexte. Par exemple :
| N |
| DataArea/Sync/ActionCriteria/ActionExpression/@actionCode | chaîne | action | Le code d'action. Les valeurs admises sont les suivantes :
|
O |
| DataArea/Sync/ActionCriteria/ActionExpression | chaîne | commerceObject | L'expression d'action. Elle doit être spécifiée comme suit :
| O |
| DataArea/Person/PersonIdentifier/DistinguishedName | chaîne | distinguishedName | Nom distinctif de la personne, utilisé avec l'alias (nickName) de l'adresse pour identifier la personne. | O |
| DataArea/Person/ContactList/ContactEntry/@contactNickName | chaîne | nickName | L'alias ou l'identificateur de l'adresse ajoutée. Une personne peut avoir plusieurs adresses, chacune avec un alias. L'adresse qu'un utilisateur fournit pendant l'inscription est traitée par le système comme la propre adresse de la personne. Le système définit le surnom de cette adresse sur l'ID de connexion de la personne. | O |
| DataArea/Person/ContactList/ContactEntry/ContactName/LastName | chaîne | lastName | Surnom de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/ContactName/PersonTitle | chaîne | personTitle | Titre de la personne ; par exemple, Dr, M. ou Mme. | N |
| DataArea/Person/ContactList/ContactEntry/ContactName/FirstName | chaîne | firstName | Prénom de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/ContactName/MiddleName | chaîne | middleName | Deuxième prénom de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/Telephone[1] | chaîne | phone1 | Le numéro de téléphone principal de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/Telephone[1]/@type | chaîne | phone1Type | Le type de téléphone utilisé pour le numéro de téléphone principal. Par exemple, TTY pour une personne malentendante, PCM pour la modulation par impulsions codées ou CEL (cellulaire) pour un portable. Cette valeur est une zone à trois caractères. | N |
| DataArea/Person/ContactList/ContactEntry/Telephone[1]/@publish | chaîne | publishPhone1 | Indique si le numéro de téléphone principal est publié dans l'annuaire. | N |
| DataArea/Person/ContactList/ContactEntry/Telephone[2] | chaîne | phone2 | Le numéro de téléphone secondaire de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/Telephone[2]/@type | chaîne | phone2Type | Le type de téléphone utilisé pour le numéro de téléphone secondaire. Par exemple, TTY pour une personne malentendante, PCM pour la modulation par impulsions codées ou CEL (cellulaire) pour un portable. Cette valeur est une zone à trois caractères. | N |
| DataArea/Person/ContactList/ContactEntry/Telephone[2]/@publish | chaîne | publishPhone2 | Indique si le numéro de téléphone principal est publié dans l'annuaire. | N |
| DataArea/Person/ContactList/ContactEntry/Email[1] | chaîne | email1 | L'adresse e-mail principale de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/Email[2] | chaîne | email2 | L'adresse e-mail secondaire de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/Fax[1] | chaîne | fax1 | Le numéro de fax principal de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/Fax[2] | chaîne | fax2 | Le numéro de fax secondaire de la personne. | N |
| DataArea/Person/ContactList/ContactEntry/Address/@type | chaîne | addressType | L'utilisation de l'adresse. Les valeurs admises sont les suivantes :
| N |
| DataArea/Person/ContactList/ContactEntry/Address/City | chaîne | city | La ville. | N |
| DataArea/Person/ContactList/ContactEntry/Address/StateOrProvinceName | chaîne | état | L'état ou la province (Etats-Unis ou Canada). | N |
| DataArea/Person/ContactList/ContactEntry/Address/Country | chaîne | country | Le pays ou la région. | N |
| DataArea/Person/ContactList/ContactEntry/Address/PostalCode | chaîne | zipCode | Le code postal. | N |
| DataArea/Person/ContactList/ContactEntry/Address/AddressLine[1] | chaîne | address1 | La première ligne de la partie 'numéro et rue' de l'adresse. | N |
| DataArea/Person/ContactList/ContactEntry/Address/AddressLine[2] | chaîne | address2 | La deuxième ligne de la partie 'numéro et rue' de l'adresse. | N |
| DataArea/Person/ContactList/ContactEntry/Address/AddressLine[3] | chaîne | address3 | La troisième ligne de la partie 'numéro et rue' de l'adresse. | N |
| DataArea/Person/ContactList/ContactEntry/Address/UserData/UserDataField | USERDATA | - | Utilisé pour passer des paramètres additionnels à la commande cible. | N |
| DataArea/Person/ContactList/ContactEntry/UserData/UserDataField | USERDATA | - | Utilisé pour passer des paramètres additionnels à la commande cible. | N |
* Les préfixes d'espace de noms sont omis pour simplifier la présentation.
Exemples
- SyncPerson.xml - Ajout d'une personne
- SyncPersonAddress.xml - Ajout d'une adresse pour une personne
Réponse
Les réponses de ce service Web entrant ont la forme de documents BOD ConfirmBOD.
La réponse à une requête d'ajout ou de mise à jour d'une personne contient les informations suivantes :
| XPath* | Type | Description |
| DataArea/BOD/BODSuccessMessage | - | Cet élément est présent si la demande a été traitée avec succès. |
| DataArea/BOD/BODSuccessMessage/UserArea/Person/PersonIdentifier/UniqueID | chaîne | ID de membre de la personne |
La réponse à une requête d'ajout ou de mise à jour d'une adresse de personne contient les informations suivantes :
| XPath* | Type | Description |
| DataArea/BOD/BODSuccessMessage | - | Cet élément est présent si la demande a été traitée avec succès. |
* Les préfixes d'espace de noms sont omis pour simplifier la présentation.
Exemples
- ConfirmBODPerson.xml - réponse lorsque l'ajout ou la mise à jour d'une personne a réussi
- ConfirmBODPersonError.xml - réponse lorsque l'ajout ou la mise à jour d'une adresse a réussi
Exceptions
Toutes les exceptions sont renvoyées sous forme de documents BOD ConfirmBOD avec un élément ResponseCriteria sous le verbe Confirm. Les éléments contiennent les informations suivantes :
| XPath* | Type | Description |
|---|---|---|
| DataArea/Confirm/ResponseCriteria/ChangeStatus/Code | chaîne | L'identificateur de corrélation. Peut être utilisé pour identifier de manière unique une exception dans les journaux du serveur. |
| DataArea/Confirm/ResponseCriteria/ChangeStatus/ReasonCode | chaîne | Le code raison, qui est soit un code code d'erreur système de HCL Commerce s'il est disponible, soit la clé de message EC plus un code d'erreur secondaire en option, si le code d'erreur système de HCL Commerce n'est pas disponible (ce qui est généralement le cas lorsque l'exception est émise par l'application). |
| DataArea/Confirm/ResponseCriteria/ChangeStatus/Reason | chaîne | Le message de l'exception. |
* Les préfixes d'espace de noms sont omis pour simplifier la présentation.
Fichier de mappage de messages utilisé : SyncPersonBODMapping.xml
Exemples
- SyncPerson.xml
- SyncPersonAddress.xml
- ConfirmBODPersonError.xml - réponse avec exception lorsqu'il manque un paramètre obligatoire.