Ir para o conteúdo principal

Guia de integração com o Make.com

Resposta rápida: use o editor visual de fluxos do Make.com com um gatilho “Custom webhook”. Aponte o webhook_url da Surmado para ele, filtre por event = report.completed e report.product, e distribua para Google Sheets / Slack / Airtable / Notion. Para dados mais detalhados, adicione um módulo HTTP que chame GET https://api.surmado.com/v1/reports/{{1.report.id}} com autenticação Bearer.

Tempo de leitura: 14 minutos


Pré-requisitos

  1. Conta no Make.com (o plano gratuito serve para volume baixo; Core a $9/mês para uso regular)
  2. Chave de API da Surmado (sur_live_...) – crie em app.surmado.com → Settings → API Keys
  3. App de destino (Google Sheets, Slack, Airtable, Notion etc.)

Requisitos de plano do Make

Plano gratuito:

  • 1.000 operações/mês
  • Limite de 2 cenários
  • Suficiente para 1-5 clientes, volume baixo

Plano Core ($9/mês):

  • 10.000 operações/mês
  • Cenários ilimitados
  • Recomendado para uso regular

Plano Pro ($16/mês):

  • 10.000 operações + limites de dados maiores
  • Variáveis personalizadas, execução prioritária
  • Para agências com 10 ou mais clientes

O padrão de integração

  1. Gatilho: “Webhooks → Custom webhook”. O Make fornece uma URL exclusiva.
  2. Configure a Surmado para enviar por POST os relatórios concluídos a essa URL, usando webhook_url ao criar um relatório.
  3. Filtre por event e report.product.
  4. Leia o payload aninhado com a notação de pontos do Make (1.report.summary.presence_score).
  5. (Opcional) módulo HTTP para buscar dados mais detalhados pela API REST.
  6. Aja – escreva no app de destino.

Exemplo de payload

{
  "event": "report.completed",
  "timestamp": "2026-04-15T12:00:00+00:00",
  "report": {
    "id": "rpt_abc123xyz",
    "token": "SIG-2026-04-A1B2C",
    "product": "signal",
    "status": "completed",
    "tier": "basic",
    "data_url": "https://api.surmado.com/v1/reports/rpt_abc123xyz",
    "pdf_url": "https://api.surmado.com/v1/reports/view/VIEW_TOKEN",
    "summary": {
      "business_name": "Acme Coffee Roasters",
      "presence_score": 34.2,
      "authority_score": 42.7,
      "competitive_rank": 4,
      "top_competitor": "Blue Bottle"
    }
  }
}

Relatórios de Strategy ("product": "solutions") não têm o objeto summary: só report.token e report.pdf_url.


Fluxo 1: AI Visibility no Google Sheets

Módulos do cenário

Módulo 1: Webhooks: Custom webhook

  • Adicione um novo webhook. O Make gera uma URL como https://hook.eu2.make.com/abc123def456.
  • Clique em Determine data structure e dispare um relatório de exemplo da Surmado (veja o exemplo de curl abaixo) para que o Make capture a estrutura do payload.

Crie o exemplo com:

curl -X POST https://api.surmado.com/v1/reports/signal \
  -H "Authorization: Bearer sur_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brand_slug": "acme_corp",
    "url": "https://acme.com",
    "email": "founder@acme.com",
    "industry": "B2B SaaS",
    "location": "United States",
    "persona": "Small business owners",
    "pain_points": "Losing track of customer conversations",
    "brand_details": "Simple CRM with email integration",
    "direct_competitors": "HubSpot, Pipedrive",
    "webhook_url": "https://hook.eu2.make.com/abc123def456"
  }'

Módulo 2: Tools: Filter

Condição: 1.event Equal to report.completed AND 1.report.product Equal to signal.

Módulo 3: Google Sheets: Add a Row

Mapeie as colunas:

  • Date: {{1.timestamp}}
  • Token: {{1.report.token}}
  • Business: {{1.report.summary.business_name}}
  • Presence Score: {{1.report.summary.presence_score}}
  • Authority Score: {{1.report.summary.authority_score}}
  • Competitive Rank: {{1.report.summary.competitive_rank}}
  • Top Competitor: {{1.report.summary.top_competitor}}

Operações usadas por execução: 3.


Fluxo 2: Site Audit com alertas condicionais

Um único cenário que grava todo Site Audit no Google Sheets e avisa no Slack só quando performance_score < 70.

Módulo 1: Custom webhook (reaproveite o do Fluxo 1 ou crie um novo).

Módulo 2: Filter: 1.event = report.completed AND 1.report.product = scan.

