Lead Inbox para developers · precios y piloto
Conecta el WhatsApp de tus clientes a tu plataforma con la API oficial de Meta. Sus vendedores siguen usando la app de WhatsApp Business en el celular, y todo lo que mandan y reciben te llega por API, ligado al cliente correcto. Y lanza campañas desde tu producto con el mismo motor de Lead Inbox.
Regresa un connect_url. Ponlo detrás de un botón "Conecta tu WhatsApp" dentro de tu producto.
curl https://www.leadinbox.com.mx/api/v1/inboxes \
-H "Authorization: Bearer li_live_..." \
-H "Idempotency-Key: 3c1f2a7e-..." \
-d '{ "name": "Inmobiliaria Las Lomas", "external_id": "cust_8812" }'El enlace abre el registro oficial de Meta. Si ya usa la app de WhatsApp Business, la conserva con su historial (Coexistencia). Al terminar recibes inbox.connected.
Lo que escriben sus contactos y lo que sus vendedores contestan, desde tu software o desde el celular.
{
"type": "message.sent",
"inbox_id": "inb_7Hq2",
"data": {
"source": "app",
"contact": { "phone": "+5215512345678", "external_id": "lead_5521" },
"text": "Sí, ¿te late verlo mañana a las 11?"
}
}Cuando el asistente califica a un contacto recibes lead.qualified con el deal_id. Cada cambio de etapa en Lead Inbox te llega como deal.stage_changed, y cuando tu vendedor mueve algo en tu CRM se lo pasas con PATCH.
curl -X PATCH https://www.leadinbox.com.mx/api/v1/inboxes/inb_7Hq2/deals/deal_8Kp1 \
-H "Authorization: Bearer li_live_..." \
-d '{ "status": "sent", "external_id": "COT-2026-131" }'Texto, archivos o plantillas, indicando qué usuario tuyo lo manda.
curl https://www.leadinbox.com.mx/api/v1/inboxes/inb_7Hq2/messages \
-H "Authorization: Bearer li_live_..." \
-d '{ "to": "+5215512345678", "type": "text",
"text": "Te comparto la propuesta.", "sent_by": "user_42" }'Una plantilla aprobada a una lista o a un segmento. Prueba primero con dry_run para ver destinatarios y créditos; al terminar recibes campaign.completed, y las respuestas llegan como cualquier mensaje.
curl https://www.leadinbox.com.mx/api/v1/inboxes/inb_7Hq2/campaigns \
-H "Authorization: Bearer li_live_..." \
-H "Idempotency-Key: 9b2e..." \
-d '{ "name": "Promo octubre",
"template": { "name": "promo_octubre", "language": "es_MX", "variables": ["{{nombre}}"] },
"audience": { "list_ids": ["3f1c..."] } }'Nada. Siguen usando la app de WhatsApp Business en su celular y lo que mandan desde ahí te llega como message.sent con source: "app". Con un número compartido por varias personas, esos mensajes no dicen quién los escribió; los que mandas por API sí (sent_by). Si la atribución importa, conviene un número por vendedor.
Regla de Meta: si el contacto no ha escrito en las últimas 24 horas, por WhatsApp solo se pueden mandar plantillas aprobadas, y por Messenger e Instagram nada. Cada conversación trae service_window_expires_at para que tu interfaz lo sepa antes de mandar.
Cada inbox trae un asistente con IA que atiende y califica a los contactos nuevos; viene apagado y se prende con PUT .../agent. Si prefieres tu propio modelo, déjalo apagado: recibe cada mensaje por webhook, respóndelo con tu modelo y mándalo con POST .../messages.
Pídenos acceso y te asignamos un inbox de pruebas con un número de WhatsApp de Meta: registramos tus celulares de prueba y usas tu misma llave. Sirve para mensajes, webhooks, contactos, oportunidades y campañas; el alta de números y Coexistencia se prueban en el piloto, con un número real.
Meta cobra los mensajes directamente a cada negocio, con la tarjeta que registra en su cuenta de WhatsApp Business. Lead Inbox no le agrega margen a esos cobros.
deal.stage_changed también llega por los cambios que tú hiciste con PATCH. Si el status del aviso ya es el que tienes, no hagas nada. Si tu sistema no puede aplicar un cambio, regresa la oportunidad a su estado real con PATCH: tu CRM es quien manda en lo que no puede pasar.
Cada entrega lleva Lead-Inbox-Signature con HMAC-SHA256. Si tu servidor no responde, reintentamos durante 24 horas; puedes ver el historial de entregas, pedir un reenvío y rotar el secreto. Usa el id del evento para deduplicar.