Publishing

Webhook

Verbinden Sie eine selbst oder mit einem KI-Werkzeug erstellte Website.

Einrichtung dauert etwa 7 Minuten

Webhook ist für die meisten individuellen und KI-erstellten Websites empfohlen. Die Implementierungszeit auf der Website ist nicht in der Schätzung enthalten.

Vorbereitung

  • KI-Entwicklungswerkzeug der Website oder zuständige Wartungsperson.
  • Zugriff auf die Hosting-Einstellungen.

Anleitung an das Website-Werkzeug geben

Kopieren Sie die folgende vollständige Anleitung in das Entwicklungswerkzeug. Es soll Surpasso mit dem vorhandenen Blog verbinden, Seiten und Design erhalten und bei Bedarf ein Blog ergänzen.

Einrichtungsanleitung anzeigen
Surpasso unterstützt Unternehmen bei Planung, Erstellung und Veröffentlichung von SEO-/GEO-Artikeln. Verbinden Sie diese bestehende Website mit Surpasso. Prüfen Sie zuerst Framework, Blogrouten, Artikelspeicherung, Design und Bereitstellung und verwenden Sie vorhandene Funktionen weiter. Bauen Sie die Website nicht neu auf und löschen oder überschreiben Sie keine bestehenden Artikel.

Webhook verwenden: Surpasso sendet Artikel, die Website speichert und zeigt sie an. Fügen Sie einen öffentlichen HTTPS-POST-Empfänger hinzu (zum Beispiel /api/surpasso-webhook) und verwenden Sie vorhandene CMS-Schreiblogik. Falls kein Blog vorhanden ist, ergänzen Sie Artikelspeicherung, Übersicht und Detailseiten im bestehenden Design. Geben Sie zuerst die bereitstellbare Empfänger-URL zurück. Ohne SURPASSO_WEBHOOK_SECRET müssen Anfragen abgelehnt werden; die Prüfung darf nie deaktiviert werden. Danach speichere ich die URL in Surpasso, erhalte das Signaturgeheimnis, konfiguriere SURPASSO_WEBHOOK_SECRET in der Websitebereitstellung und teste.

JSON-Umschlag: {schemaVersion:"1",event,deliveryId,idempotencyKey,occurredAt,article}. Header: x-surpasso-timestamp, x-surpasso-signature (sha256=Hex-Signatur), x-surpasso-event, x-surpasso-delivery. HMAC-SHA256(secret, timestamp + "." + rawBody) mit dem unveränderten Textkörper prüfen, Signatur in konstanter Zeit vergleichen, fünf Minuten Zeitfenster erlauben und ungültige Strukturen ablehnen. integration.test enthält article:null: prüfen und 2xx zurückgeben, ohne Inhalt anzulegen. article.draft_created speichert einen privaten Entwurf; article.published veröffentlicht; article.updated aktualisiert denselben Artikel und erhält den Veröffentlichungsstatus. Aktuell gibt es keine Unpublish-/Delete-Ereignisse; keine automatische Entfernung behaupten.

Feldzuordnung: id = dauerhafte Artikelidentität; revision = Inhaltsversion; title = Überschrift; slug = Artikelpfad; excerpt = Zusammenfassung; contentMarkdown / contentHtml = Textkörper (passendes Format des vorhandenen Editors verwenden, HTML sicher verarbeiten); metaTitle / metaDescription = SEO-Metadaten; featuredImage.url / alt = Titelbild und Alternativtext; images = Bilder im Inhalt; author, authorType, authorUrl = Autor; editor, reviewer und jeweilige Type-/Url-Felder = redaktionelle Angaben; categories / tags = Taxonomie; language = Inhaltssprache; contentFamilyId / alternates = Sprachbeziehungen und Links; structuredData = strukturierte Artikeldaten; canonicalUrl = kanonische URL. Verwenden Sie die tatsächlichen öffentlichen Pfade der Website und übernehmen Sie keine falsche kanonische URL. Nullwerte sauber behandeln; nicht unterstützte optionale Felder dürfen die Veröffentlichung nicht blockieren.

