> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.drimify.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Configurer les intégrations Webhook sur Drimify

## Configurer les Intégrations dans Drimify (Webhooks & Mailers)

Les intégrations Drimify vous permettent de transmettre automatiquement les données des participants à des services externes dès qu'un utilisateur interagit avec votre application. Vous pouvez vous connecter à une API Personnalisée, à HubSpot ou à Salesforce — et pour chaque intégration, vous pouvez spécifier précisément quels champs de données sont transmis.

## Commencer

| Allez à Mon Compte → Intégrations.

Si aucune intégration n'a encore été configurée, vous verrez l'écran étiquette "Pas encore d'intégrations webhook" ou "Pas encore d'intégrations de messagerie". Cliquez sur **+ Ajouter Nouveau Integration** (disponible à la fois en haut à droite et au centre de la page) pour ouvrir le sélecteur d'intégration.

# Intégrations Webhook

## Sélectionner un Type d'Intégration

Une fenêtre modale intitulée **"Sélectionner Intégration Webhook"** apparaîtra.
Vous pouvez filtrer par catégorie en utilisant le menu déroulant (par défaut, c'est **Toutes**). Les trois intégrations disponibles sont :

* API Personnalisée — pour tout point de terminaison REST de l'api que vous contrôlez
* HubSpot — pour l'automatisation CRM & Marketing via HubSpot
* Salesforce — pour le CRM Salesforce

Cliquez sur l'icône de l'intégration que vous souhaitez configurer.

# Intégration API Personnalisée

## Authentification

Après avoir sélectionné **API Personnalisée**, le panneau **Ajouter Intégration** s'ouvre avec les champs suivants :

* **Nom de l'Intégration** : Un libellé pour votre propre référence (par défaut : "Intégration API Personnalisée"). Vous pouvez le renommer avec quelque chose de plus descriptif.
* **Endpoint API** : L'URL complète de votre récepteur webhook (par exemple : `https://api.example.com/webhook`). Cela doit être un endpoint HTTPS.
* **Méthode HTTP** :

Sélectionnez la méthode http utilisée pour envoyer la requête webhook à votre endpoint.
Options disponibles :

* **POST** — Recommandé pour la plupart des cas d'utilisation (crée une nouvelle ressource ou envoie des données)
* **PUT** — Remplace totalement une ressource existante
* **PATCH** — Met à jour partiellement une ressource existante

Choisissez la méthode qui correspond à la manière dont votre API attend de recevoir les données.

* **Type d'Authentification** : Choisissez la méthode d'authentification utilisée par votre endpoint.

| Option | Description |
| ---- |
| Aucun | Aucun en-tête d'authentification n'est envoyé |
| clé api (X-API-KEY) | Envoie la clé dans un en-tête `X-API-KEY` |
| Bearer Token | Envoie la clé comme `Authorization: Bearer <token>` |
| Authentification Basique | Envoie un en-tête `Authorization: Basic` construit à partir de votre Identifiant et Mot de Passe |
| En-tête Personnalisé | Vous permet de définir le nom de votre propre en-tête (ex: `X-Custom-Auth`) |

* Lorsque **Authentification Basique** est sélectionnée, deux champs apparaissent : **Identifiant** (nom d'utilisateur) et **Mot de Passe**. Entrez-les tels quels — Drimify construit automatiquement l'en-tête `Authorization: Basic` pour vous. Vous n'avez pas besoin d'encoder quoi que ce soit vous-même.
* Lorsque **En-tête Personnalisé** est sélectionné, un champ supplémentaire **Nom de l'En-tête Personnalisé** apparaît où vous pouvez entrer le nom de la clé de l'en-tête.
* **Clé API** : La valeur secrète envoyée en utilisant la méthode d'authentification sélectionnée.
* **Vérifier la Connexion** : Cliquez sur ce bouton pour tester si Drimify peut atteindre avec succès votre endpoint en utilisant les informations d'identification fournies avant de sauvegarder.

## Récupérer le token d'un endpoint d'auth (avant appel)

Certaines APIs nécessitent que vous vous authentifiiez d'abord : vous appelez un endpoint d'auth avec vos informations d'identification, recevez un token, et utilisez ce token pour l'appel webhook réel. Drimify supporte cela automatiquement.

Lorsque le type d'Authentification est **Clé API**, **Bearer Token**, ou **En-tête Personnalisé**, une case à cocher **"Récupérer ce token à partir d'un endpoint d'auth"** apparaît. Lorsque activée, le champ de connexion statique est remplacé par les paramètres avant appel ci-dessous (pour l'En-tête Personnalisé, le champ de nom d'en-tête reste visible — le token récupéré est envoyé dans cet en-tête).

Le token récupéré est placé selon votre type d'Authentification :

* Bearer Token → `Authorization: Bearer <token>`
* clé api → `X-API-KEY: <token>`
* En-tête Personnalisé → `<votre nom d'en-tête>: <token>`### Choisissez une des trois méthodes

**OAuth2 (client_credentials)** — pour les serveurs OAuth2 standard (par exemple, Keycloak).

* Champs : **Token URL**, **Client ID**, **Client Secret**, **Scope** (facultatif)
* Drimify envoie une requête client_credentials OAuth2 standard et récupère le jeton de `access_token`. La durée de vie du jeton est déterminée par le `expires_in` du serveur.

**Login JSON** — pour les points d'accès de connexion qui acceptent un corps JSON et retournent un jeton.

* Champs : **Auth URL**, **Corps** (liste clé/valeur), **Chemin du jeton**
* Drimify envoie un `POST` avec un corps JSON construit à partir de vos lignes clé/valeur (par exemple, les lignes `email = a@b.com` et `password = secret` produisent `{"email":"a@b.com","password":"secret"}`).
* **Chemin du jeton** indique à Drimify où se trouve le jeton dans la réponse JSON, en utilisant la notation par points — par exemple, `data.access_token`, ou simplement `token` s'il est au niveau supérieur.

**Personnalisé** — pour tout ce qui ne correspond pas aux deux méthodes ci-dessus.

* Champs : **Auth URL**, **Méthode HTTP** (`POST` ou `GET`), **En-têtes** (liste clé/valeur), **Corps** (liste clé/valeur), **Encodage du corps** (JSON ou form-urlencoded), **Chemin du jeton**
* Avec la méthode `GET`, il n'y a pas de corps de requête — passez les paramètres via les En-têtes ou l'Auth URL.
* Si vous ajoutez vous-même un en-tête `Content-Type`, il prend le pas sur celui impliqué par l'encodage du corps.

### Listes clé/valeur (Corps et En-têtes)

Chaque ligne a une **clé**, une **valeur**, et une case à cocher **"sensible"** (coche par défaut). Les lignes peuvent être ajoutées et supprimées, mais pas modifiées sur place — pour changer une ligne, supprimez-la et ajoutez-la à nouveau. Le drapeau sensible ne peut être défini qu'en ajoutant une ligne. Les valeurs sensibles sont masquées après enregistrement et ne sont jamais réexposées, ni dans le formulaire ni dans les journaux.

### Mise en cache et réessais des jetons

* Les jetons OAuth2 sont mis en cache pour la durée indiquée par `expires_in`.
* Pour Login JSON et Personnalisé, définissez la **Validité du jeton (minutes)** — par défaut, c'est **60 minutes** si laissé vide.
* Les jetons mis en cache sont conservés pour un maximum de 7 jours.
* Si votre point de terminaison retourne **401** alors qu'un jeton mis en cache est utilisé, Drimify jette le jeton, se ré-authentifie, et retente l'appel une fois.
* Si l'appel préalable échoue (erreur, timeout, ou aucun jeton trouvé au chemin du jeton), le webhook **ne** sera **pas** envoyé sans authentification — la livraison échoue, est enregistrée, et est réessayée par la file d'attente de livraison comme d'habitude.

### Vérification de la Connexion avec un appel préalable

Le bouton **Vérifier la Connexion** prend entièrement en charge l'appel préalable : il s'authentifie d'abord contre votre point d'accès auth, puis exécute l'appel de test avec le jeton récupéré.

# Intégration HubSpot

Après avoir sélectionné **HubSpot**, le panneau affiche :
* **Nom de l'Intégration** : Par Défaut : "Intégration HubSpot".
* **Clé de l'API / Jeton d'Accès** : Collez ici votre Jeton D’accès d'Application Privée HubSpot. HubSpot a supprimé les clés API héritées en 2022, donc vous devez utiliser un jeton d'application privée généré de votre compte HubSpot sous : **Paramètres → Intégrations → Applications Privées**
* **Vérifier la Connexion** : Teste le jeton contre l'API HubSpot avant de l'enregistrer.

# Intégration Salesforce

Après avoir sélectionné **Salesforce**, le panneau affiche :

* **Nom de l'Intégration** : Par Défaut : "Intégration Salesforce".
* **Domaine Salesforce** : L'URL de votre instance Salesforce (par exemple : `yourcompany.my.salesforce.com`).
* **Clé du Consommateur et Secret du Consommateur** : Obtenus à partir d'une Application Connectée configurée dans Salesforce sous : **Configuration → Gestionnaire d'Applications → Nouvelle Application Connectée** Drimify utilise le flux OAuth 2.0 Client Credentials.
* **Nom du champ ID Externe** : Le nom de l'API du champ utilisé pour faire correspondre (mise à jour ou insertion) les enregistrements — généralement quelque chose comme&#32;`Email_External_Id__c`&#32;ou un champ externe personnalisé sur l'objet Contact ou Lead. Ce champ doit être marqué comme un **ID Externe** dans Salesforce.
* **Source de l'ID Externe** : Un menu déroulant vous permettant de sélectionner quel champ de données Drimify doit être utilisé comme clé de correspondance (par exemple : Email).
* **Vérifier la Connexion :** Teste la connexion OAuth Salesforce avant de l'enregistrer.## ⚠️ Champs obligatoires de Salesforce Fields

Salesforce impose des champs de niveau objet requises. Si vous effectuez des upserts de Prospects, Salesforce demande au minimum :

* `lastName` — requis pour la création d'un Lead

Si vous effectuez des upserts de Contacts, Salesforce demande :

* `lastName` — requis pour la création d'un Contact

Bien que l'Email ne soit pas requis selon le schéma par défaut de Salesforce, il est presque toujours essentiel comme identifiant externe pour correspondre correctement et dédupliquer les enregistrements lors des upserts. Sans une correspondance fiable d'identifiant externe, Salesforce peut créer des enregistrements en double ou retourner une erreur.

### Bonne pratique
Toujours mapper au moins :

* Nom
* Email

lors de la connexion à Salesforce. Omettre le Nom entraînera l'échec du webhook et l'enregistrement ne sera pas créé ou mis à jour.

# Mapping des Champs

Disponible pour les trois types d'intégration, **Map Fields** vous permet de spécifier exactement quels champs de données Drimify sont envoyés à votre intégration, et sous quels noms de clé.
Cliquez sur **+ Ajouter Field** pour ajouter une ligne de mapping.

Chaque ligne se compose de :

* **Champ Webhook (à gauche)** — le nom de clé qui apparaîtra dans la charge utile sortante (défini par vous pour correspondre aux exigences de votre intégration)
* **→ Champ source (menu déroulant à droite)** — la valeur source pour ce champ. Vous pouvez soit :
  * Sélectionner un **champ de données Drimify** (ex. Référence De L’app, Email, Score) pour envoyer une valeur dynamique collectée auprès du participant
  * Sélectionner **Valeur statique** pour envoyer une valeur fixe, codée en dur, à chaque fois que le webhook est déclenché — un champ de saisie de texte supplémentaire apparaîtra où vous saisirez la valeur (ex. `My_Value`). Utile pour passer des constantes comme un nom d'événement, un identifiant source, ou une étiquette d'environnement.

## Champs Source Drimify Disponibles

| Nom d'affichage | Clé du champ |
| ---- |
| Adresse Postale | `address` |
| app id | `appId` |
| Référence De L’app | `appReference` |
| Code | `code` |
| Nom De Société | `companyName` |
| Pays De Connexion | `connectionCountry` |
| Pays | `country` |
| Code Du Pays | `countryCode` |
| Case À Cocher Personnalisée | `customCheckbox` |
| Format Personnalisé | `customFormat` |
| Champ De Texte Personnalisé | `customText` |
| Date | `date` |
| date de naissance | `dob` |
| Date Avec Fuseau Horaire | `dateWithTimezone` |
| Email | `email` |
| Prénom | `firstName` |
| Civilité | `gender` |
| ID | `id` |
| Idunic | `idunic` |
| adresse ip | `ipAddress` |
| Nom | `lastName` |
| Levels Joué | `levelsPlayed` |
| Localisation | `locale` |
| Newsletter Opt-In | `optinNewsletter` |
| Numéro De Téléphone | `phoneNumber` |
| Joué | `played` |
| Code Postal | `cp` |
| Profil | `profil` |
| Profil UID | `profilUid` |
| Réf. Du Lot | `prizeRef` |
| Nom Du Gain | `prizeTitle` |
| identifiant unique du gain (uid) | `prizeUid` |
| Référence | `referral` |
| Score | `score` |
| Sélectionner Une Valeur | `selectValue` |
| Sélectionner La Valeur 2 | `selectValue2` |
| id de session | `sessionId` |
| Temps Passé | `timeTaken` |
| Ville | `town` |
| Date De Mise À Jour | `updatedAt` |
| Date De Mise À Jour Timestamp | `updatedAtTimeStamp` |
| Nom D'utilisateur | `username` |
| Adresse Site Internet Adresse Postale | `website` |

Vous pouvez ajouter autant de mappings que nécessaire.
Pour supprimer un mapping, cliquez sur l'icône de la corbeille à droite de la ligne.

# Disponible Dans les Espaces de Travail

En bas du formulaire d'intégration, la section **Disponible dans les Espaces de Travail** vous permet d'utiliser le commutateur à côté de chaque espace de travail pour contrôler quel espace de travail peut utiliser l'intégration.
Cliquez sur **Sélectionner Tout** pour activer l'intégration pour tous les espaces de travail en une fois.

# Sauvegarder et Gérer les Intégrations

Une fois tous les champs remplis, cliquez sur **Sauvegarder les modifications** pour créer l'intégration. L'intégration apparaîtra ensuite dans la liste principale des Intégrations. Vous pouvez modifier ou supprimer les intégrations existantes de cette liste à tout moment. Cliquez sur **Annuler** pour annuler les modifications non enregistrées.

---

# Intégrations de Messagerie

Les intégrations de messagerie vous permettent d'envoyer des emails transactionnels (ex. confirmations, résultats, ou suivis) directement depuis vos expériences Drimify en utilisant votre fournisseur d'email préféré.### Ajouter une Intégration Messagerie

1. Rendez-vous dans **Intégrations → Intégrations Messagerie**
2. Cliquez sur **Ajouter une Intégration Messagerie**
3. Choisissez votre fournisseur :
* Amazon SES
* Brevo
* Drimify
* Mailgun
* Mailjet
* Mandrill
* SendGrid
* Tipimail
* SMTP Personnalisé

### Configurer votre Intégration Messagerie

#### Paramètres Généraux

Tous les fournisseurs partagent les paramètres généraux suivants :

* **Nom de l'Intégration** – Nom interne pour identifier votre intégration
* **Nom de l'Expéditeur** – Nom affiché comme expéditeur de l'email
* **Email de l'Expéditeur** – Adresse e-mail utilisée pour envoyer des emails (non applicable pour Drimify — voir ci-dessous)
* **Email en CCI** *(optionnel)* – Ajouter une adresse e-mail pour recevoir une copie de tous les emails envoyés

#### Authentification

Chaque fournisseur nécessite des identifiants spécifiques. Consultez la section d'installation spécifique au fournisseur ci-dessous pour plus de détails.

#### Test de Votre Connexion

Après avoir saisi vos identifiants, cliquez sur **Envoyer un Email de Test** pour vérifier que votre intégration fonctionne correctement. Un message de confirmation "Email de test envoyé avec succès" apparaîtra si la connexion est valide.

||| ⚠️ L'intégration doit réussir le test de connexion avant de pouvoir être utilisée. Si le test est ignoré ou échoue, la messagerie ne sera pas disponible pour vos expériences.

#### Champs de Paramètres du Modèle

Associez les champs de données Drimify aux variables de modèle de votre fournisseur d'email. Cette section est disponible pour les fournisseurs qui prennent en charge les modèles d'emails dynamiques : **Brevo, Mailgun, Mailjet, Mandrill, SendGrid et Tipimail**.

* **Nom du paramètre** – Le nom de la variable attendue dans votre modèle d'email
* **Champ** – Les données correspondantes de Drimify (ex : Prénom, Email, Score, etc.)

Cliquez sur **Ajouter un Champ** pour créer des correspondances supplémentaires.

| 💡 Cela vous permet de personnaliser les emails de manière dynamique en utilisant les données des joueurs collectées dans votre expérience.

#### Disponible dans les Espaces de Travail
Sélectionnez quel espace de travail peut utiliser cette intégration messagerie.### Configuration Spécifique au Fournisseur

#### Amazon SES

Ce dont vous avez besoin :

* Un utilisateur AWS IAM avec les permissions `ses:SendEmail`
* Une Clé d'Accès API et une Clé Privée API (obtenues via AWS IAM)
* Votre région AWS (par exemple, `eu-west-1`, `us-east-1`)
* Un Token de Session *(uniquement si vous utilisez des identifiants temporaires/STS)*
* Un e-mail expéditeur ou un domaine vérifié dans Amazon SES

Étapes :

1. Dans AWS IAM, créez un utilisateur avec les permissions d'envoi pour SES et générez une paire de clés d'accès
2. Dans Drimify, entrez votre **Clé d'Accès API**, **Clé Privée API**, et **Région**
3. Si vous utilisez des identifiants temporaires, entrez également le **Token de Session**
4. Assurez-vous que votre e-mail expéditeur ou domaine est vérifié dans Amazon SES
5. Cliquez sur **Envoyer un Email Test** pour valider la connexion
6. Sauvegardez votre intégration

#### Brevo

Ce dont vous avez besoin :

* Une clé API Brevo

Étapes :

1. Dans votre compte Brevo, générez une clé API dans **Paramètres → Clés API**
2. Collez-la dans le champ **Clé API** de Drimify
3. Cliquez sur **Envoyer un Email Test** pour valider la connexion
4. Sauvegardez votre intégration

#### Drimify

Aucune authentification requise. Les emails sont envoyés par l'infrastructure interne de Drimify ([notification@digitaservice.com](mailto:notification@digitaservice.com)).
Ce dont vous avez besoin :

* Un nom d'expéditeur
* Une adresse e-mail de réponse (par exemple, [contact@yourcompany.com](mailto:contact@yourcompany.com))
* Facultativement, une adresse e-mail en copie cachée (BCC)

Étapes :

1. Sélectionnez **Drimify** comme fournisseur
2. Entrez votre **Nom d'Expéditeur** et **Email de Réponse à**
3. Ajoutez éventuellement un **Email BCC**
4. Sélectionnez l'espace de travail qui doit utiliser cette intégration et sauvegardez

| 💡 Utilisez cette option si vous n'avez pas de fournisseur email tiers ou si vous souhaitez commencer rapidement sans configuration externe.

#### Mailgun

Ce dont vous avez besoin :

* Une clé API Mailgun
* Votre domaine d'envoi enregistré dans Mailgun
* Votre région API (US ou EU)

Étapes :

1. Dans votre compte Mailgun, récupérez votre clé API et votre domaine d'envoi
2. Dans Drimify, entrez votre **Clé API**, **Domaine API**, et **Région API**
3. Cliquez sur **Envoyer un Email Test** pour valider la connexion
4. Sauvegardez votre intégration

#### Mailjet

Ce dont vous avez besoin :

* Une Clé d'Accès API Mailjet et une Clé Privée API

Étapes :

1. Dans votre compte Mailjet, allez à **Paramètres du Compte → REST API → Gestion des Clés API**
2. Copiez votre **Clé d'Accès API** et **Clé Privée API**
3. Entrez-les dans Drimify
4. Cliquez sur **Envoyer un Email Test** pour valider la connexion
5. Sauvegardez votre intégration

#### Mandrill

Ce dont vous avez besoin :

* Une clé API Mandrill *(Mandrill est un module d'email transactionnel de Mailchimp)*

Étapes :

1. Dans votre compte Mandrill, allez à **Paramètres → Clés API** et générez une clé
2. Collez la **Clé API** dans Drimify
3. Cliquez sur **Envoyer un Email Test** pour valider la connexion
4. Sauvegardez votre intégration

#### SendGrid

Ce dont vous avez besoin :

* Une clé API SendGrid avec les permissions d'envoi de mail

Étapes :

1. Dans votre compte SendGrid, allez à **Paramètres → Clés API** et créez une clé avec les permissions **Mail Send**
2. Collez la **Clé API** dans Drimify
3. Cliquez sur **Envoyer un Email Test** pour valider la connexion
4. Sauvegardez votre intégration

#### Tipimail

Ce dont vous avez besoin :

* Un utilisateur API Tipimail et une clé API *(Tipimail est le service d'email transactionnel de Sarbacane)*

Étapes :

1. Dans votre compte Tipimail, allez à **Paramètres → SMTP & APIs** et récupérez votre **Utilisateur API** et **Clé API**
2. Entrez-les dans Drimify
3. Cliquez sur **Envoyer un Email Test** pour valider la connexion
4. Sauvegardez votre intégration

| 💡 Tipimail supporte les modèles d'email dynamiques : référencez votre modèle par son nom et utilisez la section Champs De Paramètres Du Modèle pour mapper les données Drimify aux variables de votre modèle.

#### SMTP Personnalisé

Ce dont vous avez besoin :

* Nom d'hôte de votre serveur SMTP
* Port SMTP (généralement `587` pour TLS, `465` pour SSL)
* Identifiant SMTP (généralement votre adresse email)
* Mot de passe SMTP

Étapes :

1. Récupérez vos identifiants SMTP de votre fournisseur d'hébergement d'email ou de votre configuration de serveur
2. Dans Drimify, entrez votre **Host**, **Port**, **Login**, et **Mot de Passe**
3. Cliquez sur **Envoyer un Email Test** pour valider la connexion
4. Sauvegardez votre intégration