Le suivi des clics Pipedrive dans Elido transforme les jalons des short links en événements de pipeline. Quand l'un de vos links dépasse 100, 1 000 ou 10 000 clics, un cron de 5 minutes crée un deal dans la pipeline et le stage Pipedrive que vous avez choisis, avec le slug du link, la source UTM et un lien direct vers Elido dans les notes du deal. Pas de Zapier entre les deux, pas d'export manuel, pas de rappel dans le calendrier pour vérifier les rapports de links.
Voila pour le titre. La mécanique importe davantage, alors cet article passe en revue les trois points que les équipes sales ops doivent maîtriser avant d'activer cette fonctionnalité. Premièrement, comment le flux Connect fonctionne concrètement : où vit le token API personnel, ce que lit le sélecteur de pipeline, et comment le token est stocké après le collage. Deuxièmement, ce que fait le cron de seuil à chaque exécution et comment il évite de créer des deals en double quand un link devient viral du jour au lendemain. Troisièmement, comment étendre l'intégration au-delà des trois seuils par défaut - vers des nombres de clics personnalisés, des triggers filtrés par UTM et des champs Pipedrive personnalisés - en utilisant le SDK Elido et un petit handler de webhook.
Pipedrive est passé en Live pour Elido le 22 mai 2026. Avant cela, il est resté deux semaines en Beta pendant que nous réglions les cas limites autour des IDs de stage et de la rotation des tokens. Le code de l'intégration se trouve dans services/api-core/internal/integrations/pipedrive/ si vous hébergez vous-même et souhaitez lire les sources. Tout dans cet article correspond à ce qui est en production, pas à une roadmap.
Connecter Pipedrive en deux minutes
Ouvrez le catalogue d'intégrations dans votre workspace Elido et cliquez sur la carte Pipedrive. La modal de connexion demande d'abord une seule chose : un token API personnel. Vous l'obtenez depuis votre compte Pipedrive en ouvrant le menu de profil, en choisissant Préférences personnelles, puis l'onglet API. Le guide officiel de Pipedrive sur how to find the Personal API token montre le chemin exact avec des captures d'écran, car leur interface change environ chaque trimestre.
Collez le token. Elido fait deux choses en arrière-plan. Il valide le token en appelant GET /users/me contre l'API Pipedrive, ce qui confirme que le token est actif et nous indique à quelle entreprise Pipedrive il appartient. Il récupère aussi la liste des pipelines et stages de cette entreprise, de sorte que l'étape suivante dans la modal affiche des options réelles et non des champs de texte libre.
La modal pose ensuite deux questions supplémentaires. Dans quelle pipeline les nouveaux deals doivent-ils atterrir ? Dans quel stage de cette pipeline ? Les menus déroulants sont alimentés par vos données Pipedrive en temps réel. Si vous avez trois pipelines nommées Inbound, Outbound et Partners, vous voyez ces trois-là. Choisissez celle qui convient au travail - généralement Inbound pour les signaux marketing - puis le premier stage de qualification. Cliquez sur Connecter.
Ce qui arrive au token après la connexion. Elido le chiffre avant qu'il ne touche Postgres, en utilisant un chiffrement d'enveloppe avec une clé de chiffrement de données par tenant enveloppée par une clé KMS de workspace. Le blob chiffré est ce qui réside dans la table integration_credentials. Le token en clair n'existe en mémoire que le temps d'un unique appel API, et nous ne le journalisons jamais, même en verbosité debug. Si vous faites tourner le token dans Pipedrive, la prochaine exécution du cron reçoit un 401 et Elido marque l'intégration comme nécessitant une réauthentification, ce qui s'affiche comme une bannière dans le workspace, pas comme un échec silencieux. L'hygiène de rotation vous incombe ; la panne est bruyante.
Le sélecteur de pipeline est un détail petit mais important. Un mode de défaillance courant dans les intégrations CRM est la création de deals dans la mauvaise pipeline parce que l'intégration a été construite quand l'entreprise avait une seule pipeline et en a maintenant six. Laisser l'utilisateur choisir lors de la connexion, et afficher la liste actuelle plutôt qu'un cache vieux d'un mois, élimine toute cette classe d'erreurs. Vous pouvez aussi vous reconnecter à tout moment pour changer la cible du sélecteur sans perdre l'historique des seuils.
Ce que fait réellement le cron de 5 minutes
Dans services/api-core il y a un job appelé click_threshold_hook. Il s'exécute toutes les cinq minutes. À chaque tick, il fait trois choses dans l'ordre, par workspace ayant Pipedrive connecté.
Premièrement, il demande à ClickHouse les totaux de clics par link mis à jour au cours des six dernières minutes, plus un buffer d'une minute pour couvrir les événements tardifs. ClickHouse stocke les événements de clic dans une table clicks partitionnée par date, et le rollup interrogé est une vue matérialisée indexée par ID de short link. La requête retourne les links dont les totaux ont changé depuis la dernière exécution du cron, pas la table entière. Sur un workspace avec 50 000 links actifs et un pattern de clics normal, cette requête reste sous 200 ms.
Deuxièmement, il compare le nouveau total de chaque link aux seuils enregistrés. Les seuils par défaut sont 100, 1 000 et 10 000. Pour chaque link, Elido suit le seuil le plus élevé jamais atteint dans une petite ligne link_threshold_state indexée par ID de link. Si un link était à 80 clics lors de la dernière exécution et est maintenant à 240, la comparaison montre que le seuil de 100 a été franchi et que celui de 1 000 n'a pas encore été atteint. Nous marquons 100 comme atteint et mettons en file d'attente une création de deal. Si un link a sauté de 80 à 1 200, 100 et 1 000 ont tous deux été franchis, nous mettons deux créations en file d'attente.
Troisièmement, pour chaque deal en file d'attente, Elido appelle l'API Deals de Pipedrive avec un POST vers /deals. Le corps définit l'ID de pipeline et l'ID de stage depuis le sélecteur de connexion, nomme le deal de façon lisible comme Link <slug> a atteint <seuil> clics, et écrit la source UTM, le medium et la campagne dans la note du deal ainsi qu'un lien cliquable vers la vue analytics Elido pour ce link. Nous stockons aussi l'ID du link dans un champ personnalisé Pipedrive si le workspace en a un configuré, ce qui permet de requêter Pipedrive ultérieurement pour tous les deals liés à un link Elido spécifique.
Quelques choses que ce cron ne fait pas. Il ne retraite pas indéfiniment les erreurs 5xx de Pipedrive. Si Pipedrive retourne 500 ou 503, nous retraçons deux fois avec backoff exponentiel dans le même tick du cron, puis laissons le travail pour le prochain tick. Le rate limit de Pipedrive est en pratique de 100 requêtes par 2 secondes par token d'entreprise, ce qui laisse une large marge pour les volumes que la plupart des équipes atteindront. Nous ne créons pas non plus de deals pour les links marqués comme test, internes, ou appartenant à un membre du workspace qui a désactivé la synchronisation CRM dans ses paramètres personnels.
La prévention des doublons est la partie qui a demandé le plus d'itérations. La première version avait une race condition : si deux pods cron tournaient en simultané, les deux pouvaient voir le même link dépasser 100 et les deux pouvaient poster un deal. Nous l'avons résolu avec un advisory lock Postgres sur l'ID de workspace au début de chaque tick du cron, plus une contrainte unique sur (link_id, threshold) dans link_threshold_state. Si le second pod tente d'insérer une ligne en double, Postgres le refuse, et le POST en file d'attente est abandonné avant d'atteindre Pipedrive. Double protection.
Aller au-delà des trois seuils par défaut
Les seuils livrés sont 100, 1 000 et 10 000. La plupart des équipes les gardent parce qu'ils s'inscrivent naturellement dans un récit de vente. Cent clics sont un signal faible qui vaut un coup d'oeil. Mille, c'est une campagne qui mérite un appel. Dix mille, c'est assez chaud pour qu'un commercial soit déjà en train d'agir. Cela dit, vous voulez peut-être des chiffres différents, et le SDK le supporte.
L'intégration Pipedrive d'Elido accepte une liste de seuils personnalisée au niveau du workspace. Vous la définissez via l'endpoint PATCH /v1/workspaces/:id/integrations/pipedrive avec un corps JSON comme {"thresholds": [50, 500, 5000, 50000]}. Le cron prend la nouvelle liste au prochain tick. La table d'état conserve l'historique, donc modifier les seuils ne crée pas de deals de manière rétroactive, cela change seulement quels franchissements futurs déclenchent un événement.
Pour des triggers plus riches, le SDK expose un hook CreateDeal que vous pouvez enregistrer depuis n'importe quel service. Le cas classique : créer un deal seulement quand un link franchit un seuil ET que la source UTM est votre campagne social payante, pas votre blog organique. C'est un filtre d'une ligne dans le hook. Un autre cas courant : déclencher uniquement sur des links dans un dossier Elido spécifique, parce que ce dossier est votre dossier de campagne et que tout le reste est du bruit. Le même hook peut aussi définir des champs personnalisés Pipedrive comme Source du Deal, Canal Lead, ou la taxonomie qu'utilise votre équipe sales ops. Le guide de transfert des conversions couvre le même pattern de hook pour les plateformes publicitaires ; le cas Pipedrive est structurellement identique.
Une note sur les champs personnalisés. Le SDK accepte soit le libellé lisible soit la clé API hachée qu'utilise Pipedrive en interne. Si vous référencez un libellé qui n'existe pas dans l'entreprise connectée, le deal est quand même créé et le champ manquant est journalisé comme avertissement, jamais comme erreur. Un champ personnalisé manquant ne doit pas bloquer un vrai signal commercial.
Les équipes avec beaucoup de links par campagne souhaitent parfois agréger les seuils sur un dossier. Définissez aggregation: "folder" dans la configuration de l'intégration du workspace et le cron regroupe les totaux de clics par dossier, puis vérifie la somme. Le deal nomme le dossier et liste les trois links les plus contributeurs dans les notes.
Où vit le token et comment le faire tourner
Une courte section parce qu'elle revient dans chaque revue de sécurité. Le token API personnel est chiffré au repos en utilisant AES-256-GCM avec une clé de chiffrement de données par tenant. La DEK est elle-même enveloppée par une clé de niveau workspace dans notre KMS, et seul le processus api-core peut la déchiffrer. Il n'y a aucun token en clair dans aucun log, aucune sauvegarde ni aucune trace d'erreur. Nous l'avons testé avec une injection de faute qui a forcé un 401 Pipedrive en plein milieu d'une requête, et le chemin d'erreur nettoie le token de la réponse avant qu'elle n'atteigne Sentry.
Pour faire tourner le token : générez un nouveau token API personnel dans Pipedrive, révoquez l'ancien, puis collez le nouveau dans la modal de connexion Elido. L'intégration valide le nouveau token, le remplace, et le prochain tick du cron l'utilise. Si vous oubliez de mettre à jour Elido après avoir révoqué l'ancien token, le prochain tick du cron reçoit un 401 et l'intégration passe en état Nécessite une réauthentification, visible comme une bannière jaune sur le tableau de bord du workspace. Pas de tokens morts silencieux.
En self-host, le KMS est configurable : basé sur des fichiers par défaut, vous pouvez le remplacer par HashiCorp Vault ou votre KMS cloud. ADR-0036 couvre la forme longue.
Où cela s'inscrit dans un funnel plus large
Les triggers de deals Pipedrive depuis les clics sont une pièce d'un pattern plus large. Les nombres de clics sont un indicateur avancé, pas un chiffre de revenus, donc vous voulez généralement qu'ils alimentent un CRM où vit le reste du contexte commercial. Le deal est le transfert : le marketing a fait son travail, les ventes le prennent en main. De là, vos workflows Pipedrive habituels prennent le relais : assigner le deal à un commercial, le scorer, le faire progresser dans les stages, le clore.
Si vous renvoyez aussi des conversions vers des plateformes publicitaires, les mêmes données de clics alimentent les deux flux. La fonctionnalité de suivi des conversions gère le côté publicité, l'intégration Pipedrive gère le côté CRM, et les deux ne se disputent jamais le même événement. Nous voyons cette combinaison le plus souvent sur la page de solutions pour les marketers, où toute la stack va de l'acquisition payante via des links de marque vers un funnel CRM.
Pour les analystes qui veulent garder leurs chiffres honnêtes, deux articles précédents couvrent les préoccupations en amont. Short link analytics: what to measure couvre quelles métriques de clics corrèlent vraiment avec les revenus, et Track UTM end to end couvre l'hygiène UTM qui rend les notes de deals utiles plutôt que bruyantes. Les deux s'accordent bien avec cette intégration, puisque le deal que crée Pipedrive n'est utile qu'à hauteur des données UTM qu'il porte.
Un dernier détail sur les plans. L'intégration Pipedrive est sur tous les niveaux Elido payants, et l'essai de 14 jours l'inclut pour que vous puissiez valider votre liste de seuils avant de vous abonner. Les workspaces gratuits peuvent créer la connexion pour tester, mais le cron ne se déclenche pas pour les links gratuits. La page de tarification présente la décomposition par niveau.
Liste de contrôle de configuration
Imprimez-la, faites-le une fois.
- Dans Pipedrive : menu de profil, Préférences personnelles, onglet API, copier le token.
- Dans Elido : Intégrations, carte Pipedrive, Connecter.
- Coller le token. Attendre la validation.
- Choisir la pipeline et le stage. Par défaut : Inbound et le premier stage de qualification.
- Cliquer sur Connecter.
- Optionnel : modifier la liste de seuils si 100/1k/10k ne correspond pas à votre cycle de vente.
- Optionnel : enregistrer un hook CreateDeal personnalisé pour les filtres UTM ou les agrégations de dossiers.
- Attendre cinq minutes. Envoyer quelques clics de test. Observer l'arrivée du premier deal.
C'est tout. Si vous hébergez vous-même, vous devez aussi vérifier que le cron est activé en contrôlant que kubectl get cronjob api-core-click-threshold-hook retourne un planning actif. Sur Elido Cloud, le cron est géré pour vous.
Questions fréquentes
Comment fonctionne le suivi des clics Pipedrive dans Elido ?
Elido surveille le nombre de clics par short link dans ClickHouse, et un cron de 5 minutes vérifie pour chaque workspace connecté quels links viennent de dépasser 100, 1 000 ou 10 000 clics. Quand un seuil est franchi, Elido appelle l'API Deals de Pipedrive et crée un deal dans la pipeline et le stage que vous avez choisis lors de la connexion. Le titre du deal inclut le slug du link et la source UTM, pour que le commercial dispose du contexte sans avoir à ouvrir Elido.
Ai-je besoin d'un plan Pipedrive payant pour utiliser l'intégration ?
Tout plan Pipedrive permettant de générer un token API personnel fonctionne, ce qui inclut aujourd'hui tous les niveaux Pipedrive à partir d'Essential. L'intégration n'utilise que l'API Deals publique, donc vous n'avez pas besoin d'Advanced ni d'un niveau supérieur pour la connexion elle-même. Certaines actions en aval comme les champs personnalisés sont aussi disponibles sur les niveaux inférieurs, mais les limites de champs par niveau s'appliquent toujours côté Pipedrive.
Pourquoi l'intégration Pipedrive utilise-t-elle le collage de token plutôt qu'OAuth ?
Pipedrive prend en charge OAuth pour les apps de marketplace, mais les intégrations de workspaces privés reposent encore sur un token API personnel, qui est plus rapide à mettre en place et plus simple à faire tourner. Le token est chiffré au repos avec un chiffrement d'enveloppe dans Elido, n'est jamais journalisé, et vous pouvez le révoquer depuis votre profil Pipedrive en deux clics. Nous migrerons l'intégration vers OAuth quand Pipedrive l'ouvrira aux tenants hors marketplace.
Puis-je modifier les seuils qui créent des deals ?
Les valeurs par défaut sont 100, 1 000 et 10 000 clics, ce qui correspond à ce que la plupart des équipes commerciales considèrent comme des signaux faibles, intermédiaires et forts. Vous pouvez les remplacer par workspace via l'API, et ajouter des seuils personnalisés via le trigger SDK CreateDeal pour des cas comme une campagne UTM spécifique ou un link de haute valeur unique. L'interface pour modifier les seuils se trouve sur la page de l'intégration.
Que se passe-t-il si un nombre de clics franchit deux seuils en cinq minutes ?
Le cron se déclenche une fois par seuil par link, donc un link qui évolue rapidement de 80 à 1 200 clics entre deux exécutions crée deux deals successifs : un pour le jalon de 100, un pour celui de 1 000. Nous suivons le seuil le plus haut jamais atteint par link dans une petite table pour éviter les doublons si le cron retraite. Il y a un plafond souple de 5 deals par link par jour pour qu'une redirection incontrôlée n'inonde pas votre pipeline.
Essayer Elido
Collez une URL, obtenez un lien court
Sans inscription. Lien actif 30 jours. Inscrivez-vous pour le garder pour toujours.
Gratuit, sans inscription · 2 par jour