API Envío de EMAIL Certificado (7.0)

INTRODUCCION

API de integración de envío de mensajes EMAIL Certificados desde aplicaciones mediante peticiones https.

AUTENTICACIÓN

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 ralizarse 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.

A TENER EN CUENTA

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.
Respuesta de las peticiones: La mayoría de las funciones disponen de un parámetro denominado ‘Resp’. Este parámetro define el formato de la respuesta que se devolverá. Puede ser TXT, JSON, XML o no definido. Se recomienda siempre definir este parámetro ya que todas las funciones, por compatibilidad con versiones anteriores de la API, responden por defecto (si no se define este parámetro) tal y como lo hacían en versiones antiguas. En estos resultados de versiones de API anteriores se obvian algunas de las variables que se incluyen en esta versión de la API y que consideramos importantes para facilitar la integración e información de la cuenta. En los ejemplos incluidos siempre se tiene en cuenta que ha definido el parámetro. Si está trabajando directamente con la API versión >= 5, asumiremos que ha definido el parámetro en todas las peticiones.
Funcionamiento recomendado: El funcionamiento recomendado, por ser el más sencillo y, a la vez, el más profesional es el siguiente:
- PROCESO 1: Envío de EMAIL Certificado: Descrito en la función EnviarEMAILCertificado de este documento.
- PROCESO 2: Recepción automática de reports en su web (proceso descrito en el la sección 'Recepción de reports de entrega'.

Enviar Email Certificado

/EnviarEMAILCERTIFICADO

Función de envío de mensajes Email Certificados 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 correos y las interacciones del destinatario en tiempo real en un script de su web.

query Parameters
Remitente
required
string
Example: Remitente=tucorreo@tudominio.com

Remitente del Correo Certificado. Debe ser un email válido y haber sido validado previamente en el panel de control de usuario.

Destinatarios
required
Array of arrays
Example: Destinatarios=[{"Nombre":"Pedro Pérez","Email":"destinatario@eldominio.com","Variable_1":"Variable para personalizar asunto y mensaje por destinatario"}]

Array JSON con los destinatario del correo certificado. Puede añadir variables si desea personalizar Asunto y Mensaje por destinatario. Por ejemplo:


   [
    {
      "Nombre": "Pedro Aicart",
      "Email": "pedro@dominio.com"
    },
    {
      "Nombre": "Ana Aguado",
      "Email": "ana@empresa.com"
    }
   ]
  

Asunto
required
string
Example: Asunto=Esto es una Notificacion para (Nombre) con motivo de (VAriable_1)

El asunto del correo electrónico certificado / de la notificación

Mensaje
required
string
Example: Mensaje=A la atención de (Nombre) con NIF (DNI), Te enviamos esta notificación .....

Mensaje que se enviará al/ a los destinatarios

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).

Adjuntos
Array of arrays

Array en JSON con los adjuntos si desea incluirlos en el mensaje. Por ejemplo:


   [
    {
      "Nombre": "documento.pdf",
      "Contenido": "JVBERi0xLjcNJeLjz9MNCjg0IDAgb2JqDTw...."
    },
    {
      "Nombre": "otrodocumento.docx",
      "Contenido": "IyBleHBvcnRlZCBmcm9tIGJhY2ts....."
    }
   ]
  

Referenciausuario
string
Example: Referenciausuario=Tu referencia

Parámetro que se utiliza como referencia para el usuario. Si se selecciona recibir el report en una URL, recibirá este parámetro en el resultado del envío.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Tipo de respuesta a mostrar como resultado de la llamada.
ANT - (Obsoleto). Se mantiene por compatibilidad con versiones anteriores
JSON - La respuesta la obtendrá en JSON
XML - La respuesta la obtendrá en XML
TXT - La respuesta la obtendrá en formato Texto

Responses

Response Schema:
Array
Res
required
integer <int32>

Respuesta de la función solicitada
>0 Número de mensajes enviados.
-1 Error de autenticación.
-2 No hay créditos suficientes.
-3 Error en los datos de la llamada. Faltan Parámetros obligatorios. En este caso, obtendrá un parámetro adicional denominado Error con la descripción del error.
-4 Fichero adjunto no permitido.
-5 No dispone de créditos suficientes.

Error
string

