Quatre intégrations API LeadGrid que ton équipe utilisera vraiment
LeadGrid expose chaque action du pipeline comme un endpoint REST. Quatre intégrations que les équipes construisent en une après-midi, avec de vrais exemples de code.

LeadGrid est conçu API-first. Chaque action que tu peux faire dans l'interface, créer un dossier, déplacer un lead dans une étape, ajouter une note, assigner un propriétaire, est un appel REST documenté. C'est un choix de conception, pas une fonctionnalité secondaire.
Selon le Postman 2025 State of the API Report, 82% des organisations ont adopté une approche API-first. Les équipes qui construisent sur leur outil de pipeline plutôt qu'autour de lui arrêtent de faire la même tâche manuelle deux fois par semaine.
Voici quatre intégrations que les équipes construisent vraiment, avec le code pour le prouver.
1. La soumission d'un formulaire web crée automatiquement un dossier
C'est la plus courante. Tu as un formulaire de contact, une landing page ou un lien de recommandation partenaire. Quelqu'un le remplit. En ce moment, quelqu'un dans ton équipe copie manuellement ces données dans LeadGrid. C'est la première chose à éliminer.
L'API LeadGrid te permet d'appeler POST /dossiers pour créer un nouveau dossier dans n'importe quel pipeline. Un simple récepteur de webhook en Node s'occupe du reste :
// Déclenché par ton fournisseur de formulaires (Typeform, Tally, formulaire natif, peu importe)
app.post('/webhook/new-lead', async (req, res) => {
const { name, email, company } = req.body;
await fetch('https://api.leadgrid.io/v1/dossiers', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.LEADGRID_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
pipelineId: 'your-pipeline-id',
title: `${name} - ${company}`,
fields: { email, company },
}),
});
res.sendStatus(200);
});Nouveau lead entré. Pas de copier-coller. Personne n'oublie.
2. Le changement d'étape envoie une notification Slack
Les managers commerciaux regardent LeadGrid. Le reste de l'équipe regarde Slack. Si un deal passe en "Négociation" ou qu'un candidat(e) atteint l'"Entretien final", ton canal Slack devrait le savoir avant que quiconque ait à demander.
Les webhooks LeadGrid te permettent de t'abonner aux événements dossier.stage_changed. Quand ça se déclenche, tu transmets vers ton webhook Slack entrant :
app.post('/webhook/leadgrid-events', async (req, res) => {
const { event, data } = req.body;
if (event === 'dossier.stage_changed') {
const { title, stage, pipelineId } = data;
await fetch(process.env.SLACK_WEBHOOK_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
text: `Mise à jour pipeline : *${title}* est passé à *${stage}*`,
}),
});
}
res.sendStatus(200);
});Trente lignes. Ton équipe arrête de demander : "où en est ce deal ?"
3. Un deal conclu envoie un dossier dans ton système RH ou ERP
Quand un placement de recrutement se conclut ou qu'un contrat commercial est signé, ton back-office doit le savoir. Exporter manuellement depuis LeadGrid et importer dans ta plateforme RH ou ton ERP, c'est exactement le genre de travail qui génère des erreurs le jeudi après-midi.
Abonne-toi aux événements dossier.closed et envoie les données structurées directement :
if (event === 'dossier.closed') {
const { id, title, fields } = data;
// Push vers ton système RH, remplace par l'API de ton fournisseur
await fetch('https://api.your-hr-tool.com/employees', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.HR_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: fields.candidateName,
email: fields.email,
startDate: fields.startDate,
role: fields.jobTitle,
}),
});
}LeadGrid est le déclencheur. Ton système RH reçoit des données propres et structurées. Aucun CSV en vue.
4. Rapport de pipeline nocturne dans ta boîte mail
Le management veut un aperçu chaque matin. Qu'est-ce qui a bougé hier ? Qu'est-ce qui est bloqué ? Qu'est-ce qui nécessite de l'attention ?
Un simple cron job qui appelle GET /dossiers?filter=updated_since=yesterday et formate le résultat couvre entièrement ce besoin :
// Exécuter chaque matin à 07:00 via cron ou une fonction planifiée
const yesterday = new Date(Date.now() - 86400000).toISOString();
const response = await fetch(
`https://api.leadgrid.io/v1/dossiers?updated_since=${yesterday}`,
{ headers: { 'Authorization': `Bearer ${process.env.LEADGRID_API_KEY}` } }
);
const { dossiers } = await response.json();
const summary = dossiers.map(d => `- ${d.title}: ${d.stage}`).join('\n');
// Envoyer via Resend, Postmark ou tout autre fournisseur d'e-mails transactionnels
await sendEmail({
to: 'team@yourcompany.com',
subject: `Mise à jour pipeline - ${new Date().toLocaleDateString()}`,
text: summary || 'Aucun changement depuis hier.',
});Le Postman 2025 State of the API Report a également constaté que 52% des développeurs ont subi des breaking changes de fournisseurs externes en 2024. LeadGrid maintient des endpoints versionnés (/v1/) pour que tes intégrations ne tombent pas silencieusement en panne un mardi matin.
Le schéma derrière les quatre
Chacune de ces intégrations suit la même structure : écouter un déclencheur (webhook ou planification), appeler l'API LeadGrid pour lire ou écrire des données, envoyer le résultat ailleurs. La surface de l'API est cohérente, authentifiée avec un seul bearer token, et retourne du JSON prévisible.
C'est ce que API-first signifie vraiment en pratique. Tu ne construis pas des flows dans LeadGrid. Tu les construis dessus.
Référence API complète, documentation d'authentification et catalogue d'événements webhook sur leadgrid.io/docs.

