O método é destinado ao envio de um e-mail por meio da API nos casos em que a funcionalidade de Campanhas de envios através da UI do Serviço, por determinadas razões, não é adequada. Os dados são transmitidos no formato application/json.
Requisição HTTP
- URL:
https://sender-solutions.com/api/emails/send-instant-email/ - Método HTTP: POST
- Content-Type:
application/json
Corpo da requisição (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"
}
]
}
}
} Exemplo de requisição 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"
}
]
}
}
}'
Descrição dos campos
Se nos campos SendEmail.TrackingSettings.* ou SendEmail.EmailSettings.* for transmitido o valor null (ou o campo não for transmitido de forma alguma), o sistema tomará a decisão sobre o processamento do e-mail por conta própria. Recomenda-se sempre indicar todos os campos de configuração importantes para você, para que o comportamento do sistema seja previsível.
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
SendEmail.TrackingSettings.TrackLinks | boolean | null | A configuração é responsável pelo rastreamento de cliques em links. Se ativada, os links na parte HTML do e-mail serão modificados para ativar o rastreamento de cliques. | |
SendEmail.TrackingSettings.TrackPlainTextLinks | boolean | null | A configuração é responsável pelo rastreamento de cliques em links. Se ativada, os links na parte plain/text do e-mail serão modificados para ativar o rastreamento de cliques. | |
SendEmail.TrackingSettings.TrackOpen | boolean | null | A configuração é responsável pelo rastreamento da abertura do e-mail. | |
SendEmail.TrackingSettings.TrackUnsubscribe | boolean | null | A configuração é responsável pelo rastreamento dos cancelamentos de assinatura do envio. | |
SendEmail.EmailSettings.InlineImages | boolean | null | Se a opção estiver ativada, a parte HTML do e-mail será otimizada: as imagens externas serão adicionadas como anexos inline (não é possível baixá-las). A aparência do e-mail não mudará, mas os clientes de e-mail confiarão mais em um e-mail assim. | |
SendEmail.EmailSettings.SendAt | int | null | Data mínima de envio do e-mail (unix timestamp). Usada para envio adiado. | |
SendEmail.EmailSettings.UseDkim | boolean | null | Se é necessário usar a assinatura DKIM. O sistema encontrará por conta própria a chave DKIM adequada para este e-mail. | |
SendEmail.EmailSettings.UseDkimSelector | string | null | Valor do seletor da chave DKIM que deve ser usada para a assinatura. A transmissão de um valor não vazio neste campo faz com que o sistema considere a propriedade SendEmail.EmailSettings.UseDkim ativada, mesmo que ela seja transmitida como false. Se não for encontrada uma chave adequada com o seletor indicado, o sistema tentará encontrar e usar outra chave DKIM adequada. | |
SendEmail.Email.To | array | Array de objetos com as chaves Email e Name. Cada objeto corresponde a um destinatário individual do e-mail. É necessário pelo menos um destinatário. | |
SendEmail.Email.CcSendEmail.Email.BccSendEmail.Email.ReplyTo | array | Array de objetos com as chaves Email e Name. Cada objeto corresponde a um endereço de e-mail individual e o adiciona ao cabeçalho correspondente do e-mail (Cc, Bcc, ReplyTo). | |
SendEmail.Email.To.*.Email | string | Endereço de e-mail do destinatário. Campo obrigatório para cada objeto em SendEmail.Email.To.*. | |
SendEmail.Email.To.*.Name | string | Nome do destinatário. É desejável indicar, se você conhecer esse valor. | |
SendEmail.Email.Cc.*.EmailSendEmail.Email.Bcc.*.EmailSendEmail.Email.ReplyTo.*.Email | string | Endereço de e-mail. Campo obrigatório para cada elemento transmitido dos arrays Cc, Bcc, ReplyTo. Os próprios arrays não são obrigatórios. | |
SendEmail.Email.Cc.*.NameSendEmail.Email.Bcc.*.NameSendEmail.Email.ReplyTo.*.Name | string | Nome do destinatário. É desejável indicar, se você conhecer esse valor. | |
SendEmail.Email.From.Email | string | Endereço de e-mail do remetente. Com base nele é determinado o domínio de envio. O domínio deve estar adicionado ao projeto na Conta pessoal e confirmado. | |
SendEmail.Email.From.Name | string | Nome do remetente. Recomenda-se indicar, para que fique claro aos assinantes de quem veio o e-mail. | |
SendEmail.Email.Headers | array | Array de objetos com as propriedades de string Name e Value. Esses cabeçalhos serão adicionados ao e-mail. Alguns cabeçalhos são protegidos e não podem ser adicionados ou redefinidos por meio da API. Transmita apenas os cabeçalhos não padronizados realmente necessários. | |
SendEmail.Email.Html | string | Código HTML do e-mail. Pode estar vazio ou ausente, se o campo SendEmail.Email.PlainText for transmitido. | |
SendEmail.Email.PlainText | string | Versão em texto do e-mail. Pode estar vazia ou ausente, se o campo SendEmail.Email.Html for transmitido. | |
SendEmail.Email.Subject | string | Assunto do e-mail. | |
SendEmail.Email.Attachments | array | Array de objetos, cada um dos quais corresponde a um anexo. Os anexos não são obrigatórios, mas se forem transmitidos — todos os campos, exceto ContentId, são obrigatórios. ContentId é necessário apenas para anexos com Disposition = inline. | |
SendEmail.Email.Attachments.*.ContentBase64 | string | Conteúdo do anexo no formato base64. | |
SendEmail.Email.Attachments.*.ContentId | string | ContentId (identificador) do anexo, deve ser único dentro de um mesmo e-mail. Necessário para anexos com Disposition = inline. | |
SendEmail.Email.Attachments.*.Disposition | string | Define o tipo do anexo. Valores possíveis: attachment — anexo que pode ser baixado, e inline — anexo para uso dentro do e-mail. | |
SendEmail.Email.Attachments.*.Filename | string | Nome do anexo. | |
SendEmail.Email.Attachments.*.Type | string | Tipo MIME do anexo, por exemplo application/pdf. |
Exemplo de resposta bem-sucedida
{
"success": true,
"SendEmail": {
"SendMessageRequestId": 49,
"MessageId": "1vb1rzxzem2naah3dxp3t9k6zoj9d4hc@sender-solutions.com"
}
} No corpo da resposta, o campo SendEmail.SendMessageRequestId corresponde ao identificador único da tarefa de envio de um e-mail. O campo SendEmail.MessageId corresponde ao valor único do cabeçalho Message-ID no e-mail.
Esses dados podem ser úteis para a execução de outras requisições à nossa API ou para o contato com o serviço de suporte técnico.