LidmeoDevelopers

L'API Lidmeo

Une API REST pour vos prospects, vos conversations, vos campagnes et votre CRM : conventions, ressources, contrat OpenAPI.

https://api.lidmeo.com/v1

L'API fait ce que fait l'écran de Lidmeo, par les mêmes fonctions : lire votre CRM, le ranger, ajouter des leads, valider des invitations, envoyer des messages, suivre ce qui se passe. Les limites d'envoi, les horaires et « Ne plus contacter » s'y appliquent à l'identique.

Conventions

  • JSON en UTF-8, noms de champs en anglais snake_case.
  • Dates en ISO 8601, en UTC (2026-10-01T08:30:00Z). Un jour seul (2026-10-02), comme reminder_on, est un jour de Paris ; dans updated_since, il commence à minuit, heure de Paris.
  • Identifiants opaques et préfixés : acct_ (compte), org_ (agence), pros_ (prospect), cmp_ (campagne), conv_ (conversation), msg_ (message), stg_ (étape), lst_ (liste), note_, imp_ (import), job_ (recherche de coordonnées), sup_ (« ne plus contacter »), evt_ (événement), whe_ (adresse de réception), whd_ (livraison), key_ (clé d'API), app_ (application), grt_ (connexion OAuth). Ne les fabriquez pas, ne les découpez pas : relisez-les tels quels.
  • Chaque objet porte object (son type) ; ceux du compte (prospects, conversations, messages, campagnes, notes, événements, adresses de réception…) portent aussi livemode (false en mode test).
  • Chaque réponse porte l'en-tête Request-Id : donnez-le au support si quelque chose vous étonne. Vous pouvez aussi envoyer le vôtre : il est repris s'il fait de 8 à 64 caractères (lettres, chiffres, ., _ et -), sinon Lidmeo en crée un.
  • Un paramètre inconnu n'est jamais ignoré : il répond 400 invalid_request, avec dans errors le code unknown_parameter et le champ query.<nom>.
  • Les erreurs sont des problèmes RFC 9457 avec un code stable : voir les erreurs.
  • Les listes se lisent par pages, avec un curseur : voir la pagination.
  • Les écritures acceptent une Idempotency-Key : voir l'idempotence.

Les envois ne promettent jamais l'instant

Une action qui fait partir quelque chose (valider une invitation, un premier message, répondre, relancer) répond 202 et dit ce qui s'est vraiment passé :

statusCe que cela veut dire
sentC'est parti.
scheduledCela partira au plus tôt à scheduled_at ; cause dit pourquoi : window (hors de vos horaires), cap (limite du jour atteinte), paused (envois en pause pour protéger le compte). La file fait partir un envoi à la fois, dans vos limites : avec plusieurs envois programmés, la plupart partent plus tard. Relisez le prospect pour savoir quand il est parti.
already_sentC'était déjà parti.
already_connectedPas besoin d'invitation : la personne est déjà une relation.

Sinon, un refus qui dit pourquoi : suppressed (« ne plus contacter »), daily_cap_reached, linkedin_disconnected, not_approvable… Rien n'est jamais présenté comme parti s'il ne l'est pas.

  • Un envoi à la fois par compte : un second, pendant ce temps, répond 409 send_in_progress ; réessayez dans un instant.
  • Le texte est le vôtre, et final : vide, ou s'il garde une variable de gabarit ({{prenom}}, [Prénom]…), il répond 400 invalid_request. Une relance tient en 2000 caractères au plus ; les autres textes, en 4000.
  • Une réponse (kind: "reply") ne part que vers un contact qui a répondu (son replied_at, ou une réponse déjà visible dans la conversation), sinon 409 not_replied. Avec kind: "auto", c'est une réponse quand Lidmeo voit que le contact a répondu, une relance sinon. Jamais vers « Ne plus contacter », et au plus 100 par jour et par compte par l'API : au-delà, 409 daily_cap_reached, avec cap et next_slot_at.

Les ressources

RessourceCe qu'elle porte
IdentitéGET /v1/me (qui appelle), GET /v1/accounts (les comptes couverts)
CompteGET /v1/overview (la journée), GET /v1/credits
Prospectsla liste et ses vues, la recherche, l'ajout de leads, l'étape, les rappels, les listes, les notes, l'historique, le retrait de la file, le lien avec vos outils
Conversationsune par personne, LinkedIn et e-mail réunis, et leurs messages
Campagneslecture, pause, reprise, ciblage, entonnoir
CRMvos étapes, vos listes, « ne plus contacter »
Importsdes leads en nombre, par la règle d'import de Lidmeo
Envoisvalider une invitation ou un premier message, envoyer une réponse ou une relance
Coordonnéeschercher l'e-mail ou le téléphone, avec vos crédits (jamais pour une personne « Ne plus contacter »)
Événements et webhooksce qui s'est passé, et les adresses qui le reçoivent
Mode testremise à zéro, simulation d'une acceptation ou d'une réponse

Chaque opération, ses paramètres et ses réponses : la référence complète, avec un essai en direct (utilisez une clé de test).

Le contrat

L'API est décrite par un document OpenAPI 3.1, généré depuis le code qui valide les requêtes : le contrat et le comportement ne peuvent pas diverger. Il déclare, pour chaque opération, chaque statut qu'elle peut répondre.

  • https://api.lidmeo.com/v1/openapi.json
  • https://developers.lidmeo.com/openapi.json

Importez-le dans Postman, Insomnia ou votre générateur de client, ou utilisez nos SDK.

Sur cette page