Todos os produtos
Search
Central de documentação

Direct Mail:SingleSendMail

Última atualização: Aug 18, 2026

Envia um único e-mail.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

A tabela abaixo descreve a autorização necessária para chamar esta API. Você pode defini-la em uma política do Resource Access Management (RAM). As colunas da tabela estão detalhadas abaixo:

  • Ação: As ações que podem ser usadas no elemento Action das instruções de política de permissão do RAM para conceder permissões para executar a operação.

  • API: A API que você pode chamar para executar a ação.

  • Nível de acesso: O nível de acesso predefinido concedido para cada API. Valores válidos: create, list, get, update e delete.

  • Tipo de recurso: O tipo de recurso que suporta autorização para executar a ação. Indica se a ação suporta permissão em nível de recurso. O recurso especificado deve ser compatível com a ação. Caso contrário, a política será ineficaz.

    • Para APIs com permissões em nível de recurso, os tipos de recursos obrigatórios são marcados com um asterisco (*). Especifique o Nome de Recurso Alibaba Cloud (ARN) correspondente no elemento Resource da política.

    • Para APIs sem permissões em nível de recurso, é exibido como Todos os Recursos. Use um asterisco (*) no elemento Resource da política.

  • Chave de condição: As chaves de condição definidas pelo serviço. A chave permite controle granular, aplicando-se somente a ações ou a ações associadas a recursos específicos. Além das chaves de condição específicas do serviço, o Alibaba Cloud fornece um conjunto de chaves de condição comuns aplicáveis a todos os serviços compatíveis com RAM.

  • Ação dependente: As ações dependentes necessárias para executar a ação. Para concluir a ação, o usuário RAM ou a função RAM deve ter permissões para executar todas as ações dependentes.

Ação

Nível de acesso

Tipo de recurso

Chave de condição

Ação dependente

dm:SingleSendMail

none

*All Resource

*

Nenhuma Nenhuma

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

AccountName

string

Sim

O endereço do remetente configurado no console de gerenciamento.

test***@example.net

AddressType

integer

Sim

O tipo de endereço. Valores válidos:

  • 0: conta aleatória

  • 1: endereço do remetente

1

TagName

string

Não

A tag criada no console do DirectMail. As tags são usadas para categorizar lotes de e-mails. Você pode consultar o status de envio de cada lote por tag. Se o recurso de rastreamento de e-mail estiver ativado, você deverá usar uma tag de e-mail ao enviar e-mails. O valor deve ter de 1 a 128 caracteres e pode conter letras, dígitos, sublinhados (_) e hifens (-).

test

ReplyToAddress

boolean

Sim

Especifica se deve ser usado o endereço de resposta configurado no console de gerenciamento (o endereço deve ser verificado). Valores válidos: true ou false.

true

ToAddress

string

Sim

O endereço de destino. Você pode especificar vários endereços de e-mail separados por vírgulas. São suportados no máximo 100 endereços (listas de distribuição são suportadas).

test1***@example.net

Subject

string

Sim

O assunto do e-mail. O valor não pode exceder 256 caracteres.

Subject

HtmlBody

string

Não

O corpo HTML do e-mail.

Nota: HtmlBody e TextBody são usados para diferentes tipos de conteúdo de e-mail. Você deve especificar um deles.

  • O limite de tamanho para passagem de parâmetros via URL é de aproximadamente 80 KB.

  • O limite de tamanho para passagem de parâmetros via Body com o novo SDK é de aproximadamente 8 MB (Java 1.4.0 ou posterior, Python3 1.4.0 ou posterior, PHP 1.4.0 ou posterior).

body

TextBody

string

Não

O corpo de texto do e-mail.