Módulo 3: Google Sheets: Add a Row com os campos de resumo do Site Audit (seo_score, performance_score, accessibility_score, total_pages, critical_issues_count).

Módulo 4: Router: divide em dois caminhos.

  • Caminho A (sempre): segue até o fim.
  • Caminho B: Filter 1.report.summary.performance_score < 70 → Slack: Create a message.

Modelo de mensagem do Slack:

:warning: Performance regression on *{{1.report.summary.business_name}}*

Performance: {{1.report.summary.performance_score}} (below 70 threshold)
SEO: {{1.report.summary.seo_score}}
Accessibility: {{1.report.summary.accessibility_score}}
Critical issues: {{1.report.summary.critical_issues_count}}

View report: {{1.report.pdf_url}}

Operações usadas por execução: 4-5, dependendo do caminho seguido.


Fluxo 3: e-mail de resumo do Strategy

Os relatórios de Strategy não incluem resumo. Padrão:

  1. Gatilho Custom webhook.
  2. Filter: 1.event = report.completed AND 1.report.product = solutions.
  3. Gmail / Email: envie um e-mail com o link do PDF.

Corpo do e-mail:

<p>Strategy report <code>{{1.report.token}}</code> has been delivered.</p>
<p><a href="{{1.report.pdf_url}}">View the full report (PDF)</a></p>

Operações: 2.


Buscar dados mais detalhados

O resumo do webhook atende à maioria das necessidades. Para detalhamentos por plataforma (por exemplo, Presence Score no ChatGPT e no Claude) ou problemas por página do Site Audit, adicione um módulo HTTP depois do filtro:

Módulo: HTTP: Make a request

  • URL: https://api.surmado.com/v1/reports/{{1.report.id}}
  • Method: GET
  • Headers:
    • Name: Authorization
    • Value: Bearer sur_live_YOUR_API_KEY
  • Parse response: Yes

Os módulos seguintes podem então usar {{2.public_intelligence.data.platform_variance.chatgpt.presence_score}} ou {{2.public_intelligence.data.audit_data.enrichment.content_gaps.executive_summary}}.

Segurança: guarde sua chave de API em uma Connection ou Custom Variable do Make, em vez de colá-la direto no módulo.


Padrões avançados

Router por produto

Use um Router depois do webhook para direcionar por 1.report.product:

  • Ramo 1: signal → fluxo do AI Visibility
  • Ramo 2: scan → fluxo do Site Audit
  • Ramo 3: solutions → resumo do Strategy

Uma única URL de webhook atende todos os tipos de relatório.

Configuração multicliente para agências

Use 1.report.summary.business_name como identificador do cliente em uma consulta a um Data store, para direcionar cada cliente à sua própria aba de planilha ou página do Notion. Crie cada cliente como uma marca da Surmado uma vez, com POST /v1/brands/ensure, e reutilize o brand_slug em todos os relatórios.


Formatos de token

Prefixos dos Intelligence Tokens:

  • AI Visibility: SIG-YYYY-MM-XXXXX (regex: SIG-\d{4}-\d{2}-[A-Z0-9]{5})
  • Site Audit: SCN-YYYY-MM-XXXXX (regex: SCN-\d{4}-\d{2}-[A-Z0-9]{5})
  • Strategy: SOL-YYYY-MM-XXXXX (regex: SOL-\d{4}-\d{2}-[A-Z0-9]{5})

Os tokens não expiram. As URLs de download assinadas da API REST valem por cerca de 15 minutos; o link mágico pdf_url dos webhooks vale por cerca de 30 dias.


Solução de problemas

O gatilho do webhook não dispara – confirme que o webhook_url foi definido na chamada de criação do relatório e experimente o webhook.site como URL de teste para verificar se a Surmado está enviando payloads.

Os campos aparecem como undefined nos módulos seguintes – o relatório pode não ter esse campo preenchido (por exemplo, top_competitor é nulo em marcas sem concorrentes identificados), ou você está olhando um relatório de Strategy, que não inclui resumo. Verifique o produto com 1.report.product.

O módulo HTTP retorna 401 – a chave de API está ausente ou malformada. O cabeçalho deve ser Authorization: Bearer sur_live_... (incluindo Bearer ).

As operações usadas estão acima do esperado – cada Router e cada filtro contam como uma operação por execução. Consolide sempre que possível: um único módulo do Google Sheets com valores mapeados custa menos que vários módulos.


Relacionados: Guia de integração da API | Dados estruturados e Intelligence Tokens | Integração com o Zapier | Integração com o n8n | Integração com o Notion