En caso de Res -3 , obtendrá un error descriptivo del problema en este parámetro.

Destinatarios
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 o grupo de mensajes enviados. Sirve, por ejemplo, como identificación para obtener el report del mensaje enviado (si el teléfono ha sido dado de baja, tiempos de entrega, etc…). Se recibirá en las peticiones si activa la recepción de reports en tiempo real en un script de su web/servidor.

Cred
double

Créditos que restan en la cuenta de usuario tras el envío.

Enviados
integer

Número de mensajes efectivamente enviados.

NoEnviados
integer

Número de destinatarios erróneos/no enviados.

Duplicados
integer

Número de destinatarios no enviados debido a que estaban duplicados.

CreditosUsados
integer

Número de Créditos utilizados.

Request samples


curl --location --request POST 'https://api.mensatek.com/v7/EnviarEMAILCERTIFICADO' \ 
--header 'Authorization: Basic BASE64ENCODEdelStringUsuarioAPI:APIToken' \ 
--form 'Remitente="tucorreo@tudominio.com"' \ 
--form 'Destinatarios="[{\"Nombre\":\"Pedro Pérez\",\"Email\":\"destinatario@eldominio.com\",\"Variable_1\":\"Variable para personalizar asunto y mensaje por destinatario\"}]"' \ 
--form 'Asunto="Esto es una Notificacion para (Nombre) con motivo de (VAriable_1)"' \ 
--form 'Mensaje="A la atención de (Nombre) con NIF (DNI), Te enviamos esta notificación ....."' \ 

Response samples

Content type
[
  • {
    }
]

Recepción de reports de entrega y cambios de estado de mensajes enviados

https://{SuDominio}/path/de/su/script/de/recepción/de/reports

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

Request Body schema:

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 puede recibir EMAILCERTIFICADO Si el servicio se refiere a un report de un EMAIL Certificado

Resultado
required
integer

Estado de la notificación enviada. Los estados posibles son:

ESTADO DESCRIPCION SIGNIFICADO
`10` Apertura Registrada Se ha producido una apertura del correo enviado.
`11` Entregado al destinatario El EMAIL Certificado ha sido entregado y Certificado. Dispone de un certificado en formato PDF con sellado de Tiempo. El sistema seguirá grabando las interacciones.
`12` Lectura/Acceso al contenido Significado:El destinatario ha accedido a la lectura del contenido de la notificación.
`13` Entregado, acceso y descarga Significado: El destinatario ha recibido la notificación por correo electrónico, la ha abierto, se ha registrado la lectura y, adicionalmente, ha descargado los adjuntos enviados.
`14` El destinatario ha respondido Significado: Hemos registrado una respuesta por parte del destinatario. Puede certificar la respuesta solicitando una adenda certificada.
`29` Mensaje Cancelado Significado: El mensaje ha sido cancelado por el usuario antes de su envío.
`50` El mensaje no puede entregarse Significado: Ha ocurrido un error en destino. Por ejemplo que el destinatario no existe.
`53` Notificación Expirada Significado: El EMAIL Certificado No ha podido ser entregado, la notificación está expirada.
`1000` El EMAIL Certificado ha sido enviado. Significado: El EMAIL Certificado ha sido enviado, se está intentando entregar al servidor destino.
`1001` EMAIL Certificado Programado Significado: En mensaje ha sido programado y se entregará a la hora indicada.
`1002` EMAIL Certificado en proceso de envío Significado: Se está procediendo al envío del mensaje.
`1003` Reintentando Significado: Ha habido un problema en destino, el sistema está reintentando.
Remitente
required
string

Remitente utilizado en el envío.

Destinatario
required
string

Correo del destinatario al que se refiere el report.

Fecha
required
string

Fecha del report (fecha en la que la operadora que da servicio al móvil destino comunica el nuevo estado)

Asunto
required
string

Asunto del mensaje enviado

idMensaje
required
integer

Identificador único recibido como respuesta en la función de envío (idMensaje recibido en la función de envío)

Referencia
required
string

Referencia del usuario que se envió durante la petición de envío.

CSV
string

Código Seguro de Verificación recibido sólo en caso de que ya disponga de certificados generados

Request samples

