DE
Unipile MCP · Webhooks

LinkedIn-, WhatsApp- und E-Mail-Webhooks mit einem Coding-Agenten einrichten

LinkedIn bietet keinen öffentlichen Webhook für die Nachrichten eines Mitglieds. Unipile pusht sie an Ihren Endpoint, und mit dem Unipile MCP-Server schreibt Ihr Agent den Handler.
7 Tage kostenlos testen, ohne Kreditkarte.
Ihr Agent · crm-app
Unipile MCP verbunden
Sarah
Abonniere Webhooks für neue Nachrichten und aktualisiere die Kontakt-Timeline.
Anfrage ausführenPOST /v2/webhooks/endpoints/201 · we_…
Endpoint in der Development-App erstellt, dazu ein idempotenter Handler mit Queue.
3 Dateien geändert · erstes Event in unter einer Sekunde empfangen
Nächstes Feature beschreiben…
Die Aufgabe

Was Sie erreichen wollen

Eine neue Nachricht oder E-Mail in Ihrem Produkt zeigen, sobald sie ankommt, und reagieren, wenn ein Konto die Verbindung verliert, ganz ohne Polling. LinkedIn hat für ein Mitgliedskonto keinen öffentlichen Nachrichten-Webhook; Unipile pusht für jeden Kanal dasselbe Event.
LinkedInNeue LinkedIn-Nachrichtauf dem Konto, das Ihr Nutzer verbunden hat
WhatsAppNeue WhatsApp-Nachrichtdasselbe Event, anderer Kanal
GmailNeue E-MailGmail, Outlook oder IMAP
message.newmessage.newemail.new
Ihre App · Kontakt-TimelinePOST /webhooks/unipile
LinkedInSarah K. hat auf LinkedIn geantwortet0,4 s
WhatsAppTom R. hat eine WhatsApp-Nachricht gesendet0,3 s
GmailAna L. hat das Angebot per E-Mail geschickt0,5 s
In die Queue gelegt, dedupliziert, einmal geschrieben
Ohne Polling-Schleifen und blinde Flecken
Ein Job, der alle dreißig Sekunden jedes Konto abfragt, die meiste Zeit umsonst.
Überhaupt kein LinkedIn-Nachrichten-Event, weil die Plattform für ein Mitgliedskonto keines bereitstellt.
Ein getrenntes Konto, das der Nutzer entdeckt und nicht Ihr Produkt.
Mit dem Unipile MCP-Server Das Ergebnis in Ihrer Anwendung
Ein Webhook-Endpoint, abonniert auf die Events, die Sie verarbeiten, erstellt in Ihrer Development-Anwendung.
Ein Handler, der sofort antwortet, aus einer Queue verarbeitet und jedes Event genau einmal schreibt.
Eine Kontakt-Timeline und ein Kontostatus, die in unter einer Sekunde aktualisiert werden, getestet vor dem Release.
Prompt, Schritte, Code

Geben Sie Ihrem Agenten den Prompt

Zwei Prompts, jeweils mit den Unipile-Endpoints, die der Agent liest und aufruft, und dem, was in Ihrem Projekt landet. Die Pfade sind vollständig, auf der API-Basis-URL https://api.unipile.com, mit Ihrem Scoped Key im X-API-KEY Header.
Ihr Agent · crm-appDevelopment-App
Abonniere die Unipile-Webhooks für neue Nachrichten und aktualisiere die Kontakt-Timeline: Erstelle den Webhook-Endpoint für message.new und email.new, ergänze in dieser Anwendung einen idempotenten Handler und lege die Verarbeitung in eine Queue.
Endpoint lesenPOST /v2/webhooks/endpoints/Schema geladen
Anfrage ausführenPOST /v2/webhooks/endpoints/201 · we_… + secret
Endpoint erstellt, mit trigger_events: ["message.new", "email.new"] und der öffentlichen URL der App, das zurückgegebene secret serverseitig gespeichert, POST /webhooks/unipile ergänzt, das die Zustellung validiert, sofort mit 200 antwortet und den Payload in die Queue legt, dazu ein Worker, der anhand der Objekt-ID dedupliziert, bevor er in die Kontakt-Timeline schreibt. Testnachricht in der Development-App gesendet: Timeline aktualisiert.3 Dateien geändert · in der Queue, idempotent, verifiziert

Erst bestätigen, dann verarbeiten, einmal schreiben

