i18n - docs translations (#17434)
Created by Github action Co-authored-by: github-actions <github-actions@twenty.com>
This commit is contained in:
committed by
GitHub
parent
2353bc62cc
commit
e0d4492013
+103
-84
@@ -1,46 +1,46 @@
|
||||
---
|
||||
title: Send Emails from Workflows
|
||||
description: Send personalized emails automatically using workflow actions.
|
||||
title: Enviar e-mails a partir de Fluxos de Trabalho
|
||||
description: Envie e-mails personalizados automaticamente usando ações de Fluxos de Trabalho.
|
||||
image: /images/user-guide/workflows/workflow.png
|
||||
---
|
||||
|
||||
Automatically send emails when specific events occur in your CRM—welcome new contacts, follow up on opportunities, or notify team members.
|
||||
Envie e-mails automaticamente quando eventos específicos ocorrerem no seu CRM — dê boas-vindas a novos contatos, faça acompanhamento de oportunidades ou notifique membros da equipe.
|
||||
|
||||
## Prerequisites
|
||||
## Pré-requisitos
|
||||
|
||||
Before you can send emails from workflows:
|
||||
Antes de enviar e-mails a partir de fluxos de trabalho:
|
||||
|
||||
1. Connect an email account under **Settings → Accounts**
|
||||
2. Ensure the account has sending permissions enabled
|
||||
1. Conecte uma conta de e-mail em **Configurações → Contas**
|
||||
2. Garanta que a conta tenha as permissões de envio ativadas
|
||||
|
||||
## Basic Email Workflow
|
||||
## Fluxo de Trabalho de E-mail Básico
|
||||
|
||||
### Example: Welcome Email for New Contacts
|
||||
### Exemplo: E-mail de boas-vindas para novos contatos
|
||||
|
||||
**Goal**: Send a welcome email when a new person is added to the CRM.
|
||||
**Objetivo**: Enviar um e-mail de boas-vindas quando uma nova pessoa for adicionada ao CRM.
|
||||
|
||||
**Setup**:
|
||||
**Configuração**:
|
||||
|
||||
1. **Create workflow**: Go to **Settings → Workflows** and click **+ New Workflow**
|
||||
1. **Criar fluxo de trabalho**: Vá até **Configurações → Fluxos de Trabalho** e clique em **+ Novo Fluxo de Trabalho**
|
||||
|
||||
2. **Add trigger**: Select **Record is Created** → **People**
|
||||
2. **Adicionar gatilho**: Selecione **Registro é Criado** → **Pessoas**
|
||||
|
||||
3. **Add Send Email action**:
|
||||
* Click **+** to add an action
|
||||
* Select **Send Email**
|
||||
* Configure the email:
|
||||
3. **Adicionar ação Enviar E-mail**:
|
||||
* Clique em **+** para adicionar uma ação
|
||||
* Selecione **Enviar E-mail**
|
||||
* Configure o e-mail:
|
||||
|
||||
| Field | Value |
|
||||
| Campo | Valor |
|
||||
| ----------- | -------------------------------------- |
|
||||
| **To** | `{{trigger.object.email}}` |
|
||||
| **Subject** | `Welcome to {{Your Company Name}}` |
|
||||
| **Body** | `Hi {{trigger.object.firstName}}, ...` |
|
||||
| **Para** | `{{trigger.object.email}}` |
|
||||
| **Assunto** | `Bem-vindo ao {{Your Company Name}}` |
|
||||
| **Corpo** | `Hi {{trigger.object.firstName}}, ...` |
|
||||
|
||||
4. **Test and activate**: Test with a sample record, then activate
|
||||
4. **Testar e ativar**: Teste com um registro de exemplo e, em seguida, ative
|
||||
|
||||
## Using Variables in Emails
|
||||
## Usando variáveis em e-mails
|
||||
|
||||
Reference data from previous steps using `{{variable}}` syntax:
|
||||
Referencie dados de etapas anteriores usando a sintaxe `{{variable}}`:
|
||||
|
||||
```text
|
||||
Hi {{trigger.object.firstName}},
|
||||
@@ -53,97 +53,116 @@ Best regards,
|
||||
The Team
|
||||
```
|
||||
|
||||
### Available Variables from Triggers
|
||||
### Variáveis disponíveis dos gatilhos
|
||||
|
||||
| Trigger Type | Common Variables |
|
||||
| -------------------------- | -------------------------------------- |
|
||||
| **Record Created/Updated** | `{{trigger.object.fieldName}}` |
|
||||
| **Manual** | `{{trigger.selectedRecord.fieldName}}` |
|
||||
| **Webhook** | `{{trigger.body.fieldName}}` |
|
||||
| Tipo de Trigger | Variáveis comuns |
|
||||
| ------------------------------ | -------------------------------------- |
|
||||
| **Registro Criado/Atualizado** | `{{trigger.object.fieldName}}` |
|
||||
| **Manual** | `{{trigger.selectedRecord.fieldName}}` |
|
||||
| **Webhook** | `{{trigger.body.fieldName}}` |
|
||||
|
||||
## Advanced: Conditional Emails
|
||||
## Avançado: E-mails condicionais
|
||||
|
||||
### Example: Different Emails Based on Lead Source
|
||||
### Exemplo: E-mails diferentes com base na origem do lead
|
||||
|
||||
**Goal**: Send different welcome emails based on where the lead came from.
|
||||
**Objetivo**: Enviar e-mails de boas-vindas diferentes com base na origem do lead.
|
||||
|
||||
**Setup**:
|
||||
**Configuração**:
|
||||
|
||||
1. **Trigger**: Record is Created (People)
|
||||
1. **Gatilho**: Registro é Criado (Pessoas)
|
||||
|
||||
2. **Add Filter action**:
|
||||
* Condition: `{{trigger.object.source}}` equals `"Website"`
|
||||
* If true → continue to website welcome email
|
||||
2. **Adicionar ação de Filtro**:
|
||||
* Condição: `{{trigger.object.source}}` é igual a `"Website"`
|
||||
* Se verdadeiro → continue para o e-mail de boas-vindas do site
|
||||
|
||||
3. **Branch for other sources**:
|
||||
* Create parallel branches for different sources
|
||||
* Each branch has its own Send Email action
|
||||
3. **Ramificação para outras origens**:
|
||||
* Crie ramificações paralelas para origens diferentes
|
||||
* Cada ramificação tem sua própria ação Enviar E-mail
|
||||
|
||||
## Sending Emails to Multiple Recipients
|
||||
## Envio de e-mails para vários destinatários
|
||||
|
||||
### Example: Notify Team When Deal Closes
|
||||
### Exemplo: Notificar a equipe quando o negócio for fechado
|
||||
|
||||
**Goal**: Email the sales rep and their manager when an opportunity is won.
|
||||
**Objetivo**: Enviar e-mail ao representante de vendas e ao seu gerente quando uma oportunidade for ganha.
|
||||
|
||||
**Setup**:
|
||||
**Configuração**:
|
||||
|
||||
1. **Trigger**: Record is Updated (Opportunities, Stage = "Closed Won")
|
||||
1. **Gatilho**: Registro é Atualizado (Oportunidades, Estágio = "Closed Won")
|
||||
|
||||
2. **Search Records**: Find the opportunity owner's manager
|
||||
2. **Pesquisar Registros**: Encontre o gerente do proprietário da oportunidade
|
||||
|
||||
3. **Send Email #1**: To opportunity owner
|
||||
* To: `{{trigger.object.owner.email}}`
|
||||
* Subject: `Congratulations on closing {{trigger.object.name}}!`
|
||||
3. **Enviar E-mail nº 1**: Para o proprietário da oportunidade
|
||||
* Para: `{{trigger.object.owner.email}}`
|
||||
* Assunto: `Congratulations on closing {{trigger.object.name}}!`
|
||||
|
||||
4. **Send Email #2**: To manager
|
||||
* To: `{{searchRecords.manager.email}}`
|
||||
* Subject: `Deal Won: {{trigger.object.name}}`
|
||||
4. **Enviar E-mail nº 2**: Para o gerente
|
||||
* Para: `{{searchRecords.manager.email}}`
|
||||
* Assunto: `Deal Won: {{trigger.object.name}}`
|
||||
|
||||
## Scheduled Follow-up Emails
|
||||
## E-mails de acompanhamento agendados
|
||||
|
||||
### Example: Follow Up 3 Days After Meeting
|
||||
### Exemplo: Acompanhar 3 dias após a reunião
|
||||
|
||||
**Goal**: Send a follow-up email 3 days after a meeting is logged.
|
||||
**Objetivo**: Enviar um e-mail de acompanhamento 3 dias após o registro de uma reunião.
|
||||
|
||||
**Setup**:
|
||||
**Configuração**:
|
||||
|
||||
1. **Trigger**: Record is Created (Activities, Type = "Meeting")
|
||||
1. **Gatilho**: Registro é Criado (Atividades, Tipo = "Reunião")
|
||||
|
||||
2. **Delay action**: Wait 3 days
|
||||
2. **Ação de atraso**: Aguarde 3 dias
|
||||
|
||||
3. **Send Email**:
|
||||
* To: Meeting attendee
|
||||
* Subject: Following up on our conversation
|
||||
* Body: Reference meeting details from trigger
|
||||
3. **Enviar E-mail**:
|
||||
* Para: Participante da reunião
|
||||
* Assunto: Acompanhamento da nossa conversa
|
||||
* Corpo: Referencie detalhes da reunião a partir do gatilho
|
||||
|
||||
## Best Practices
|
||||
## Anexos de e-mail
|
||||
|
||||
### Email Content
|
||||
Você pode anexar arquivos a e-mails enviados a partir de fluxos de trabalho. O anexo é um arquivo estático que você faz upload ao configurar o fluxo de trabalho.
|
||||
|
||||
* Keep subject lines concise and relevant
|
||||
* Personalize with recipient's name
|
||||
* Include a clear call to action
|
||||
* Test emails before activating
|
||||
### Como adicionar um anexo
|
||||
|
||||
### Deliverability
|
||||
1. Na ação **Enviar e-mail**, clique no botão **Anexos**
|
||||
2. Clique para fazer upload de um arquivo do seu computador
|
||||
3. O arquivo será anexado a todos os e-mails enviados por esta ação
|
||||
|
||||
* Don't send too many emails too quickly
|
||||
* Use professional email signatures
|
||||
* Avoid spam trigger words
|
||||
* Ensure unsubscribe options for marketing emails
|
||||
### Casos de Uso Comuns
|
||||
|
||||
### Troubleshooting
|
||||
|
||||
* Verify email account is connected and active
|
||||
* Check recipient email address is valid
|
||||
* Review workflow runs for error messages
|
||||
* Test with your own email address first
|
||||
| Caso de uso | Arquivo de exemplo |
|
||||
| ----------------------------- | --------------------------------------- |
|
||||
| **E-mails de boas-vindas** | Brochura da empresa (PDF) |
|
||||
| **Sequências de integração** | Guia de primeiros passos |
|
||||
| **Acompanhamentos de Vendas** | Catálogo de produtos ou lista de preços |
|
||||
| **Confirmações de evento** | Detalhes ou agenda do evento |
|
||||
|
||||
<Note>
|
||||
**Coming soon**: Email attachments will be available in Q1 2026.
|
||||
Os anexos são estáticos — o mesmo arquivo é enviado a todos os destinatários. Para documentos dinâmicos (como cotações personalizadas), gere e anexe arquivos usando uma [Função sem servidor](/l/pt/user-guide/workflows/how-tos/connect-to-other-tools/generate-pdf-from-twenty).
|
||||
</Note>
|
||||
|
||||
## Related
|
||||
## Melhores Práticas
|
||||
|
||||
* [Workflow Triggers](/l/pt/user-guide/workflows/capabilities/workflow-triggers)
|
||||
* [Workflow Actions](/l/pt/user-guide/workflows/capabilities/workflow-actions)
|
||||
### Conteúdo do e-mail
|
||||
|
||||
* Mantenha as linhas de assunto concisas e relevantes
|
||||
* Personalize com o nome do destinatário
|
||||
* Inclua uma chamada para ação clara
|
||||
* Teste os e-mails antes de ativar
|
||||
|
||||
### Entregabilidade
|
||||
|
||||
* Não envie muitos e-mails muito rapidamente
|
||||
* Use assinaturas de e-mail profissionais
|
||||
* Evite palavras que acionem spam
|
||||
* Garanta opções de cancelamento de inscrição para e-mails de marketing
|
||||
|
||||
### Resolução de Problemas
|
||||
|
||||
* Verifique se a conta de e-mail está conectada e ativa
|
||||
* Verifique se o endereço de e-mail do destinatário é válido
|
||||
* Revise as execuções do fluxo de trabalho em busca de mensagens de erro
|
||||
* Teste primeiro com o seu próprio endereço de e-mail
|
||||
|
||||
## Relacionados
|
||||
|
||||
* [Gatilhos de Fluxo de Trabalho](/l/pt/user-guide/workflows/capabilities/workflow-triggers)
|
||||
* [Ações de Fluxo de Trabalho](/l/pt/user-guide/workflows/capabilities/workflow-actions)
|
||||
|
||||
+50
-50
@@ -1,90 +1,90 @@
|
||||
---
|
||||
title: Use Branches in Workflows
|
||||
description: Understand how branches work and how to control which path is executed.
|
||||
title: Use ramificações em fluxos de trabalho
|
||||
description: Entenda como as ramificações funcionam e como controlar qual caminho é executado.
|
||||
---
|
||||
|
||||
## How Branches Work
|
||||
## Como as ramificações funcionam
|
||||
|
||||
In the workflow editor, you can create multiple paths (branches) going out from a single node. This allows you to build complex automations with different outcomes.
|
||||
No editor de fluxos de trabalho, você pode criar vários caminhos (ramificações) saindo de um único nó. Isso permite criar automações complexas com resultados diferentes.
|
||||
|
||||
**Important**: When a workflow runs, **all branches execute in parallel by default**. There is no built-in "if/else" logic to choose one branch over another—every path will run simultaneously.
|
||||
**Importante**: Quando um fluxo de trabalho é executado, **todas as ramificações são executadas em paralelo por padrão**. Não há lógica "if/else" integrada para escolher uma ramificação em vez de outra — todos os caminhos serão executados simultaneamente.
|
||||
|
||||
## Controlling Which Branch Runs
|
||||
## Controlando qual ramificação é executada
|
||||
|
||||
To execute only one branch based on specific conditions, **add a Filter node at the beginning of each branch**.
|
||||
Para executar apenas uma ramificação com base em condições específicas, **adicione um nó Filter no início de cada ramificação**.
|
||||
|
||||
### Example Setup
|
||||
### Exemplo de configuração
|
||||
|
||||
1. Create your workflow with multiple branches from a single node
|
||||
2. Add a **Filter** node as the first step in each branch
|
||||
3. Set conditions on each Filter to determine when that branch should continue
|
||||
4. Only the branch(es) whose Filter conditions are met will proceed
|
||||
1. Crie seu fluxo de trabalho com várias ramificações a partir de um único nó
|
||||
2. Adicione um nó **Filter** como a primeira etapa de cada ramificação
|
||||
3. Defina condições em cada Filter para determinar quando essa ramificação deve continuar
|
||||
4. Somente as ramificações cujas condições do Filter forem atendidas prosseguirão
|
||||
|
||||
<img src="/images/user-guide/workflows/branches-with-filters.png" style={{width:'100%'}} />
|
||||
|
||||
### How Filters Work
|
||||
### Como funcionam os nós Filter
|
||||
|
||||
* If the Filter condition is **met**: The branch continues executing
|
||||
* If the Filter condition is **not met**: The branch stops at the Filter node
|
||||
* Se a condição do Filter for **atendida**: A ramificação continua em execução
|
||||
* Se a condição do Filter **não for atendida**: A ramificação para no nó Filter
|
||||
|
||||
This effectively creates conditional logic where only the appropriate branch runs based on your data.
|
||||
Isso efetivamente cria uma lógica condicional em que apenas a ramificação apropriada é executada com base nos seus dados.
|
||||
|
||||
## Example: Route by Deal Size
|
||||
## Exemplo: Roteamento por tamanho do negócio
|
||||
|
||||
**Scenario**: When a deal is closed, send different notifications based on deal size.
|
||||
**Cenário**: Quando um negócio é fechado, envie notificações diferentes com base no tamanho do negócio.
|
||||
|
||||
1. **Trigger**: Opportunity updated (Stage = Closed Won)
|
||||
2. **Branch 1**: Filter for Amount > $10,000 → Send Slack message to #big-deals
|
||||
3. **Branch 2**: Filter for Amount ≤ $10,000 → Send email to sales manager
|
||||
1. **Gatilho**: Oportunidade atualizada (Estágio = Closed Won)
|
||||
2. **Ramificação 1**: Filter para Amount > $10,000 → Enviar mensagem no Slack para #big-deals
|
||||
3. **Ramificação 2**: Filter para Amount ≤ $10,000 → Enviar e-mail para o gerente de vendas
|
||||
|
||||
Both branches start, but only the one matching the deal amount will continue past its Filter.
|
||||
Ambas as ramificações iniciam, mas somente aquela que corresponder ao valor do negócio continuará além do seu Filter.
|
||||
|
||||
## Creating Branches
|
||||
## Criando ramificações
|
||||
|
||||
<Note>
|
||||
To create a new branch from an existing step, click the **+** button on the step and add your action. You can add multiple branches by clicking **+** multiple times.
|
||||
Para criar uma nova ramificação a partir de uma etapa existente, clique no botão **+** na etapa e adicione sua ação. Você pode adicionar várias ramificações clicando em **+** várias vezes.
|
||||
</Note>
|
||||
|
||||
1. In the workflow editor, select the step you want to branch from
|
||||
2. Click the **+** button to add an action
|
||||
3. This creates one branch
|
||||
4. Click **+** again on the same step to create additional branches
|
||||
5. Each branch can have its own sequence of actions
|
||||
1. No editor de fluxos de trabalho, selecione a etapa a partir da qual deseja ramificar
|
||||
2. Clique no botão **+** para adicionar uma ação
|
||||
3. Isso cria uma ramificação
|
||||
4. Clique em **+** novamente na mesma etapa para criar ramificações adicionais
|
||||
5. Cada ramificação pode ter sua própria sequência de ações
|
||||
|
||||
## Merging Branches Back Together
|
||||
## Unindo ramificações novamente
|
||||
|
||||
After parallel branches complete their work, you can merge them back into a single path:
|
||||
Depois que as ramificações paralelas concluírem seu trabalho, você pode uní-las novamente em um único caminho:
|
||||
|
||||
1. Complete your branched actions
|
||||
2. Add a new step that should run after all branches
|
||||
3. Drag a connection from the last step of each branch to this new step
|
||||
4. The merged step waits for all connected branches to complete before executing
|
||||
1. Conclua suas ações ramificadas
|
||||
2. Adicione uma nova etapa que deve ser executada após todas as ramificações
|
||||
3. Arraste uma conexão da última etapa de cada ramificação para essa nova etapa
|
||||
4. A etapa unificada aguarda todas as ramificações conectadas concluírem antes de ser executada
|
||||
|
||||
### Example: Process Then Notify
|
||||
### Exemplo: Processar e depois notificar
|
||||
|
||||
```
|
||||
Trigger
|
||||
Gatilho
|
||||
│
|
||||
├── Branch A: Update Customer Record
|
||||
├── Ramificação A: Atualizar registro do cliente
|
||||
│
|
||||
└── Branch B: Create Support Ticket
|
||||
└── Ramificação B: Criar ticket de suporte
|
||||
|
||||
↘ ↙
|
||||
|
||||
Merged Step: Send Confirmation Email
|
||||
Etapa unificada: Enviar e-mail de confirmação
|
||||
```
|
||||
|
||||
The confirmation email sends only after both the customer update and ticket creation are done.
|
||||
O e-mail de confirmação é enviado somente depois que a atualização do cliente e a criação do ticket forem concluídas.
|
||||
|
||||
## Best Practices
|
||||
## Melhores Práticas
|
||||
|
||||
* Always use **Filter nodes** at the start of branches when you want conditional execution
|
||||
* Keep branch conditions **mutually exclusive** to avoid duplicate actions
|
||||
* Test your workflows with different data to ensure the correct branches run
|
||||
* **Rename branch steps** descriptively so it's clear what each path does
|
||||
* **Merge branches** when you need a final action after parallel processing
|
||||
* Sempre use **nós Filter** no início das ramificações quando quiser execução condicional
|
||||
* Mantenha as condições das ramificações **mutuamente exclusivas** para evitar ações duplicadas
|
||||
* Teste seus fluxos de trabalho com dados diferentes para garantir que as ramificações corretas sejam executadas
|
||||
* **Renomeie as etapas das ramificações** de forma descritiva para que fique claro o que cada caminho faz
|
||||
* **Una as ramificações** quando precisar de uma ação final após o processamento em paralelo
|
||||
|
||||
## Related
|
||||
## Relacionados
|
||||
|
||||
* [Workflows FAQ](/l/pt/user-guide/workflows/how-tos/need-more-help/workflows-faq) — answers about parallel execution
|
||||
* [Workflow Actions](/l/pt/user-guide/workflows/capabilities/workflow-actions) — available actions for branches
|
||||
* [Perguntas frequentes sobre fluxos de trabalho](/l/pt/user-guide/workflows/how-tos/need-more-help/workflows-faq) — respostas sobre execução paralela
|
||||
* [Ações de Fluxo de Trabalho](/l/pt/user-guide/workflows/capabilities/workflow-actions) — ações disponíveis para ramificações
|
||||
|
||||
@@ -1,92 +1,88 @@
|
||||
---
|
||||
title: Use Iterator
|
||||
description: Loop through arrays of records to perform actions on each item.
|
||||
title: Usar Iterador
|
||||
description: Percorra arrays de registos para executar ações em cada item.
|
||||
image: /images/user-guide/workflows/workflow.png
|
||||
---
|
||||
|
||||
Iterator lets you loop through an array of records and perform actions on each one. It's essential for workflows that need to process multiple records returned by Search Records or received via webhooks.
|
||||
O Iterador permite percorrer um array de registos e executar ações em cada um. É essencial para fluxos de trabalho que precisam de processar vários registos devolvidos por Pesquisar Registos ou recebidos via Webhooks.
|
||||
|
||||
<Note>
|
||||
Iterator is currently in beta. Activate it under **Settings → Releases → Lab**.
|
||||
</Note>
|
||||
## Quando usar o Iterador
|
||||
|
||||
## When to Use Iterator
|
||||
| Cenário | Exemplo |
|
||||
| ------------------------------------ | ------------------------------------------------ |
|
||||
| **Processar resultados da pesquisa** | Enviar e-mail a cada pessoa encontrada |
|
||||
| **Lidar com arrays de Webhooks** | Criar registos para cada item por ordem |
|
||||
| **Atualizações em massa** | Atualizar vários registos com valores calculados |
|
||||
| **Notificações** | Alertar várias pessoas sobre um evento |
|
||||
|
||||
| Scenario | Example |
|
||||
| -------------------------- | ---------------------------------------------- |
|
||||
| **Process search results** | Send email to each person found |
|
||||
| **Handle webhook arrays** | Create records for each item in order |
|
||||
| **Bulk updates** | Update multiple records with calculated values |
|
||||
| **Notifications** | Alert multiple people about an event |
|
||||
## Compreender o Iterador
|
||||
|
||||
## Understanding Iterator
|
||||
O Iterador espera um **array** como entrada. Em seguida:
|
||||
|
||||
Iterator expects an **array** as input. It then:
|
||||
1. Obtém o primeiro item do array
|
||||
2. Executa todas as ações dentro do Iterador com esse item
|
||||
3. Passa para o item seguinte
|
||||
4. Repete até que todos os itens sejam processados
|
||||
|
||||
1. Takes the first item from the array
|
||||
2. Runs all actions inside the iterator with that item
|
||||
3. Moves to the next item
|
||||
4. Repeats until all items are processed
|
||||
## Configuração básica
|
||||
|
||||
## Basic Setup
|
||||
### Exemplo: Enviar e-mail a todos nos resultados da pesquisa
|
||||
|
||||
### Example: Email Everyone in Search Results
|
||||
**Objetivo**: Encontrar todos os contactos numa empresa específica e enviar a cada um um e-mail personalizado.
|
||||
|
||||
**Goal**: Find all contacts in a specific company and send each one a personalized email.
|
||||
### Etapa 1: Pesquisar registos
|
||||
|
||||
### Step 1: Search for Records
|
||||
1. Adicione a ação **Pesquisar Registos**
|
||||
2. Objeto: **Pessoas**
|
||||
3. Filtro: Empresa igual a "Acme Inc"
|
||||
4. Isto devolve um array de pessoas
|
||||
|
||||
1. Add **Search Records** action
|
||||
2. Object: **People**
|
||||
3. Filter: Company equals "Acme Inc"
|
||||
4. This returns an array of people
|
||||
### Etapa 2: Verificar se existem resultados
|
||||
|
||||
### Step 2: Check Results Exist
|
||||
1. Adicione a ação **Filtro**
|
||||
2. Condição: `{{searchRecords.length}}` é maior do que 0
|
||||
3. Isto evita erros do Iterador em resultados vazios
|
||||
|
||||
1. Add **Filter** action
|
||||
2. Condition: `{{searchRecords.length}}` is greater than 0
|
||||
3. This prevents Iterator errors on empty results
|
||||
### Etapa 3: Adicionar um Iterador
|
||||
|
||||
### Step 3: Add Iterator
|
||||
1. Adicione a ação **Iterador**
|
||||
2. Entrada do array: selecione `{{searchRecords}}`
|
||||
3. Isto cria um ciclo
|
||||
|
||||
1. Add **Iterator** action
|
||||
2. Array input: Select `{{searchRecords}}`
|
||||
3. This creates a loop
|
||||
### Etapa 4: Adicionar ações dentro do Iterador
|
||||
|
||||
### Step 4: Add Actions Inside Iterator
|
||||
As ações colocadas após o Iterador são executadas para cada item:
|
||||
|
||||
Actions placed after Iterator run for each item:
|
||||
1. Adicione a ação **Enviar e-mail** (dentro do Iterador)
|
||||
2. Para: `{{iterator.currentItem.email}}`
|
||||
3. Assunto: Olá `{{iterator.currentItem.firstName}}`!
|
||||
4. Corpo: Mensagem personalizada utilizando os campos do item atual
|
||||
|
||||
1. Add **Send Email** action (inside iterator)
|
||||
2. To: `{{iterator.currentItem.email}}`
|
||||
3. Subject: Hello `{{iterator.currentItem.firstName}}`!
|
||||
4. Body: Personalized message using current item fields
|
||||
### Resultado
|
||||
|
||||
### Result
|
||||
Se Pesquisar Registos devolver 5 pessoas, o Iterador:
|
||||
|
||||
If Search Records returns 5 people, the Iterator:
|
||||
* Envia e-mail para a pessoa 1
|
||||
* Envia e-mail para a pessoa 2
|
||||
* ... continua para todas as 5
|
||||
|
||||
* Sends email to person 1
|
||||
* Sends email to person 2
|
||||
* ... continues for all 5
|
||||
## Aceder aos dados do item atual
|
||||
|
||||
## Accessing Current Item Data
|
||||
Dentro do Iterador, use `{{iterator.currentItem}}` para aceder ao registo atual:
|
||||
|
||||
Inside Iterator, use `{{iterator.currentItem}}` to access the current record:
|
||||
| Variável | Descrição |
|
||||
| --------------------------------------- | ------------------------------- |
|
||||
| `{{iterator.currentItem}}` | Todo o objeto do registo atual |
|
||||
| `{{iterator.currentItem.id}}` | ID do registo |
|
||||
| `{{iterator.currentItem.email}}` | Campo de e-mail |
|
||||
| `{{iterator.currentItem.company.name}}` | Nome da empresa relacionada |
|
||||
| `{{iterator.index}}` | Posição atual no array (base 0) |
|
||||
|
||||
| Variable | Description |
|
||||
| --------------------------------------- | ----------------------------------- |
|
||||
| `{{iterator.currentItem}}` | The entire current record object |
|
||||
| `{{iterator.currentItem.id}}` | Record ID |
|
||||
| `{{iterator.currentItem.email}}` | Email field |
|
||||
| `{{iterator.currentItem.company.name}}` | Related company name |
|
||||
| `{{iterator.index}}` | Current position in array (0-based) |
|
||||
## Padrões comuns
|
||||
|
||||
## Common Patterns
|
||||
### Atualizar vários registos
|
||||
|
||||
### Update Multiple Records
|
||||
|
||||
**Goal**: Mark all overdue tasks as "Late"
|
||||
**Objetivo**: Marcar todas as tarefas em atraso como "Late"
|
||||
|
||||
```
|
||||
1. Search Records (Tasks, Due Date < Today, Status ≠ Completed)
|
||||
@@ -98,9 +94,9 @@ Inside Iterator, use `{{iterator.currentItem}}` to access the current record:
|
||||
- Status: Late
|
||||
```
|
||||
|
||||
### Create Records from Array
|
||||
### Criar registos a partir de um array
|
||||
|
||||
**Goal**: Webhook receives order with multiple items, create a record for each
|
||||
**Objetivo**: O Webhook recebe um pedido com vários itens, criar um registo para cada um
|
||||
|
||||
```
|
||||
1. Webhook Trigger (receives items array)
|
||||
@@ -113,9 +109,9 @@ Inside Iterator, use `{{iterator.currentItem}}` to access the current record:
|
||||
- Related Order: {{trigger.body.orderId}}
|
||||
```
|
||||
|
||||
### Conditional Processing Inside Loop
|
||||
### Processamento condicional dentro do ciclo
|
||||
|
||||
**Goal**: Only send email to contacts with valid emails
|
||||
**Objetivo**: Enviar e-mail apenas para contactos com e-mails válidos
|
||||
|
||||
```
|
||||
1. Search Records (People)
|
||||
@@ -125,56 +121,56 @@ Inside Iterator, use `{{iterator.currentItem}}` to access the current record:
|
||||
- To: {{iterator.currentItem.email}}
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
## Resolução de Problemas
|
||||
|
||||
### "Iterator expects an array"
|
||||
### "O Iterador espera um array"
|
||||
|
||||
**Cause**: You passed a single record instead of an array.
|
||||
**Causa**: Passou um único registo em vez de um array.
|
||||
|
||||
**Fix**: Make sure you're passing the result of Search Records or an array field, not a single record.
|
||||
**Correção**: Certifique-se de que está a passar o resultado de Pesquisar Registos ou um campo do tipo array, e não um único registo.
|
||||
|
||||
```
|
||||
✅ Correct: {{searchRecords}}
|
||||
❌ Wrong: {{searchRecords[0]}}
|
||||
```
|
||||
|
||||
### Iterator Doesn't Run
|
||||
### O Iterador não é executado
|
||||
|
||||
**Cause**: The array is empty.
|
||||
**Causa**: O array está vazio.
|
||||
|
||||
**Fix**: Add a Filter before Iterator to check array length:
|
||||
**Correção**: Adicione um Filtro antes do Iterador para verificar o tamanho do array:
|
||||
|
||||
```
|
||||
Filter: {{searchRecords.length}} > 0
|
||||
```
|
||||
|
||||
### Actions Run Too Many Times
|
||||
### Ações executadas vezes demais
|
||||
|
||||
**Cause**: Search Records returned more records than expected.
|
||||
**Causa**: Pesquisar Registos devolveu mais registos do que o esperado.
|
||||
|
||||
**Fix**:
|
||||
**Correção**:
|
||||
|
||||
* Add more specific filters to Search Records
|
||||
* Set a limit on Search Records (max 200)
|
||||
* Add Filter inside Iterator for additional conditions
|
||||
* Adicione filtros mais específicos a Pesquisar Registos
|
||||
* Defina um limite em Pesquisar Registos (máx. 200)
|
||||
* Adicione um Filtro dentro do Iterador para condições adicionais
|
||||
|
||||
## Performance Considerations
|
||||
## Considerações de desempenho
|
||||
|
||||
* **Credit usage**: Each iteration consumes credits for its actions
|
||||
* **Time**: Large arrays take longer to process
|
||||
* **Limits**: Consider batching very large operations
|
||||
* **Rate limits**: External API calls may hit rate limits with many iterations
|
||||
* **Utilização de créditos**: Cada iteração consome créditos pelas suas ações
|
||||
* **Tempo**: Arrays grandes demoram mais a processar
|
||||
* **Limites**: Considere agrupar em lotes operações muito grandes
|
||||
* **Limites de taxa**: Chamadas a APIs externas podem atingir limites de taxa com muitas iterações
|
||||
|
||||
## Best Practices
|
||||
## Melhores Práticas
|
||||
|
||||
1. **Always check array length** before Iterator to avoid errors
|
||||
2. **Add filters inside loops** when not all items need processing
|
||||
3. **Rename your Iterator step** to describe what it's looping through
|
||||
4. **Test with small arrays** before processing large datasets
|
||||
5. **Monitor workflow runs** to ensure iterations complete as expected
|
||||
1. **Verifique sempre o tamanho do array** antes do Iterador para evitar erros
|
||||
2. **Adicione filtros dentro dos ciclos** quando nem todos os itens precisam de processamento
|
||||
3. **Renomeie a etapa do seu Iterador** para descrever o que está a percorrer
|
||||
4. **Teste com arrays pequenos** antes de processar conjuntos de dados grandes
|
||||
5. **Monitorize as execuções dos fluxos de trabalho** para garantir que as iterações se concluam conforme o esperado
|
||||
|
||||
## Related
|
||||
## Relacionados
|
||||
|
||||
* [Workflow Actions](/l/pt/user-guide/workflows/capabilities/workflow-actions)
|
||||
* [How to Use Branches](/l/pt/user-guide/workflows/capabilities/use-branches-in-workflows)
|
||||
* [Workflows FAQ](/l/pt/user-guide/workflows/how-tos/need-more-help/workflows-faq)
|
||||
* [Ações de Fluxo de Trabalho](/l/pt/user-guide/workflows/capabilities/workflow-actions)
|
||||
* [Como usar ramificações](/l/pt/user-guide/workflows/capabilities/use-branches-in-workflows)
|
||||
* [FAQ de Fluxos de Trabalho](/l/pt/user-guide/workflows/how-tos/need-more-help/workflows-faq)
|
||||
|
||||
+156
-156
@@ -1,311 +1,311 @@
|
||||
---
|
||||
title: Workflow Actions
|
||||
description: Learn about the actions available in Twenty workflows.
|
||||
title: Ações de Fluxo de Trabalho
|
||||
description: Saiba mais sobre as ações disponíveis nos fluxos de trabalho do Twenty.
|
||||
---
|
||||
|
||||
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
|
||||
|
||||
## About Actions
|
||||
## Sobre as Ações
|
||||
|
||||
Actions define what happens after a trigger fires. You can chain multiple actions together to build complex automations.
|
||||
As ações definem o que acontece após um gatilho ser acionado. Você pode encadear várias ações para criar automações complexas.
|
||||
|
||||
<Tip>
|
||||
* Use the variable picker (click the `(x+)` icon) to browse available data from previous steps
|
||||
* Hover over any input field to see which step a variable comes from — helpful when the same field (e.g., ID) exists in multiple previous steps
|
||||
* Give each action a descriptive name for easier maintenance
|
||||
* Use o seletor de variáveis (clique no ícone `(x+)`) para explorar os dados disponíveis de etapas anteriores
|
||||
* Passe o cursor sobre qualquer campo de entrada para ver de qual etapa uma variável vem — útil quando o mesmo campo (por exemplo, ID) existe em várias etapas anteriores
|
||||
* Dê a cada ação um nome descritivo para facilitar a manutenção
|
||||
</Tip>
|
||||
|
||||
## Record Actions
|
||||
## Ações em Registros
|
||||
|
||||
<img src="/images/user-guide/workflows/workflow_actions.png" style={{width:'100%'}} />
|
||||
|
||||
### Create a Record
|
||||
### Criar um Registro
|
||||
|
||||
Adds a new record to a selected object.
|
||||
Adiciona um novo registro a um objeto selecionado.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the target object
|
||||
* Fill out the required and optional fields
|
||||
* Use data from previous steps or input values manually to populate fields
|
||||
* Selecione o objeto alvo
|
||||
* Preencha os campos obrigatórios e opcionais
|
||||
* Use dados de etapas anteriores ou insira valores manualmente para preencher os campos
|
||||
|
||||
**Output**: The newly created record data is available for use in subsequent steps.
|
||||
**Saída**: Os dados do registro recém-criado estão disponíveis para uso em etapas subsequentes.
|
||||
|
||||
### Update Record
|
||||
### Atualizar Registro
|
||||
|
||||
Modifies an existing record in a selected object.
|
||||
Modifica um registro existente em um objeto selecionado.
|
||||
|
||||
<img src="/images/user-guide/workflows/update_record.png" style={{width:'100%'}} />
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the target object
|
||||
* Choose the specific record to update.
|
||||
* You can either choose a fixed record, using the drop down menu displaying all available records.
|
||||
* Or you can have the record dynamically selected, by designating a record found in a previous step, using the `(x+)`. You cannot search for the record based on different criteria at this stage. If you've not yet identified the record, add a `Search Record` step before this `Update Record` step.
|
||||
* Select fields to modify and enter new values
|
||||
* Selecione o objeto alvo
|
||||
* Escolha o registro específico para atualizar.
|
||||
* Você pode escolher um registro fixo, usando o menu suspenso que exibe todos os registros disponíveis.
|
||||
* Ou você pode fazer com que o registro seja selecionado dinamicamente, designando um registro encontrado em uma etapa anterior, usando o `(x+)`. Você não pode pesquisar o registro com base em critérios diferentes nesta etapa. Se você ainda não identificou o registro, adicione uma etapa `Search Record` antes desta etapa `Update Record`.
|
||||
* Selecione campos para modificar e insira novos valores
|
||||
|
||||
**Output**: The updated record data is available for use in subsequent steps.
|
||||
**Saída**: Os dados do registro atualizado estão disponíveis para uso em etapas subsequentes.
|
||||
|
||||
### Delete Record
|
||||
### Excluir Registro
|
||||
|
||||
Removes a record from a selected object.
|
||||
Remove um registro de um objeto selecionado.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the target object
|
||||
* Choose the specific record to delete
|
||||
* Selecione o objeto alvo
|
||||
* Escolha o registro específico para excluir
|
||||
|
||||
**Output**: The deleted record data remains available for use in subsequent steps.
|
||||
**Saída**: Os dados do registro excluído permanecem disponíveis para uso em etapas subsequentes.
|
||||
|
||||
### Search Records
|
||||
### Pesquisar Registros
|
||||
|
||||
Finds records within a selected object using filter conditions.
|
||||
Encontra registros dentro de um objeto selecionado usando condições de filtro.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the object to search
|
||||
* Set filter criteria to narrow results
|
||||
* Configure sorting and limits
|
||||
* Selecione o objeto para pesquisar
|
||||
* Defina critérios de filtro para restringir os resultados
|
||||
* Configurar ordenação e limites
|
||||
|
||||
**Output**: Returns matching records that can be used in subsequent steps.
|
||||
**Saída**: Retorna registros correspondentes que podem ser usados em etapas subsequentes.
|
||||
|
||||
<Note>
|
||||
**Limit**: Search Records returns a maximum of **200 records**. If you need to process more, add specific filters to reduce results or use scheduled workflows to process in batches.
|
||||
**Limite**: Search Records retorna no máximo **200 registros**. Se você precisar processar mais, adicione filtros específicos para reduzir os resultados ou use fluxos de trabalho agendados para processar em lotes.
|
||||
</Note>
|
||||
|
||||
**Best Practice**: Use [branches](/l/pt/user-guide/workflows/capabilities/workflow-branches) after Search Records to handle "found" vs "not found" scenarios.
|
||||
**Melhor prática**: Use [ramificações](/l/pt/user-guide/workflows/capabilities/workflow-branches) após Search Records para lidar com os cenários "encontrado" vs "não encontrado".
|
||||
|
||||
### Upsert Record
|
||||
|
||||
Creates a new record or updates an existing one based on matching criteria. This is useful when you're not sure if a record already exists.
|
||||
Cria um novo registro ou atualiza um existente com base em critérios de correspondência. Isso é útil quando você não tem certeza se um registro já existe.
|
||||
|
||||
<img src="/images/user-guide/workflows/upsert_double_identifier.png" style={{width:'100%'}} />
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the target object
|
||||
* Note which fields can be used for matching: email for People, domain for Companies, ID for any object, or any field marked as Unique. You'll need to populate at least one of these below.
|
||||
* Fill out the field values. Do not forget to populate at least one of the unique identifiers.
|
||||
* Selecione o objeto alvo
|
||||
* Observe quais campos podem ser usados para correspondência: e-mail para Pessoas, domínio para Empresas, ID para qualquer objeto ou qualquer campo marcado como Único. Você precisará preencher pelo menos um destes abaixo.
|
||||
* Preencha os valores dos campos. Não se esqueça de preencher pelo menos um dos identificadores únicos.
|
||||
|
||||
<Note>
|
||||
**Matching usually works even better when adding only one unique identifier.** For example, the screenshot below will match companies based on their domain. The ID is not necessarily needed.
|
||||
**A correspondência geralmente funciona ainda melhor ao adicionar apenas um identificador único.** Por exemplo, a captura de tela abaixo fará a correspondência de empresas com base no domínio delas. O ID não é necessariamente obrigatório.
|
||||
</Note>
|
||||
|
||||
<img src="/images/user-guide/workflows/upsert_simple_identifier.png" style={{width:'100%'}} />
|
||||
|
||||
* Use data from previous steps to populate fields
|
||||
* Use dados de etapas anteriores para preencher os campos
|
||||
|
||||
**How it works**:
|
||||
**Como Funciona**:
|
||||
|
||||
1. Searches for a record matching your criteria
|
||||
2. If found → updates the existing record
|
||||
3. If not found → creates a new record
|
||||
1. Procura um registro que corresponda aos seus critérios
|
||||
2. Se encontrado → atualiza o registro existente
|
||||
3. Se não encontrado → cria um novo registro
|
||||
|
||||
**Output**: The created or updated record data is available for use in subsequent steps.
|
||||
**Saída**: Os dados do registro criado ou atualizado estão disponíveis para uso em etapas subsequentes.
|
||||
|
||||
## Flow Actions
|
||||
## Ações de Fluxo
|
||||
|
||||
### Iterator
|
||||
### Iterador
|
||||
|
||||
**Loops through an array of records** returned from a previous step, allowing you to perform actions on each record individually.
|
||||
**Percorre um array de registros** retornados de uma etapa anterior, permitindo que você execute ações em cada registro individualmente.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the array of records from a previous step (e.g., results from Search Records, from a Manual trigger with Bulk availability, from a code node)
|
||||
* Define the actions to perform on each record in the loop.
|
||||
* Selecione o array de registros de uma etapa anterior (por exemplo, resultados de Search Records, de um gatilho Manual com Bulk, de um nó de código)
|
||||
* Defina as ações a serem realizadas em cada registro no loop.
|
||||
|
||||
<Note>
|
||||
- You can add several actions within an iterator.
|
||||
- When using branches inside an iterator, make sure the last step of each branch connects back to the iterator to close the loop.
|
||||
- Você pode adicionar várias ações dentro de um iterador.
|
||||
- Ao usar ramificações dentro de um iterador, certifique-se de que a última etapa de cada ramificação se conecte de volta ao iterador para fechar o loop.
|
||||
</Note>
|
||||
|
||||
* Access `Current Item` Fields: to use fields from the record currently being processed, click on the **Iterator** step, then select **Current item**. The list of available fields from that record will be displayed and can be selected for use in subsequent actions.
|
||||
* Acesse os campos de `Current Item`: para usar campos do registro que está sendo processado no momento, clique na etapa **Iterator** e, em seguida, selecione **Current item**. A lista de campos disponíveis desse registro será exibida e poderá ser selecionada para uso em ações subsequentes.
|
||||
|
||||
<VimeoEmbed videoId="1146577247" title="Video demonstration" />
|
||||
<VimeoEmbed videoId="1146577247" title="Demonstração em vídeo" />
|
||||
|
||||
### Filter
|
||||
### Filtro
|
||||
|
||||
Filters records based on specified conditions, allowing only records that meet the criteria to pass through.
|
||||
Filtra registros com base em condições especificadas, permitindo que apenas os registros que atendam aos critérios passem.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the record to filter
|
||||
* Define filter conditions and criteria
|
||||
* Configure which records should pass through to subsequent steps
|
||||
* Selecione o registro a ser filtrado
|
||||
* Defina condições e critérios de filtro
|
||||
* Configure quais registros devem passar para as etapas subsequentes
|
||||
|
||||
<Note>
|
||||
1. **Output**: Filter nodes don't return data—they act as gates. If the conditions are met, the workflow continues. If not, the workflow stops at that branch.
|
||||
2. The `IS` operator can be used with numeric fields. It performs as an `EQUAL`.
|
||||
1. **Saída**: Nós de filtro não retornam dados — eles atuam como portões. Se as condições forem atendidas, o fluxo de trabalho continua. Caso contrário, o fluxo de trabalho para nessa ramificação.
|
||||
2. O operador `IS` pode ser usado com campos numéricos. Ele funciona como um `EQUAL`.
|
||||
</Note>
|
||||
|
||||
### Delay
|
||||
### Atraso
|
||||
|
||||
Pauses workflow execution for a specified duration or until a specific date/time.
|
||||
Pausa a execução do fluxo de trabalho por uma duração especificada ou até uma data/hora específica.
|
||||
|
||||
**Delay Types**:
|
||||
**Tipos de Atraso**:
|
||||
|
||||
| Type | Description |
|
||||
| ------------------ | ------------------------------------------------------------------ |
|
||||
| **Duration** | Wait for a specific amount of time (days, hours, minutes, seconds) |
|
||||
| **Scheduled Date** | Wait until a specific date and time |
|
||||
| Tipo | Descrição |
|
||||
| ------------------- | ----------------------------------------------------------------------- |
|
||||
| **Duração** | Aguarda um período específico de tempo (dias, horas, minutos, segundos) |
|
||||
| **Data Programada** | Aguarda até uma data e hora específicas |
|
||||
|
||||
**Configuration for Duration**:
|
||||
**Configuração para Duração**:
|
||||
|
||||
* Set days, hours, minutes, and/or seconds
|
||||
* Combine multiple units (e.g., 2 days and 4 hours)
|
||||
* Defina dias, horas, minutos e/ou segundos
|
||||
* Combine várias unidades (por exemplo, 2 dias e 4 horas)
|
||||
|
||||
**Configuration for Scheduled Date**:
|
||||
**Configuração para Data Programada**:
|
||||
|
||||
* Select a date and time
|
||||
* Can reference a date field from a previous step (e.g., follow up 3 days after a meeting)
|
||||
* Selecione uma data e hora
|
||||
* Pode referenciar um campo de data de uma etapa anterior (por exemplo, fazer um acompanhamento 3 dias após uma reunião)
|
||||
|
||||
**Use cases**:
|
||||
**Casos de uso**:
|
||||
|
||||
* Wait 24 hours before sending a follow-up email
|
||||
* Pause until an opportunity's close date
|
||||
* Schedule actions for business hours
|
||||
* Aguarde 24 horas antes de enviar um e-mail de acompanhamento
|
||||
* Aguarde até a data de fechamento de uma oportunidade
|
||||
* Agende ações para o horário comercial
|
||||
|
||||
<Note>
|
||||
The scheduled date cannot be in the past. If a date field from a previous step is used and the date has already passed, the workflow will fail.
|
||||
A data programada não pode estar no passado. Se for usado um campo de data de uma etapa anterior e a data já tiver passado, o fluxo de trabalho falhará.
|
||||
</Note>
|
||||
|
||||
**Limits & Credits**:
|
||||
**Limites e Créditos**:
|
||||
|
||||
* **No maximum duration limit**—you can set delays of minutes, days, weeks, or longer
|
||||
* **1 credit consumed** when the Delay node executes, regardless of duration
|
||||
* **No credits consumed** while waiting—a 5-minute delay costs the same as a 5-day delay
|
||||
* **Sem limite máximo de duração** — você pode definir atrasos de minutos, dias, semanas ou mais longos
|
||||
* **1 crédito consumido** quando o nó de Atraso é executado, independentemente da duração
|
||||
* **Nenhum crédito consumido** durante a espera — um atraso de 5 minutos custa o mesmo que um atraso de 5 dias
|
||||
|
||||
## Communication Actions
|
||||
## Ações de Comunicação
|
||||
|
||||
### Send Email
|
||||
### Enviar Email
|
||||
|
||||
Sends an email from your workflow. This is great for templated group emails. Emails will look like the ones you send from your mailbox.
|
||||
Not suited for newsletters (which require richer formatting) or automated email sequences.
|
||||
Envia um email a partir do seu fluxo de trabalho. Isso é ótimo para e-mails de grupo com modelos. Os e-mails terão a mesma aparência dos que você envia da sua caixa de correio.
|
||||
Não é adequado para newsletters (que exigem formatação mais rica) ou sequências automáticas de e-mails.
|
||||
|
||||
**Prerequisites**: Add an email account in Settings → Accounts
|
||||
**Pré-requisitos**: Adicione uma conta de e-mail em Configurações → Contas
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the sender email account
|
||||
* Selecione a conta de e-mail do remetente
|
||||
|
||||
<Note>
|
||||
You can only send emails from mailboxes synced to your own Twenty account. Sending from other team members' mailboxes (e.g., the account owner's email) is on the roadmap.
|
||||
Você só pode enviar e-mails de caixas de correio sincronizadas com a sua própria conta Twenty. O envio a partir das caixas de correio de outros membros da equipe (por exemplo, o e-mail do proprietário da conta) está no roadmap.
|
||||
</Note>
|
||||
|
||||
For all the following steps, you can reference variables from previous steps for personalization.
|
||||
Para todas as etapas a seguir, você pode referenciar variáveis de etapas anteriores para personalização.
|
||||
|
||||
* Enter recipient email address.
|
||||
* Insira o endereço de email do destinatário.
|
||||
|
||||
<Note>
|
||||
Only one recipient is possible at the moment.
|
||||
No momento, é possível apenas um destinatário.
|
||||
</Note>
|
||||
|
||||
* Set subject line.
|
||||
* Compose message body. You can format links, create numbered list, bullet point lists, add attachments.
|
||||
* Defina o assunto.
|
||||
* Componha o corpo da mensagem. Você pode formatar links, criar listas numeradas, listas com marcadores e adicionar anexos.
|
||||
|
||||
<Note>
|
||||
Adding HTML signatures is not possible at the moment.
|
||||
Adicionar assinaturas em HTML não é possível no momento.
|
||||
</Note>
|
||||
|
||||
### Form
|
||||
### Formulário
|
||||
|
||||
Prompts a form during workflow execution to collect user input. The responses can then be used in subsequent steps to create records, send emails, or execute any other action based on the input.
|
||||
Apresenta um formulário durante a execução do fluxo de trabalho para coletar a entrada do usuário. As respostas podem então ser usadas em etapas subsequentes para criar registros, enviar e-mails ou executar qualquer outra ação com base na entrada.
|
||||
|
||||
<Warning>
|
||||
**Forms are designed for manual triggers only**. For workflows with other triggers (Record Created, Updated, etc.), forms are only accessible via the workflow run interface, which is not the expected user experience. A notifications center will be released in 2026 to properly support forms in automated workflows.
|
||||
**Os formulários são projetados apenas para gatilhos manuais**. Para fluxos de trabalho com outros gatilhos (Registro Criado, Atualizado, etc.), os formulários só são acessíveis via a interface de execução do fluxo de trabalho, o que não é a experiência esperada do usuário. Um centro de notificações será lançado em 2026 para suportar adequadamente os formulários em fluxos de trabalho automatizados.
|
||||
</Warning>
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Configure the fields that users will be asked to fill. For each field, choose
|
||||
* a type among text, number, date, a given record, a select field. Select fields from all objects are available.
|
||||
* a label
|
||||
* a default value under `Placeholder` (optional)
|
||||
* Edit the form title
|
||||
* Configure os campos que os usuários deverão preencher. Para cada campo, escolha
|
||||
* um tipo entre texto, número, data, um determinado registro, um campo de seleção. Campos de seleção de todos os objetos estão disponíveis.
|
||||
* um rótulo
|
||||
* um valor padrão em `Placeholder` (opcional)
|
||||
* Edite o título do formulário
|
||||
|
||||
**Output**: Form responses are available for use in subsequent steps.
|
||||
**Saída**: Respostas do formulário estão disponíveis para uso em etapas subsequentes.
|
||||
|
||||
**Example**: The "Quick Lead" workflow is available by default in all workspaces, available anywhere in the Command Menu `Cmd + K`.
|
||||
**Exemplo**: O fluxo de trabalho "Quick Lead" está disponível por padrão em todos os espaços de trabalho, disponível em qualquer lugar no Menu de Comando `Cmd + K`.
|
||||
|
||||
**How to fill the form**:
|
||||
**Como preencher o formulário**:
|
||||
|
||||
* Trigger your manual workflow from the command menu `Cmd K`
|
||||
* Fill the form that is displayed in the side panel and click `Submit`.
|
||||
* Acione seu fluxo de trabalho manual a partir do menu de comando `Cmd K`
|
||||
* Preencha o formulário exibido no painel lateral e clique em `Submit`.
|
||||
|
||||
<Note>
|
||||
The fields cannot be made mandatory.
|
||||
Os campos não podem ser tornados obrigatórios.
|
||||
</Note>
|
||||
|
||||
<VimeoEmbed videoId="1147277989" title="Video demonstration" />
|
||||
<VimeoEmbed videoId="1147277989" title="Demonstração em vídeo" />
|
||||
|
||||
## Integration Actions
|
||||
## Ações de Integração
|
||||
|
||||
### Code
|
||||
### Código
|
||||
|
||||
Runs custom JavaScript within your workflow.
|
||||
Executa JavaScript personalizado dentro do seu fluxo de trabalho.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Access variables from previous steps. You can edit the variables names dynamically.
|
||||
* Acesse variáveis de etapas anteriores. Você pode editar os nomes das variáveis dinamicamente.
|
||||
|
||||
<VimeoEmbed videoId="1147281795" title="Video demonstration" />
|
||||
<VimeoEmbed videoId="1147281795" title="Demonstração em vídeo" />
|
||||
|
||||
* Write JavaScript code in the editor
|
||||
* Return variables for use in subsequent steps
|
||||
* Test code directly in the step
|
||||
* Escreva o código JavaScript no editor
|
||||
* Retorne variáveis para uso em etapas subsequentes
|
||||
* Teste o código diretamente na etapa
|
||||
|
||||
<Note>
|
||||
If you need to use external API keys in your code, you must input them directly in the function body. You cannot configure API keys elsewhere and reference them in the serverless function.
|
||||
Se você precisar usar chaves de API externas em seu código, deverá inseri-las diretamente no corpo da função. Você não pode configurar chaves de API em outro lugar e referenciá-las na função serverless.
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
**Working with arrays?** Arrays from external systems or previous steps may come as strings. See [How to handle arrays in Code actions](/l/pt/user-guide/workflows/how-tos/advanced-configurations/handle-arrays-in-code-actions) for the solution.
|
||||
**Trabalhando com arrays?** Arrays de sistemas externos ou de etapas anteriores podem vir como strings. Veja [Como lidar com arrays em ações de código](/l/pt/user-guide/workflows/how-tos/advanced-configurations/handle-arrays-in-code-actions) para a solução.
|
||||
</Tip>
|
||||
|
||||
<Tip>
|
||||
Click the square icon at the top right of the code editor to display it in full screen — helpful since the default editor width is limited.
|
||||
Clique no ícone quadrado no canto superior direito do editor de código para exibi-lo em tela cheia — útil, já que a largura padrão do editor é limitada.
|
||||
</Tip>
|
||||
|
||||
### HTTP Request
|
||||
### Requisição HTTP
|
||||
|
||||
Sends a request to an external API as part of your workflow.
|
||||
Envia uma solicitação para uma API externa como parte do seu fluxo de trabalho.
|
||||
|
||||
<img src="/images/user-guide/workflows/http_action.png" style={{width:'100%'}} />
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Enter the API endpoint URL. Using parameters from previous steps is possible.
|
||||
* Select HTTP method (GET, POST, PUT, PATCH, DELETE)
|
||||
* Add required headers and values
|
||||
* Provide sample response for structure preview
|
||||
* Insira a URL do endpoint da API. É possível usar parâmetros de etapas anteriores.
|
||||
* Selecione o método HTTP (GET, POST, PUT, PATCH, DELETE)
|
||||
* Adicione cabeçalhos e valores obrigatórios
|
||||
* Forneça resposta de amostra para visualização da estrutura
|
||||
|
||||
## AI Actions
|
||||
## Ações de IA
|
||||
|
||||
### AI Agent - Coming Soon
|
||||
### Agente de IA - Em breve
|
||||
|
||||
Runs an AI agent within your workflow to perform intelligent tasks.
|
||||
Executa um agente de IA dentro do seu fluxo de trabalho para realizar tarefas inteligentes.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* **Agent**: Select an existing AI agent or use the default agent
|
||||
* **Prompt**: Write the instruction for the AI agent
|
||||
* Reference variables from previous steps in the prompt
|
||||
* **Agente**: Selecione um agente de IA existente ou use o agente padrão
|
||||
* **Prompt**: Escreva a instrução para o agente de IA
|
||||
* Referencie variáveis de etapas anteriores no prompt
|
||||
|
||||
**What AI Agents can do**:
|
||||
**O que os Agentes de IA podem fazer**:
|
||||
|
||||
* Analyze and summarize data
|
||||
* Classify or categorize records
|
||||
* Generate text content
|
||||
* Make decisions based on data
|
||||
* Interact with your CRM data using tools
|
||||
* Analisar e resumir dados
|
||||
* Classificar ou categorizar registros
|
||||
* Gerar conteúdo de texto
|
||||
* Tomar decisões com base em dados
|
||||
* Interagir com seus dados de CRM usando ferramentas
|
||||
|
||||
**Output**: The AI agent's response is available for use in subsequent steps. If the agent has a structured output schema, the response will follow that format.
|
||||
**Saída**: A resposta do agente de IA está disponível para uso em etapas subsequentes. Se o agente tiver um esquema de saída estruturado, a resposta seguirá esse formato.
|
||||
|
||||
<Note>
|
||||
AI Agent actions consume workflow credits based on the AI model used. See [Workflow Credits](/l/pt/user-guide/workflows/capabilities/workflow-credits) for details.
|
||||
As ações do Agente de IA consomem créditos de fluxo de trabalho com base no modelo de IA usado. Veja [Créditos de Fluxo de Trabalho](/l/pt/user-guide/workflows/capabilities/workflow-credits) para obter detalhes.
|
||||
</Note>
|
||||
|
||||
<Note>
|
||||
AI agents respect role-based permissions. You can assign specific roles to agents under **Settings → Roles** to control what data they can access. See [Permissions](/l/pt/user-guide/permissions-access/capabilities/permissions) for details.
|
||||
Os agentes de IA respeitam permissões baseadas em funções. Você pode atribuir funções específicas aos agentes em **Configurações → Funções** para controlar a quais dados eles podem acessar. Veja [Permissões](/l/pt/user-guide/permissions-access/capabilities/permissions) para obter detalhes.
|
||||
</Note>
|
||||
|
||||
@@ -1,66 +1,66 @@
|
||||
---
|
||||
title: Workflow Branches
|
||||
description: Create parallel paths and conditional logic in your workflows.
|
||||
title: Ramificações de Fluxo de Trabalho
|
||||
description: Crie caminhos paralelos e lógica condicional em seus fluxos de trabalho.
|
||||
---
|
||||
|
||||
Branches allow you to split your workflow into multiple paths that can run simultaneously or conditionally based on your data.
|
||||
As ramificações permitem dividir seu fluxo de trabalho em vários caminhos que podem ser executados simultaneamente ou condicionalmente com base em seus dados.
|
||||
|
||||
<img src="/images/user-guide/workflows/branches.png" style={{width:'100%'}} />
|
||||
|
||||
## How Branches Work
|
||||
## Como as Ramificações Funcionam
|
||||
|
||||
When you create multiple connections from a single node, each path becomes a branch. By default, **all branches execute in parallel**—they don't wait for each other.
|
||||
Quando você cria várias conexões a partir de um único nó, cada caminho se torna uma ramificação. Por padrão, **todas as ramificações são executadas em paralelo**—elas não esperam umas pelas outras.
|
||||
|
||||
## Creating Branches
|
||||
## Criando Ramificações
|
||||
|
||||
### Add a New Branch
|
||||
### Adicionar uma Nova Ramificação
|
||||
|
||||
1. **Right-click on the main canvas** of the workflow (not on an existing node)
|
||||
2. Click **Add node**
|
||||
3. Choose the node type for your new branch
|
||||
4. Drag an arrow from the bottom of the previous step to the top of this new action
|
||||
5. Repeat to add more branches from the same node
|
||||
1. **Clique com o botão direito na tela principal** do fluxo de trabalho (não em um nó existente)
|
||||
2. Clique em **Adicionar nó**
|
||||
3. Escolha o tipo de nó para sua nova ramificação
|
||||
4. Arraste uma seta da parte inferior da etapa anterior para o topo desta nova ação
|
||||
5. Repita para adicionar mais ramificações a partir do mesmo nó
|
||||
|
||||
<Note>
|
||||
Each branch is independent. Adding a branch doesn't affect other existing paths from that node.
|
||||
Cada ramificação é independente. Adicionar uma ramificação não afeta outros caminhos existentes desse nó.
|
||||
</Note>
|
||||
|
||||
### Visual Layout
|
||||
### Layout Visual
|
||||
|
||||
Branches appear as parallel paths in the workflow editor. You can drag nodes to rearrange the visual layout without affecting execution.
|
||||
As ramificações aparecem como caminhos paralelos no editor de fluxo de trabalho. Você pode arrastar nós para reorganizar o layout visual sem afetar a execução.
|
||||
|
||||
## Conditional Branches
|
||||
## Ramificações Condicionais
|
||||
|
||||
Since all branches run by default, use **Filter** nodes to control which paths actually execute:
|
||||
Como todas as ramificações são executadas por padrão, use nós **Filtro** para controlar quais caminhos realmente serão executados:
|
||||
|
||||
| Branch | Filter Condition | Action |
|
||||
| ------ | --------------------- | -------------------------- |
|
||||
| A | Stage = "Won" | Send congratulations email |
|
||||
| B | Stage = "Lost" | Create follow-up task |
|
||||
| C | Stage = "Negotiation" | Notify manager |
|
||||
| Ramificação | Condição de Filtro | Ação |
|
||||
| ----------- | -------------------- | ------------------------------ |
|
||||
| A | Etapa = "Ganha" | Enviar e-mail de parabéns |
|
||||
| B | Etapa = "Perdida" | Criar tarefa de acompanhamento |
|
||||
| C | Etapa = "Negociação" | Notificar o gerente |
|
||||
|
||||
1. Create branches from your trigger or action
|
||||
2. Add a **Filter** node as the first step of each branch
|
||||
3. Configure each filter with mutually exclusive conditions
|
||||
4. Add your actions after each filter
|
||||
1. Crie ramificações a partir do seu gatilho ou ação
|
||||
2. Adicione um nó **Filtro** como a primeira etapa de cada ramificação
|
||||
3. Configure cada filtro com condições mutuamente exclusivas
|
||||
4. Adicione suas ações após cada filtro
|
||||
|
||||
Only the branch(es) where the filter condition is met will continue executing.
|
||||
Apenas as ramificações em que a condição do filtro for atendida continuarão a ser executadas.
|
||||
|
||||
## Merging Branches
|
||||
## Mesclando Ramificações
|
||||
|
||||
**Branches don't automatically merge.** Each branch runs independently until it ends. You have full flexibility in how you handle this:
|
||||
**As ramificações não se mesclam automaticamente.** Cada ramificação é executada de forma independente até terminar. Você tem total flexibilidade em como lidar com isso:
|
||||
|
||||
* **Option 1: Keep branches separate**
|
||||
Each branch handles its own follow-up actions independently. This is the simplest approach when branches don't need to converge.
|
||||
* **Opção 1: Manter ramificações separadas**
|
||||
Cada ramificação lida com suas próprias ações de acompanhamento de forma independente. Esta é a abordagem mais simples quando as ramificações não precisam convergir.
|
||||
|
||||
* **Option 2: Merge branches manually**
|
||||
When creating your workflow, you can manually connect multiple branches to the same downstream action. Simply drag arrows from the end of each branch to a common node.
|
||||
* **Opção 2: Mesclar ramificações manualmente**
|
||||
Ao criar seu fluxo de trabalho, você pode conectar manualmente várias ramificações à mesma ação subsequente. Basta arrastar setas do final de cada ramificação para um nó comum.
|
||||
|
||||
<Note>
|
||||
While you can use a [Delay](/l/pt/user-guide/workflows/capabilities/workflow-actions#delay) node to pause execution, it's not currently configurable to wait "until another branch ends."
|
||||
Embora você possa usar um nó [Atraso](/l/pt/user-guide/workflows/capabilities/workflow-actions#delay) para pausar a execução, atualmente não é possível configurá-lo para esperar "até que outra ramificação termine".
|
||||
</Note>
|
||||
|
||||
## Related
|
||||
## Relacionados
|
||||
|
||||
* [How to Use Branches in Workflows](/l/pt/user-guide/workflows/capabilities/use-branches-in-workflows) - Step-by-step guide
|
||||
* [Workflow Actions](/l/pt/user-guide/workflows/capabilities/workflow-actions) - Available actions including Filter
|
||||
* [Como usar ramificações em Fluxos de Trabalho](/l/pt/user-guide/workflows/capabilities/use-branches-in-workflows) - Guia passo a passo
|
||||
* [Ações de Fluxo de Trabalho](/l/pt/user-guide/workflows/capabilities/workflow-actions) - Ações disponíveis, incluindo Filtro
|
||||
|
||||
@@ -1,76 +1,76 @@
|
||||
---
|
||||
title: Workflow Credits
|
||||
description: Understand workflow credit consumption and management.
|
||||
title: Créditos de Fluxo de Trabalho
|
||||
description: Entenda o consumo e o gerenciamento de créditos de fluxo de trabalho.
|
||||
---
|
||||
|
||||
Workflow credits power your automations in Twenty. Understanding how they work helps you optimize costs and manage your automation budget effectively.
|
||||
Os créditos de fluxo de trabalho alimentam suas automações no Twenty. Entender como eles funcionam ajuda você a otimizar custos e gerenciar seu orçamento de automação de maneira eficaz.
|
||||
|
||||
## Credit Allocation
|
||||
## Alocação de créditos
|
||||
|
||||
Workflow credits are allocated based on your billing cycle, not your plan tier:
|
||||
Os créditos de fluxo de trabalho são alocados com base no seu ciclo de faturamento, não no seu nível de plano:
|
||||
|
||||
| Billing Cycle | Credits |
|
||||
| ------------------------ | --------------------------- |
|
||||
| **Monthly subscription** | 5 million credits per month |
|
||||
| **Yearly subscription** | 50 million credits per year |
|
||||
| Ciclo de faturamento | Créditos |
|
||||
| --------------------- | ------------------------------ |
|
||||
| **Assinatura mensal** | 5 milhões de créditos por mês |
|
||||
| **Assinatura anual** | 50 milhões de créditos por ano |
|
||||
|
||||
<Note>
|
||||
5 million monthly credits are generous for standard automations. Most teams won't exceed this limit with typical workflow usage. Additional credits are primarily needed for advanced Code actions and AI-powered workflows.
|
||||
5 milhões de créditos mensais são generosos para automações padrão. A maioria das equipes não excederá esse limite com o uso típico de fluxos de trabalho. Créditos adicionais são necessários principalmente para ações de Code avançadas e fluxos de trabalho com tecnologia de IA.
|
||||
</Note>
|
||||
|
||||
## How Credit Consumption Works
|
||||
## Como Funciona o Consumo de Créditos
|
||||
|
||||
Credits are consumed when workflows execute, not when you create them. Each workflow action consumes credits based on its complexity:
|
||||
Os créditos são consumidos quando os fluxos de trabalho são executados, não quando você os cria. Cada ação de fluxo de trabalho consome créditos com base em sua complexidade:
|
||||
|
||||
### Credit Consumption by Action Type
|
||||
### Consumo de Créditos por Tipo de Ação
|
||||
|
||||
* **Basic internal operations**: Very low credit consumption
|
||||
* Search Records
|
||||
* Create Record
|
||||
* Update Record
|
||||
* Delete Record
|
||||
* Form actions
|
||||
* **Operações internas básicas**: Consumo de créditos muito baixo
|
||||
* Pesquisar Registros
|
||||
* Criar Registro
|
||||
* Atualizar Registro
|
||||
* Excluir Registro
|
||||
* Ações de formulário
|
||||
|
||||
* **Complex operations**: Higher credit consumption
|
||||
* Code actions (JavaScript execution)
|
||||
* HTTP Requests to external services
|
||||
* **Operações complexas**: Maior consumo de créditos
|
||||
* Ações de código (execução de JavaScript)
|
||||
* Solicitações HTTP para serviços externos
|
||||
|
||||
* **AI features**: Higher credit consumption
|
||||
* AI Agent actions consume credits based on the AI model used
|
||||
* More complex prompts and longer outputs use more credits
|
||||
* **Recursos de IA**: Maior consumo de créditos
|
||||
* As ações do Agente de IA consomem créditos com base no modelo de IA usado
|
||||
* Prompts mais complexos e saídas mais longas consomem mais créditos
|
||||
|
||||
* **Delay actions**: Minimal credit consumption
|
||||
* The Delay node consumes **1 credit** when it executes
|
||||
* **No credits are consumed** during the wait period
|
||||
* A 5-minute delay costs the same as a 5-day delay
|
||||
* **Ações de Delay**: Consumo mínimo de créditos
|
||||
* O nó Delay consome **1 crédito** quando é executado
|
||||
* **Nenhum crédito é consumido** durante o período de espera
|
||||
* Um atraso de 5 minutos custa o mesmo que um atraso de 5 dias
|
||||
|
||||
### Real-Time Deduction
|
||||
### Dedução em Tempo Real
|
||||
|
||||
Credits are deducted in real-time as workflows execute. This means:
|
||||
Os créditos são deduzidos em tempo real à medida que os fluxos de trabalho são executados. Isso significa:
|
||||
|
||||
* Draft workflows don't consume credits
|
||||
* Only active, running workflows use your credit allocation
|
||||
* Failed workflows still consume credits for completed steps
|
||||
* Fluxos de trabalho em rascunho não consomem créditos
|
||||
* Apenas fluxos de trabalho ativos e em execução usam sua alocação de crédito
|
||||
* Fluxos de trabalho com falha ainda consomem créditos para etapas concluídas
|
||||
|
||||
## Managing Credits
|
||||
## Gerenciamento de Créditos
|
||||
|
||||
### Check Credit Usage
|
||||
### Verificar Uso de Créditos
|
||||
|
||||
1. Go to **Settings → Billing**
|
||||
2. View your current credit consumption and remaining balance
|
||||
3. Monitor usage patterns to optimize your workflows
|
||||
1. Vá para **Configurações → Faturamento**
|
||||
2. Veja o seu consumo atual de créditos e o saldo restante
|
||||
3. Monitore padrões de uso para otimizar seus fluxos de trabalho
|
||||
|
||||
### Purchasing Additional Credits
|
||||
### Compra de Créditos Adicionais
|
||||
|
||||
If you need more credits beyond your plan allocation:
|
||||
Se você precisar de mais créditos além da alocação do seu plano:
|
||||
|
||||
1. Go to **Settings → Billing**
|
||||
2. Click on the option to purchase additional credits. Packages of different sizes are available.
|
||||
3. Credits are added to your current balance
|
||||
1. Vá para **Configurações → Faturamento**
|
||||
2. Clique na opção para comprar créditos adicionais. Pacotes de diferentes tamanhos estão disponíveis.
|
||||
3. Os créditos são adicionados ao seu saldo atual
|
||||
|
||||
## Best Practices
|
||||
## Melhores Práticas
|
||||
|
||||
* **Batch Processing**: Use bulk operations and Iterator actions efficiently
|
||||
* **Manual Trigger Optimization**: For manual triggers, choose `Bulk` availability to process multiple records in a single workflow run
|
||||
* Optimize Code actions for efficiency
|
||||
* Batch operations to reduce individual action calls
|
||||
* **Processamento em Lote**: Use operações em massa e ações de Iterador de forma eficiente
|
||||
* **Otimização de Gatilhos Manuais**: Para gatilhos manuais, escolha a disponibilidade `Em Massa` para processar vários registros em uma única execução de fluxo de trabalho
|
||||
* Otimize as ações de código para eficiência
|
||||
* Operações em lote para reduzir chamadas de ação individual
|
||||
|
||||
@@ -1,92 +1,92 @@
|
||||
---
|
||||
title: Workflow Runs
|
||||
description: Monitor and manage workflow executions.
|
||||
title: Execuções de Workflow
|
||||
description: Monitore e gerencie as execuções de fluxos de trabalho.
|
||||
image: /images/user-guide/workflows/workflow.png
|
||||
---
|
||||
|
||||
## About Runs
|
||||
## Sobre Execuções
|
||||
|
||||
A **Run** is a record of a workflow execution. Every time a workflow is triggered—whether by a record event, schedule, manual action, or webhook—a new run is created.
|
||||
Uma **Execução** é um registro de uma execução de fluxo de trabalho. Sempre que um fluxo de trabalho é acionado — seja por um evento de registro, agendamento, ação manual ou webhook — uma nova execução é criada.
|
||||
|
||||
## Viewing Runs
|
||||
## Visualizando Execuções
|
||||
|
||||
### From the Workflow Editor
|
||||
### No Editor de Fluxo de Trabalho
|
||||
|
||||
1. Open the workflow you want to monitor
|
||||
2. Click the **Runs** panel on the right side
|
||||
3. See a list of recent runs with their status
|
||||
1. Abra o fluxo de trabalho que você deseja monitorar
|
||||
2. Clique no painel **Execuções** no lado direito
|
||||
3. Veja uma lista de execuções recentes com seus status
|
||||
|
||||
### From the Workflow Runs View
|
||||
### Na Visualização de Execuções de Fluxo de Trabalho
|
||||
|
||||
1. Go to **Workflow Runs** in the sidebar
|
||||
2. View runs across all workflows
|
||||
3. Filter by status, workflow, or date
|
||||
1. Vá para **Execuções de Fluxo de Trabalho** na barra lateral
|
||||
2. Veja execuções em todos os fluxos de trabalho
|
||||
3. Filtre por status, fluxo de trabalho ou data
|
||||
|
||||
## Run Statuses
|
||||
## Status das Execuções
|
||||
|
||||
| Status | Description |
|
||||
| ------------- | ------------------------------------------------------------------------ |
|
||||
| **Running** | Workflow is currently executing |
|
||||
| **Completed** | Workflow finished successfully |
|
||||
| **Failed** | Workflow encountered an error and stopped |
|
||||
| **Waiting** | Workflow is paused (e.g., waiting for a Delay action or Form submission) |
|
||||
| Estado | Descrição |
|
||||
| -------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||
| **Executando** | O fluxo de trabalho está em execução no momento |
|
||||
| **Concluído** | O fluxo de trabalho foi concluído com êxito |
|
||||
| **Falhou** | O fluxo de trabalho encontrou um erro e foi interrompido |
|
||||
| **Aguardando** | O fluxo de trabalho está em pausa (por exemplo, aguardando uma ação de Atraso ou o envio de um Formulário) |
|
||||
|
||||
## Run Details
|
||||
## Detalhes da Execução
|
||||
|
||||
Click on any run to see:
|
||||
Clique em qualquer execução para ver:
|
||||
|
||||
* **Status**: Current state of the run
|
||||
* **Started at**: When the run began
|
||||
* **Duration**: How long the run took
|
||||
* **Trigger data**: The input that started the workflow
|
||||
* **Step outputs**: Data returned by each step
|
||||
* **Error messages**: If the run failed, what went wrong
|
||||
* **Status**: Estado atual da execução
|
||||
* **Iniciado em**: Quando a execução começou
|
||||
* **Duração**: Quanto tempo a execução levou
|
||||
* **Dados do gatilho**: A entrada que iniciou o fluxo de trabalho
|
||||
* **Saídas das etapas**: Dados retornados por cada etapa
|
||||
* **Mensagens de erro**: Se a execução falhou, o que deu errado
|
||||
|
||||
## Step-by-Step Execution
|
||||
## Execução passo a passo
|
||||
|
||||
Each run shows the progression through your workflow:
|
||||
Cada execução mostra o progresso ao longo do seu fluxo de trabalho:
|
||||
|
||||
1. See which steps completed successfully
|
||||
2. Identify where failures occurred
|
||||
3. View the data passed between steps
|
||||
4. Debug issues by examining step inputs and outputs
|
||||
1. Veja quais etapas foram concluídas com êxito
|
||||
2. Identifique onde ocorreram falhas
|
||||
3. Veja os dados passados entre as etapas
|
||||
4. Depure problemas examinando as entradas e saídas das etapas
|
||||
|
||||
## Error Handling
|
||||
## Tratamento de Erros
|
||||
|
||||
When a run fails:
|
||||
Quando uma execução falha:
|
||||
|
||||
1. Open the failed run
|
||||
2. Find the step that caused the failure
|
||||
3. Check the error message for details
|
||||
4. Common issues:
|
||||
* Missing required fields
|
||||
* Invalid data format
|
||||
* External API errors
|
||||
* Permission issues
|
||||
1. Abra a execução com falha
|
||||
2. Encontre a etapa que causou a falha
|
||||
3. Verifique a mensagem de erro para obter detalhes
|
||||
4. Problemas comuns:
|
||||
* Campos obrigatórios ausentes
|
||||
* Formato de dados inválido
|
||||
* Erros de API externa
|
||||
* Problemas de permissão
|
||||
|
||||
## Re-running Workflows
|
||||
## Reexecutando fluxos de trabalho
|
||||
|
||||
If a run fails, you can:
|
||||
Se uma execução falhar, você pode:
|
||||
|
||||
* Fix the underlying issue and wait for the next trigger
|
||||
* For manual workflows, trigger again with the same or updated data
|
||||
* Review the workflow logic to prevent future failures
|
||||
* Corrija o problema subjacente e aguarde o próximo gatilho
|
||||
* Para fluxos de trabalho manuais, acione novamente com os mesmos dados ou dados atualizados
|
||||
* Revise a lógica do fluxo de trabalho para evitar falhas futuras
|
||||
|
||||
## Performance Tips
|
||||
## Dicas de desempenho
|
||||
|
||||
### Managing Run History
|
||||
### Gerenciando o histórico de execuções
|
||||
|
||||
* Runs are retained for historical reference
|
||||
* Very old runs may be archived automatically
|
||||
* Export run data if you need to keep records
|
||||
* As execuções são mantidas para referência histórica
|
||||
* Execuções muito antigas podem ser arquivadas automaticamente
|
||||
* Exporte os dados da execução se precisar manter registros
|
||||
|
||||
### Monitoring Best Practices
|
||||
### Melhores práticas de monitoramento
|
||||
|
||||
* Check runs regularly after activating new workflows
|
||||
* Review failed runs to identify patterns
|
||||
* Verifique as execuções regularmente após ativar novos fluxos de trabalho
|
||||
* Revise as execuções com falha para identificar padrões
|
||||
|
||||
## Related
|
||||
## Relacionados
|
||||
|
||||
* [Workflow Triggers](/l/pt/user-guide/workflows/capabilities/workflow-triggers)
|
||||
* [Workflow Actions](/l/pt/user-guide/workflows/capabilities/workflow-actions)
|
||||
* [Workflow Troubleshooting](/l/pt/user-guide/workflows/how-tos/need-more-help/workflow-troubleshooting)
|
||||
* [Gatilhos de Fluxo de Trabalho](/l/pt/user-guide/workflows/capabilities/workflow-triggers)
|
||||
* [Ações de Fluxo de Trabalho](/l/pt/user-guide/workflows/capabilities/workflow-actions)
|
||||
* [Solução de Problemas de Fluxo de Trabalho](/l/pt/user-guide/workflows/how-tos/need-more-help/workflow-troubleshooting)
|
||||
|
||||
@@ -1,136 +1,136 @@
|
||||
---
|
||||
title: Workflow Triggers
|
||||
description: Learn about the different triggers that start your workflows.
|
||||
title: Gatilhos de Fluxo de Trabalho
|
||||
description: Conheça os diferentes gatilhos que iniciam os seus fluxos de trabalho.
|
||||
---
|
||||
|
||||
## About Triggers
|
||||
## Sobre os Gatilhos
|
||||
|
||||
Workflows always start with a single trigger that defines when the automation should run.
|
||||
Os fluxos de trabalho sempre começam com um único gatilho que define quando a automação deve ser executada.
|
||||
|
||||
<img src="/images/user-guide/workflows/workflow_triggers.png" style={{width:'100%'}} />
|
||||
|
||||
<Tip>
|
||||
**Advanced objects are supported!** Beyond standard CRM objects (People, Companies, Opportunities), you can also trigger workflows and perform actions on:
|
||||
**Objetos avançados são suportados!** Além dos objetos padrão de CRM (Pessoas, Empresas, Oportunidades), você também pode acionar fluxos de trabalho e executar ações em:
|
||||
|
||||
* Workspace Members
|
||||
* Calendar Events
|
||||
* Messages (Emails)
|
||||
* Tasks, Notes, and many other system objects
|
||||
* Membros do Workspace
|
||||
* Eventos de Calendário
|
||||
* Mensagens (E-mails)
|
||||
* Tarefas, Notas e muitos outros objetos do sistema
|
||||
|
||||
This opens up powerful automations like notifying team members when calendar events are created, or processing incoming emails automatically.
|
||||
Isso possibilita automações poderosas, como notificar membros da equipe quando eventos de calendário são criados ou processar automaticamente e-mails recebidos.
|
||||
</Tip>
|
||||
|
||||
## Record is Created
|
||||
## Registro é Criado
|
||||
|
||||
Starts the workflow when a new record is created in a selected object (People, Companies, Opportunities, or any custom object).
|
||||
Inicia o fluxo de trabalho quando um novo registro é criado em um objeto selecionado (Pessoas, Empresas, Oportunidades ou qualquer objeto personalizado).
|
||||
|
||||
**Configuration**: Select the object type to monitor for new records.
|
||||
**Configuração**: Selecione o tipo de objeto para monitorar novos registros.
|
||||
|
||||
<Note>
|
||||
* This trigger is great for records created by csv, mailbox and calendar synchronization, API.
|
||||
* **It is not recommended for records created manually**: with this trigger, workflows start as soon as the record is created. Since Twenty UI offers auto-save on the fly (there is not an edit mode and then a validation to save records), the workflow will be triggered before the user inputs all the fields.
|
||||
To trigger this workflow on records created manually, it is recommended to use the trigger `Record is created or updated` instead.
|
||||
* Este gatilho é ótimo para registros criados por CSV, sincronização de caixa de correio e calendário, API.
|
||||
* **Não é recomendado para registros criados manualmente**: com este gatilho, os fluxos de trabalho começam assim que o registro é criado. Como o Twenty UI oferece salvamento automático em tempo real (não há um modo de edição e depois uma validação para salvar registros), o fluxo de trabalho será acionado antes que o usuário preencha todos os campos.
|
||||
Para acionar este fluxo de trabalho em registros criados manualmente, recomenda-se usar o gatilho `Record is created or updated`.
|
||||
</Note>
|
||||
|
||||
## Record is Updated
|
||||
## Registro é Atualizado
|
||||
|
||||
Starts the workflow when changes are made to an existing record.
|
||||
Inicia o fluxo de trabalho quando alterações são feitas em um registro existente.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the object type
|
||||
* Optionally specify which fields to monitor for changes
|
||||
* Selecione o tipo de objeto
|
||||
* Opcionalmente, especifique quais campos monitorar para alterações
|
||||
|
||||
## Record is Updated or Created
|
||||
## Registro é Atualizado ou Criado
|
||||
|
||||
Starts the workflow when a record is either created or updated in a selected object.
|
||||
Inicia o fluxo de trabalho quando um registro é criado ou atualizado em um objeto selecionado.
|
||||
|
||||
**Why This Matters**: This trigger is particularly helpful because records created via different methods behave differently:
|
||||
**Por que isto é importante**: Este gatilho é particularmente útil porque registros criados por métodos diferentes se comportam de maneira diferente:
|
||||
|
||||
* **API/CSV imports**: Records are created with all fields populated immediately
|
||||
* **Manual creation**: Records are created first, then fields are added in subsequent updates
|
||||
* **Importações API/CSV**: Registros são criados com todos os campos preenchidos imediatamente
|
||||
* **Criação manual**: Registros são criados primeiro, depois os campos são adicionados em atualizações subsequentes
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select the object type to monitor
|
||||
* Optionally specify which fields to monitor for changes
|
||||
* The workflow will trigger both on initial creation and any subsequent updates
|
||||
* Selecione o tipo de objeto para monitorar
|
||||
* Opcionalmente, especifique quais campos monitorar para alterações
|
||||
* O fluxo de trabalho será acionado tanto na criação inicial quanto em quaisquer atualizações subsequentes
|
||||
|
||||
## Record is Deleted
|
||||
## Registro é Excluído
|
||||
|
||||
Starts the workflow when a record is removed from an object.
|
||||
Inicia o fluxo de trabalho quando um registro é removido de um objeto.
|
||||
|
||||
**Configuration**: Select the object type to monitor for deletions.
|
||||
**Configuração**: Selecione o tipo de objeto para monitorar exclusões.
|
||||
|
||||
## Manual Trigger
|
||||
## Gatilho Manual
|
||||
|
||||
Starts the workflow when triggered by a user action. This trigger can be accessed through the `Cmd+K` menu or via a custom button that will be displayed in the top navbar after selecting record(s).
|
||||
Inicia o fluxo de trabalho quando acionado por uma ação do usuário. Este gatilho pode ser acessado pelo menu `Cmd+K` ou por um botão personalizado que será exibido na barra de navegação superior após selecionar um ou mais registros.
|
||||
|
||||
<img src="/images/user-guide/workflows/add_to_newsletter_button.png" style={{width:'100%'}} />
|
||||
|
||||
**Availability Configuration**:
|
||||
Choose how the workflow should handle record selection:
|
||||
**Configuração de Disponibilidade**:
|
||||
Escolha como o fluxo de trabalho deve lidar com a seleção de registros:
|
||||
|
||||
* **Global**: No record is required to trigger this workflow. The workflow is triggered from the command menu `Cmd + K` anywhere (from any object) and does not use record(s) as input.
|
||||
* **Global**: Nenhum registro é necessário para acionar este fluxo de trabalho. O fluxo de trabalho é acionado a partir do menu de comando `Cmd + K` em qualquer lugar (de qualquer objeto) e não usa registros como entrada.
|
||||
|
||||
* **Single**: The selected record(s) will be passed to your workflow. This is configured for a given object. Several records can be selected before triggering the workflow. The workflow will run from beginning to end as many times as there are records selected.
|
||||
* **Único**: O(s) registro(s) selecionado(s) será(ão) passado(s) para o seu fluxo de trabalho. Está configurado para um determinado objeto. Vários registros podem ser selecionados antes de acionar o fluxo de trabalho. O fluxo de trabalho será executado do início ao fim tantas vezes quanto houver registros selecionados.
|
||||
|
||||
<Note>
|
||||
**Soft limit: 100 runs/minute**. Beyond this, workflows remain in "Not Started" status and are processed gradually—either by a background job or when another workflow enters the queue. This means you can select more than 100 records with a Single trigger; execution will just be slower.
|
||||
**Limite flexível: 100 execuções/minuto**. Além disso, os fluxos de trabalho permanecem com o status "Not Started" e são processados gradualmente — seja por uma tarefa em segundo plano ou quando outro fluxo de trabalho entra na fila. Isso significa que você pode selecionar mais de 100 registros com um gatilho único; a execução será apenas mais lenta.
|
||||
</Note>
|
||||
|
||||
* **Bulk**: The selected record(s) will be passed to your workflow. This is configured for a given object. Several records can be selected before triggering the workflow. The workflow will run once, providing the entire list of records as input. This means the workflow needs to contain an [Iterator action](/l/pt/user-guide/workflows/capabilities/workflow-actions#iterator).
|
||||
* **Em Massa**: O(s) registro(s) selecionado(s) será(ão) passado(s) para o seu fluxo de trabalho. Está configurado para um determinado objeto. Vários registros podem ser selecionados antes de acionar o fluxo de trabalho. O fluxo de trabalho será executado uma vez, fornecendo a lista completa de registros como entrada. Isso significa que o fluxo de trabalho precisa conter uma [ação de iterador](/l/pt/user-guide/workflows/capabilities/workflow-actions#iterator).
|
||||
|
||||
<Note>
|
||||
This is more advanced, and best for people who want to optimize the number of workflow runs.
|
||||
Isto é mais avançado e é melhor para pessoas que desejam otimizar o número de execuções de fluxo de trabalho.
|
||||
</Note>
|
||||
|
||||
<img src="/images/user-guide/workflows/manual_trigger.png" style={{width:'100%'}} />
|
||||
|
||||
**Additional Configuration**:
|
||||
**Configuração Adicional**:
|
||||
|
||||
* Select the target object (for Single and Bulk availability)
|
||||
* Choose a command icon for the workflow trigger
|
||||
* Configure navbar placement (Pinned or Not Pinned)
|
||||
* Selecione o objeto alvo (para disponibilidade Única e em Massa)
|
||||
* Escolha um ícone de comando para acionar o fluxo de trabalho
|
||||
* Configure o local da barra de navegação (Fixado ou Não Fixado)
|
||||
|
||||
**Access Methods**:
|
||||
**Métodos de Acesso**:
|
||||
|
||||
* `Cmd+K` menu to find and launch manual workflows
|
||||
* Custom button in the top navbar (if configured)
|
||||
* `Cmd+K` menu para encontrar e iniciar fluxos de trabalho manuais
|
||||
* Botão personalizado na barra de navegação superior (se configurado)
|
||||
|
||||
## Time-Based Trigger: On a Schedule
|
||||
## Gatilho baseado em tempo: Em um cronograma
|
||||
|
||||
Starts the workflow on a recurring basis you define.
|
||||
Inicia o fluxo de trabalho em uma base recorrente que você define.
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* Select time unit (minutes, hours, days)
|
||||
* Enter a value or use custom cron expressions for advanced scheduling
|
||||
* Selecione a unidade de tempo (minutos, horas, dias)
|
||||
* Insira um valor ou utilize expressões cron personalizadas para agendamentos avançados
|
||||
|
||||
<Note>
|
||||
**Timezone**: Scheduled workflows run in **UTC**. When setting hours for daily schedules, convert your local time to UTC.
|
||||
**Fuso horário**: Fluxos de trabalho agendados são executados em **UTC**. Ao definir horários para agendamentos diários, converta seu horário local para UTC.
|
||||
</Note>
|
||||
|
||||
## External Trigger: Webhook
|
||||
## Gatilho Externo: Webhook
|
||||
|
||||
Starts the workflow when a GET or POST request is received from an external service.
|
||||
Inicia o fluxo de trabalho quando uma solicitação GET ou POST é recebida de um serviço externo.
|
||||
|
||||
<img src="/images/user-guide/workflows/webhook_trigger.png" style={{width:'100%'}} />
|
||||
|
||||
**Configuration**:
|
||||
**Configuração**:
|
||||
|
||||
* The workflow provides a unique webhook URL—copy this and add it to your external system as the endpoint to call.
|
||||
* For POST requests, define the expected body structure so Twenty knows what data to expect. Add here the fields you will receive that will be needed below in your workflow.
|
||||
* Configure authentication (coming soon).
|
||||
* O fluxo de trabalho fornece uma URL de webhook exclusiva — copie-a e adicione-a ao seu sistema externo como o endpoint a ser chamado.
|
||||
* Para requisições POST, defina a estrutura de corpo esperada para que o Twenty saiba quais dados esperar. Adicione aqui os campos que você receberá e que serão necessários abaixo no seu fluxo de trabalho.
|
||||
* Configure a autenticação (em breve).
|
||||
|
||||
## Choosing the Right Trigger
|
||||
## Escolhendo o Gatilho Correto
|
||||
|
||||
| Use Case | Recommended Trigger |
|
||||
| --------------------------- | ---------------------------- |
|
||||
| New leads need processing | Record is Created |
|
||||
| Data changes need sync | Record is Updated |
|
||||
| Import/manual data handling | Record is Updated or Created |
|
||||
| Cleanup after deletion | Record is Deleted |
|
||||
| User-initiated action | Launch Manually |
|
||||
| Recurring reports | On a Schedule |
|
||||
| External integration | Webhook or On a Schedule |
|
||||
| Caso de uso | Gatilho recomendado |
|
||||
| --------------------------------------------- | ------------------------------- |
|
||||
| Novos leads precisam de processamento | Registro é Criado |
|
||||
| Alterações de dados precisam de sincronização | Registro é Atualizado |
|
||||
| Importação/manipulação manual de dados | Registro é Atualizado ou Criado |
|
||||
| Limpeza após exclusão | Registro é Excluído |
|
||||
| Ação iniciada pelo usuário | Iniciar Manualmente |
|
||||
| Relatórios recorrentes | Agendamento |
|
||||
| Integração externa | Webhook ou Em um cronograma |
|
||||
|
||||
@@ -1,85 +1,85 @@
|
||||
---
|
||||
title: Workflow Versions
|
||||
description: Manage workflow versions and drafts.
|
||||
title: Versões de Workflow
|
||||
description: Gerenciar versões e rascunhos de workflow.
|
||||
image: /images/user-guide/workflows/workflow.png
|
||||
---
|
||||
|
||||
## About Versions
|
||||
## Sobre versões
|
||||
|
||||
Every time you activate a workflow, a new version is created. This allows you to track changes over time and revert to previous configurations if needed.
|
||||
Sempre que você ativa um workflow, uma nova versão é criada. Isso permite acompanhar as alterações ao longo do tempo e reverter para configurações anteriores, se necessário.
|
||||
|
||||
## Version Statuses
|
||||
## Status das versões
|
||||
|
||||
| Status | Description |
|
||||
| --------------- | -------------------------------------- |
|
||||
| **Draft** | Being edited, not yet published |
|
||||
| **Active** | Live version responding to triggers |
|
||||
| **Deactivated** | Previously active but manually stopped |
|
||||
| **Archived** | Past versions kept for history |
|
||||
| Estado | Descrição |
|
||||
| -------------- | ------------------------------------------------- |
|
||||
| **Rascunho** | Sendo editado, ainda não publicado |
|
||||
| **Ativo** | Versão ao vivo respondendo a gatilhos |
|
||||
| **Desativado** | Anteriormente ativo, mas interrompido manualmente |
|
||||
| **Arquivado** | Versões passadas mantidas para histórico |
|
||||
|
||||
## Working with Drafts
|
||||
## Trabalhando com rascunhos
|
||||
|
||||
When you edit an active workflow, your changes are saved as a **draft**. The active version continues to run while you work on updates.
|
||||
Ao editar um workflow ativo, as alterações são salvas como um **rascunho**. A versão ativa continua em execução enquanto você trabalha nas atualizações.
|
||||
|
||||
Once you're done editing, you can:
|
||||
Quando terminar de editar, você pode:
|
||||
|
||||
* **Activate**: Publish the draft as the new active version (the previous version is archived)
|
||||
* **Discard**: Delete the draft and keep the current active version
|
||||
* **Ativar**: Publicar o rascunho como a nova versão ativa (a versão anterior é arquivada)
|
||||
* **Descartar**: Excluir o rascunho e manter a versão ativa atual
|
||||
|
||||
## Version History
|
||||
## Histórico de Versões
|
||||
|
||||
### Viewing Past Versions
|
||||
### Visualizando versões anteriores
|
||||
|
||||
1. Open the workflow
|
||||
2. Click the **Versions** tab
|
||||
3. See all previous versions with timestamps
|
||||
1. Abra o workflow
|
||||
2. Clique na aba **Versões**
|
||||
3. Veja todas as versões anteriores com carimbos de data e hora
|
||||
|
||||
### Restoring a Version
|
||||
### Restaurando uma versão
|
||||
|
||||
1. Find the version you want to restore
|
||||
2. Click **Use as draft**
|
||||
3. The version is copied to a new draft
|
||||
4. Make any necessary updates
|
||||
5. Activate when ready
|
||||
1. Encontre a versão que deseja restaurar
|
||||
2. Clique em **Usar como rascunho**
|
||||
3. A versão é copiada para um novo rascunho
|
||||
4. Faça as atualizações necessárias
|
||||
5. Ative quando estiver pronto
|
||||
|
||||
## Best Practices
|
||||
## Melhores Práticas
|
||||
|
||||
### Version Management
|
||||
### Gerenciamento de versões
|
||||
|
||||
* Activate only when ready for production
|
||||
* Keep meaningful changes between versions
|
||||
* Document major changes in workflow names or descriptions
|
||||
* Test in draft mode before activating
|
||||
* Ative somente quando estiver pronto para produção
|
||||
* Mantenha mudanças relevantes entre versões
|
||||
* Documente mudanças importantes em nomes ou descrições de workflows
|
||||
* Teste no modo de rascunho antes de ativar
|
||||
|
||||
### Reverting Changes
|
||||
### Revertendo alterações
|
||||
|
||||
* If a new version causes issues, restore the previous version
|
||||
* Use the version history to track what changed
|
||||
* Always test restored versions before activating
|
||||
* Se uma nova versão causar problemas, restaure a versão anterior
|
||||
* Use o histórico de versões para acompanhar o que mudou
|
||||
* Sempre teste versões restauradas antes de ativar
|
||||
|
||||
## Common Workflows
|
||||
## Workflows comuns
|
||||
|
||||
### Quick Edit
|
||||
### Edição rápida
|
||||
|
||||
1. Make minor changes to an active workflow
|
||||
2. Test in draft mode
|
||||
3. Activate the new version
|
||||
1. Faça pequenas alterações em um workflow ativo
|
||||
2. Teste no modo de rascunho
|
||||
3. Ative a nova versão
|
||||
|
||||
### Major Revision
|
||||
### Revisão importante
|
||||
|
||||
1. Use the previous version as a starting point
|
||||
2. Make significant changes in draft
|
||||
3. Thoroughly test all scenarios
|
||||
4. Activate when confident
|
||||
1. Use a versão anterior como ponto de partida
|
||||
2. Faça alterações significativas no rascunho
|
||||
3. Teste minuciosamente todos os cenários
|
||||
4. Ative quando estiver confiante
|
||||
|
||||
### Rollback
|
||||
### Reversão
|
||||
|
||||
1. Identify the issue with the current version
|
||||
2. Find the last working version in history
|
||||
3. Click **Use as draft**
|
||||
4. Activate to restore the old behavior
|
||||
1. Identifique o problema na versão atual
|
||||
2. Encontre a última versão funcional no histórico
|
||||
3. Clique em **Usar como rascunho**
|
||||
4. Ative para restaurar o comportamento anterior
|
||||
|
||||
## Related
|
||||
## Relacionados
|
||||
|
||||
* [Getting Started with Workflows](/l/pt/user-guide/workflows/overview)
|
||||
* [Workflow Runs](/l/pt/user-guide/workflows/capabilities/workflow-runs)
|
||||
* [Primeiros passos com Workflows](/l/pt/user-guide/workflows/overview)
|
||||
* [Execuções de Workflows](/l/pt/user-guide/workflows/capabilities/workflow-runs)
|
||||
|
||||
Reference in New Issue
Block a user