6. Web Service Consulta de Reportes Batch
SMSi ofrece la posibilidad de realizar consultas a su Web Service HTTP POST para consulta de reportes paginados con múltiples filtros NO excluyentes para conocer el estado de las transacciones. El servicio se consume con la siguiente petición
Autenticación
El usuario se autentica por medio de usuario y contraseña codificados (en base 64) en el encabezado “Authorization” bajo el estándar “basic” de la siguiente forma:
Authorization = Basic Base64({usuario}:{contraseña})
URL para consumir el servicio:
https://apitellit.aldeamo.com/SmsiWS/smsReportPost
Content-Type: application/json
JSON petición:
{
"filters": {
"clickReport": true,
"dateToSendFrom": "2018-01-01 01:00:00",
"dateToSendTo": "2018-01-09 01:00:00",
"externalIdList": [],
"groupName": "",
"gsmList": [],
"land": "57",
"messageFormatList": [],
"page": 1,
"referenceName": "",
"rowsPerPage": 10,
"shortCodeList": [],
"transactionIdList": [],
"userNameList": []
}
}
Parámetros:
Tabla 9 Parámetros HTTP POST Reportes
Parámetro | Descripción | Obligatoriedad |
---|---|---|
Usuario | Usuario de las credenciales creadas para el cliente. | Obligatorio |
Contraseña | Contraseña asignada para el cliente. | Obligatorio |
clickReport | Indica si se desea generar un reporte que cuente la información de acceso a una URL corta enviada; esto es un reporte detallado y lo hace por cada destinatario. Posibles valores: "true" o "false" | Opcional |
dateToSendFrom | Fecha inicial del rango temporal a buscar. | Obligatorio |
dateToSendTo | Fecha final del rango temporal a buscar. | Obligatorio |
externalIdList | Es una lista de ID por campaña (agrupado de transacciones) que se generan por envíos masivos Web. | Opcional |
groupName | Filtra los envíos por un nombre de un grupo que se tenga en la plataforma web. | Opcional |
land | Código del país sobre el cual realizar la búsqueda. | Obligatorio |
messageFormatList | Una lista para filtrar por formato de mensaje enviado
por su número que corresponde a: 1 - SMS Normal 2 – SMS Flash 3 – SMSDocs |
Opcional |
Page | Número de la página a traer; este parámetro va de la mano con "rowsPerPage". | Obligatorio |
rowsPerPage | Cantidad de registros a traer en la consulta. | Obligatorio |
externalI dList | Es una lista de ID por campaña (agrupado de transacciones) que se generan por envíos masivos Web. | Opcional |
referenceName | Filtrar por una lista de códigos cortos | Opcional |
transactionIdList | Es una lista de ID único que se genera al recibir la petición y se retorna al consumir el WS REST; este busca ese detallado. | Opcional |
userNameList | Una lista de los nombres de los usuarios por los que se desea filtrar el reporte; retorna un detallado. | Opcional |
Esquema de la respuesta
{
"status": 1,
"reason": "Request Received",
"result": {
"reportList": [
{
"dateIn": "2017-11-17 09:08:37",
"dateToSend": "2017-11-17 09:08:37",
"clickDateUpdated": null,
"clickCount": 0,
"totalMessages": 820281,
"sentMessages": 0,
"inProcessMessages": 0,
"failedMessages": 0,
"canceledMessages": 0,
"message": "[GSM][NOMBRE][MENSAJE]",
"shortCode": "N/A",
"transactionId": "",
"externalId": "26619831",
"userName": "jperea",
"processStatusName": "ERROR",
"groupName": " ",
"referenceName": "",
"operatorName": "Operator Unavailable",
"url": "",
"codedUrl": "",
"gsm": "N/A",
"messageFormatName": "DEF_SMS_MESS"
}
],
"totalPages": 130,
"currentPage": 1
}
}
Descripción de la respuesta:
• status: Código del resultado de la solicitud (número)
• reason: Resultado de la solicitud (texto)
• result: Detalle del resultado de la solicitud
– reportList: Listado de la información por transacción.
▪ dateIn: Fecha/Hora del ingreso de la petición al sistema. Formato yyyy-MM-dd HH:mm:ss.
▪ dateToSend: Fecha/Hora del salida de la petición al operador. Formato yyyy-MM-dd HH:mm:ss.
▪ clickCount: conteo de clics sobre una URL corta enviada.
▪ totalMessages: Cantidad de mensajes que ocupan el texto enviado.
▪ sentMessages: Muestra el total de mensajes en estado enviado que coinciden con el mismo externalId o Id de envío masivo Web.
▪ inProcessMessages: Muestra el total de mensajes en estado en proceso que coinciden con el mismo externalId o Id de envío masivo Web.
▪ failedMessages: Muestra el total de mensajes en estado fallido que coinciden con el mismo externalId o Id de envío masivo Web.
▪ canceledMessages: Muestra el total de mensajes en estado cancelado por el usuario que coinciden con el mismo externalId o Id de envío masivo Web.
▪ message: Contenido del SMS enviado.
▪ shortCode: Código usado como remitente del mensaje.
▪ transactionId: Id único del mensaje (Alfanumérico).
▪ externalId: Id de la campaña/envío cargado por masivos mediante la web.
▪ userName: Usuario que generó la transacción.
▪ processStatusName: Nombre del estado del mensaje.
▪ groupName: Nombre del grupo Web que contiene el número celular.
▪ referenceName: Nombre de la campaña/referencia del envío Web.
▪ operatorName: Nombre del operador del número celular*.
▪ url: Link original enviado mediante URLs cortas.
▪ codedUrl: Identificador de la URL Corta.
▪ gsm: Número celular al que se envió el mensaje.
▪ messageFormatName: Tipo de mensaje enviado.
– totalPages: Número total de páginas del reporte.
– currentPage: Página actual del reporte.
El operador celular puede no corresponder al real o mostrarse como genérico en algunos países/operaciones.
Código de Respuesta – Status/Reason:
Tabla 10 Parámetros Respuesta HTTP POST Reportes
Código | Descripción | Nivel |
---|---|---|
1 | Petición recibida con éxito | General/Detallado |
-1 | Error de autenticación | General |
-2 | Ruta no configurada | Detallado |
-3 | Número celular inválido | Detallado |
-4 | Crédito insuficiente | General |
-5 | Error interno de la transacción | General/Detallado |
-6 | URL a acortar inválida | Detallado |
-7 | Fecha de envío inválida | General |
-8 | Petición con formato inválido | General |
-9 | Usuario bloqueado por intentos fallidos | General |
-10 | Código de país inválido | General |
-11 | Mensaje del cuerpo inválido | General |
-12 | ID de transacción Inválida | Detallado |