Nota: HtmlBody e TextBody são usados para diferentes tipos de conteúdo de e-mail. Você deve especificar um deles.

  • O limite de tamanho para passagem de parâmetros via URL é de aproximadamente 80 KB.

  • O limite de tamanho para passagem de parâmetros via Body com o novo SDK é de aproximadamente 8 MB (Java 1.4.0 ou posterior, Python3 1.4.0 ou posterior, PHP 1.4.0 ou posterior).

body

FromAlias

string

Não

O apelido do remetente. O valor não pode exceder 15 caracteres.

Por exemplo, se o apelido do remetente for definido como "Jane" e o endereço do remetente for test***@example.net, o destinatário verá o endereço do remetente como "Jane" test***@example.net.

Jane

ReplyAddress

string

Não

O endereço de resposta.

test2***@example.net

ReplyAddressAlias

string

Não

O apelido do endereço de resposta.

Jane

ClickTrace

string

Não

Especifica se o rastreamento de dados deve ser ativado. Valores válidos:

  • 1: Ativar rastreamento de dados.

  • 0 (padrão): Desativar rastreamento de dados.

0

UnSubscribeLinkType

string

Não

O tipo de link de cancelamento de inscrição. Valores válidos:

  • disabled: Nenhum link de cancelamento de inscrição é gerado.

  • default: A política padrão é usada. Um link de cancelamento de inscrição é gerado quando e-mails são enviados de endereços de remetente do tipo lote para domínios específicos, como aqueles que contêm as palavras-chave "gmail", "yahoo", "google", "aol.com", "hotmail", "outlook" ou "ymail.com". Para mais informações, consulte Mecanismo de geração e filtragem de links de cancelamento de inscrição.

O idioma de exibição é detectado automaticamente com base nas configurações do navegador do destinatário.

default

UnSubscribeFilterLevel

string

Não

O nível de filtragem. Para mais informações, consulte Mecanismo de geração e filtragem de links de cancelamento de inscrição.

Valores válidos:

  • disabled: Nenhuma filtragem é aplicada.

  • default: A política padrão é usada. Endereços em lote usam filtragem no nível do endereço do remetente.

  • mailfrom: Filtragem no nível do endereço do remetente.

  • mailfrom_domain: Filtragem no nível do domínio do remetente.

  • edm_id: Filtragem no nível da conta.

mailfrom_domain

Headers

string

Não

As configurações de cabeçalho do e-mail.

Tanto os campos padrão quanto os não padrão devem cumprir os requisitos de sintaxe para cabeçalhos definidos no padrão. No máximo 10 cabeçalhos podem ser passados através do campo headers ao enviar e-mails via API. Cabeçalhos que excederem esse limite serão ignorados. O SMTP não possui tal limite.

  1. Campos padrão

Message-ID, List-Unsubscribe, List-Unsubscribe-Post

Os campos padrão sobrescrevem os valores originais no cabeçalho do e-mail.

  1. Campos não padrão

Não diferenciam maiúsculas de minúsculas.

a. Campos com prefixo X-User- (não enviados para EventBridge ou Message Service MNS. Este é um requisito exclusivo da API. O SMTP permite quaisquer campos personalizados.)

b. Campos com prefixo X-User-Notify- (enviados para EventBridge e Message Service MNS. Tanto API quanto SMTP são suportados.)

Quando enviados para EventBridge ou MNS, esses campos são incluídos sob o campo header.

{ "Message-ID": "", "X-User-UID1": "UID-1-000001", "X-User-UID2": "UID-2-000001", "X-User-Notify-UID1": "UID-3-000001", "X-User-Notify-UID2": "UID-4-000001" }

IpPoolId

string

Não

O ID do pool de endereços IP dedicados. Usuários que adquiriram endereços IP dedicados podem usar este parâmetro para especificar o endereço IP de saída para este e-mail. Para mais informações, consulte IP dedicado.

e4xxxxxe-4xx0-4xx3-8xxa-74cxxxxx1cef

Attachments

array<object>

Não

