# Receitas prontas

> Catálogo de automações no-code copiáveis para conectar formulários, RD Station, Google Sheets e Slack ao GS Engage.

- URL canônica: https://docs.growthstation.app/docs/api/no-code/receitas
- Idioma: pt-BR
- Última atualização: 2026-09-20T08:21:20.451Z
- Produto: GS Engage
- Mantido por: Produto GS Engage



<PageHero emoji="🧩" title="Receitas prontas" description="Automações prontas para copiar: conecte formulários, RD Station, planilhas e Slack ao GS Engage sem escrever código." gradient="brand" />

Cada receita abaixo é uma automação completa e testada. Você escolhe a ferramenta no-code (Zapier, Make ou n8n), copia os campos e adapta para o seu processo. Pense em cada uma como um pequeno robô: quando algo acontece (o **gatilho**), ele executa uma **ação** no GS Engage ou em outro sistema.

<Callout type="tip" title="Como usar este catálogo">
  Comece pela receita que resolve a sua dor de negócio. Em cada uma você encontra: o gatilho, a ação, os campos a preencher, o resultado esperado e o link para o guia técnico completo.
</Callout>

<Callout type="danger" title="Toda chamada é real (não existe ambiente de teste)">
  O GS Engage não tem sandbox. Qualquer automação que cria ou altera dados afeta a produção de verdade. Ao montar uma receita nova, dispare com **um único lead de teste** antes de ligar o fluxo para todo mundo.
</Callout>

