Agendar e-mail
O notify.email_scheduled agenda o envio de e-mail para a data e a hora que você definir: escreva a mensagem hoje e ela sai sozinha na sexta às 8h. Serve para lembrete de vencimento, aviso de manutenção e cobrança pontual — via API, pago por envio, sem cron rodando na sua máquina.
Escrever é uma hora, enviar é outra
O momento do envio muda o destino da mensagem. Uma cobrança que chega segunda às 8h é resolvida de manhã; a mesma cobrança no sábado às 23h morre soterrada. Um aviso de manutenção precisa sair antes da janela, não durante. Agendar separa as duas decisões: o texto se escreve quando há tempo e calma, o disparo acontece quando o destinatário está pronto para agir. Seu sistema prepara tudo com antecedência e ninguém fica de vigia.
Como marcar data, hora e fuso
A chamada em /notify/email-scheduled leva os campos do e-mail comum — destinatário, assunto, corpo — mais o momento do envio. Informe a hora com o fuso explícito para não haver ambiguidade: o horário de Brasília é UTC-3 o ano inteiro, já que o horário de verão acabou em 2019. Você recebe um task_id na hora do agendamento e a mensagem parte sozinha quando o relógio chegar lá.
Lembretes que não dependem de memória
O uso clássico no Brasil é o ciclo de cobrança: o boleto é emitido hoje e, no mesmo instante, o sistema já agenda o lembrete para três dias antes do vencimento. Se o cliente pagar antes, ótimo; se não, o aviso chega no momento em que ainda dá para pagar sem multa. O mesmo vale para renovação de contrato, retorno de orçamento e consulta marcada: o compromisso nasce com o lembrete já agendado.
O que você paga
Agendar não custa nada a mais: cada envio sai pelos mesmos US$ 0,002 de chamada e US$ 0,0035 de e-mail do disparo imediato — US$ 0,0055 por mensagem. Cem lembretes de vencimento no mês somam US$ 0,55. A cobrança é por uso, em dólar, com preço publicado; não há mensalidade nem taxa de agendamento parado.
Casos de uso
Lembrete antes do boleto vencer
A TecnoSul Soluções Digitais emite o boleto no dia 1º e agenda, na mesma hora, o lembrete para três dias antes do vencimento. O cliente recebe a linha digitável quando ela ainda resolve — e a cobrança constrangedora por telefone virou exceção.
Aviso de manutenção programada
Carlos Eduardo Souza vai atualizar o sistema no sábado às 2h. Na quarta, ele já deixa agendado o aviso para sexta às 17h — hora em que os clientes ainda estão no computador e podem se programar.
Cobrança mensal do MEI
Juliana Nascimento atende clientes de manutenção mensal de sites. Todo fechamento, ela agenda os e-mails de cobrança para o dia 1º às 9h. A rotina dela continua no ateliê; a cobrança sai sozinha.
Mensagem de aniversário com oferta
A Padaria Pão Dourado agenda, para o aniversário de cada cliente cadastrado, um e-mail com cupom de desconto na retirada. Ana Paula Ferreira recebe o dela às 9h do dia certo — e passa lá à tarde.
Perguntas frequentes
Em que fuso horário o e-mail sai?
No que você informar no agendamento. Para o Brasil, use o horário de Brasília (UTC-3, sem horário de verão desde 2019) e o disparo acontece na hora local que você espera.
Agendar custa mais caro que enviar na hora?
Não: o preço é idêntico ao envio imediato — US$ 0,002 pela chamada e US$ 0,0035 pelo e-mail. Você não paga nada pelo tempo de espera.
Dá para agendar envio recorrente, tipo todo dia 5?
Esta capacidade agenda envios pontuais: cada agendamento é uma mensagem com hora marcada. Para rotina que se repete, o KIT tem o agendador de tarefas recorrentes, que dispara no ritmo que você definir.
A mensagem fica guardada até a hora do envio?
Sim — é o que permite o disparo automático. Ela fica retida até o momento marcado e é processada para a entrega. Evite agendar conteúdo sensível com semanas de antecedência se não for necessário.
Como funciona o pagamento?
Por uso, em dólar, via PayPal. Não tem plano, não tem conta, não tem fidelidade: você paga os envios que agendar e mais nada.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/notify/email-scheduled \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/notify/email-scheduled", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/notify/email-scheduled",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/notify/email-scheduled", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/notify/email-scheduled", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"input": "…"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "notify.email_scheduled",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |