Cron como Serviço
Agende tarefas com expressões padrão de 5 campos ou macros @daily. Gerencie entradas via REST, ative/desative-as e defina auto-expiração — sem SSH necessário.
# Criar uma tarefa cron que executa diariamente às 9h
hoody cron create root \
--schedule "0 9 * * *" \
--command "/usr/local/bin/backup.sh" \
--comment "Backup diário às 9h"
# Resposta
[
"id": "7d3f2a1b-8c4e-4f9a-b2d5",
"schedule_human": "Às 09:00",
"enabled": true
]
# Desativar uma tarefa temporariamente
hoody cron update root $ENTRY_ID --enabled false
# Entrada desativada
Todo Padrão de que Você Vai Precisar
Agendamentos prontos para uso baseados na documentação — cada um verificado contra o runtime de expressões real.
Agendamento em um relance
Quatro entradas gerenciadas em um eixo contínuo — próximas execuções em azul, entradas desativadas esmaecidas. Movido por schedule_human e estado enabled.
daily-backup
Às 02:00
health-check
A cada 15 minutos
log-rotate
Às 00:00 no domingo
sync-reports
Às 09:00 de seg–sex
Gerenciado ou direto — você escolhe
Entradas rastreadas por UUID com toggle e expiração via API JSON, ou acesso direto ao arquivo crontab quando você precisa de controle total.
Entradas gerenciadas
5 endpointsCRUD com UUID — crie, leia, atualize e exclua tarefas cron via JSON. Adicione comentários, ative/desative e defina auto-expiração sem tocar no crontab direto.
# Criar uma entrada gerenciada
POST /users/[user]/entries
[
"schedule": "0 9 * * *",
"command": "/usr/local/bin/backup.sh",
"comment": "Backup diário",
"enabled": true,
"expires_at": null
Crontab direto
3 endpointsAcesso completo de leitura/escrita ao arquivo crontab por usuário do sistema. Use quando precisar de controle total ou tiver fluxos de trabalho existentes baseados em crontab.
# Ler o crontab direto
GET /users/[user]/crontab
# Substituir o crontab inteiro
PUT /users/[user]/crontab
["crontab": "0 5 * * * /usr/local/bin/backup.sh"]
Expressões cron comuns
Cole esses agendamentos baseados em docs — cada um verificado contra o runtime de expressões real.
* * * * *
Todo minuto
Executar a cada tick do relógio. Ideal para tarefas de polling contínuo, coletores de métricas ou processos watchdog.
0 * * * *
Toda hora
Executar no início de cada hora. Bom para resumos horários, aquecimento de cache ou sincronizações de API agendadas.
0 9 * * 1-5
Dias úteis às 9h
Executar às 09:00 apenas de seg–sex. Use para tarefas em horário comercial como envio de resumos diários ou geração de relatórios.
0 0 1 * *
Primeiro do mês
Executar uma vez por mês à meia-noite no dia 1. Perfeito para consolidações mensais, ciclos de cobrança e tarefas de arquivamento.
*/5 * * * *
A cada 5 minutos
Executar a cada 5 minutos. Útil para verificações de saúde, drenos de fila e sincronização de dados quase em tempo real.
@daily
Macro diária
Equivalente a 0 0 * * * — meia-noite todo dia. A forma mais clara de expressar um agendamento uma vez por dia.
9 endpoints. Dois modos.
Cinco endpoints CRUD para entradas gerenciadas, três endpoints para crontab direto e um health check — todos com escopo por usuário do sistema.
Entradas gerenciadas
5 endpointsGET /users/root/entries → [[id, schedule_human, enabled]]
Crontab direto
3 endpointsPUT /users/root/crontab → [crontab, user]
Sistema
1 endpointGET /health → [status: ok]
Agende sua primeira tarefa
Uma requisição POST. Uma entrada cron. Zero SSH. O Hoody Cron está em execução dentro do seu contêiner agora mesmo.