Der Agent liest den Vertrag des Endpoints über den Server: trigger_events und url sind Pflicht, account_ids grenzt den Geltungsbereich ein, und die Response enthält die Endpoint-ID und ihr Secret. Danach schreibt er den Handler so, wie ein Webhook es braucht: sofortiges 2xx, asynchrone Verarbeitung, Deduplizierung über die Objekt-ID und ein Blick ins Delivery-Log, wenn etwas zu fehlen scheint.
Endpoints, die der Agent nutzt
POST/v2/webhooks/endpoints/GET/v2/webhooks/endpoints/GET/v2/webhooks/conversations/GET/v2/{account_id}/chats/{chat_id}/messages/{message_id}
Häufiger Fehler: Die Arbeit im Handler erledigen. Antworten Sie sofort mit 2xx und verarbeiten Sie das Event aus einer Queue, sonst laufen die Zustellungen in Timeouts und werden wiederholt.
Eine Unified Inbox mit diesen Events speisen
Ihr Agent · crm-appDevelopment-App
Verarbeite die Lebenszyklus-Webhooks eines Kontos: Markiere bei account.status.disconnected das Konto als auffällig und zeige einen Reconnect-Button, und speichere bei account.add die neue account_id am Workspace aus state.
Endpoint lesenPOST /v2/webhooks/endpoints/Event-Enum
Anfrage ausführenPATCH /v2/webhooks/endpoints/{id}200 · Events aktualisiert
Ergänzt account.add, account.reconnect und account.status.disconnected . Bei account.add speichert der Worker die account_id am Workspace aus state; bei account.status.disconnected markiert er das Konto, und die Settings-Seite zeigt den Reconnect-Button, der die Hosted-Auth-Reconnect-Route aufruft. Verifiziert, indem das Mock-Konto in der Development-App getrennt wurde.2 Dateien geändert · Reconnect in der UI sichtbar

Die Konto-Events schließen den Kreis mit Hosted Auth

account.add und account.reconnect tragen den state , den Sie beim Erstellen des Auth-Links gesetzt haben; damit wird der Webhook zur verlässlichen Quelle für eine neue Verbindung. Die Status-Events sagen Ihrem Produkt, wann ein Konto Aufmerksamkeit braucht, bevor der Nutzer es merkt. Der Agent verkabelt beide mit demselben Endpoint und hält den Handler idempotent.
Endpoints, die der Agent nutzt
PATCH/v2/webhooks/endpoints/{id}GET/v2/accounts/{account_id}POST/v2/auth/link
Häufiger Fehler: Alles abonnieren. Es gibt neununddreißig Events; ein Endpoint, der alle abonniert, erhält ununterbrochen Lesebestätigungen und Tracking-Öffnungen. Abonnieren Sie, was Sie verarbeiten.
Den Reconnect-Flow mit einem Agenten implementieren
Payload

Der Body des Endpoints, die Response und die Events

Wörtlich aus dem v2-Vertrag, den der Agent über den Server liest. Zwei Felder sind Pflicht, die Response enthält das Secret, und die Events kommen in Familien.
1Den Endpoint erstellentrigger_events und url sind Pflicht. account_ids beschränkt den Endpoint auf bestimmte Konten; leer oder weggelassen, hört er auf jedes Konto der Anwendung.POST https://api.unipile.com/v2/webhooks/endpoints/ { "trigger_events": ["message.new", "email.new", "account.add"], "url": "https://app.example.com/webhooks/unipile", "account_ids": ["acc_…"], "description": "crm timeline" }
2Die ResponseEin WebhookEndpoint mit seiner id, der Anwendung, dem serverseitig zu haltenden Secret und den Konten, auf die er zielt.{ "object": "WebhookEndpoint", "id": "we_…", "application_id": "app_…", "enabled": true, "secret": "…", "trigger_events": [ … ], "account_targets": [ … ] }
3Die Events nach FamilieAccount (status, add, reconnect, remove, sync), Message (new, update, delete, Bestätigungen, Reaktionen), Chat, E-Mail (new, bounce, delete, Entwürfe, Ordner), Kalender (create, update, delete, event.*), Tracking und Relations.message.new · message.update · message.receipt.read · chat.update email.new · email.new.bounce · email.draft.new · email.folder.update account.add · account.reconnect · account.status.disconnected · account.initial_sync.completed
Von Development zu Production

Zuerst in einer Development-Anwendung testen

Ihr Unipile-Dashboard trennt eine Development-Anwendung von Production. Geben Sie dem Agenten einen Scoped Key aus Development, ein Testkonto und eine Tunnel-URL: echte Events, kein echter Kunde.
1Den Endpoint in der Development-App erstellenTunnel-URL, trigger_events begrenzt auf das, was Sie verarbeiten.
2Ein Event end-to-end empfangenaccount.add aus einem Mock-Hosted-Auth-Link, danach message.new vom Testkonto.
3Wiederholen, dann den Key wechselnDer Worker schreibt einmal; account_ids vor Production auf den richtigen Kunden eingegrenzt.
crm-app · DevelopmentVon Ihrem Agenten genutzt
Scopedev-tests · 2 Konten
Keyscoped Account API key
KontenLinkedIn-Testkonto, Gmail-Testpostfach
Webhooks1 Endpoint · Message-Events
crm-app · ProductionUnberührt
Scopeeiner pro Workspace
Keyscoped keys, in your backend only
Kontendie eigenen Konten Ihrer Nutzer, über Hosted Auth
Fehlerbehebung

