API ReactIn

Mettre à jour des leads via API

Besoin de modifier les données d'un lead après son ajout ? L'API Update Lead vous permet de mettre à jour un lead existant sur place, email, nom, entreprise ou variables personnalisées, sans créer de doublon.

2 min de lecture

Vous avez déjà ajouté un lead et devez modifier ses données plus tard, corriger une faute, ajouter une nouvelle variable personnalisée ou pousser un email mis à jour depuis votre CRM ? L'API Update Lead vous permet de modifier un lead existant sur place, sans créer de doublon.

✅ Ce dont vous aurez besoin avant de commencer

Avant d'utiliser cette API, assurez-vous d'avoir :

  1. Votre Organization ID, votre List ID et votre API Key

  2. L'id du lead que vous souhaitez mettre à jour, ou la linkedinUrl avec laquelle vous l'avez importé

📘 👉 Vous ne savez pas comment obtenir vos identifiants API ? Suivez ce guide

💡 Vous obtenez l'id d'un lead via l'endpoint Récupérer des leads (le champ id de chaque lead), ou dans la réponse de l'appel Ajouter un lead.


🔗 Endpoint de l'API

Envoyez une requête PATCH à cet endpoint pour mettre à jour un lead :

PATCH https://app.reactin.io/api/[organizationId]/lists/[listId]/leads

🔐 Authentification et en-têtes

En-têteValeurDescription
AuthorizationYOUR_API_KEYVotre API key secrète issue de ReactIn
Content-Typeapplication/jsonRequis pour toutes les requêtes

🔒 Gardez votre clé API privée et utilisez-la uniquement depuis un code backend sécurisé, jamais depuis le navigateur.


🧾 Ce qu'il faut inclure dans votre requête (Body)

Identifiez le lead avec soit leadId, soit linkedinUrl. Tous les autres champs sont optionnels, n'envoyez que ceux que vous voulez modifier. Il s'agit d'une vraie mise à jour partielle : les champs que vous omettez restent inchangés.

ChampRequisDescription
leadIdOui*L'id du lead à mettre à jour (*ou linkedinUrl)
emailOptionnelNouvel email
firstNameOptionnelNouveau prénom
lastNameOptionnelNouveau nom
linkedinUrlOui*Avec leadId : la nouvelle URL de profil LinkedIn. Sans leadId : l'URL LinkedIn du lead à mettre à jour (*requis sans leadId)
companyNameOptionnelNouveau nom d'entreprise
customVariable1-5OptionnelToute variable personnalisée à ajouter ou remplacer

🔗 Mise à jour par URL LinkedIn : sans leadId, ReactIn retrouve le lead dans la liste grâce à sa linkedinUrl (le www. et le slash final n'ont pas d'importance). Pratique pour corriger une variable mal saisie à l'import : renvoyez la même linkedinUrl avec les champs corrigés. Si plusieurs leads de la liste correspondent à cette URL, l'appel échoue en 409, utilisez alors leadId.

⚠️ Mettre à jour un lead réinitialise son statut d'enrichissement : ReactIn tentera donc de l'enrichir à nouveau avec les nouvelles données. Cela déclenche aussi le webhook LEAD_UPDATED si vous en avez un connecté.


🧪 Exemple (JavaScript)

await fetch("https://app.reactin.io/api/[organizationId]/lists/[listId]/leads", {
  method: "PATCH",
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'YOUR_API_KEY'
  },
  body: JSON.stringify({
    leadId: 'lead_a1b2c3',
    email: 'john.doe@newcompany.com',
    companyName: 'New Company',
    customVariable1: 'Renewed'
  })
});

Ou, sans le leadId :

await fetch("https://app.reactin.io/api/[organizationId]/lists/[listId]/leads", {
  method: "PATCH",
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'YOUR_API_KEY'
  },
  body: JSON.stringify({
    linkedinUrl: 'https://www.linkedin.com/in/johndoe/',
    customVariable1: 'Accroche corrigée'
  })
});

🧾 Format de réponse

{
  "success": true,
  "id": "lead_a1b2c3"
}

🚫 Erreurs courantes

CodeDescription
400Bad request, ni leadId ni linkedinUrl n'est fourni
401Unauthorized, API key invalide ou manquante
404Not found, la liste ou le lead n'existe pas dans votre organisation
409Conflict, plusieurs leads de la liste correspondent à cette linkedinUrl, utilisez leadId
429Too many requests, limite de débit dépassée
500Internal server error, réessayez plus tard

💡 Bonnes pratiques

  • 🔎 Récupérez l'id du lead via l'endpoint Récupérer des leads avant de le mettre à jour

  • ✂️ N'envoyez que les champs que vous souhaitez réellement modifier

  • 🔐 Gardez votre API key privée, utilisez un serveur backend ou un proxy

  • 🔁 Ajoutez une logique de nouvelle tentative pour les erreurs occasionnelles de réseau ou de serveur


💡 Astuce de pro : Comme les mises à jour relancent l'enrichissement, regrouper plusieurs modifications dans un seul PATCH est plus économique que d'envoyer une requête par champ.