Pular para o conteúdo

Cron Jobs

O recurso Cron Jobs permite criar URLs de endpoint únicas que, quando acionadas, fecham automaticamente todos os logs ativos de controle de tempo para um conjunto específico de estações de trabalho. Isso é útil para encerrar turnos, fechar cronômetros não terminados no final do dia ou coordenar com agendadores externos (cron de servidor, plataformas de automação, webhooks agendados).

Configurações do aplicativo — Cron Jobs


Cada cron job consiste em:

CampoDescrição
NomeUm rótulo amigável que descreve o que o cron job faz (por exemplo, “Fim do dia — equipe de montagem”). Este nome também é usado como assunto do e-mail de resumo.
URL de EndpointUma URL única, gerada automaticamente, contendo um token secreto. Qualquer pessoa com esta URL pode acionar o cron job, então trate-a como uma credencial.
E-mail de notificação (opcional)Se preenchido, um e-mail de resumo é enviado para este endereço toda vez que o cron job é acionado. Deixe em branco para desabilitar as notificações por e-mail.
Estações de trabalhoUma ou mais estações de trabalho cujas entradas ativas de controle de tempo serão fechadas quando a URL for chamada.
Última acionadaCarimbo de data/hora do acionamento bem-sucedido mais recente.

Você pode criar quantos cron jobs precisar, cada um com seu próprio conjunto de estações de trabalho e sua própria URL. Isso facilita o fechamento de logs em horários diferentes para equipes ou departamentos diferentes — por exemplo, um cron job para a linha de montagem às 16h e outro para a loja de pintura às 18h.


Cenários comuns:

  • Limpeza de fim de turno — pare automaticamente quaisquer entradas de controle de tempo que um funcionário esqueceu de parar antes de sair.
  • Cronogramas por equipe — departamentos diferentes terminam em horários diferentes, então cada um recebe seu próprio cron job e seu próprio horário do dia.
  • Integração com plataformas de automação — agende um fluxo de trabalho Zapier, Make.com ou similar para atingir a URL de forma recorrente.
  • Cron de servidor — chame o endpoint a partir de um cron job Linux, Agendador de Tarefas do Windows ou qualquer agendador baseado em HTTP.

Abra Configurações do aplicativo → Cron Jobs para gerenciar a lista.

  1. Clique em Adicionar cron job.
  2. Dê um Nome descritivo — este também é usado como assunto do e-mail de notificação.
  3. Opcionalmente, insira um E-mail de notificação. Se preenchido, um e-mail de resumo é enviado para esse endereço toda vez que o cron job é acionado. Deixe em branco para desabilitar as notificações por e-mail.
  4. Marque uma ou mais Estações de trabalho na lista. Apenas os logs de tempo ativos dessas estações de trabalho serão fechados por esta URL.
  5. Clique em Salvar.

Uma URL de endpoint exclusiva é gerada automaticamente para você.

Clique no ícone de lápis ao lado de um cron job para alterar seu nome ou atribuições de estação de trabalho. A URL de endpoint permanece a mesma — integrações existentes continuam funcionando.

Clique no ícone de lixeira e confirme. A URL de endpoint para de funcionar imediatamente. Isso é permanente e não pode ser desfeito.

Clique no ícone de copiar ao lado da URL. O ícone vira uma marca de seleção verde por um momento para confirmar que a URL está na sua área de transferência.


A URL de endpoint aceita requisições GET e POST — escolha o que for mais fácil para seu agendador. Nenhum cabeçalho de autenticação é necessário; o token na URL é a credencial.

curl

Terminal window
curl https://your-board.example.com/cron/abc123xyz...

Linux crontab (fechar turno todo dia útil às 17h)

0 17 * * 1-5 curl -fsS https://your-board.example.com/cron/abc123xyz... > /dev/null

Zapier / Make.com / n8n — use a ação integrada Webhooks / HTTP Request e aponte-a para a URL.

Um acionamento bem-sucedido retorna um payload JSON como:

{
"success": true,
"closed": 3,
"cron_job": "End of day - assembly"
}

closed é o número de entradas ativas de controle de tempo que foram paradas.

Se o cron job não tiver estações de trabalho atribuídas, a resposta será:

{
"success": true,
"closed": 0,
"message": "No workstations assigned."
}

Quando o endpoint é chamado, o sistema:

  1. Encontra cada entrada ativa de controle de tempo (um cronômetro iniciado sem hora de parada) cuja estação de trabalho está atribuída a este cron job.
  2. Define stopped_at para o horário atual e registra a duração decorrida.
  3. Grava uma entrada de log automática em cada tarefa afetada, anotada como Auto-closed by cron job: {name}, para que o tempo registrado seja preservado no log da estação de trabalho.
  4. Atualiza o carimbo de data/hora Última acionada do cron job.
  5. Se um E-mail de notificação estiver definido, envia um e-mail de resumo (veja abaixo).

Entradas que não estão ativas (cronômetros já parados ou em execução em estações de trabalho não na lista deste cron) não são tocadas.


Se o campo E-mail de notificação em um cron job estiver preenchido, cada acionamento desse endpoint envia um e-mail de resumo para esse endereço.

O e-mail contém:

  • Assunto — o Nome do cron job, exatamente como configurado.
  • Acionado em — a data e hora em que o acionamento foi executado.
  • Logs fechados — uma tabela listando cada entrada ativa de controle de tempo que foi fechada, com o nome do funcionário, a estação de trabalho e a duração decorrida.

Se nenhuma entrada ativa for encontrada no momento do acionamento, o e-mail ainda é enviado, mas o corpo observa que nenhum log foi fechado. Isso é útil como um heartbeat para confirmar que o agendador está disparando.

Exemplo de corpo de e-mail:

Acionado em: 2026-05-26 17:00:03

Logs fechados (2):

FuncionárioEstação de trabalhoDuração
Jan KowalskiMontagem 13h 12min
Anna NowakCabine de Pintura45min

Para desabilitar as notificações por e-mail, simplesmente limpe o campo no cron job e salve.

A entrega de e-mail usa o mesmo transporte de e-mail (SMTP, etc.) configurado para o resto do aplicativo. Se a entrega falhar por qualquer motivo, a falha é registrada e a resposta do acionamento ainda retorna sucesso — fechar os logs de tempo não é bloqueado por problemas de e-mail.


  • A URL de endpoint contém um token aleatório de 40 caracteres e é a única coisa entre a internet pública e a ação. Trate-a como uma senha.
  • Se uma URL vazar, exclua o cron job — isso revoga a URL imediatamente — e crie um novo para emitir uma nova URL.
  • O endpoint tem limite de taxa de 60 requisições por minuto por IP para evitar abuso.
  • A ação é por inquilino: um token só afeta as entradas de tempo pertencentes ao inquilino que criou o cron job.

  • Dê a cada cron job um nome que reflita tanto a equipe quanto o cronograma (por exemplo, “17h dias úteis — montagem”) para que você possa diferenciá-los de relance.
  • Use um cron job diferente por equipe em vez de um grande — isso lhe dá um controle mais fino sobre os cronogramas e facilita desabilitar ou alterar o comportamento para apenas uma equipe.
  • Teste a URL uma vez manualmente (do seu navegador ou curl) após criá-la para confirmar que retorna uma resposta success: true.