Calcule as próximas execuções de uma expressão cron
Transforme uma expressão cron Unix de cinco campos em uma lista concreta e ordenada de execuções futuras.
Executar grátis
Informe o agendamento, um instante inicial em ISO 8601 e a quantidade de ocorrências desejada. A calculadora rejeita expressões inválidas, aplica as regras conhecidas de listas, intervalos e passos, e retorna horários UTC padronizados para você revisar, testar, armazenar ou comparar antes de publicar uma tarefa agendada. O cálculo é totalmente determinístico.
Visualize um agendamento cron a partir de um instante fixo
Uma expressão cron é compacta, mas essa concisão facilita erros durante a revisão de uma implantação. Esta calculadora substitui a interpretação visual por uma sequência exata de horários. Digite os cinco campos na ordem tradicional: minuto, hora, dia do mês, mês e dia da semana. Depois, informe um instante inicial ISO 8601 com Z ou com um deslocamento numérico explícito. Toda ocorrência retornada será estritamente posterior a esse instante e estará normalizada em UTC. Assim, a mesma solicitação produz o mesmo resultado no navegador, nos testes ou no servidor. Um ponto inicial explícito é importante ao verificar agendamentos próximos da meia-noite, viradas de mês, anos bissextos ou mudanças de deslocamento. Você pode solicitar de uma a cinquenta ocorrências. A resposta contém apenas os horários em ordem e serve para uma prévia, um fixture ou uma comparação direta em uma etapa automatizada de liberação. O relógio atual não é consultado, portanto uma validação antiga continua reproduzível.
Entenda as regras cron de cinco campos aceitas
Cada campo aceita asterisco, número individual, lista separada por vírgulas, intervalo inclusivo ou passo. Portanto, expressões como */15, 1-5, 0,30 e 2-10/2 funcionam sem opções extras. Os minutos vão de 0 a 59; as horas, de 0 a 23; os dias do mês, de 1 a 31; os meses, de 1 a 12; e os dias da semana, de 0 a 7, sendo 0 e 7 equivalentes a domingo. Esta capacidade usa a relação Unix comum entre os dois campos de dia: quando ambos são restritos, uma data corresponde se qualquer um deles coincidir. Quando um campo é asterisco, o outro controla a data. A sintaxe exclui intencionalmente segundos, campo de ano, nomes como MON e extensões específicas como L, W, ? ou #. Rejeitar formatos não aceitos é mais seguro do que atribuir silenciosamente um sentido diferente daquele usado pelo agendador definitivo.
Use os resultados em revisões, testes e operações
Uma prévia é útil sempre que uma expressão cron passa entre uma pessoa e um sistema. Em uma tela de configuração, mostre as próximas ocorrências UTC antes que o usuário salve a tarefa. Na integração contínua, compare a sequência gerada com um fixture aprovado para evitar que uma alteração de frequência fique escondida em uma pequena edição. Ao investigar um incidente, comece imediatamente antes do período relevante e determine se a expressão configurada poderia produzir as execuções observadas. O cálculo é local e determinístico: não usa rede, estado persistente, valores aleatórios nem o fuso horário do dispositivo. Quantidade errada de campos, números fora do intervalo, faixas decrescentes, passo zero, datas impossíveis e símbolos incompatíveis geram um erro de entrada útil. A API custa US$ 0,002 por solicitação, enquanto a ferramenta do navegador executa localmente o mesmo cálculo. Como os horários usam UTC canônico, outros sistemas podem compará-los diretamente, sem converter formatos de exibição regionais.
Casos de uso
Confira um agendamento de implantação
Liste as próximas execuções durante a revisão e encontre um campo, intervalo ou frequência incorretos antes de ativar a tarefa.
Crie uma prévia do agendamento
Mostre horários UTC concretos ao lado de um editor cron para o usuário confirmar o comportamento da configuração.
Monte fixtures de teste determinísticos
Gere ocorrências esperadas a partir de um instante fixo e compare-as em testes automatizados sem consultar o relógio atual.
Perguntas frequentes
Qual formato cron é aceito?
A calculadora aceita expressões cron Unix tradicionais de cinco campos: minuto, hora, dia do mês, mês e dia da semana.
Os resultados incluem o instante inicial?
Não. Cada resultado é estritamente posterior ao instante informado, mesmo quando ele coincide exatamente com um minuto agendado.
Qual fuso horário é usado?
O deslocamento numérico do instante inicial é respeitado, e todas as execuções calculadas são retornadas em UTC com o sufixo Z. Os campos cron são avaliados em UTC.
O que acontece com uma expressão cron inválida?
A solicitação falha com um erro de entrada que descreve o campo ou valor incorreto. A calculadora nunca corrige nem tenta adivinhar uma expressão.
Quanto custa uma solicitação da API?
Cada solicitação da API custa US$ 0,002. O mesmo cálculo também pode ser executado localmente no navegador.
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/web/cron-next-runs \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"cron_expression":"30 9 * * 1-5","start_timestamp":"2026-07-24T12:00:00Z"}'const res = await fetch("https://api.kit.forhosting.com/web/cron-next-runs", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"cron_expression": "30 9 * * 1-5",
"start_timestamp": "2026-07-24T12:00:00Z"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/cron-next-runs",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"cron_expression": "30 9 * * 1-5",
"start_timestamp": "2026-07-24T12:00:00Z"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/cron-next-runs", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"cron_expression":"30 9 * * 1-5","start_timestamp":"2026-07-24T12:00:00Z"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"cron_expression":"30 9 * * 1-5","start_timestamp":"2026-07-24T12:00:00Z"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/cron-next-runs", 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
{
"cron_expression": "30 9 * * 1-5",
"start_timestamp": "2026-07-24T12:00:00Z"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.cron_next_runs",
"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.
Limites
max_items | 50 |
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. |