Suportado apenas ao usar o novo SDK. Não suportado através de métodos OpenAPI ou de mecanismo de assinatura. Para mais informações, consulte Como envio e-mails com anexos através do SDK?.

object

Não

Suportado apenas ao usar o novo SDK. Não suportado através de métodos OpenAPI ou de mecanismo de assinatura.

AttachmentName

string

Não

Suportado apenas ao usar o novo SDK. Não suportado através de métodos OpenAPI ou de mecanismo de assinatura.

test.txt

AttachmentUrl

string

Não

Suportado apenas ao usar o novo SDK. Não suportado através de métodos OpenAPI ou de mecanismo de assinatura.

C:\Users\Downloads\test.txt

Template

object

Não

As informações do modelo para envio baseado em modelo.

Ao enviar com um modelo, os valores de HtmlBody e TextBody são ignorados.

TemplateId

string

Não

O ID do modelo.

xxx

TemplateData

object

Não

As variáveis e valores do modelo.

string

Não

O parâmetro da variável do modelo e seu valor.

{ "name": "Tom", "age": "22" }

BccAddress

string

Não

  • Especifica a lista de destinatários BCC (cópia oculta) para o e-mail.

  • O sistema envia uma cópia idêntica ao conteúdo principal do e-mail para cada endereço BCC. As informações de BCC não são visíveis para nenhum destinatário (incluindo ToAddress e BccAddress).

  • Para proteger a privacidade dos destinatários BCC, os recursos de rastreamento de e-mail são desativados por padrão para e-mails BCC. Isso significa que o sistema não registra dados comportamentais, como taxas de abertura ou taxas de cliques para e-mails BCC. No entanto, a cobrança por volume de envio, detalhes de envio e estatísticas de status de envio permanecem consistentes com os e-mails regulares.

  • No máximo 2 destinatários BCC podem ser especificados por envio.

Nota: A operação SingleSendMail não suporta o campo Cc (cópia carbono). Use SMTP se precisar desse recurso.

1@example.com,2@example.com

DomainAuth

boolean

Não

Especifica se a autenticação no nível de domínio deve ser ativada. Valores válidos:

  • true

  • false

Use este parâmetro apenas para autenticação no nível de domínio. Ignore-o para autenticação no nível de endereço do remetente.

  1. Crie o endereço domain-auth-created-by-system@example.com no console. Mantenha o prefixo antes do @ inalterado e use seu próprio nome de domínio como sufixo.

Cenário de API

Defina AccountName como um endereço de remetente personalizado para o domínio. O destinatário vê o endereço de remetente personalizado como o remetente.

Cenário de SMTP

a. Defina a senha do domínio através da operação ModifyPWByDomain.

b. Autentique usando o nome de domínio e a senha configurada. Passe um endereço personalizado como user@example.com como o remetente real (mailfrom). O destinatário vê user@example.com como o remetente.

true

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

object

EnvId

string

O ID do evento.

600000xxxxxxxxxx642

RequestId

string

O ID da solicitação.

2D086F6-xxxx-xxxx-xxxx-006DED011A85

Exemplos

Resposta de sucesso

JSON formato

{
  "EnvId": "600000xxxxxxxxxx642",
  "RequestId": "2D086F6-xxxx-xxxx-xxxx-006DED011A85"
}

Códigos de erro

Código de status HTTP

Código de erro

Mensagem de erro

Descrição

400 InvalidReceiverName.Malformed The format of the receiver name is invalid. It must contain the @ sign. The domain must only contain numbers, letters, underscores, minus signs, and periods. The account name must only contain numbers, letters, underscores, minus signs, and periods. O formato do destinatário é inválido. O endereço deve conter o símbolo @. O nome de domínio pode conter apenas dígitos, letras, sublinhados, hifens e pontos. O nome da conta pode conter apenas dígitos, letras, sublinhados, hifens e pontos.
404 InvalidMailAddress.NotFound The specified mail address is not found. O endereço do remetente não foi encontrado.

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.