Content type
{
  • "Servicio": "EMAILCERTIFICADO",
  • "Resultado": 11,
  • "Remitente": "tucorreo@tudominio.com",
  • "Destinatario": "destino@dominio.com",
  • "Fecha": "2020-12-03 11:14:24",
  • "Asunto": "Asunto del email",
  • "idMensaje": 10573758,
  • "Referencia": "Su referencia si la indicó",
  • "CSV": "ASYYFRE5492HN776TFD"
}

Cancelar Email Certificado

/CancelarEMAILCERTIFICADO

Función para cancelar un Email Certificado programado previamente mediante la función de envío.

query Parameters
Idmensaje
required
integer
Example: Idmensaje=1283876988

Identificador devuelto en la función de envío.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Tipo de respuesta a mostrar como resultado de la llamada.
ANT - (Obsoleto). Se mantiene por compatibilidad con versiones anteriores
JSON - La respuesta la obtendrá en JSON
XML - La respuesta la obtendrá en XML
TXT - La respuesta la obtendrá en formato Texto

Responses

Response Schema:
Array
Res
required
integer <int32>

Respuesta de la función solicitada
>0 Número de mensajes cancelados.
-1 Error de autenticación.
-2 atos incorrectos (Sólo puede cancelar identificadores suyos, si intenta cancelar identificadores de mensaje de otro usuario, se podría considerar ataque y limitar el acceso de su conexión).
-3 Error en los datos de la llamada. Faltan Parámetros obligatorios. En este caso, obtendrá un parámetro adicional denominado Error con la descripción del error.
-4 El mensaje ya está enviado.
-5 El mensaje ya está cancelado.

Cred
double

Créditos que restan en la cuenta de usuario tras el envío.

Request samples


curl --location --request POST 'https://api.mensatek.com/v7/CancelarEMAILCERTIFICADO' \ 
--header 'Authorization: Basic BASE64ENCODEdelStringUsuarioAPI:APIToken' \ 
--form 'Idmensaje="1283876988"' \ 

Response samples

Content type
[
  • {
    }
]

Reprogramar Email Certificado

/ReprogramarEMAILCERTIFICADO

Función para reprogramar un email previamente programado mediante la función de envío que fue programado para ser procesado en el futuro..

query Parameters
Idmensaje
required
integer
Example: Idmensaje=1283876988

Identificador devuelto en la función de envío.

Fecha
required
string
Example: Fecha=2022-12-03 11:14:24

Nueva fecha de envío.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Tipo de respuesta a mostrar como resultado de la llamada.
ANT - (Obsoleto). Se mantiene por compatibilidad con versiones anteriores
JSON - La respuesta la obtendrá en JSON
XML - La respuesta la obtendrá en XML
TXT - La respuesta la obtendrá en formato Texto

Responses

Response Schema:
Array
Res
required
integer <int32>

Respuesta de la función solicitada
>0 Número de mensajes reporgramados.
-1 Error de autenticación.
-2 Datos incorrectos (Sólo puede modificar mensajes programados con identificadores enviados desde su cuenta, si intenta modificar identificadores de mensaje de otro usuario, se podría considerar ataque y limitar el acceso de su conexión).
-3 Error en los datos de la llamada. Faltan Parámetros obligatorios. En este caso, obtendrá un parámetro adicional denominado Error con la descripción del error.
-4 El mensaje ya está enviado.
-5 El mensaje está cancelado.
-6 La nueva fecha no es correcta.
-7 La nueva fecha ya ha pasado.

Cred
double

Créditos que restan en la cuenta de usuario tras el envío.

Request samples


curl --location --request POST 'https://api.mensatek.com/v7/ReprogramarEMAILCERTIFICADO' \ 
--header 'Authorization: Basic BASE64ENCODEdelStringUsuarioAPI:APIToken' \ 
--form 'Idmensaje="1283876988"' \ 
--form 'Fecha="2022-12-03 11:14:24"' \ 

Response samples

Content type
[
  • {
    }
]

Consulta y descarga EMAIL Certificado

/GetCertificadoEMAILCERTIFICADO

