> For the complete documentation index, see [llms.txt](https://docs.digibee.com/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digibee.com/documentation/connectors-and-triggers/pt-br/triggers/scheduling/scheduler.md).

# Scheduler Trigger

Saiba mais sobre o Scheduler Trigger e como usá-lo na Digibee Integration Platform.

## **Visão geral**

O Scheduler Trigger executa um pipeline em um agendamento recorrente definido por uma [expressão cron](https://en.wikipedia.org/wiki/Cron). Ele é útil quando a fonte de dados não consegue enviar dados para a Digibee via webhooks ou triggers baseados em eventos, e o pipeline precisa buscar os dados em um intervalo fixo.

O campo **Cron Expression** também aceita Globals, permitindo que diferentes ambientes (por exemplo, Test e Prod) executem o mesmo pipeline em agendamentos distintos sem precisar duplicar a definição do pipeline.

## **Variáveis do Scheduler Trigger**

O Scheduler Trigger possui quatro tipos:

* **5-Minute Scheduler:** Pré-configurado para executar a cada 5 minutos.
* **30-Minute Scheduler:** Pré-configurado para executar a cada 30 minutos.
* **Midnight Scheduler:** Pré-configurado para executar à meia-noite no fuso horário selecionado.
* **Custom Scheduler:** Sem pré-configuração. Aceita uma expressão cron personalizada.

## **Parâmetros**

| Parâmetro                        | Descrição                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | Tipo de dado | Suporta DB | Padrão              |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------ | ---------- | ------------------- |
| **Cron Expression**              | <p>Expressão que define segundos, minutos, horas e a recorrência de um pipeline em dias. Aceita um valor estático ou uma <a href="/documentation/developer-guide/pt-br/development-cycle/build-overview/globals.md">Global do tipo <strong>Cron</strong></a> usando a sintaxe Double Braces (por exemplo, <code>{{global.myCronExpression}}</code>).</p><p></p><p>Para detalhes sobre o formato da expressão, consulte a <a href="http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html">documentação do Quartz Scheduler</a>. Para construir expressões de forma interativa, utilize o <a href="http://www.cronmaker.com/">CronMaker</a>.</p> | String       | ✅          | N/A                 |
| **Time Zone**                    | Fuso horário usado para interpretar a expressão cron. Disponível em todos os tipos de Scheduler Trigger. Por exemplo, 12:00 UTC corresponde a 09:00 no fuso horário de São Paulo. Veja [Time Zone](#time-zone) para mais detalhes.                                                                                                                                                                                                                                                                                                                                                                                                                                             | String       | ❌          | `America/Sao_Paulo` |
| **Maximum Timeout**              | Tempo máximo de processamento do pipeline antes de encerrar a execução, em milissegundos.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | Integer      | ❌          | `300000`            |
| **Retries**                      | Número máximo de tentativas de reexecução em caso de falha.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Integer      | ❌          | `0`                 |
| **Allow Redelivery Of Messages** | Quando habilitado, permite que mensagens sejam reenviadas caso o Pipeline Engine falhe.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Boolean      | ❌          | `false`             |
| **Allow Concurrent Scheduling**  | Quando habilitado, uma nova execução é iniciada mesmo que uma execução anterior ainda esteja em andamento.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Boolean      | ❌          | `false`             |

## **Informações adicionais dos parâmetros**

### **Time Zone**

O campo **Time Zone** define o fuso horário usado para interpretar a expressão cron em todos os tipos de Scheduler Trigger e vem preenchido com `America/Sao_Paulo` por padrão ao abrir a configuração do trigger. Ele só afeta expressões cron com horário fixo ou janelas de horário, por exemplo, `0 0/5 8-18 ? * MON-FRI` (a cada 5 minutos, das 08:00 às 18:55, de segunda a sexta). Intervalos fixos, como a cada 5 ou 30 minutos, funcionam da mesma forma em qualquer fuso horário.

{% hint style="warning" %}

#### **Time Zone em triggers 5-Minute e 30-Minute existentes**

A partir da release de 20 de outubro de 2026, os tipos 5-Minute e 30-Minute incluem o campo **Time Zone**. Se o Scheduler Trigger foi salvo com um desses tipos antes dessa data, ele não tem fuso horário definido e continua executando em UTC.

Ao abrir um Scheduler Trigger nessa configuração, o campo **Time Zone** vem preenchido com `America/Sao_Paulo`. Se você salvar o trigger sem alterar esse campo, `America/Sao_Paulo` passa a ser aplicado depois que o pipeline é reimplantado. Isso muda o agendamento de expressões cron escritas em UTC para corresponder a um horário local. Por exemplo, uma expressão configurada para 12:00 com o objetivo de executar às 09:00 em São Paulo passa a executar às 12:00 no horário de São Paulo. Para manter o agendamento original, antes de salvar o trigger, ajuste a expressão cron para o horário local (09:00) ou selecione UTC no campo **Time Zone**.
{% endhint %}

### **Allow Concurrent Scheduling**

Se um pipeline está configurado para executar a cada 3 minutos e uma execução anterior leva 4 minutos, este parâmetro determina se a próxima execução será iniciada imediatamente ou aguardará.

* **Habilitado:** A próxima execução inicia no horário agendado, independentemente de a execução anterior ter sido concluída.
* **Desabilitado:** A próxima execução fica em espera até que a execução anterior seja concluída.

### **Cron Expression com Globals**

É possível referenciar uma Global no campo **Cron Expression** para aplicar agendamentos diferentes por ambiente usando uma única definição de pipeline. Por exemplo, o ambiente de Test pode executar a cada 5 minutos, enquanto o ambiente de Prod executa uma vez ao dia.

#### **Como configurar**

Antes de referenciar uma Global no trigger, crie uma na área de gerenciamento de Globals.

1. Acesse a página **Build** na plataforma.
2. Acesse **Globals**.
3. Clique em **Criar**.
4. Selecione a categoria **Cron**.
5. Defina o valor da expressão cron para cada ambiente (Test, Prod).
6. Preencha os campos restantes conforme descrito na [documentação de Globals](/documentation/developer-guide/pt-br/development-cycle/build-overview/globals.md).
7. Clique em **Salvar**.

<figure><img src="https://3268428548-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSKBJ6ZiEWBU93x170HH4%2Fuploads%2FJG3m6aqXn8o29INsAJeS%2F(PT)%20Cron.png?alt=media&amp;token=83aad385-e9ef-4e82-92e9-710840a194ce" alt=""><figcaption></figcaption></figure>

Após criar a Global, abra o pipeline e acesse a configuração do trigger. No campo **Cron Expression**, digite `{{global.` e selecione a variável desejada. Apenas variáveis da categoria **Cron** serão listadas. Após a seleção, o campo será preenchido com `{{global.global-name}}`.

Note que a resolução da variável acontece no momento do deploy. Ao fazer o deploy do pipeline, o sistema valida e aplica a Global referenciada para aquele ambiente.

## **Scheduler Trigger em ação**

Este trigger é útil quando uma fonte de dados não consegue enviar dados para a Digibee via HTTP, REST, HTTP File, Kafka, RabbitMQ ou JMS. Casos de uso comuns incluem:

* Busca de arquivos em SFTP, FTP, Amazon S3, Google Cloud Storage e serviços similares de armazenamento de arquivos.
* Consultas diretas a bancos de dados (neste caso, utilize o conector **Stream DB** com paginação).
* Verificação do status de endpoints da Digibee Integration Platform que não suportam notificações baseadas em webhook.

### **Cenário: Pipeline executado a cada 30 segundos, sem sobreposição, usando uma fonte de dados estática**

O exemplo a seguir mostra como configurar um Scheduler Trigger para executar um pipeline a cada 30 segundos sem sobreposição de execuções. Um timeout de 2 minutos é definido utilizando o fuso horário de São Paulo (UTC-3).

Crie um novo pipeline e configure o trigger com os seguintes valores:

* **Cron Expression:** `0/30 ** ? ***`
* **Time Zone:** `America/Sao_Paulo`
* **Maximum Timeout:** `120000`
* **Retries:** `0`
* **Allow Redelivery Of Messages:** desabilitado
* **Allow Concurrent Scheduling:** desabilitado

Em seguida, adicione um conector [**JSON Generator (Mock)**](/documentation/connectors-and-triggers/connectors/tools/json-generator.md) ao pipeline e conecte-o ao trigger. Configure-o com o seguinte JSON para que o pipeline retorne um payload estático a cada execução:

```json
{
    "data": {
        "products": [
            {
                "name": "Samsung 4k Q60T 55",
                "price": 3278.99
            },
            {
                "name": "Samsung galaxy S20 128GB",
                "price": 3698.99
            }
        ]
    }
}
```

A cada execução do pipeline, o JSON configurado é retornado automaticamente.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.digibee.com/documentation/connectors-and-triggers/pt-br/triggers/scheduling/scheduler.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
