POST/api/notifications

Notificación

Este endpoint permite enviar un mensaje informativo al usuario por los canales que indiques. A diferencia de una validación, una notificación no espera respuesta, no genera token, no se puede consultar después y no dispara webhook. El mensaje tampoco incluye enlace de confirmación.

La respuesta 200 confirma que al menos un canal entregó el mensaje; si ningún canal lo entregó, la respuesta es 400. En ambos casos, channels indica el resultado de cada canal (ver Resultado por canal).

Solicitud

  • Name
    locale
    Type
    string
    is optional
    Description

    Define el idioma a usar en formato ISO 639-1

    Valores permitidos:esenptit
    Ejemplo:es
    Longitud máxima:2
    Longitud mínima:2
  • Name
    message
    Type
    string
    is Required
    REQUERIDO
    Description

    Mensaje que se visualizará en correo electrónico.

    Ejemplo:this is a very long and generic message
  • Name
    kind
    Type
    string
    is optional
    Description

    Campo para clasificar una solicitud

    Ejemplo:Horus
    Longitud máxima:50
  • Name
    channels
    Type
    object
    is Required
    REQUERIDO
    Description

    Estructura requerida para definir el detalle del canal a utilizar

  • Name
    site_id
    Type
    integer
    is optional
    Description

    ID del sitio asociado al tenant. Solo aplica cuando se usa canal SMS o WhatsApp y el tenant tiene configurado el SiteMiddleware; en los demás casos se ignora.

    Ejemplo:123

Solicitud

POST
/api/notifications
curl -X "POST" {{baseURl}}/api/notifications \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <token>" \
  -d '{
    "locale": "es",
    "message": "This is a very long and generic message",
    "kind": "Horus",
    "site_id": 123,
    "channels": {
      "sms": {
        "phone_number": "+573124567890",
        "short_message": "SMS Message"
      },
      "whatsapp": {
        "phone_number": "+573124567890",
        "template": {
          "name": "hello_world",
          "lang": "en_US",
          "parameters": [
            "name"
          ]
        }
      },
      "email": {
        "email": "[email protected]",
        "subject": "email subject"
      }
    }
  }'

Respuesta

El mensaje fue enviado exitosamente.

  • Name
    status
    Type
    object
    is optional
    Description
  • Name
    channels
    Type
    array
    is optional
    Description

    Resultado de envío por canal, en el mismo orden en que se indicaron en la solicitud.


Respuesta

POST
/api/notifications
{
  "status": {
    "status": "OK",
    "reason": null,
    "message": "El mensaje fue enviado exitosamente",
    "date": "2022-08-12T15:44:17+00:00"
  },
  "channels": [
    {
      "channel": "sms",
      "delivered": true
    },
    {
      "channel": "whatsapp",
      "delivered": false,
      "reason": "template_rejected",
      "message": "La plantilla del mensaje fue rechazada"
    },
    {
      "channel": "email",
      "delivered": true
    }
  ]
}