Calcule as próximas execuções de uma expressão cron
Veja exatamente quando um agendamento cron vai rodar de novo, em UTC: 30 9 * * 1-5 contado a partir do meio-dia de 24 de julho de 2026 dá 9h30 nos dias 27, 28, 29 e 30 de julho. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Expressão cron
- 30 9 * * 1-5
- Carimbo de data/hora inicial
- 2026-07-24T12:00:00Z
- Quantidade
- 4
- Próximas execuções
- 2026-07-27T09:30:00Z, 2026-07-28T09:30:00Z, 2026-07-29T09:30:00Z, 2026-07-30T09:30:00Z
Transforme uma expressão cron Unix de cinco campos em uma lista concreta e ordenada de execuções futuras. 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. 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. 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. 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.
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.
O que acontece quando o dia do mês e o dia da semana estão definidos?
A data vale quando qualquer um dos dois coincide, seguindo a regra comum do Unix. Se um deles for um asterisco, só o outro decide quais datas contam.
Ferramentas relacionadas
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. |
Notas técnicas
Use os resultados em revisões, testes e operações
A API custa US$ 0,002 por solicitação, enquanto a ferramenta do navegador executa localmente o mesmo cálculo.
Casos de integraçã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 técnicas
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.