L’ancrage (hook) consiste à lier un évènement weavy à une URL externe par un système d’abonnement.
Abonnement
Un service externe peut s’abonner à un évènement webhook, de sorte à recevoir une requête HTTP contenant des données à chaque fois que l'évènement est déclenché.
Pour cela il suffit d’appeler le endpoint EPT_WebhookSubscribe ( https://api.weavy.divalto.com/v1/EntryPoints/{{projectCode}}/process/?c=EPT_WebhookSubscribe )
avec un Bearer token de connexion valide dans la partie headers et un body composé de
{ "event": "myEvent", "hookUrl": "callbackExternalUrl" }
event : Evènement auquel on souhaite s’abonner.
hookUrl : URL externe vers laquelle on va envoyer une réponse à chaque fois que l'évènement sera déclenché.
Le endpoint va renvoyer des données qui serviront éventuellement à se désabonner par la suite :
{ "result": { "codeWebhookSubscription": "mySubscriptionCode" } }
Désabonnement
Pour se désabonner, le principe est le même en appelant le endpoint EPT_WebhookUnsubscribe en spécifiant le code récupéré lors de l’abonnement à l'évènement :
{ "codeWebhookSubscription": "mySubscriptionCode" }
PerformList
Il existe également un troisième endpoint lié aux abonnements webhook, EPT_WebhookPerformList, qui est utilisé par un service distant pour récupérer des échantillons de données de test tels qu’ils seront envoyés par le hook, permettant ainsi de tester à la demande les données renvoyées sans avoir à déclencher l'évènement manuellement.
{ "event": "myEvent" }
Liste des évènements WebHook standards
NewCustomer
Déclenché lors de la création d’un client coté weavy.Structure des données envoyées par un exemple :
{ "result": { "codecustomer": "COLOMB", "name": "COLOMBE DIAMANTS", "address1": "Rue Maurice Barres ", "address2": "", "address3": "", "postalCode": "78000", "city": "VERSAILLES", "phoneNumber": "111220520", "faxNumber": "133220520", "mobilePhoneNumber": "611220520", "email": "contact@soc.com", "country": "FRANCE", "province": "", "codeBaseCulture": "FR-FR", "civility": "", "type": "Customer", "branchOfficeName": "Agence-01", "userName": "Vincent MOREL", "url": "https://weavy.divalto.com/page/customer/20000000080" } }
NewProspect
Déclenché lors de la création d’un prospect coté weavy.Structure des données envoyées par un exemple :
{ "result": { "codecustomer": "2010000000015", "name": "OLYMPIQUE DE MARSEILLE", "address1": "33, TERRASSE DE LA MARTINE", "address2": "CTRE ENTRAINEMENT ROBERT LOUIS DREYFUS", "address3": "", "postalCode": "13012", "city": "MARSEILLE 12", "phoneNumber": "", "faxNumber": "", "mobilePhoneNumber": "", "email": "", "country": "FRANCE", "province": "", "codeBaseCulture": "", "civility": "", "type": "Prospect", "branchOfficeName": "", "userName": "Frédéric DUBOIS", "url": "https://weavy.divalto.com/page/customer/2010000000015" } }
NewSuspect
Déclenché lors de la création d’un suspect coté weavy.Structure des données envoyées par un exemple :
{ "result": { "codecustomer": "201-00035", "name": "assurance plus ", "address1": "1 rue des cigognes ", "address2": "", "address3": "", "postalCode": "6700", "city": "strasbourg", "phoneNumber": "", "faxNumber": "", "mobilePhoneNumber": "", "email": "", "country": "", "province": "", "codeBaseCulture": "", "civility": "", "type": "Suspect", "branchOfficeName": "", "userName": "Frédéric DUBOIS", "url": "https://weavy.divalto.com/page/customer/2010000000035" } }
NewSubcontractor
Déclenché lors de la création d’un sous-traitant coté weavy.Structure des données envoyées par un exemple :
{ "result": { "codecustomer": "6030000000012", "name": "ST DIVALTO", "address1": "", "address2": "", "address3": "", "postalCode": "67100", "city": "Strasbourg", "phoneNumber": "", "faxNumber": "", "mobilePhoneNumber": "", "email": "", "country": "FRANCE", "province": "", "codeBaseCulture": "", "civility": "", "type": "Subcontractor", "branchOfficeName": "", "userName": "Coordinateur de services 1 BO", "url": "https://weavy.divalto.com/page/customer/6030000000012" } }
NewDeal
Déclenché lors de la création d’une affaire coté weavy.
Structure des données envoyées par un exemple :{ "result": { "codedeal": "6730000000002", "customerName": "A1C1", "label": "Vitrine de Noel 2023", "type": "Deal type 1", "dealNumber": "", "status": "Drafting", "creationDate": "2023-09-22 12:05:40", "url": "https://weavy.divalto.com/page/deal/6730000000002" } }
NewOpportunity
Déclenché lors de la création d’une opportunité coté weavy.
Structure des données envoyées par un exemple :{ "result": { "codedeal": "2010000000014", "customerName": "A L'ATELIER DE DIJON", "label": "Ma nouvelle opportunité", "type": "Appel d'offres", "dealNumber": "", "status": "Active", "creationDate": "2023-10-31 00:00:00", "url": "https://weavy.divalto.com/page/project/2010000000014" } }