Estatus de envio (Callback e DLR)
Existen dos maneras de obtener los estatus de envíos de los mensajes, son ellas:
Webhook - Recibir los estatus en un webservice de su empresa (recomendado)
Cuando entregamos el mensaje en la operadora, o en el momento que la operadora nos informa que se entrego el mensaje en el aparato, la información es pasada instantáneamente para usted.
API de consulta - Hacer solicitudes de consulta en nuestra API sms-status.
Los estatus quedan disponibles por 3 días, e pueden ser consultados por el UUID que Sinch retorno al recibir el mensaje de su empresa, o por el ID que su empresa paso al entregar el mensaje para Sinch. La desventaja de esta opción de consulta al revés de webhook, es que usted hará solicitudes de consulta de un ID que puede todavía no haber sido entregado en la operadora o en el aparato, en este caso, una serie de solicitudes innecesarias serán realizadas. Por ejemplo, si un usuario estaba con el aparato apagado cuando envio un mensaje para el y lo encendió dos horas después, usted consultara este ID innumerables veces por dos horas. En el caso de la utilización de webhook, esta información seria enviada para usted en el momento que el mensaje fuese entregado en el aparato, sin solicitudes vaciás.
¡IMPORTANTE! Las consultas de estado tienen un límite de 1 solicitud por segundo por dirección IP. Las solicitudes, más allá de este límite, seran respondidas con el código de estado HTTP 429.
Estatus via webhook (entrega en su webservice)
Para configurar el envió de los Callbacks y DRs (dudas sobre los términos consulte la pestaña Términos Importantes) primeramente es necesario loguear en Sinch messaging las configuraciones de la API, en el formulario de configuración usted podrá proveer las URLs para donde serán enviados los estatus de envió (Callbacks) y los estatus de confirmación de entrega en el aparato (DRs)
Después de la inclusión de su webhook en el portal arriba, las configuraciones serán replicadas para nuestra plataforma en hasta 10 minutos, y llamaremos su URL cuando las siguientes acciones ocurran:
Accion | Estatus de retorno enviado |
---|---|
Después que un mensaje fue entregado o no, en la operadora | API de estatus de envió (callback) |
Cuando un mensaje fue entregado o no, en el aparato del cliente | API de Delivery Report (DRs) |
Campos JSON respuesta Callbacks (sent status)
Campo | Descripción |
---|---|
id | UUID generado del mensaje |
correlationId | Su identificación de este mensaje |
carrierId | Identificador de la operadora |
carrierName | Nombre de la operadora |
destination | Número de telefone da mensagem enviada |
sentStatusCode | Códigos de estatus generado por Sinch para mensajes indicando el estatus de envió. Verifique en codigos de status para mas informaciones. |
sentStatus | descripción de estatus de envió. Verifique en códigos de estatus para mas informaciones. |
sentAt | Hora do envió, el formato utilizado es Unix_time. |
sentDate | Fecha que el mensaje fue enviado. Formato: yyyy-MM-dd’T'HH:mm:ssZ |
campaignId | Identificador de campaña en el caso que exista. |
extraInfo | Cualquier información extra adicionada por el cliente en el envió del mensaje |
Ejemplo JSON Estatus de Envio (callback - entrega en la operadora)
Campos JSON respuesta Delivery Reports (DRs)
Campo | Descripción |
---|---|
id | UUID generado del mensaje |
correlationId | Su identificación de este mensaje |
carrierId | Identificador de la operadora |
carrierName | Nombre de la operadora |
destination | Número de telefone da mensagem enviada |
sentStatusCode | Códigos de estatus generado por Sinch para mensajes indicando el estatus de envió. Verifique en codigos de status para mas informaciones. |
sentStatus | descripción de estatus de envió. Verifique en códigos de estatus para mas informaciones. |
sentAt | Hora do envió, el formato utilizado es Unix_time. |
sentDate | Fecha que el mensaje fue enviado. Formato: yyyy-MM-dd’T'HH:mm:ssZ |
deliveredStatusCode | Código de estatus generado por Sinch para un mensaje indicando el estatus de envió. Verifique en el código de estatus para mas informaciones |
deliveredStatus | descripción de estatus de envió. Verifique en código de estatus para mas informaciones. |
deliveredAt | Hora do envió, el formato utilizado es Unix_time. |
deliveredDate | Fecha que el mensaje fue enviado. Formato: yyyy-MM-dd’T'HH:mm:ssZ |
campaignId | Identificador de campaña en el caso que exista. |
extraInfo | Cualquier información extra adicionada por el cliente en el envió del mensaje |
Ejemplo JSON Estatus de Envio (callback - entrega en la operadora)
Consulta Estatus via solicitud HTTP
Para obtener una lista del estado aún no consultado, puede realizar una solicitud GET a la siguiente URL:
GET https://api-messaging.wavy.global/v1/sms/status/list
Observe que este endpoint solo devuelve los estados que aún no ha enviado.
Respuesta
Campos JSON de respuesta:
Campo | Detalles | Tipo |
---|---|---|
id | UUID generado en la solicitud para el mensaje | String |
correlationId | Mismo correlationId de la solicitud | String |
carrierId | ID de la operadora, para mas informaciones consulte el código de error | Long |
carrierName | Nombre da la operadora | String |
destination | Número de telefono del mensaje enviado | String |
sentStatusCode | sentStatusCode | Códigos de estatus generado por Sinch para mensajes indicando el estatus de envió. Verifique en codigos de status para mas informaciones. |
sentStatus | Descripción de estatus de envió. Verifique en códigos de estatus para mas informaciones. | String |
sentStatusAt | Cuando el mensaje fue enviado. Es un Epoch Date | Long |
sentStatusDate | Cuando el mensaje fue enviado. Formato yyyy-MM-dd’T'HH:mm:ssZ. Formato de fecha con hora y zona horaria (ISO 8601) | String |
deliveredStatusCode | Código de estatus indicando el estatus de envió. Verifique en el código de estatus para mas informaciones. | Long |
deliveredStatus | Descripción de estatus de envió. Verifique en código de estatus para mas informaciones. | String |
deliveredAt | Cuando el mensaje fue enviado. Es un Epoch Date | Long |
deliveredDate | Cuando el mensaje fue enviado. Formato yyyy-MM-dd’T'HH:mm:ssZ. Formato de fecha con hora y zona horaria (ISO 8601) | String |
campaignId | Identificador de campaña | Long |
extraInfo | Cualquier información extra adicionada por el cliente en el envió del mensaje | String |
Last updated