Passer au contenu principal

Guide d'intégration : HubSpot

Ce guide vous montre comment envoyer automatiquement des messages SMS depuis HubSpot en utilisant ClickSend et des actions de code personnalisé dans les flux de travail.

Prérequis

Avant de débuter, vous aurez besoin de :

  • Un compte ClickSend

  • Un compte HubSpot

  • HubSpot Operations Hub Professional ou supérieur – Voir les abonnements


Étape 1 : Créer un déclencheur de flux de travail

  1. Dans HubSpot, allez dans Automatisation > Flux de travail.

  2. Cliquez sur Créer un flux de travail.

  3. Choisissez Basé sur le contact > Flux de travail vide, donnez-lui un nom, puis cliquez sur Suivant.

  4. Cliquez sur Configurer les déclencheurs, puis définissez comment les contacts entrent dans le flux de travail.

    • Exemple : Utilisez un filtre tel que "Le numéro de téléphone ne contient pas 'a'" pour inclure tous les numéros de téléphone valides.

  5. Cliquez sur Appliquer le filtre, testez les critères si nécessaire, puis cliquez sur Sauvegarder.


Étape 2 : Créer une application privée dans HubSpot

  1. Dans un nouvel onglet, allez dans Paramètres > Intégrations > Applications privées.

  2. Cliquez sur Créer une application privée.

  3. Définissez le nom et la description de l'application.

  4. Sélectionnez les portées nécessaires (Objets CRM > Contacts – accès en lecture).

  5. Cliquez sur Créer l'application, puis copiez le jeton d'accès pour plus tard.


Étape 3 : Ajouter l'action SMS dans votre flux de travail

  1. De retour dans l'éditeur de flux de travail, cliquez sur le bouton + pour ajouter une action.

  2. Choisissez Code personnalisé dans la liste des actions.

  3. Dans la section Secrets :

    1. Cliquez sur Choisir un secret > Ajouter un secret

    2. Ajoutez les secrets suivants :

      • HPKEY – Le jeton de votre application privée HubSpot

      • CSUSERNAME – Votre nom d'utilisateur ClickSend (depuis le tableau de bord)

      • CSKEY – Votre clé API ClickSend


Étape 4 : Ajouter et personnaliser le code

  1. Retirez le bloc de code existant.

  2. Assurez-vous que HubSpot Client v3 est sélectionné.

  3. Copiez et collez le code suivant :

const hubspot = require('@hubspot/api-client');
var axios = require('axios');

exports.main = async (event, callback) => {
try {
const username = process.env.CSUSERNAME;
const key = process.env.CSKEY;
const hubspotClient = new hubspot.Client({ accessToken: process.env.HPKEY });

const result = Buffer.from(`${username}:${key}`).toString('base64');
const contact = await hubspotClient.crm.contacts.basicApi.getById(
event.object.objectId,
['phone', 'firstname', 'lastname']
);

const phone = contact.body.properties.phone;
const firstName = contact.body.properties.firstname || '';
const lastName = contact.body.properties.lastname || '';
const message = `Hi ${firstName}, this is a test message from HubSpot.`; // Personnaliser selon les besoins

const data = JSON.stringify({
messages: [{
body: message,
to: phone,
from: "", // Optionnel : ajouter un ID d'expéditeur
source: "Hubspot"
}]
});

const config = {
method: 'post',
url: 'https://rest.clicksend.com/v3/sms/send',
headers: {
'Content-Type': 'application/json',
'Authorization': `Basic ${result}`
},
data: data
};

await axios(config);
} catch (err) {
console.error(err);
throw err;
}

callback({
outputFields: {
email: event.inputFields['email'],
phone: event.inputFields['phone'],
},
});
};

4. Cliquez sur Enregistrer.


Testez votre flux de travail (optionnel)

  1. Cliquez sur Tester dans le flux de travail.

  2. Sélectionnez un contact avec un numéro de téléphone et lancez le test.

  3. En cas de succès, vous verrez "SUCCESS" dans la sortie.


Étape 5 : Réviser et publier

  1. Cliquez sur Réviser et publier.

  2. Révisez les options d'inscription, de désinscription et de temporisation.

  3. Cliquez sur Mettre en marche pour activer le flux de travail.


C'est fait !

Votre flux de travail est maintenant en ligne et va envoyer un SMS via ClickSend chaque fois qu'un contact remplit vos conditions de déclenchement.

Pour obtenir de l'aide au dépannage, [contactez notre équipe support.]

Avez-vous trouvé la réponse à votre question ?