API de integración de envío de mensajes RCS (Rich Communication Services) desde aplicaciones mediante peticiones https.
En su cuenta de usuario encontrará el Usuario API y el API Token, ambos son necesarios para realizar las peticiones API REST a las funciones de la API. Las Peticiones, por seguridad deben realizarse en POST y con protocolo HTTPS Seguro.
Para utilizar la Autenticación Básica debe incluir una cabecera en las peticiones del tipo: Authorization: Basic Base64StringAPI donde Base64StringAPI es la codificación en Base64 de la cadena UsuarioAPI:APIToken, puede encontrar su Usuario API y API Token en su cuenta de usuario en Tus Datos -> Configurar Cuenta.
Para generar el string codificado en Base64, simplemente genere el string UsuarioApi:APIToken y codifíquelo en base64 mediante cualquier función base64encode.
Conexiones en vacío: Es importante tener en cuenta que una conexión errónea de forma repetida será tratada por el sistema como spam y podrá llegar a bloquear temporalmente la conexión. Es conveniente evitar realizar repetidas conexiones con datos erróneos o conexiones rápidas 'en vacío' (sin realizar envíos) con los mismos datos para obtener el número de créditos o el mismo report.
Para obtener reports de forma óptima en tiempo real se recomienda configurar la API en el panel para recibirlos en un script de su web.Función de envío de mensajes RCS desde aplicaciones. Definición de parámetros necesarios.
ATENCIÓN: Chequee la sección de recepción de reports en tiempo real si desea recibir el estado de los mensajes y las interacciones del destinatario en tiempo real en un script de su web.
| Agente | string Example: Agente=mi-agente-rcs
Identificador del Agente RCS desde el que se realiza el envío. Si dispone de un único agente configurado en su cuenta, puede omitir este parámetro. |
| Destinatarios required | Array of arrays Example: Destinatarios=[{"Nombre":"Pedro Pérez","Telefono":"34600000001","Variables":[{"Nombre":"Motivo","Valor":"Verificación"},{"Nombre":"Codigo","Valor":"847291"}]}]
Array JSON con los destinatarios del mensaje RCS. Puede añadir variables si desea personalizar el mensaje por destinatario. Por ejemplo:
|
| Plantilla required | integer Example: Plantilla=1234567
El Id de la plantilla RCS creada en el panel de usuario. Es un parámetro obligatorio. Las variables dentro de la plantilla deben ser del tipo ###Variable### que luego se personalizarán por destinatario. |
| Fecha | string Example: Fecha=2022-05-01 15:10
Fecha en la que queda programado el envío; el mensaje se enviará en esa fecha. Por defecto "" que significa enviar inmediatamente. Formato Año-Mes-dia hora:minuto. La referencia horaria es CET/CEST (Zona horaria de España). |
| Intervaloprohibido | Array of arrays Example: Intervaloprohibido=[{"HoraInicio":"22:00","HoraFin":"9:00","Accion":"1"}]
Array JSON con las horas de inicio y fin del intervalo de envío prohibido.
|
| Referenciausuario | string Example: Referenciausuario=Tu referencia
Parámetro que se utiliza como referencia de toda la campaña para el usuario. Si se selecciona recibir el report en una URL, recibirá este parámetro en el resultado del envío y también la referencia de cada uno de los destinatarios si la ha indicado en el array de destinatarios. |
| Report | integer Example: Report=0
Si desea recibir reports en un script de su web (activando en panel de usuario la configuración API), indique 1. |
| Resp | string Enum: "TXT" "JSON" "XML" Example: Resp=JSON
Tipo de respuesta a mostrar como resultado de la llamada.
|
| Res required | integer <int32> Respuesta de la función solicitada
|
| Error | string En caso de Res -3, obtendrá un error descriptivo del problema en este parámetro. |
| idEnvio | integer Identificador de la campaña, equivalente a idCampaign recibido en el report. |
| Destinatarios | integer Número de destinatarios procesados. |
| Enviados | Array of arrays Datos de los destinatarios en un array en el que se añade idMensaje por cada destinatario. El idMensaje es el identificador del mensaje. Sirve, por ejemplo, como identificación para obtener el report del mensaje enviado. |
| NoEnviados | Array of arrays Destinatarios erróneos o no enviados. |
| Duplicados | integer Número de destinatarios no enviados debido a que estaban duplicados. |
curl --location --request POST 'https://api.mensatek.com/v7/EnviarRCS' \ --header 'Authorization: Basic BASE64ENCODEdelStringUsuarioAPI:APIToken' \ --form 'Destinatarios="[{\"Nombre\":\"Pedro Pérez\",\"Telefono\":\"34600000001\",\"Variables\":[{\"Nombre\":\"Motivo\",\"Valor\":\"Verificación\"},{\"Nombre\":\"Codigo\",\"Valor\":\"847291\"}]}]"' \ --form 'Plantilla="1234567"' \
[- {
- "Res": 10,
- "Error": "Falta parámetro obligatorio",
- "idEnvio": 1228853777,
- "Destinatarios": 2,
- "Enviados": [
- {
- "Telefono": "34600000001",
- "idMensaje": "108366478"
}
], - "NoEnviados": [
- {
- "Nombre": "Ana Gonzalez",
- "Telefono": "34600000002"
}
], - "Duplicados": 0
}
]RECEPCIÓN EN TIEMPO REAL DE LOS ESTADOS DE ENTREGA EN UN SCRIPT DE SU SERVIDOR. Activando la opción de recibir los reports en tiempo real en un script en su servidor desde su panel de usuario, recibirá una petición POST con el formato indicado cada vez que cada mensaje enviado cambie de estado. Puede configurar recibir las peticiones con autenticación básica y en formato JSON o FORM-DATA
Parámetros recibidos en su script en petición POST con la configuración especificada en su panel de usuario/configuración API.
| Servicio required | string Tipo de report que está recibiendo (el objetivo es distinguir entre los reports de los diferentes servicios). Los servicios a los que se refiere esta especificación pueden recibir | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Estado required | integer Estado del mensaje RCS enviado. Los estados posibles son:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Agente required | string Identificador del agente RCS utilizado en el envío. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Destinatario required | string Número de teléfono del destinatario al que se refiere el report, en formato internacional. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| RefCampaign required | string Referencia genérica de la campaña. Es la referencia genérica que ha indicado en el envío. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| RefMensaje required | string Referencia específica del destinatario. Es la referencia que ha indicado en el envío para este destinatario. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Fecha required | string Fecha del report | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| idCampaign required | integer Identificador único recibido como respuesta en la función de envío (idEnvio recibido en la función de envío). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| idMensaje required | integer Identificador único recibido como respuesta en la función de envío (idMensaje recibido en la función de envío). |
{- "Servicio": "RCS",
- "Estado": 11,
- "Agente": "mi-agente-rcs",
- "Destinatario": 34600000001,
- "RefCampaign": "12333-4545-23233",
- "RefMensaje": "36578294H",
- "Fecha": "2020-12-03 11:14:24",
- "idCampaign": 10573758,
- "idMensaje": 33434444443
}