Zum Hauptinhalt springen

Make.com-Integrationsleitfaden

Kurzantwort: Nutzen Sie den visuellen Ablaufeditor von Make.com mit einem “Custom webhook”-Trigger. Richten Sie webhook_url von Surmado darauf aus, filtern Sie nach event = report.completed und report.product und leiten Sie die Daten dann an Google Sheets / Slack / Airtable / Notion weiter. Für tiefere Daten fügen Sie ein HTTP-Modul hinzu, das GET https://api.surmado.com/v1/reports/{{1.report.id}} mit Bearer-Authentifizierung aufruft.

Lesezeit: 14 Minuten


Voraussetzungen

  1. Make.com-Konto (der Free-Tarif genügt für geringes Volumen, Core für $9/Monat für regelmäßige Nutzung)
  2. Surmado API-Schlüssel (sur_live_...): Erstellen Sie ihn unter app.surmado.com → Settings → API Keys
  3. Zielanwendung (Google Sheets, Slack, Airtable, Notion usw.)

Anforderungen an den Make-Tarif

Free-Tarif:

  • 1.000 Operations/Monat
  • Begrenzung auf 2 Szenarien
  • Ausreichend für 1-5 Kunden bei geringem Volumen

Core-Tarif ($9/Monat):

  • 10.000 Operations/Monat
  • Unbegrenzte Szenarien
  • Empfohlen für regelmäßige Nutzung

Pro-Tarif ($16/Monat):

  • 10.000 Operations + höhere Datenlimits
  • Eigene Variablen, bevorzugte Ausführung
  • Für Agenturen mit 10+ Kunden

Das Integrationsmuster

  1. Trigger: “Webhooks → Custom webhook”. Make gibt Ihnen eine eindeutige URL.
  2. Surmado konfigurieren, sodass es Berichtsabschlüsse per POST an diese URL sendet, indem Sie beim Erstellen eines Berichts webhook_url übergeben.
  3. Filtern nach event und report.product.
  4. Auslesen der verschachtelten Payload mit der Punktnotation von Make (1.report.summary.presence_score).
  5. (Optional) HTTP-Modul, um tiefere Daten über die REST API abzurufen.
  6. Handeln: in die Zielanwendung schreiben.

Beispiel-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"
    }
  }
}

Strategy-Berichte ("product": "solutions") haben kein summary-Objekt, nur report.token und report.pdf_url.


Workflow 1: AI Visibility zu Google Sheets

Module des Szenarios

Modul 1: Webhooks: Custom webhook

  • Fügen Sie einen neuen Webhook hinzu. Make erzeugt eine URL wie https://hook.eu2.make.com/abc123def456.
  • Klicken Sie auf Determine data structure und lösen Sie einen Beispielbericht von Surmado aus (siehe das curl-Beispiel unten), damit Make die Struktur der Payload erfassen kann.

Erstellen Sie den Beispielbericht mit:

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"
  }'

Modul 2: Tools: Filter

Bedingung: 1.event Equal to report.completed AND 1.report.product Equal to signal.

Modul 3: Google Sheets: Add a Row

Spalten zuordnen:

  • 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}}

Verbrauchte Operations pro Durchlauf: 3.


Workflow 2: Site Audit mit bedingten Alarmen

Ein einzelnes Szenario, das jedes Site Audit in Google Sheets schreibt und Slack nur benachrichtigt, wenn performance_score < 70.

Modul 1: Custom webhook (aus Workflow 1 wiederverwenden oder einen neuen erstellen).

Modul 2: Filter: 1.event = report.completed AND 1.report.product = scan.

Modul 3: Google Sheets: Add a Row mit den Zusammenfassungsfeldern des Site Audit (seo_score, performance_score, accessibility_score, total_pages, critical_issues_count).

Modul 4: Router: in zwei Pfade aufteilen.

  • Pfad A (immer): läuft bis zum Ende weiter.
  • Pfad B: Filter 1.report.summary.performance_score < 70 → Slack: Create a message.

Vorlage für die Slack-Nachricht:

: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}}

Verbrauchte Operations pro Durchlauf: 4-5, je nach genommenem Pfad.


Workflow 3: E-Mail mit Strategy-Zusammenfassung

Strategy-Berichte enthalten keine Zusammenfassung. Ablauf:

  1. Custom-webhook-Trigger.
  2. Filter: 1.event = report.completed AND 1.report.product = solutions.
  3. Gmail / Email: Send an email mit dem PDF-Link.

E-Mail-Text:

<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>

Operations: 2.


Tiefere Daten abrufen

Die Webhook-Zusammenfassung deckt die meisten Anforderungen ab. Für plattformspezifische Aufschlüsselungen (z. B. Presence bei ChatGPT im Vergleich zu Claude) oder Site-Audit-Probleme pro Seite fügen Sie nach dem Filter ein HTTP-Modul hinzu:

Modul: 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

Nachfolgende Module können dann {{2.public_intelligence.data.platform_variance.chatgpt.presence_score}} oder {{2.public_intelligence.data.audit_data.enrichment.content_gaps.executive_summary}} verwenden.

Sicherheit: Speichern Sie Ihren API-Schlüssel in einer Make-Connection oder Custom Variable, statt ihn direkt einzufügen.


Fortgeschrittene Muster

Router nach Produkt

Verteilen Sie mit einem Router nach dem Webhook anhand von 1.report.product:

  • Zweig 1: signal → AI-Visibility-Workflow
  • Zweig 2: scan → Site-Audit-Workflow
  • Zweig 3: solutions → Strategy-Zusammenfassung

Eine einzige Webhook-URL deckt jeden Berichtstyp ab.

Einrichtung für mehrere Agenturkunden

Verwenden Sie 1.report.summary.business_name als Kundenkennung in einer Data store-Abfrage, um jeden Kunden auf einen eigenen Tabellenreiter oder eine eigene Notion-Seite zu leiten. Legen Sie jeden Kunden einmal über POST /v1/brands/ensure als Surmado Marke an und verwenden Sie den brand_slug dann bei jedem Bericht wieder.


Token-Formate

Präfixe der 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})

Tokens laufen nicht ab. Signierte Download-URLs aus der REST API sind etwa 15 Minuten gültig. Die Magic-Link-pdf_url in Webhooks ist etwa 30 Tage gültig.


Fehlerbehebung

Der Webhook-Trigger wird nicht ausgelöst: Prüfen Sie, dass webhook_url beim Erstellen des Berichts gesetzt wurde, und testen Sie webhook.site als Zwischen-URL, um zu bestätigen, dass Surmado Payloads sendet.

Felder erscheinen in nachfolgenden Modulen als undefined: Möglicherweise ist das Feld im Bericht nicht befüllt (z. B. ist top_competitor null bei Marken ohne erkannte Wettbewerber) oder Sie sehen einen Strategy-Bericht, der keine Zusammenfassung enthält. Prüfen Sie das Produkt mit 1.report.product.

Das HTTP-Modul liefert 401: Der API-Schlüssel fehlt oder ist fehlerhaft. Der Header muss Authorization: Bearer sur_live_... lauten (einschließlich Bearer ).

Mehr Operations verbraucht als erwartet: Router und Filter zählen bei jedem Durchlauf je als eine Operation. Fassen Sie wo möglich zusammen: Ein einzelnes Google-Sheets-Modul mit zugeordneten Werten ist günstiger als mehrere Module.


Verwandt: API-Integrationsleitfaden | Strukturierte Daten und Intelligence Tokens | Zapier-Integrationsleitfaden | n8n-Integrationsleitfaden | Notion-Integrationsleitfaden