Zum Inhalt springen
Influence
Esc
↑↓navigieren↵öffnen⌘Jvorschau
Auf dieser Seite

HTTP-API

Authentifiziere dich, finde Tools und bestätige Änderungen über die bestehende HTTP-API.

Sende Produktanfragen an deinen vertrauenswürdigen Influence-Origin, etwa https://influence.so. Die Dokumentationsdomain nimmt keine Produkt-API-Anfragen an. Verwende die folgenden Pfade exakt und ohne Abfrageparameter.

Erstelle einen API-Schlüssel mit passenden Berechtigungen

Öffne in den Influence-Einstellungen Apps und Automatisierungen → API-Schlüssel. Wähle die benötigten Berechtigungen und ein Ablaufdatum. Speichere den einmalig angezeigten Schlüssel als PUBLISH_API_TOKEN in deinem Geheimnisspeicher. Sende ihn in Authorization: Bearer …, niemals in einer URL, im Anfrageinhalt oder im Chat. Widerrufe ihn, wenn du ihn nicht mehr brauchst.

Finde Tools und lies Daten

Setze PUBLISH_API_URL auf den vertrauenswürdigen Origin. Die Beispiele setzen voraus, dass der Prozess bereits PUBLISH_API_TOKEN erhält. accountList benötigt integrations:read; verwende die Paginierungsfelder für weitere Seiten.

export PUBLISH_API_URL="https://influence.so"
curl "$PUBLISH_API_URL/api/v1/tools" \
  -H "Authorization: Bearer $PUBLISH_API_TOKEN"

curl "$PUBLISH_API_URL/api/v1/tools/accountList/call" \
  -H "Authorization: Bearer $PUBLISH_API_TOKEN" \
  -H 'Content-Type: application/json' \
  --data '{"input":{}}'

Anfragepfade

Methode Pfad Zweck
GET /api/v1/tools Listet die mit diesem Zugang verfügbaren Tools.
POST /api/v1/tools/{tool}/call Ruft ein lesendes Tool auf.
POST /api/v1/tools/{tool}/prepare Bereitet eine konkrete Änderung vor, ohne sie auszuführen.
POST /api/v1/tools/{tool}/confirm Bestätigt die vorbereitete Änderung.
POST /api/v1/media/import Bestätigt einen vorbereiteten kleinen binären Bild-Upload.

JSON-Toolanfragen verwenden Content-Type: application/json und einen Inhalt nur mit input: {"input":{…}}. Das Eingabeschema jedes Tools findest du im aktuellen Katalog.

Bereite Änderungen vor und bestätige sie

  1. Sende die exakten fachlichen Eingaben an /prepare. Eine erfolgreiche Antwort enthält status: "confirmation_required", confirmationCapability, expiresAt, inputDigest und optional summary.
  2. Sende vor Ablauf dieselben Eingaben an /confirm. Übergebe den erhaltenen Bestätigungswert in X-Publish-Confirmation und einen neuen, vom Client erzeugten Schlüssel in Idempotency-Key.
  3. Bewahre Eingaben, Bestätigungswert und Schlüssel gemeinsam auf. Nach einer unterbrochenen oder unklaren Bestätigung verwendest du alle drei für dieselbe Anfrage erneut. Bereite keinen Ersatzvorgang vor, um ein unklares Ergebnis zu klären.

Ein Idempotenzschlüssel enthält 16–200 Zeichen aus A–Z, a–z, 0–9, ., _, : und -. Bestätigungswerte sind undurchsichtige Geheimnisse. Ein an /call oder /prepare gesendeter Schlüssel reserviert keine bestätigte Änderung.

Die Bestätigung einer Anfrage ist von der Veröffentlichungsfreigabe getrennt. Erstelle und zeige für Veröffentlichungen oder Terminänderungen die vollständige aktuelle Prüfung. Textbeiträge benötigen danach eine neue Zustimmung. Bilder und Videos muss die Person in einer unterstützten Prüfoberfläche oder nach Anmeldung in Influence visuell freigeben. Eine vorbereitete Prüfung veröffentlicht nichts. Lies vor weiteren Aktionen das gespeicherte Ergebnis; needs_review verlangt die Klärung des bisherigen Vorgangs, keinen erneuten Versand.

Behandle Fehler und unklare Ergebnisse

Prüfe HTTP-Status und Antwortinhalt. Erfolg liefert {"ok":true,"toolName":"…","output":{…}}. Toolfehler liefern {"ok":false,"toolName":"…","error":{"code":"…","message":"…","retryable":false}}, auch mit HTTP 200. Transportfehler verwenden {"error":{"code":"…","message":"…","retryable":false}} ohne ok oder toolName.

401 verlangt Authentifizierung: Prüfe Ablauf und Widerruf. Eine fehlende Berechtigung braucht die passende Freigabe, keine wiederholten Anfragen. 503 bedeutet, dass die API in dieser Umgebung nicht verfügbar ist. Beachte Fehler und Wiederholungshinweise. Ein Timeout beweist nicht, dass eine Änderung fehlgeschlagen ist: Bewahre ihre Bestätigungsdaten auf und lies vor erneutem Senden den aktuellen Status. Angenommen, geplant und veröffentlicht sind unterschiedliche Ergebnisse.

Lade Medien hoch

Nutze für lokale Dateien bevorzugt uploadMedia im SDK oder media:upload in der CLI. Beide verwenden dieselben mehrteiligen Upload-Tools und behalten einen stabilen clientKey für Wiederholungen. Nur ein fertiges Ergebnis mit assetId lässt sich anhängen. Für autorisierte HTTPS-Dateireferenzen dient mediaImport; ein lokaler Dateipfad ist keine Download-URL.

POST /api/v1/media/import unterstützt den bestehenden Transport kleiner Bilder: Bereite mediaImport mit dem exakten Upload-Deskriptor vor und sende dieselben Bytes als application/octet-stream. Übergebe X-Publish-Confirmation, Idempotency-Key und X-Publish-Upload mit dem URI-kodierten JSON-Deskriptor. Größe und SHA-256 müssen zu den Bytes passen. Die Grenze liegt bei 3 MiB; für größere unterstützte Dateien dient die Upload-Hilfsfunktion. Ein Upload erteilt niemals eine Veröffentlichungsfreigabe.

API-Referenz öffnen oder OpenAPI-Spezifikation herunterladen.