Documentación API

Integra el sistema SMTP en tus aplicaciones con nuestra API REST

Inicio Rápido
1. Obtén tu API Key

Ve a Configuración → API Keys y crea una nueva clave de API

2. Autentica tus requests

Incluye tu API Key en el header Authorization de cada petición

3. Envía tu primer email

Haz una petición POST a /api/v1/send con los datos del email

Autenticación
Todas las peticiones requieren autenticación mediante API Key

URL Base

https://tu-dominio.com/api/v1

Header de Autenticación

Incluye tu API Key en el header Authorization de todas las peticiones:

Authorization: Bearer sk_live_your_api_key

Seguridad Importante

Nunca expongas tu API Key en el código del frontend. Úsala solo en el servidor o backend de tu aplicación.

Endpoints Disponibles
Lista completa de endpoints de la API
POST
/api/v1/send
Requiere Auth

Enviar un correo electrónico individual o múltiples destinatarios

Parámetros
tostring
Requerido
Email(s) del destinatario (separados por comas para múltiples)
subjectstring
Requerido
Asunto del correo
contentstring
Requerido
Contenido del correo (texto plano)
fromstringEmail del remitente (opcional)
htmlstringContenido HTML del correo (opcional)
Respuesta de Ejemplo
{
  "success": true,
  "message": "Email enviado exitosamente",
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "status": "sent",
    "to": "destinatario@ejemplo.com",
    "subject": "Hola desde la API",
    "messageId": "<20230101120000.1.ABC123@smtp.gmail.com>",
    "sent_at": "2024-02-13T12:00:00Z"
  }
}
GET
/api/v1/emails
Requiere Auth

Obtener historial de correos enviados con paginación

Parámetros
limitnumberNúmero de resultados por página (default: 50)
offsetnumberNúmero de resultados a omitir (default: 0)
statusstringFiltrar por estado: sent, failed, pending, queued
Respuesta de Ejemplo
{
  "success": true,
  "data": {
    "emails": [...],
    "total": 150,
    "limit": 50,
    "offset": 0
  }
}
GET
/api/v1/email/{id}
Requiere Auth

Obtener detalles completos de un correo específico

Parámetros
iduuid
Requerido
ID del correo electrónico
Respuesta de Ejemplo
{
  "success": true,
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "to_email": "destinatario@ejemplo.com",
    "from_email": "noreply@tudominio.com",
    "subject": "Asunto del correo",
    "content": "Contenido del correo",
    "status": "delivered",
    "sent_at": "2024-02-13T12:00:00Z",
    "delivered_at": "2024-02-13T12:00:05Z"
  }
}
Ejemplos de Código
Implementación completa en diferentes lenguajes
# Enviar un correo simple
curl -X POST https://tu-dominio.com/api/v1/send \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "destinatario@ejemplo.com",
    "subject": "Hola desde la API",
    "content": "Este es un correo enviado desde la API",
    "from": "noreply@tudominio.com"
  }'

# Enviar a múltiples destinatarios
curl -X POST https://tu-dominio.com/api/v1/send \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "usuario1@ejemplo.com,usuario2@ejemplo.com,usuario3@ejemplo.com",
    "subject": "Newsletter Mensual",
    "content": "Contenido del newsletter",
    "html": "<h1>Newsletter</h1><p>Contenido HTML</p>"
  }'
Códigos de Error
Manejo de errores y códigos de respuesta
401
Unauthorized

API Key inválida o ausente

{
  "success": false,
  "error": {
    "code": "UNAUTHORIZED",
    "message": "API key inválida"
  }
}
400
Bad Request

Parámetros inválidos o faltantes

{
  "success": false,
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Email inválido"
  }
}
500
Internal Server Error

Error del servidor

{
  "success": false,
  "error": {
    "code": "INTERNAL_ERROR",
    "message": "Error interno"
  }
}
200
Success

Operación exitosa

{
  "success": true,
  "message": "Email enviado",
  "data": {...}
}
Límites de Uso
Información sobre rate limiting y cuotas

1000

Emails/día (Plan Free)

100

Requests/minuto

Plan Enterprise

Si necesitas límites más altos, contáctanos para un plan personalizado.

Webhooks (Próximamente)
Recibe notificaciones en tiempo real sobre el estado de tus emails

Los webhooks te permitirán recibir notificaciones cuando:

  • Un email sea entregado exitosamente
  • Un email falle en su entrega
  • Un destinatario abra el email
  • Un destinatario haga clic en un enlace
Próximamente
¿Necesitas Ayuda?
Recursos adicionales y soporte