🔑 Antes de começar: a sua chave de API [#-antes-de-começar-a-sua-chave-de-api]

Todas as receitas usam a mesma autenticação. A **chave de API** (`apiKey`) é como uma senha que autoriza a automação a falar com o GS Engage.

<Steps>
  <Step num={1} title="Copie a sua chave">
    Na plataforma, vá em <TextHighlight>Configurações</TextHighlight> → <TextHighlight>Configurações de API</TextHighlight> e copie a chave (cerca de 40 caracteres).
  </Step>

  <Step num={2} title="Guarde como segredo">
    A chave viaja na URL, no formato `?apiKey=SUA_CHAVE`. Ela aparece em logs e históricos. Guarde no cofre de credenciais da sua ferramenta no-code, nunca cole em canais públicos.
  </Step>

  <Step num={3} title="Valide antes de automatizar">
    Faça uma chamada leve de leitura para conferir que a chave funciona. Um `200` com uma lista confirma tudo certo.
  </Step>
</Steps>

```bash
curl "https://api.gsengage.com/api/v1/custom-fields?apiKey=SUA_CHAVE"
```

Um retorno `200` (mesmo que seja uma lista vazia `[]`) significa: a chave é válida e você pode seguir para as receitas. Um `401` significa que a chave está ausente ou incorreta.

<Callout type="warning" title="A base é sempre a mesma">
  Todos os caminhos ficam sob `https://api.gsengage.com/api/v1`. A palavra **endpoint** significa apenas "endereço de uma operação" — cada linha de código abaixo aponta para um deles.
</Callout>

***

🎯 R1 · Lead de formulário entra na cadência e cai para um SDR [#-r1--lead-de-formulário-entra-na-cadência-e-cai-para-um-sdr]

**Persona:** você recebe leads por um formulário (site, landing page, evento) e quer que cada um entre automaticamente numa **Cadência** e seja distribuído a um vendedor (SDR), sem digitação manual.

| Item                       | Valor                                                                   |
| -------------------------- | ----------------------------------------------------------------------- |
| **Gatilho**                | Nova resposta de formulário (Typeform, Google Forms, RD, etc.)          |
| **Ação**                   | Adiciona o lead à cadência e inicia a prospecção com responsável        |
| **Endpoint**               | `POST /api/v1/routines/{routineId}/lead`                                |
| **Ferramenta recomendada** | Zapier ou Make                                                          |
| **Resultado**              | Lead na cadência, prospecção iniciada, atividade no topo da fila do SDR |

<Steps>
  <Step num={1} title="Escolha a cadência de destino">
    Liste as suas cadências para descobrir o `routineId` (o identificador da Cadência). Guarde esse valor — ele vai na URL da ação.

    ```bash
    curl "https://api.gsengage.com/api/v1/routines?apiKey=SUA_CHAVE"
    ```
  </Step>

  <Step num={2} title="Configure o gatilho na ferramenta">
    No Zapier ou Make, crie um Zap/Cenário com o gatilho <TextHighlight>Nova resposta do formulário</TextHighlight>. Mapeie os campos do formulário (nome, e-mail, telefone) para usar no próximo passo.
  </Step>

  <Step num={3} title="Adicione o lead à cadência com um responsável">
    A ação é uma requisição HTTP (o próprio Zapier tem o passo <TextHighlight>Webhooks by Zapier → POST</TextHighlight>; no Make use o módulo <TextHighlight>HTTP → Make a request</TextHighlight>).

    ```bash
    curl -X POST "https://api.gsengage.com/api/v1/routines/{routineId}/lead?apiKey=SUA_CHAVE" \
      -H "Content-Type: application/json" \
      -d '{
        "lead": {
          "name": "Maria Souza",
          "emails": [{ "value": "maria@empresa.com", "label": "Trabalho" }],
          "mobiles": [{ "value": "+5511999998888", "label": "Celular" }]
        },
        "responsibleId": "ID_DO_SDR"
      }'
    ```
  </Step>
</Steps>

<FieldInfoGroup>
  <FieldInfo title="Contato do lead" required>
    Obrigatório pelo menos um contato. Os contatos vão em arrays: `emails`, `phones` e `mobiles`. Cada item tem o formato `{ "value": "...", "label": "..." }`.
  </FieldInfo>

  <FieldInfo title="responsibleId" showOptional>
    Se você informar o `responsibleId` (ou se a distribuição automática estiver ativa na cadência), a prospecção **inicia** na hora e cai para aquele SDR. Sem responsável e sem distribuição automática, o lead entra na cadência mas não começa a ser trabalhado.
  </FieldInfo>
</FieldInfoGroup>

**O que a resposta significa:** o lead entra marcado como **Levantada de Mão** (o cliente pediu contato) e aparece no **topo da fila de atividades** do vendedor. Ou seja: o SDR abre o app e a primeira tarefa já é falar com esse lead quente.

<Callout type="info" title="Já tem o lead criado?">
  Se o lead já existe no GS Engage, você pode iniciar a prospecção direto com `POST /api/v1/prospections` informando `leadId`, `routineId` e o `responsibleId`.
</Callout>

***

📊 R2 · Venda ganha vira linha no Google Sheets + aviso no Slack [#-r2--venda-ganha-vira-linha-no-google-sheets--aviso-no-slack]

**Persona:** toda vez que um negócio é **ganho**, você quer registrar a venda numa planilha (para o financeiro/BI) e comemorar no canal do time no Slack — automaticamente.

Aqui o gatilho não é um formulário: é o próprio GS Engage avisando você. Isso funciona com **webhook** (um "aviso automático": o GS Engage faz uma chamada para a sua URL quando o evento acontece).

| Item                       | Valor                                                   |
| -------------------------- | ------------------------------------------------------- |
| **Gatilho**                | Evento de webhook `prospection.won` (prospecção Ganha)  |
| **Ação**                   | Cria linha no Google Sheets + envia mensagem no Slack   |
| **Endpoint (setup)**       | `POST /api/v1/webhooks`                                 |
| **Ferramenta recomendada** | Zapier ou Make (ambos recebem webhooks)                 |
| **Resultado**              | Cada venda ganha aparece na planilha e no canal do time |

<Steps>
  <Step num={1} title="Crie o gatilho na ferramenta e pegue a URL">
    No Zapier use o gatilho <TextHighlight>Webhooks by Zapier → Catch Hook</TextHighlight>; no Make use <TextHighlight>Webhooks → Custom webhook</TextHighlight>. A ferramenta te dá uma URL única. Copie-a.
  </Step>

  <Step num={2} title="Registre o webhook no GS Engage">
    Diga ao GS Engage para avisar aquela URL quando uma prospecção for ganha.

    ```bash
    curl -X POST "https://api.gsengage.com/api/v1/webhooks?apiKey=SUA_CHAVE" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Venda ganha para planilha e Slack",
        "url": "https://hooks.zapier.com/hooks/catch/000000/abcde/",
        "events": ["prospection.won"]
      }'
    ```
  </Step>

  <Step num={3} title="Guarde o secret na hora">
    A resposta traz um campo `secret`. Ele é retornado **uma única vez**. Copie e guarde no cofre de credenciais — você vai usá-lo para confirmar que cada aviso veio mesmo do GS Engage.
  </Step>

  <Step num={4} title="Ligue as ações: Sheets e Slack">
    De volta na ferramenta, adicione duas ações após o gatilho: <TextHighlight>Google Sheets → Create Spreadsheet Row</TextHighlight> e <TextHighlight>Slack → Send Channel Message</TextHighlight>. Mapeie os campos do corpo do webhook (`data`) para as colunas da planilha e para o texto da mensagem.
  </Step>
</Steps>

Cada aviso chega no seguinte envelope (o campo `data` traz os detalhes da prospecção ganha):

```json
{
  "id": "evt_123",
  "test": false,
  "event": "prospection.won",
  "data": { },
  "retries": 0,
  "manualRetries": 0,
  "createdAt": "2026-07-17T14:03:00.000Z"
}
```

<Callout type="warning" title="Confirme a autenticidade (HMAC SHA-256)">
  Cada entrega vem assinada com **HMAC SHA-256** — uma "impressão digital" calculada a partir do corpo da mensagem e do seu `secret`. No app oficial de Zapier e no Make você costuma poder validar isso automaticamente; em fluxos customizados, recalcule a assinatura com o seu `secret` e compare com o header de assinatura. A assinatura migrou de SHA-1 para SHA-256.
</Callout>

**O que isso entrega ao negócio:** o financeiro e o BI param de depender de exportação manual, e o time vê cada vitória no Slack em tempo real — sem ninguém copiar e colar nada.

<Callout type="tip" title="Rótulos que o cliente vê">
  No app, o status da prospecção aparece assim: **Em andamento** (`IN_PROGRESS`), **Congelada** (`FROZEN`), **Ganha** (`WON`) e **Perdida** (`LOST`). Esta receita reage à Ganha.
</Callout>

***

🔄 R3 · Novo lead no RD Station é criado no GS Engage [#-r3--novo-lead-no-rd-station-é-criado-no-gs-engage]

**Persona:** seus leads nascem no **RD Station** (marketing) e você quer que eles apareçam automaticamente no GS Engage para o time comercial trabalhar.

| Item                       | Valor                                                          |
| -------------------------- | -------------------------------------------------------------- |
| **Gatilho**                | Novo lead / conversão no RD Station                            |
| **Ação**                   | Cria o lead no GS Engage                                       |
| **Endpoint**               | `POST /api/v1/leads`                                           |
| **Ferramenta recomendada** | Zapier, Make ou n8n                                            |
| **Resultado**              | Lead disponível no GS Engage, pronto para entrar numa cadência |

<Steps>
  <Step num={1} title="Configure o gatilho do RD Station">
    Na sua ferramenta, use o gatilho de novo lead/conversão do RD Station. Mapeie nome, e-mail e telefone do contato.
  </Step>

  <Step num={2} title="Crie o lead no GS Engage">
    A ação é uma requisição HTTP de criação. Lembre: é obrigatório **pelo menos um contato**.

    ```bash
    curl -X POST "https://api.gsengage.com/api/v1/leads?apiKey=SUA_CHAVE" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "João Pereira",
        "company": "ACME Ltda",
        "emails": [{ "value": "joao@acme.com", "label": "Trabalho" }],
        "mobiles": [{ "value": "+5521988887777", "label": "Celular" }]
      }'
    ```
  </Step>

  <Step num={3} title="(Opcional) Já jogue na cadência">
    Se quiser que o lead entre direto numa cadência, encadeie a Receita R1 usando o `id` retornado nesta criação.
  </Step>
</Steps>

<FieldInfoGroup>
  <FieldInfo title="Pelo menos um contato" required>
    A criação falha sem contato. Preencha ao menos um item em `emails`, `phones` ou `mobiles`, sempre no formato `{ "value": "...", "label": "..." }`.
  </FieldInfo>

  <FieldInfo title="Origem do lead">
    Um lead criado via API fica com a origem **via API** (`API`). Leads que vêm do RD Station dentro do próprio GS Engage aparecem como **RD Station** (`RD_MARKETING`); listas importadas aparecem como **lista importada** (`FILE`).
  </FieldInfo>
</FieldInfoGroup>

**O que a resposta significa:** o retorno traz o `id` do novo lead. A partir daí, ele já existe no GS Engage e pode ser distribuído, colocado em cadência ou trabalhado normalmente.

***

⚠️ Cuidados que valem para todas as receitas [#️-cuidados-que-valem-para-todas-as-receitas]

<DoDont>
  <DoDontItem type="do">
    Dispare cada receita nova com um único lead de teste antes de ligar para todo o fluxo — não existe sandbox.
  </DoDontItem>

  <DoDontItem type="do">
    Guarde a 

    `apiKey`

     e o 

    `secret`

     do webhook no cofre de credenciais da sua ferramenta no-code.
  </DoDontItem>

  <DoDontItem type="do">
    Respeite o header 

    `Retry-After`

     quando receber 

    `429`

     e use recuo (backoff) entre tentativas.
  </DoDontItem>

  <DoDontItem type="dont">
    Não cole a 

    `apiKey`

     em canais públicos, prints ou mensagens — ela viaja na URL e vaza fácil.
  </DoDontItem>

  <DoDontItem type="dont">
    Não ignore o 

    `secret`

     do webhook: ele é mostrado uma única vez, na resposta da criação.
  </DoDontItem>

  <DoDontItem type="dont">
    Não dispare centenas de chamadas de uma vez sem controle — há limite por minuto.
  </DoDontItem>
</DoDont>

<Callout type="info" title="Limite de requisições (rate limit)">
  O **rate limit** é o teto de chamadas por minuto. A janela é de 60s: **200** leituras/min (GET) e **100** escritas/min (POST, PUT, PATCH, DELETE). Ao estourar, você recebe `429` com o header `Retry-After` (segundos até liberar). Automações que processam muitos leads devem esperar esse tempo antes de tentar de novo.
</Callout>

Quando algo dá errado [#quando-algo-dá-errado]

As mensagens de erro do GS Engage já vêm em português e podem ser reaproveitadas direto na sua automação.

| Código | O que houve                                      | Como corrigir                                                         |
| ------ | ------------------------------------------------ | --------------------------------------------------------------------- |
| `400`  | Corpo inválido (ex.: lead sem contato)           | Leia o array `errors[]` — ele diz o `field` e a `message` do problema |
| `401`  | `apiKey` ausente ou inválida                     | Confira a chave em Configurações → Configurações de API               |
| `404`  | Recurso não encontrado (ex.: `routineId` errado) | Reliste as cadências ou leads para pegar o ID certo                   |
| `429`  | Estourou o limite por minuto                     | Aguarde o `Retry-After` e tente de novo com backoff                   |

***

❓ Perguntas frequentes [#-perguntas-frequentes]

<FAQ>
  <FAQItem question="Preciso saber programar para usar estas receitas?">
    Não. Zapier e Make montam tudo com passos visuais. O n8n é um pouco mais técnico, mas também dispensa código. Os blocos `curl` acima servem para você conferir o formato dos campos, não para digitar num terminal.
  </FAQItem>

  <FAQItem question="Qual ferramenta escolher: Zapier, Make ou n8n?">
    O GS Engage expõe gatilhos nativos de Zapier, então é o caminho mais rápido para começar. Make é ótimo para fluxos com muitas ramificações e costuma sair mais barato em volume. n8n é a opção para quem quer hospedar o próprio ambiente e ter controle total.
  </FAQItem>

  <FAQItem question="Como testo um webhook sem esperar uma venda real acontecer?">
    O envelope de entrega tem um campo `test`. Entregas de teste chegam com `test: true`, então você consegue diferenciar um disparo de teste de um evento real na sua automação.
  </FAQItem>

  <FAQItem question="Perdi o secret do webhook. E agora?">
    O `secret` só aparece na resposta da criação (`POST /api/v1/webhooks`). Se você o perdeu, remova o webhook antigo (`DELETE /api/v1/webhooks/{webhookId}`) e crie um novo para receber um `secret` fresco.
  </FAQItem>
</FAQ>

***

📚 Guias técnicos relacionados [#-guias-técnicos-relacionados]

<RelatedArticles>
  <RelatedArticle href="/docs/api/comece-aqui/quickstart" title="Primeiros passos no-code" description="Pegue a sua apiKey, valide a chave e faça a primeira chamada." />

  <RelatedArticle href="/docs/api/webhooks" title="Webhooks e assinatura HMAC" description="Como registrar eventos, ler o envelope e validar a assinatura SHA-256." />

  <RelatedArticle href="/docs/api/referencia" title="Criar e gerenciar leads" description="Estrutura de contatos, criação via API e filtros de busca." />

  <RelatedArticle href="/docs/api/referencia" title="Cadências e prospecções" description="Adicionar leads à cadência, iniciar e finalizar prospecções." />
</RelatedArticles>
