Ir al contenido

API de Summit Notify

La API de Summit Notify administra cuentas de envío y plantillas, y encola notificaciones para su entrega asíncrona.

https://notify.summitexplorerjd.ec/api/v1

Las rutas /health/live y /health/ready se encuentran en la raíz del servicio, fuera de /api/v1.

  • Envía cuerpos como application/json.
  • Los cuerpos JSON admiten como máximo 1 MiB.
  • Los campos desconocidos se rechazan como 400 Bad Request.
  • Los identificadores son UUID.
  • Las fechas usan RFC 3339 en UTC, por ejemplo 2026-08-03T14:00:00Z.
  • Las operaciones están aisladas por el sub de la credencial autenticada. Un recurso ajeno se comporta como inexistente.
  • DELETE responde 204 No Content sin cuerpo.
Grupo Credencial
/smtp-accounts, /templates, /whatsapp-templates Access token OpenID Connect con el scope requerido por la instancia.
/notifications, /whatsapp-conversations API key creada desde el panel de Summit Notify.
/mcp API key creada desde el panel de Summit Notify.
/status, /health/* Sin autenticación.

Todas las credenciales se envían como Authorization: Bearer. Consulta Autenticación para conocer las diferencias.

Método Ruta Éxito Descripción
GET /api/v1/status 200 Estado básico del proceso API.
GET /health/live 200 Liveness.
GET /health/ready 200/503 Disponibilidad de PostgreSQL y OpenID Connect.
GET /api/v1/smtp-accounts 200 Lista cuentas de envío.
POST /api/v1/smtp-accounts 201 Crea una cuenta.
GET /api/v1/smtp-accounts/{id} 200 Obtiene una cuenta.
PUT /api/v1/smtp-accounts/{id} 200 Reemplaza la configuración de una cuenta.
DELETE /api/v1/smtp-accounts/{id} 204 Elimina una cuenta.
POST /api/v1/smtp-accounts/{id}/test 200 Envía un correo de prueba inmediato.
GET /api/v1/templates 200 Lista plantillas.
POST /api/v1/templates 201 Crea una plantilla.
GET /api/v1/templates/{id} 200 Obtiene una plantilla.
PUT /api/v1/templates/{id} 200 Reemplaza una plantilla.
DELETE /api/v1/templates/{id} 204 Elimina una plantilla.
GET /api/v1/whatsapp-templates 200 Lista plantillas de WhatsApp.
POST /api/v1/whatsapp-templates 201 Crea una plantilla en AWS/Meta.
GET /api/v1/whatsapp-templates/{id} 200 Obtiene una plantilla de WhatsApp.
POST /api/v1/whatsapp-templates/{id}/sync 200 Sincroniza estado y calidad.
DELETE /api/v1/whatsapp-templates/{id} 200 Deshabilita la plantilla después de eliminarla en AWS/Meta.
GET /api/v1/whatsapp-conversations 200 Lista conversaciones de WhatsApp.
GET /api/v1/whatsapp-conversations/{id} 200 Obtiene una conversación.
GET /api/v1/whatsapp-conversations/{id}/messages 200 Historial de mensajes de una conversación.
POST /api/v1/whatsapp-conversations/{id}/reply 202 Encola una respuesta en una conversación.
POST /api/v1/whatsapp-conversations/{id}/media-upload 201 Sube un adjunto y devuelve un media_id.
GET /api/v1/whatsapp-conversations/{id}/messages/{messageID}/media 200 URL firmada de un adjunto entrante.
POST /api/v1/notifications 202 Encola una notificación.
GET /api/v1/notifications/{id} 200 Consulta su estado.

La API aplica un bucket por Bearer token y, si no existe uno, por dirección IP. La configuración actual repone aproximadamente una solicitud por segundo y admite ráfagas de hasta 30 solicitudes.

Al superar el límite responde:

HTTP/1.1 429 Too Many Requests
Retry-After: 60
Content-Type: text/plain; charset=utf-8
too many requests

Salvo la respuesta 429, los errores de la API se representan como JSON:

{
"error": "descripción del problema"
}

Consulta Estado y errores para la tabla completa.