Domínios Personalizados

Envie emails da sua própria marca e acompanhe a prontidão de recebimento separadamente. Adicione um domínio para criar caixas de entrada em endereços como agent@yourdomain.com em vez do padrão @agentsend.io.

Visão Geral

Por padrão, toda caixa de entrada que você cria recebe um endereço gerado aleatoriamente no domínio compartilhado @agentsend.io . Isso funciona muito bem para começar, mas se você quer que seus agentes enviem email da sua própria marca, você pode adicionar um domínio personalizado.

Uma vez verificado o domínio, você pode criar caixas de entrada nele e enviar emails que parecem vir de endereços como support@yourdomain.com or assistant@yourdomain.com. Os destinatários veem seu domínio no cabeçalho From. As respostas recebidas seguirão qualquer roteamento MX que seu domínio usa, então aponte o MX para o AgentSend apenas se quiser que emails de entrada sejam entregues no AgentSend.

Domínios personalizados requerem a adição de registros DNS no registrador do seu domínio (Cloudflare, Route 53, Namecheap, etc.). O processo de verificação confirma que esses registros foram propagados antes de permitir envios.

Adicionando um Domínio

Registre um domínio no AgentSend enviando uma requisição POST request to /domains. A resposta inclui os registros DNS que você precisa adicionar.

javascript
const res = await fetch("https://api.agentsend.io/domains", {
  method: "POST",
  headers: {
    "x-api-key": process.env.AGENTSEND_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    domain: "yourdomain.com",
  }),
});

const domain = await res.json();
console.log(domain.id);               // "dom_..."
console.log(domain.sendingStatus);   // "pending"
console.log(domain.receivingStatus); // "pending"
console.log(domain.dnsRecords);      // combined DNS records to add

Exemplo de resposta

json
{
  "id": "dom_01hx4r2kt9fzv8s3n",
  "domain": "yourdomain.com",
  "sendingStatus": "pending",
  "receivingStatus": "pending",
  "verificationStatus": "pending",
  "createdAt": "2025-04-16T10:00:00.000Z",
  "dnsRecords": [
    {
      "type": "TXT",
      "host": "_amazonses.yourdomain.com",
      "value": "verification-token"
    },
    {
      "type": "CNAME",
      "host": "dkim-a._domainkey.yourdomain.com",
      "value": "dkim-a.dkim.amazonses.com"
    },
    {
      "type": "MX",
      "host": "yourdomain.com",
      "value": "mx.agentsend.io",
      "priority": 10
    }
  ]
}

Configuração de DNS

Após adicionar o domínio, vá ao seu provedor de DNS e adicione os registros retornados em dnsRecords. Os registros TXT e CNAME verificam a identidade do remetente e a assinatura DKIM. O registro MX só é necessário se você também quiser que o AgentSend receba emails de entrada para o domínio.

Tipo Host Value Propósito
MX yourdomain.com mx.agentsend.io (priority 10) Roteia emails de entrada para seu domínio para os servidores de email do AgentSend, para que respostas cheguem na caixa de entrada do seu agente.
TXT (verification) _amazonses.yourdomain.com SES verification token Confirma que você controla o domínio de envio no Amazon SES.
CNAME (DKIM) <token>._domainkey.yourdomain.com <token>.dkim.amazonses.com Assina criptograficamente mensagens enviadas para que os destinatários possam verificar que foram enviadas pelo AgentSend com a autorização do seu domínio.
💡

As mudanças de DNS geralmente propagam em poucos minutos, mas podem levar até 48 horas em casos raros. You can run dig TXT agentsend._domainkey.yourdomain.com em um terminal para verificar se seu registro DKIM está ativo.

Se seu domínio já possui um registro MX, adicionar o registro MX do AgentSend roteará todos os emails de entrada desse domínio para o AgentSend. Use um subdomínio (e.g. mail.yourdomain.com) se precisar preservar o roteamento de email existente.

Verificação

Depois de adicionar os registros DNS, acione uma verificação chamando POST /domains/{id}/verify. O AgentSend atualiza a verificação do remetente e verifica separadamente se seu MX aponta para o AgentSend para emails de entrada.

javascript
const res = await fetch(
  `https://api.agentsend.io/domains/${domain.id}/verify`,
  {
    method: "POST",
    headers: { "x-api-key": process.env.AGENTSEND_API_KEY },
  }
);

const result = await res.json();
console.log(result.sendingStatus);   // "verified" | "pending_dkim" | "failed"
console.log(result.receivingStatus); // "verified" | "pending" | "failed"

Fluxo de status

sendingStatus and receivingStatus são rastreados separadamente. verificationStatus permanece como um alias compatível com versões anteriores de sendingStatus.

Status Significado
pending O domínio foi registrado, mas a verificação ainda não foi tentada. Nenhum registro DNS foi verificado.
pending_dkim A propriedade do domínio foi verificada, mas os registros DKIM ainda não estão visíveis. Aguarde alguns minutos e tente novamente.
verified Todos os registros DNS necessários foram confirmados. O domínio está pronto para enviar emails. O recebimento ainda depende de para onde os registros MX do domínio apontam.
failed A verificação falhou. Um ou mais registros necessários não foram encontrados. Verifique se os registros estão corretamente inseridos no seu provedor de DNS e tente novamente.

Você pode chamar /domains/{id}/verify quantas vezes precisar. É seguro fazer polling — por exemplo, chame a cada 30 segundos até que o status se torne verified.

Propriedades do Domínio

Um objeto de domínio possui os seguintes campos:

Propriedade Tipo Descrição
id string Identificador único do domínio, prefixado com dom_.
domain string O nome de domínio conforme fornecido quando o domínio foi criado, e.g. yourdomain.com.
sendingStatus string Estado atual de verificação do remetente: pending, pending_dkim, verified, or failed.
receivingStatus string Estado atual do roteamento de entrada baseado em MX: pending, verified, or failed.
verificationStatus string Alias compatível com versões anteriores de sendingStatus.
dnsRecords array Array de objetos de registro DNS que devem ser adicionados ao seu provedor de DNS. Cada registro possui type, host, value, e opcionalmente priority.
createdAt string (ISO 8601) Data e hora de quando o domínio foi registrado no AgentSend.

Criando Caixas de Entrada em Domínios Personalizados

Uma vez que o domínio esteja verified, passe seu id as domainId ao criar uma caixa de entrada. O endereço da caixa de entrada usará seu domínio em vez de @agentsend.io.

javascript
const res = await fetch("https://api.agentsend.io/inboxes", {
  method: "POST",
  headers: {
    "x-api-key": process.env.AGENTSEND_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    displayName: "Support Agent",
    username: "support",       // becomes support@yourdomain.com
    domainId: "dom_01hx4r2kt9fzv8s3n",
  }),
});

const inbox = await res.json();
console.log(inbox.address); // "support@yourdomain.com"
💡

The username define a parte local do endereço de email. Se você omiti-lo, o AgentSend gera um aleatório. Você pode criar quantas caixas de entrada precisar no mesmo domínio verificado.

Excluindo um Domínio

Remova um domínio com uma requisição DELETE request to /domains/{id}.

javascript
await fetch(`https://api.agentsend.io/domains/${domain.id}`, {
  method: "DELETE",
  headers: { "x-api-key": process.env.AGENTSEND_API_KEY },
});

A exclusão de um domínio é permanente. Todas as caixas de entrada associadas ao domínio perderão seus endereços de email e não poderão mais enviar ou receber emails. As mensagens existentes nessas caixas de entrada são mantidas, mas novos emails não podem ser entregues. Esta ação não pode ser desfeita.