Implementación API transaccionales

Nombre del servicio

POST https://api.envialosimple.email/api/v1/mail/send

Método de autenticación

Authorization: Bearer <clave API>

Parámetros

NombreTipo Descripción

from

string

Remitente del email. Requerido. Este campo puede informarse con varios formatos:

info@empresa.com

Empresa <info@empresa.com>

{"email": "info@empresa.com "}

{"email": "info@empresa.com ", "name": "Empresa"}

to

string

Destinatario del email. Requerido. Este campo puede informarse con varios formatos:

cliente@prueba.com

Cliente <cliente@prueba.com>{"email":"cliente@prueba.com"}

{"email":"cliente@prueba.com", "name": "Cliente"}

subject

string

Asunto del correo. Requerido.

html

string

Contenido del email en html.

Requerido informar el contenido en html o text o templateID.

text

string

Contenido del email en texto plano.

Requerido informar el contenido en html o text o templateID.

templateID

string

Contenido del email desde una plantilla. Debe informarse el ID de la plantilla.

Requerido informar el contenido en html o text o templateID.

attachments

object[]

Archivos adjuntos al email. Opcional.

En el contenido del correo electrónico podrán adjuntarse como archivos normales o dejarlos embebidos en el código usando la sintaxis dentro del código html <img src="cid:id"/>.

attachments.*.disposition

string

Tipo de adjuntos. Requerido. Valores posibles:

inline -> Embebidos en el diseño. Sólo para los contenidos html, no puede usasrse en plantillas.

attachment -> Adjuntos al email (comunes)

Attachments.*.id

string

Id del adjunto para incorporarlo embebido dentro del html.

Sólo requerido para attachments.disposition = inline.

attachments.*.filename

string

Nombre del archivo adjunto. Requerido.

attachments.*.disposition

string

Tipo de adjuntos. Requerido. Valores posibles:

inline -> Embebidos en el diseño

attachment -> Adjuntos normales (debajo del email)

attachments.*.content

string

Contenido del adjunto en Base64. Máximo: 15MB. Requerido.

substitutions

object[]

Variables. Opcional.

Estos valores serán reemplazados en el contenido del correo electrónico utilizando el formato {{var}}. Se puede utilizar en los campos de asunto, html y texto.

substitutions.*.var

string

La etiqueta tendrá el nombre de la variable y dentro el valor con el cual deberá reemplazarse.

OBS: En el valor no pueden inyectarse entidades HTML (ejemplo <p>, <h1>, etc).

Ejemplos

curl --location 'https://api.envialosimple.email/api/v1/mail/send' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYX..jE2NzgzOTA0MjYsImV' \
--header 'Content-Type: application/json' \
--data-raw '{
	"from": "notificaciones@empresa.com",
    "to": "cliente@prueba.com",
    "subject": "Hola {{nombre}} ya está disponible tu factura",
	"html": "<html><img src=\"cid:logo\"/> <br> <h4> <b>Hola {{nombre}} {{apellido}}</b> </h4> <p> Adjuntamos tu factura del mes {{mes}} </p> </html>",
    "substitutions": {
        "nombre": "Juan",
        "apellido": "Pérez",
        "mes": "02/2023"
    },
    "attachments": [
        {
            "id": "logo",
            "filename": "logo.jpg",
            "disposition": "inline",
            "content": "UEsDBBQABgAIAAAAIQDfpNJsWgEAACAFAAATAAgCW0Nvb…"
        },
        {
            "disposition": "attachment",
            "filename": "factura.doc",
            "content": "UEsDBBQABgAIAAAAIQDfpNJsWgEAACAFAAATAAgCW0Nvb…"
        }
    ]
}'

Errores

ErrorDescripción

Missing key 'from'

Es requerido indicar el remitente del email (from).

Missing key 'to'

Es requerido indicar el destinatario del email (to).

Missing key 'subject'

Es requerido indicar el asunto del email (subject).

A key 'text' or 'html' or 'templateID' must be provided.

Es requerido indicar el contenido del email: html y/o text o plantilla.

Key 'text' too large.

El campo "text" supera la cantidad máxima de caracteres permitidos (1M).

Key 'html' too large.

El campo "html" supera la cantidad máxima de caracteres permitidos (2M).

Missing key 'disposition' in attachment N.

Es requerido indicar el tipo de adjunto (disposition) para el adjunto N.

Missing key 'content' in attachment N.

Es requerido indicar el contenido (content) para el adjunto N.

Key 'content' too large in attachment N.

El campo "content" supera la cantidad máxima de caracteres permitidos (15M) para el adjunto N.

Missing key 'filename' in attachment N.

Es requerido indicar el contenido (filename) para el adjunto N.

Key 'content' is not a valid base64 encoded string in attachment N.

El campo "content" no contiene un string base64 válido para el adjunto N.

A key 'id' must be provided when content disposition is 'inline' in attachment N.

Es requerido indicar el identificador (id) para el adjunto N.

Substitution for email <target-email> contains a key name that exceeds the N chars limit.

El nombre de la variable supera el límite establecido de N caracteres (64).

Substitution for email <target-email> contains a value that exceeds the N chars limit at key '<key-name>'.

El valor de la variable supera el límite establecido de N caracterers (1024).

A key 'html' or 'templateID' only.

Solo debe indicarse un único tipo de contenido: html y/o text o plantilla.

Última actualización