Base URL y autenticación
La base pública es https://nuntia.ecsecorp.com/api/v1. Envía la clave del workspace y el secreto API en cada request.
X-Nuntia-Project: <workspace-key>
Authorization: Bearer <api-secret>
Accept: application/json
También se acepta X-Nuntia-Secret, pero Bearer es el formato recomendado. Una credencial ausente o inválida responde 401. Los endpoints de mensajería y configuración requieren además un entitlement utilizable.
Catálogo de endpoints
Los parámetros entre llaves son identificadores del recurso dentro del workspace autenticado.
Integración y operación
/api/v1/integration/package
Contrato, quickstart y readiness del workspace.
/api/v1/operations/health
Salud y bloqueos operativos.
/api/v1/operations/billing
Estado de acceso y facturación.
/api/v1/operations/usage
Uso agregado del workspace.
/api/v1/operations/external-integration-smoke
Preflight y aceptación controlada.
/api/v1/operations/audit-logs
Eventos auditables del workspace.
/api/v1/operations/api-secret/rotate
Rotación controlada de secreto API.
Mensajes y contactos
/api/v1/messages/text
Envía texto dentro de la ventana permitida.
/api/v1/messages/template
Envía una plantilla aprobada.
/api/v1/messages/media
Envía documento, imagen, video o audio.
/api/v1/messages/link
Crea un enlace manual de WhatsApp.
/api/v1/messages
Lista y filtra mensajes del workspace.
/api/v1/messages/{public_id}
Consulta mensaje, intentos y resultado.
/api/v1/contacts/consent
Registra opt-in u opt-out auditable.
/api/v1/conversations/{conversation}
Consulta una conversación del workspace.
Plantillas
/api/v1/templates
Lista plantillas persistidas.
/api/v1/templates/sync
Sincroniza estados desde Meta.
/api/v1/templates/manifest
Importa y, opcionalmente, envía un manifiesto a Meta.
Webhooks y callbacks
/api/v1/webhooks/client-subscriptions
Lista destinos del workspace.
/api/v1/webhooks/client-subscriptions
Crea o actualiza un destino HTTPS.
/api/v1/webhooks/client-subscriptions/{webhook_id}/test
Encola un callback de prueba.
/api/v1/webhooks/domain-verification
Consulta el desafío de dominio.
/api/v1/webhooks/domain-verification/verify
Verifica el dominio del callback.
/api/v1/callbacks
Lista intentos y entregas.
/api/v1/callbacks/{attempt_id}/replay
Reprocesa un intento elegible.
Embedded Signup
/api/v1/onboarding/embedded-signup/sessions
Lista sesiones del workspace.
/api/v1/onboarding/embedded-signup/sessions
Crea una sesión de onboarding.
/api/v1/onboarding/embedded-signup/sessions/{session_id}
Consulta el estado de una sesión.
/api/v1/onboarding/embedded-signup/complete
Completa el intercambio server-side.
Listados y filtros
GET /messages admite status, type, to, client_reference, provider_message_id, include_attempts y limit entre 1 y 100. El límite predeterminado es 25.
Respuestas de mensajes
Un mensaje aceptado devuelve 202. El objeto incluye ID público, estado, proveedor, tipo, destinatario, referencia, número de intentos y timestamps. Si el proveedor rechaza el intento de forma inmediata, Nuntia devuelve 502 conservando el error normalizado.
{
"data": {
"id": "<id-publico-del-mensaje>",
"status": "queued",
"type": "text",
"to": "<destinatario-e164>",
"client_reference": "<referencia-cliente>",
"attempt_count": 0,
"error": null
}
}