Obtención del fichero PDF con el certificado del mensaje enviado a un móvil mediante la API. Esta función se ejecuta, habitualmente, como respuesta a una recepción de report con estado de certificado (ejemplo resultado 14 -entregado y certificado- en EMAIL Certificado y 17, 160 ó 181 -contrato firmado/perfeccionado y certificado- en caso de EMAIL Contrato). Se descarga un report y PDF si se especifica el Teléfono o todos los destinatarios del mensaje si no se especifica.

query Parameters
Idmensaje
required
integer
Example: Idmensaje=1283876988

Identificador devuelto en la función de envío.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Tipo de respuesta a mostrar como resultado de la llamada.
ANT - (Obsoleto). Se mantiene por compatibilidad con versiones anteriores
JSON - La respuesta la obtendrá en JSON
XML - La respuesta la obtendrá en XML
TXT - La respuesta la obtendrá en formato Texto

Responses

Response Schema:
string

Request samples


curl --location --request POST 'https://api.mensatek.com/v7/GetCertificadoEMAILCERTIFICADO' \ 
--header 'Authorization: Basic BASE64ENCODEdelStringUsuarioAPI:APIToken' \ 
--form 'Idmensaje="1283876988"' \ 

Response samples

Content type
En caso de éxito se descarga un fichero zip. Contenido del ZIP:
-  Certificados en formato PDF
-  Fichero CSV con el resultado del mensaje certificado a cada destinatario.

Consulta Simple de Report de EMAIL Certificado

/GetReportEMAILCERTIFICADO

Función para obtener el report de un email certificado enviado. Se recomienda activar la recepción de reports en su web en lugar de utilizar esta función. Las peticiones en bucle (petición continua del estado de/de los mismos mensajes en blucle) se consideran ataque y puede bloquear su conexión.

query Parameters
Idmensaje
required
integer
Example: Idmensaje=1283876988

Identificador devuelto en la función de envío.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Tipo de respuesta a mostrar como resultado de la llamada.
ANT - (Obsoleto). Se mantiene por compatibilidad con versiones anteriores
JSON - La respuesta la obtendrá en JSON
XML - La respuesta la obtendrá en XML
TXT - La respuesta la obtendrá en formato Texto

Responses

Response Schema:
Array
Res
required
integer <int32>

Respuesta de la función solicitada
1 Operación correcta.
-1 Error de autenticación.
-2 No tiene permiso para consultar este mensaje.
-3 Error en los datos de la llamada. Faltan Parámetros obligatorios. En este caso, obtendrá un parámetro adicional denominado Error con la descripción del error.
-4 Error en respuesta.

Programado
string

Fecha a la que se envió o enviará el mensaje.

Remitente
string

Remitente del email certificado.

Destinatario
string

Destinatario del email certificado.

Cred
double

Créditos que restan en la cuenta de usuario tras el envío.

Estado
integer

Estado actual del mensaje.

txtEstado
string

Descripción en texto del estado del mensaje.

Request samples


curl --location --request POST 'https://api.mensatek.com/v7/GetReportEMAILCERTIFICADO' \ 
--header 'Authorization: Basic BASE64ENCODEdelStringUsuarioAPI:APIToken' \ 
--form 'Idmensaje="1283876988"' \ 

Response samples

Content type
[
  • {
    }
]

Consulta de Créditos

/GetCreditos

Función que devuelve el número de créditos en la cuenta. Es una función de uso muy esporádico ya que la mayoría de las funciones devuelven en sus respuestas el número de Créditos restante en el usuario. Por tanto, se suele utilizar simplemente como prueba de funcionamiento o para obtener el número de créditos de forma ocasional

query Parameters
Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Tipo de respuesta a mostrar como resultado de la llamada.
ANT - (Obsoleto). Se mantiene por compatibilidad con versiones anteriores
JSON - La respuesta la obtendrá en JSON
XML - La respuesta la obtendrá en XML
TXT - La respuesta la obtendrá en formato Texto

Responses

Response Schema:
Array
Res
required
integer <int32>

Respuesta de la función solicitada
1 La función concluyó con éxito.
-1 Error de autenticación.

Cred
required
double

Créditos que restan en la cuenta de usuario tras el envío.

Request samples


curl --location --request POST 'https://api.mensatek.com/v7/GetCreditos' \ 
--header 'Authorization: Basic BASE64ENCODEdelStringUsuarioAPI:APIToken' \ 

Response samples

Content type
[
  • {
    }
]