Proveedor HTTP (no habilitado)
La información siguiente describe una integración prevista y se conserva solo como referencia técnica. No representa una opción disponible para uso actual.
Un proveedor HTTP permite integrar un servicio de correo que expone una API en lugar de una conexión SMTP. Esta configuración requiere conocer el endpoint, el mecanismo de autenticación y el formato JSON requerido por el proveedor.
Si esta integración se habilita, las cuentas HTTP se registrarían mediante /api/v1/smtp-accounts usando un token OpenID Connect, no mediante la API key de notificaciones.
Preparar la integración
Sección titulada «Preparar la integración»Obtén de la documentación del proveedor:
- URL HTTPS del endpoint de envío;
- nombre del header de autenticación;
- formato del valor de autenticación;
- nombres de los campos para remitente, destinatarios, asunto, texto y HTML;
- formato de CC y BCC si los admite.
Variables disponibles
Sección titulada «Variables disponibles»body_template y auth_value_template se renderizan con:
| Variable | Contenido |
|---|---|
{{.To}} |
Destinatario principal. |
{{.CC}} |
Lista de destinatarios CC. |
{{.BCC}} |
Lista de destinatarios CCO. |
{{.Subject}} |
Asunto final. |
{{.Body}} |
Cuerpo final. |
{{.BodyType}} |
text o html. |
{{.From}} |
Dirección remitente de la cuenta. |
{{.FromName}} |
Nombre efectivo del remitente. |
{{.APIKey}} |
Credencial del proveedor. |
Usa el helper json para escapar cadenas y serializar listas. Por ejemplo, {{.Subject | json}} produce una cadena JSON segura y {{.CC | json}} produce un arreglo.
Registro no habilitado
Sección titulada «Registro no habilitado»El siguiente ejemplo es únicamente informativo y no funciona mientras la integración permanezca no habilitada:
curl -X POST https://notify.summitexplorerjd.ec/api/v1/smtp-accounts \ -H "Authorization: Bearer $OIDC_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "label": "Proveedor HTTP", "provider": "http_api", "endpoint": "https://api.example.com/v1/email/send", "auth_header_name": "Authorization", "auth_value_template": "Bearer {{.APIKey}}", "api_key": "YOUR_PROVIDER_API_KEY", "body_template": "{\"from\": {{.From | json}}, \"to\": [{{.To | json}}], \"cc\": {{.CC | json}}, \"bcc\": {{.BCC | json}}, \"subject\": {{.Subject | json}}, \"content\": {{.Body | json}}}", "from_address": "notificaciones@example.com", "from_name": "Mi aplicación", "is_default": false }'Cuando esta integración sea habilitada, la API validará que los templates puedan analizarse antes de guardar la cuenta. Una sintaxis válida no garantiza que el proveedor acepte el JSON resultante.
Texto y HTML
Sección titulada «Texto y HTML»El template decide cómo mapear BodyType. Si la API usa campos distintos, puedes aplicar condiciones de template:
{{if eq .BodyType "html"}}"html_body"{{else}}"text_body"{{end}}Consulta la documentación del proveedor para construir el objeto completo. Summit Notify envía el resultado con Content-Type: application/json y considera exitosas únicamente las respuestas HTTP 2xx.
Actualizar la credencial
Sección titulada «Actualizar la credencial»En un PUT, deja api_key vacía para conservar la credencial cifrada existente. Envía una nueva API key solo cuando quieras reemplazarla.
Consulta la referencia de cuentas de envío para ver todos los campos y endpoints.