Die Zuordnung article.id zu lokalem Artikel nach Product/brandId getrennt dauerhaft speichern und veraltete revision-Werte ablehnen. deliveryId / idempotencyKey für dauerhafte Zustellungs-Deduplizierung speichern; ein Zustellungsschlüssel ist nicht die Artikelidentität. Für bereits verarbeitete Duplikate Erfolg zurückgeben, ohne einen weiteren Artikel anzulegen. 2xx erst nach erfolgreichem Schreiben oder dauerhafter Queue-Annahme zurückgeben. Der Sender bricht nach 12 Sekunden ab und lehnt Weiterleitungen ab. Ungültige Signaturen, alte Zeitstempel, Verbindungstests, Entwürfe, Veröffentlichung, Aktualisierung, doppelte Zustellung und alte Revisionen testen.

Führen Sie geeignete Prüfungen aus und erklären Sie anschließend in verständlicher Sprache: geänderte Funktionen, Bereitstellungsschritte, Namen der zu konfigurierenden Umgebungsvariablen und das jeweilige Dashboard, die in Surpasso einzutragende URL sowie die Prüfung eines Artikels und einer Aktualisierung. Geheimnisse sollen ausschließlich über die Umgebungsvariablen der Bereitstellungsplattform konfiguriert werden, niemals im Chat, in Git oder im Browsercode.

Das Werkzeug muss die Änderungen bereitstellen und eine Produktionsadresse zum Empfang von Artikeln liefern, etwa https://example.com/api/surpasso-webhook. Verwenden Sie nicht die Startseite oder das Beispiel selbst.

Adresse und Verbindungsschlüssel speichern

  1. Unter Integrations → Custom → Webhook Empfänger-URL vorhanden wählen und die Adresse speichern.
  2. Den nur einmal vollständig angezeigten Schlüssel kopieren.
  3. Im Hosting als SURPASSO_WEBHOOK_SECRET speichern und Website neu bereitstellen.
  4. Zu Surpasso zurückkehren und Abschluss bestätigen.

Testen und Artikel prüfen

Verbindung testen sendet nur eine Testnachricht. Danach aus Content Calendar einen Entwurf senden, Text und Bilder im Blog prüfen und veröffentlichen. Denselben Artikel ändern und erneut senden; der vorhandene Beitrag muss statt eines Duplikats aktualisiert werden.

Löschen und Zurückziehen erfolgen im Blog-Admin. Webhook entfernt externe Artikel nicht automatisch. Make, Zapier oder n8n sind möglich, benötigen aber Produktions-URL, Signaturprüfung, Speicherung sowie Prüfung eines Artikels und einer Änderung.

Test fehlgeschlagen, Artikel fehlt oder ist doppelt

Prüfen Sie bereitgestellten Code, HTTPS-Adresse ohne Login oder Umleitung und erneute Bereitstellung nach dem Speichern des Schlüssels. Der Empfänger muss innerhalb 12 Sekunden antworten, gleiche Deliveries deduplizieren und ältere Revisionen daran hindern, neuere zu überschreiben. Bei unbekanntem Ergebnis vor dem Wiederholen die Website prüfen.

Schlüssel verloren oder offengelegt

Alten Schlüssel stoppen, Webhook in Surpasso trennen und neu verbinden, neuen Schlüssel im Hosting speichern, erneut bereitstellen und testen. Der vollständige alte Schlüssel ist nicht erneut sichtbar.

Technische Referenz: Ereignisse und Signatur

Jeder JSON-POST enthält schemaVersion: "1", event, deliveryId, idempotencyKey, occurredAt und article. integration.test bestätigt nur, article.published veröffentlicht und article.updated aktualisiert denselben Artikel unter Erhalt des Status.

Berechnen Sie HMAC-SHA256 über timestamp + "." + rawBody, vergleichen Sie konstant mit x-surpasso-signature einschließlich sha256= und verwerfen Sie Zeitstempel außerhalb von fünf Minuten. Struktur, Deduplizierung und Revision müssen zusätzlich geprüft werden; Signatur allein reicht nicht.