Häufige Fehler und was sie bedeuten

Die vier Fehler, die Webhooks unzuverlässig machen, und die jeweilige Lösung. Keiner davon betrifft die Events selbst.
Der Endpoint antwortet langsam
Zustellungen laufen in Timeouts und stapeln sich als Retries. LösungAntworten Sie sofort mit 2xx und verarbeiten Sie aus einer Queue. Ein Handler, der vor der Antwort in die Datenbank schreibt, spielt am Ende seinen eigenen Rückstand erneut ab.
Ein Handler, der nicht idempotent ist
Dieselbe Nachricht erscheint zweimal in der Timeline. LösungDasselbe Event kann mehr als einmal zugestellt werden. Deduplizieren Sie vor dem Schreiben über die Objekt-ID aus dem Payload.
Alles abonniert
Der Endpoint erhält ununterbrochen Lesebestätigungen und Tracking-Öffnungen. Lösungtrigger_events akzeptiert neununddreißig Werte. Abonnieren Sie die Events, die Sie verarbeiten, und erstellen Sie mehrere Endpoints, wenn die Verarbeitung unterschiedlich ist.
account_ids bei einem Produkt mit mehreren Kunden vergessen
Der Worker eines Kunden erhält die Events eines anderen Kunden. LösungLeer oder weggelassen bedeutet: account_ids hört auf jedes Konto der Anwendung. Grenzen Sie es pro Kunde explizit ein oder filtern Sie vor dem Schreiben auf das Konto aus dem Payload.
6000+ Unternehmen, die mit Unipile innovieren
Vertrauen bei Branchenführern
1 API
Rationalisierung der Abläufe für alle wichtigen Kommunikationskanäle
2 Tage
Schnelle Live-Integration mit minimaler Einrichtung
30%
Verringerung des Wartungsaufwands und der Ressourcen

Integrierte Sicherheit und Compliance

Unternehmensgerechter Schutz für Ihre Daten und Arbeitsabläufe Erfahren Sie mehr über unsere Sicherheit
SOC 2 Typ II
SOC 2 Typ II
Zertifiziert
Unabhängig geprüfte Sicherheitskontrollen zur Gewährleistung des Datenschutzes und der betrieblichen Integrität.
GDPR
GDPR
Konform
Vollständige Einhaltung der europäischen Datenschutzbestimmungen zum Schutz der Privatsphäre der Nutzer.
99.9%
Betriebszeit der Plattform in den letzten 24 Monaten
24/7
Globaler Support mit leistungsstarker API

FAQ zu Webhooks

Ob LinkedIn einen Nachrichten-Webhook hat, wie Sie einen Endpoint erstellen, welche Events es gibt, wie Sie einen Endpoint auf einen Kunden eingrenzen und wie Sie eine Zustellung verifizieren.
Nicht für ein Mitgliedskonto. Die öffentlichen Webhooks von LinkedIn decken Social Actions von Organisationen und Lead-Formulare ab; Nachrichten von Mitgliedern liegen hinter einem Compliance-Programm, das keine neuen Partner mehr aufnimmt. Bei Unipile deckt das Event message.new LinkedIn genauso ab wie jeden anderen Kanal, auf dem Konto, das Ihr Nutzer selbst verbunden hat.
POST https://api.unipile.com/v2/webhooks/endpoints/ mit dem X-API-KEY Header und einem Body mit trigger_events und url. Die Response enthält eine id in we_… und ein Objekt secret.
Neununddreißig Werte aus den Familien Account, Message, Chat, E-Mail, Kalender, Tracking und Relations. Am häufigsten genutzt werden message.new, email.new, account.add, account.reconnect und account.status.disconnected.
Mit account_ids, einem Array von IDs in acc_…. Weggelassen oder leer, hört der Endpoint auf jedes Konto der Anwendung.
Beim Erstellen des Endpoints wird ein secretzurückgegeben. Bewahren Sie es serverseitig auf und validieren Sie jede Zustellung vor der Verarbeitung. Ihre URL muss über HTTPS und öffentlich erreichbar sein; das Delivery-Log finden Sie auf der Webhook-Conversations-Route.