WebHook Email

Résumé

Manipulation de l'entité Email en lecture/écriture/suppression via un objet métier depuis une application externe.

Tables

Les tables utilisées sont :

  • sw_data_email : Table des entêtes/corps d'emails

Les tables liées sont :

  • sw_data_emaildocument : Table des pièces jointes d'un email

  • sw_data_emaillinkedto : Table des liens entre emails et entités (customer, customercontact, deal, intervention, intervention request, ...)

Critères d'activation

WHK_Email est défini dans la gestion des webhooks du studio.

Fonctionnement

verb: GET
resultType: simple

"email": { "codeemail": "6690000000045", "sentDate": "2021-07-05 14:24:32", "sender": "Communication <communication@divalto.com>", "generictype_ID_emailImportance": "NORMAL", "subject": "Deviens jury du Divalto C.A.R.E I.T", "bodyPreview": "HE’S BACK ! Rejoins l’aventure de notre concours solidaire étudiants 4ème edition 2021-2022Pour celles et ceux d’entre vous fraîchement arrivés au sein de la #TeamDIvalto ou bien pour les mémoires de poisson rouge ?Le Divalto" }

verb: GET
resultType: extended

"email":{ "codeemail":"6690000000045", "sentDate": "2021-07-05 14:24:32", "sender": "Communication <communication@divalto.com>", "generictype_ID_emailImportance": "Normal", "subject": "Deviens jury du Divalto C.A.R.E I.T", "bodyPreview": "HE’S BACK ! Rejoins l’aventure de notre concours solidaire étudiants 4ème edition 2021-2022Pour celles et ceux d’entre vous fraîchement arrivés au sein de la #TeamDIvalto ou bien pour les mémoires de poisson rouge ?Le Divalto", "receivedDate": "2021-07-05 14:24:34", "lastModifiedDate": "2021-07-10 06:10:41", "toRecipients": "GRD_EVERYBODY <grdeverybody@divalto.com>", "ccRecipients": "", "bccRecipients": "", "replyTo": "", "isDraft": "0", "isRead": "1", "externalID": "<DBAPR01MB6F8CB1C9@DBAPR01MB6856.eurprd01.prod.exchangelabs.com>", "body": "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"><meta content=\"text/html; charset=utf-8\">...", "hasAttachments": "0" /* Permet de savoir si l'email a des pièces jointes. Mis à jour automatiquement lors de l'ajout/suppression de pièces jointes dans sw_data_emaildocument. (Valeurs possibles : 0,1) (Bool ())*/ }

verb: GET
resultType: extendedRelated
en complément du résultat pour resultType: extended on aura le détail pour la table generictype_emailImportance.

"related":[ { "generictype_emailImportance":{ "codegenerictype": "EMAIL_IMPORTANCE-NORMAL", "label": "Normal", "originalCode": "NORMAL", "dataType": "EMAIL_IMPORTANCE", "description": "", "translationKey": "GenType_EMAIL_IMPORTANCE-NORMAL", "generictype_ID_parent": "", "tag": "NORMAL", "orderNumber": "" } }]

verb: PUT

Pour ajouter une ou plusieurs pièces jointes à un email il suffira d'appeler le webhook file autant de fois que voulu.
Exemple :

verb: LIST
resultType: simple, extended reprendre les définitions du GET
Ce mode ne retourne pas le champ "body" pour une question de performances.
A la suite du résultat recherché il suffira de lancer le webhook en mode GET sur le "codeEmail" voulu pour récupérer le "body".

Valeurs possibles pour le tri "orderBy" :

  • receivedDateDesc : par date de réception descendant

  • receivedDateAsc : par date de réception ascendant

verb: DELETE
Une suppression d'un email (sw_data_email) va supprimer en cascade les éléments dans les tables liées sw_data_emaillinkedto et sw_data_emaildocument.