LidmeoDevelopers

SDK Python

lidmeo : installation, appels, erreurs, pagination, agences, webhooks.

pip install lidmeo

Python 3.8 ou plus, la bibliothèque standard seulement.

from lidmeo import Lidmeo

client = Lidmeo()  # lit LIDMEO_API_KEY (lid_live_… ou lid_test_…)

# Les prospects qui ont répondu et vous attendent
page = client.prospects.list(view="to_handle")

# Poser votre étape
client.prospects.update("pros_…", crm_stage="stg_…")

# Ajouter un lead à suivre (rien ne lui est envoyé)
client.prospects.upsert(match_on="linkedin_url", linkedin_url="https://www.linkedin.com/in/claire-durand")

Une méthode par opération, rangée par ressource : client.prospects.notes.create(…), client.webhook_endpoints.rotate_secret(…), client.test.simulate(…). Les paramètres se passent en arguments nommés ou dans un dictionnaire ; les réponses sont des dictionnaires.

Les options

OptionPar défaut
api_keyla variable LIDMEO_API_KEYune clé ou un jeton OAuth
accountaucunle compte visé par une clé d'agence (acct_…)
languageaucune (le français)la langue des erreurs, "fr" ou "en" (en-tête Accept-Language)
max_retries2reprises d'une requête qui échoue (réseau, 408, 429, 5xx, et les refus passagers en 409 d'une écriture), jamais d'un envoi qui a échoué ni d'envois coupés (send_failed, sends_disabled)
timeout60.0délai d'une tentative, en secondes
base_urlhttps://api.lidmeo.com

Par appel : idempotency_key=… et lidmeo_account=….

Les erreurs

from lidmeo import LidmeoError

try:
    client.prospects.approve_invitation("pros_…")
except LidmeoError as error:
    if error.code == "daily_cap_reached":
        print("Prochain créneau :", error.problem.get("next_slot_at"))
    else:
        raise

error.status, error.code (stable : branchez dessus, jamais sur le texte), error.detail, error.request_id (à donner au support), error.errors et error.problem. Une coupure réseau donne status 0 et code "network_error".

La pagination

for prospect in client.paginate(client.prospects.list, view="to_follow_up", limit=100):
    print(prospect["full_name"])

Les webhooks

from lidmeo import verify_webhook, WebhookVerificationError

try:
    event = verify_webhook(secret, raw_body, request.headers)  # le corps brut
except WebhookVerificationError:
    return "", 400
if event["type"] == "prospect.replied":
    prospect = event["data"]["object"]

Voir vérifier une signature.

Sur cette page