Senior Santé Conseil

API Leads — v1

API REST JSON pour envoyer des leads depuis vos campagnes (Meta Lead Ads, Zapier, partenaires) et les récupérer dans votre CRM.

URL de base

https://votre-domaine.fr/api/public/v1

Authentification

Créez une clé dans l'espace admin (menu « Clés API »). Envoyez-la à chaque requête, au choix :

Authorization: Bearer ssc_xxxxxxxxxxxxxxxx
# ou
X-API-Key: ssc_xxxxxxxxxxxxxxxx

Une clé manquante, invalide ou révoquée renvoie 401. Gardez vos clés côté serveur uniquement.

POST/leads

Crée un lead. Le consentement est historisé avec sa version et la date. Corps JSON :

Champs à renseigner

ChampObligatoireTypeValeurs / règles
assuresOuitexte"moi" ou "couple"
date_naissanceOuidate AAAA-MM-JJÂge entre 55 et 81 ans
date_naissance_conjointSi coupledate AAAA-MM-JJÂge entre 55 et 81 ans
prenom_conjointSi coupletexte60 caractères max.
code_postalOuitexte5 caractères, France (ex. 69003, 2A004)
situationOuitexte"actif", "retraite" ou "autre"
couverture_actuelleOuibooléentrue si déjà une mutuelle
prioritesOuilisteAu moins un parmi hospitalisation, optique, dentaire, soins_courants
civiliteOuitexte"Mme" ou "M."
prenomOuitexte60 caractères max.
nomOuitexte80 caractères max.
emailOuitexteEmail valide
telephoneOuitexteMobile français 06 ou 07 (+33 accepté)
consent_partenairesOuibooléenDoit valoir true
sourceOuitexteOrigine du trafic, 60 caractères max. Cette valeur doit être demandée à Com&Click
click_idNontexteChamp libre, 120 caractères max. Identifiant de clic ou de campagne au choix du partenaire

Exemple

{
  "assures": "couple",
  "date_naissance": "1958-04-12",
  "date_naissance_conjoint": "1960-09-01",
  "prenom_conjoint": "Paul",
  "code_postal": "69003",
  "situation": "retraite",
  "couverture_actuelle": true,
  "priorites": ["optique", "dentaire"],
  "civilite": "Mme",
  "prenom": "Claire",
  "nom": "Martin",
  "email": "claire.martin@example.fr",
  "telephone": "0612345678",
  "consent_partenaires": true,
  "source": "meta_lead_ads",
  "click_id": "cmp-2026-10-19-xyz"
}
curl -X POST https://votre-domaine.fr/api/public/v1/leads \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d @lead.json

# 201
{ "id": "6f1c…", "created_at": "2026-10-16T15:10:00Z" }

Erreur de validation : 422 avec details par champ.

GET/leads

Liste les leads, du plus récent au plus ancien. Paramètres optionnels :

  • status : nouveau | contacte | qualifie | converti | perdu
  • source : ex. landing, api, google…
  • since : date ISO 8601 (ex. 2026-10-01T00:00:00Z)
  • limit : 1–500 (défaut 100), offset : défaut 0
curl "https://votre-domaine.fr/api/public/v1/leads?status=nouveau&limit=50" \
  -H "Authorization: Bearer $API_KEY"

# 200
{ "data": [ { "id": "…", "prenom": "Claire", … } ], "total": 128, "limit": 50, "offset": 0 }

GET/leads/{id}

Récupère un lead. 404 s'il n'existe pas.

PATCH/leads/{id}

Met à jour le statut et/ou les notes (utile pour synchroniser votre CRM).

curl -X PATCH https://votre-domaine.fr/api/public/v1/leads/6f1c… \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "status": "contacte", "notes": "Rappel lundi 10h" }'

Codes de réponse