El método está destinado al envío de un correo mediante la API en los casos en que la funcionalidad de las Campañas de envíos a través de la UI del Servicio, por determinados motivos, no resulta adecuada. Los datos se transmiten en formato application/json.
Solicitud HTTP
- URL:
https://sender-solutions.com/api/emails/send-instant-email/ - Método HTTP: POST
- Content-Type:
application/json
Cuerpo de la solicitud (JSON)
{
"SendEmail": {
"TrackingSettings": {
"TrackLinks": true,
"TrackPlainTextLinks": true,
"TrackOpen": true,
"TrackUnsubscribe": true
},
"EmailSettings": {
"InlineImages": true,
"SendAt": 1769356236,
"UseDkim": true,
"UseDkimSelector": null
},
"Email": {
"To": [
{
"Email": "cat@example.com",
"Name": "Mr Cat"
}
],
"Cc": [],
"Bcc": [],
"ReplyTo": [],
"From": {
"Email": "info@example.org",
"Name": "MyCompany Title"
},
"Headers": [
{
"Name": "X-Request-Id",
"Value": "X-abc-123"
}
],
"Html": "<!doctype html>\r <html lang=\"en\">\r <head>\r <meta charset=\"UTF-8\">\r <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\r <title>Test Email<\/title>\r <\/head>\r <body>\r <h1>Hello<\/h1>\r <p>Test email content<\/p>\r <\/body>\r <\/html>",
"PlainText": "Hello\r\nIt's test email content",
"Subject": "Test Email via API",
"Attachments": [
{
"ContentBase64": "VGVzdCBGaWxlIGNvbnRlbnQ=",
"ContentId": "ec91464b58363fac4924587afecf53d0",
"Disposition": "attachment",
"Filename": "Attachment12.txt",
"Type": "text/plain"
}
]
}
}
} Ejemplo de solicitud usando cURL
curl --location 'https://sender-solutions.com/api/emails/send-instant-email/' \
--header 'Content-Type: application/json' \
--header 'Authorization: {{api-token}}' \
--data-raw '{
"SendEmail": {
"TrackingSettings": {
"TrackLinks": true,
"TrackPlainTextLinks": true,
"TrackOpen": true,
"TrackUnsubscribe": true
},
"EmailSettings": {
"InlineImages": true,
"SendAt": 1769356236,
"UseDkim": true,
"UseDkimSelector": null
},
"Email": {
"To": [
{
"Email": "cat@example.com",
"Name": "Mr Cat"
}
],
"Cc": [],
"Bcc": [],
"ReplyTo": [],
"From": {
"Email": "info@example.org",
"Name": "MyCompany Title"
},
"Headers": [
{
"Name": "X-Request-Id",
"Value": "X-abc-123"
}
],
"Html": "<!doctype html>\r <html lang=\"en\">\r <head>\r <meta charset=\"UTF-8\">\r <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\r <title>Test Email<\/title>\r <\/head>\r <body>\r <h1>Hello<\/h1>\r <p>Test email content<\/p>\r <\/body>\r <\/html>",
"PlainText": "Hello\r\nIt'\''s test email content",
"Subject": "Test Email via API",
"Attachments": [
{
"ContentBase64": "VGVzdCBGaWxlIGNvbnRlbnQ=",
"ContentId": "ec91464b58363fac4924587afecf53d0",
"Disposition": "attachment",
"Filename": "Attachment12.txt",
"Type": "text/plain"
}
]
}
}
}'
Descripción de los campos
Si en los campos SendEmail.TrackingSettings.* o SendEmail.EmailSettings.* se transmite el valor null (o no se transmite el campo en absoluto), el sistema tomará por sí mismo la decisión sobre el procesamiento del correo. Se recomienda indicar siempre todos los campos de configuración importantes para usted, para que el comportamiento del sistema sea predecible.
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
SendEmail.TrackingSettings.TrackLinks | boolean | null | La configuración es responsable del seguimiento de los clics en los enlaces. Si está activada, los enlaces de la parte HTML del correo se modificarán para activar el seguimiento de los clics. | |
SendEmail.TrackingSettings.TrackPlainTextLinks | boolean | null | La configuración es responsable del seguimiento de los clics en los enlaces. Si está activada, los enlaces de la parte plain/text del correo se modificarán para activar el seguimiento de los clics. | |
SendEmail.TrackingSettings.TrackOpen | boolean | null | La configuración es responsable del seguimiento de la apertura del correo. | |
SendEmail.TrackingSettings.TrackUnsubscribe | boolean | null | La configuración es responsable del seguimiento de las bajas del envío. | |
SendEmail.EmailSettings.InlineImages | boolean | null | Si esta opción está activada, la parte HTML del correo se optimizará: las imágenes externas se añadirán como adjuntos inline (no se pueden descargar). El aspecto del correo no cambiará, pero los clientes de correo confiarán más en dicho correo. | |
SendEmail.EmailSettings.SendAt | int | null | Fecha mínima de envío del correo (unix timestamp). Se usa para el envío diferido. | |
SendEmail.EmailSettings.UseDkim | boolean | null | Si es necesario usar la firma DKIM. El sistema encontrará por sí mismo la clave DKIM adecuada para este correo. | |
SendEmail.EmailSettings.UseDkimSelector | string | null | Valor del selector de la clave DKIM que es necesario usar para la firma. La transmisión de un valor no vacío de este campo hace que el sistema considere la propiedad SendEmail.EmailSettings.UseDkim como activada, incluso si se transmite como false. Si no se encuentra una clave adecuada con el selector indicado, el sistema intentará encontrar y usar otra clave DKIM adecuada. | |
SendEmail.Email.To | array | Array de objetos con las claves Email y Name. Cada objeto corresponde a un destinatario concreto del correo. Se necesita al menos un destinatario. | |
SendEmail.Email.CcSendEmail.Email.BccSendEmail.Email.ReplyTo | array | Array de objetos con las claves Email y Name. Cada objeto corresponde a una dirección de email concreta y la añade al encabezado correspondiente del correo (Cc, Bcc, ReplyTo). | |
SendEmail.Email.To.*.Email | string | Dirección de email del destinatario. Campo obligatorio para cada objeto en SendEmail.Email.To.*. | |
SendEmail.Email.To.*.Name | string | Nombre del destinatario. Es deseable indicarlo si conoce este valor. | |
SendEmail.Email.Cc.*.EmailSendEmail.Email.Bcc.*.EmailSendEmail.Email.ReplyTo.*.Email | string | Dirección de email. Campo obligatorio para cada elemento transmitido de los arrays Cc, Bcc, ReplyTo. Los arrays en sí no son obligatorios. | |
SendEmail.Email.Cc.*.NameSendEmail.Email.Bcc.*.NameSendEmail.Email.ReplyTo.*.Name | string | Nombre del destinatario. Es deseable indicarlo si conoce este valor. | |
SendEmail.Email.From.Email | string | Dirección de email del remitente. En base a ella se determina el dominio de envío. El dominio debe estar añadido al proyecto en la Cuenta personal y confirmado. | |
SendEmail.Email.From.Name | string | Nombre del remitente. Se recomienda indicarlo para que a los suscriptores les quede claro de quién procede el correo. | |
SendEmail.Email.Headers | array | Array de objetos con las propiedades de cadena Name y Value. Estos encabezados se añadirán al correo. Algunos encabezados están protegidos y no se pueden añadir ni sobrescribir mediante la API. Transmita solo los encabezados no estándar realmente necesarios. | |
SendEmail.Email.Html | string | Código HTML del correo. Puede estar vacío o ausente si se transmite el campo SendEmail.Email.PlainText. | |
SendEmail.Email.PlainText | string | Versión de texto del correo. Puede estar vacía o ausente si se transmite el campo SendEmail.Email.Html. | |
SendEmail.Email.Subject | string | Asunto del correo. | |
SendEmail.Email.Attachments | array | Array de objetos, cada uno de los cuales corresponde a un adjunto. Los adjuntos no son obligatorios, pero si se transmiten — todos los campos, excepto ContentId, son obligatorios. ContentId se necesita solo para adjuntos con Disposition = inline. | |
SendEmail.Email.Attachments.*.ContentBase64 | string | Contenido del adjunto en formato base64. | |
SendEmail.Email.Attachments.*.ContentId | string | ContentId (identificador) del adjunto, debe ser único dentro de un mismo correo. Se necesita para adjuntos con Disposition = inline. | |
SendEmail.Email.Attachments.*.Disposition | string | Determina el tipo de adjunto. Valores posibles: attachment — adjunto que se puede descargar, y inline — adjunto para usar dentro del correo. | |
SendEmail.Email.Attachments.*.Filename | string | Nombre del adjunto. | |
SendEmail.Email.Attachments.*.Type | string | Tipo MIME del adjunto, por ejemplo application/pdf. |
Ejemplo de respuesta exitosa
{
"success": true,
"SendEmail": {
"SendMessageRequestId": 49,
"MessageId": "1vb1rzxzem2naah3dxp3t9k6zoj9d4hc@sender-solutions.com"
}
} En el cuerpo de la respuesta, el campo SendEmail.SendMessageRequestId corresponde al identificador único de la tarea de envío de un correo. El campo SendEmail.MessageId corresponde al valor único del encabezado Message-ID del correo.
Estos datos pueden ser útiles para realizar otras solicitudes a nuestra API o para contactar con el soporte técnico.