Introduccion
Guia de integracion con la API de Mirlo
Las API Keys de Mirlo te permiten integrar las funcionalidades de mensajeria y voz directamente en tus aplicaciones. Con ellas puedes enviar broadcasts masivos por WhatsApp, gestionar contactos, consultar conversaciones, iniciar llamadas con agentes de IA y mas.
URL Base
https://api.mirlo.com/v2La API esta organizada por producto:
| Producto | Base URL | Descripcion |
|---|---|---|
| Messages | https://api.mirlo.com/v2/messages | WhatsApp, Instagram, Messenger |
| Voice | https://api.mirlo.com/v2/voice | Llamadas, agentes IA, campañas |
Todos los endpoints operan sobre una organizacion identificada por su organization_id:
https://api.mirlo.com/v2/messages/organizations/{organization_id}/...
https://api.mirlo.com/v2/voice/organizations/{organization_id}/...Autenticacion
Todas las llamadas a la API requieren autenticacion mediante el header X-API-Key.
curl -X GET "https://api.mirlo.com/v2/messages/organizations/{organization_id}/contacts" \
-H "X-API-Key: sk_live_tu_api_key_aqui"El API Key esta asociado a tu organizacion. El organization_id en la URL debe coincidir con la organizacion del API Key.
Seguridad
- Nunca compartas tu API Key publicamente
- No incluyas el API Key en codigo del lado del cliente (frontend)
- Rota tu API Key si sospechas que fue comprometido
- Usa variables de entorno para almacenar el API Key
Obtener tu Organization ID
curl -X GET "https://api.mirlo.com/v1/organizations" \
-H "X-API-Key: sk_live_tu_api_key"Response:
[
{
"id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"name": "Mi Empresa",
"created_at": "2025-10-29T14:13:30.258Z",
"updated_at": "2025-12-09T19:30:12.637Z"
}
]Obtener tu Organization Address (Numero de WhatsApp)
El organization_address es el identificador de tu numero de WhatsApp Business.
curl -X GET "https://api.mirlo.com/v2/messages/organizations/{organization_id}/addresses" \
-H "X-API-Key: sk_live_tu_api_key_aqui"Response:
[
{
"organization_id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"service": "whatsapp",
"address": "100000000000001",
"extra": {
"phone_number": "+52 1 55 1234 5678",
"verified_name": "Mi Empresa",
"waba_id": "100200300400500"
},
"status": "connected"
}
]| Campo | Descripcion |
|---|---|
address | ID del numero de WhatsApp. Usaras este valor como organization_address |
service | Debe ser whatsapp para poder enviar broadcasts |
status | Debe ser connected o active para enviar mensajes |
Errores Comunes
401 Unauthorized
{
"statusCode": 401,
"message": "Invalid or expired token"
}Solucion: Verifica que el API Key sea correcto y este activo.
403 Forbidden
{
"statusCode": 403,
"message": "You do not have access to this organization"
}Solucion: El organization_id en la URL no coincide con tu API Key.
404 Route Not Found
{
"error_msg": "404 Route Not Found"
}Solucion: Verifica la URL del endpoint.
Limites
| Concepto | Limite |
|---|---|
| Recipients por request | 1,000 |
| Rate limit | Segun tu plan |
| Templates | Solo status APPROVED |
| Numeros de destino | Deben tener WhatsApp activo |
Soporte
Si tienes preguntas o problemas, contactanos en soporte@mirlo.com.