← leaply.ro

API pentru dezvoltatori

Conectează Leaply la CRM-ul tău, la site, la Zapier/Make sau la orice altă platformă. API REST simplu, JSON, autentificat cu cheie per cont.

Autentificare

Generezi cheia din Setări & Plan → API (o vezi o singură dată — păstreaz-o în siguranță). O trimiți în header la fiecare request:

Authorization: Bearer lp_xxxxxxxxxxxxxxxx

Toate endpoint-urile au baza https://leaply.ro/api/v1. Răspunsurile sunt JSON; erorile au forma {"error":"mesaj"} cu status 4xx.

Lead-uri

POST /leads — creezi un lead (ex. dintr-un formular propriu sau CRM). Leaply pornește conversația și îl califică automat.

curl -X POST https://leaply.ro/api/v1/leads \
  -H "Authorization: Bearer lp_..." -H "Content-Type: application/json" \
  -d '{"name":"Ion Popescu","phone":"+40712345678","message":"Vreau o ofertă pentru termopane","source":"site-propriu","channel":"api"}'

// 201 → {"ok":true,"lead_id":"ld_...","conversation_id":"cv_..."}

GET /leads — listă lead-uri, cele mai noi primele. Parametri: score (hot/warm/cold), limit (max 200), offset.

curl "https://leaply.ro/api/v1/leads?score=hot&limit=50" -H "Authorization: Bearer lp_..."

// {"data":[{"id":"ld_...","name":"Ion Popescu","phone":"+40712...","score":"hot",
//   "conversation_id":"cv_...","channel":"whatsapp","status":"booked",
//   "qualification":{"q1":"tripan","q2":"urgent","q3":"Oradea"},"created_at":"..."}], "limit":50,"offset":0}

Conversații

GET /conversations — filtre: status (active/qualified/booked/lost), channel (whatsapp/messenger/instagram/webform/voice/api), limit, offset.

curl "https://leaply.ro/api/v1/conversations?status=booked" -H "Authorization: Bearer lp_..."

GET /conversations/{id} — conversația completă, cu toate mesajele (direcție, expeditor, text, timestamp).

curl https://leaply.ro/api/v1/conversations/cv_abc123 -H "Authorization: Bearer lp_..."

// {"data":{"id":"cv_...","status":"booked","lead_name":"Ion Popescu",
//   "messages":[{"direction":"in","sender":"lead","body":"Bună ziua...","created_at":"..."}, ...]}}

Mesaje

POST /messages — trimiți un mesaj manual într-o conversație (de la un agent uman, din CRM-ul tău). Mesajul pleacă pe canalul original al lead-ului.

curl -X POST https://leaply.ro/api/v1/messages \
  -H "Authorization: Bearer lp_..." -H "Content-Type: application/json" \
  -d '{"conversation_id":"cv_abc123","body":"Bună ziua! Sunt Andrei, colegul care vine la măsurătoare."}'

// {"ok":true,"delivered":true}

Statistici

GET /stats — KPI-urile contului: lead-uri, calificate, programări, timp mediu de răspuns, plan și utilizare lunară.

curl https://leaply.ro/api/v1/stats -H "Authorization: Bearer lp_..."

// {"data":{"leads":124,"qualified":61,"booked":38,"avgSec":4,"savedLei":64050,
//   "plan":"Pro","usage_month":212,"usage_limit":1000}}

Webhooks (Leaply → platforma ta)

Pe lângă API, Leaply poate împinge evenimente către un URL al tău (setat în Setări & Plan → CRM / Webhook), semnate HMAC-SHA256 în header-ul X-Leaply-Signature:

POST https://crm-ul-tau.ro/webhook
{"event":"lead.created","account_id":"acc_...","data":{"lead":{...},"conversation":{...}}}

// evenimente: lead.created (lead nou), lead.updated (mesaj nou / schimbare status, inclusiv qualified și booked), billing.upgraded

Verifici semnătura: "sha256=" + hex(hmac_sha256(secret, raw_body)) === X-Leaply-Signature.

Zapier — lead-urile Leaply în orice aplicație (fără cod)

Nu trebuie să scrii niciun rând de cod ca să duci lead-urile în CRM, Google Sheets, Slack sau email:

1. În Zapier: Create Zap → Trigger: "Webhooks by Zapier" → "Catch Hook" → copiază URL-ul generat.
2. În Leaply: Setări & Plan → Integrare CRM (webhook) → lipește URL-ul → Salvează.
3. Trimite-ți un mesaj de test pe chat-ul de pe site → Zapier prinde evenimentul "lead.created".
4. Action: alege aplicația ta (HubSpot, Pipedrive, Google Sheets, Slack...) și mapează câmpurile:
   data.lead.name, data.lead.phone, data.conversation.channel, data.conversation.status.

Make (Integromat) — scenariu gata făcut

Descarcă blueprint-ul Leaply pentru Make, apoi: Make → Create a new scenario → Import Blueprint → primești modulul de webhook preconfigurat cu structura evenimentelor Leaply → copiezi URL-ul webhook-ului în Leaply (Setări & Plan → Integrare CRM) și adaugi modulele tale (CRM, Sheets, email) după el.

Limite & bune practici

Max 200 de rezultate per pagină (folosește offset). Cheia se poate regenera oricând din Setări (cea veche moare instant). Pentru volume mari sau nevoi speciale: salut@leaply.ro.