GetAff
API-Dokumentation

Änderungsprotokoll

Die Versionen des API-Vertrags, die neueste zuerst. Alle sind kompatibel: Ein für 1.0 geschriebener Client funktioniert weiterhin.

Aktuelle Version
v1 · 1.2.0

So lesen Sie die Versionen

Der Pfad trägt die Hauptversion (/v1); info.version im OpenAPI-Dokument trägt die hier aufgeführten kompatiblen Änderungen. Alle sind additiv: kein Feld entfernt, kein Pflichtfeld hinzugefügt. Ein Bruch würde /v2 ergeben, parallel ausgeliefert. Jeder Eintrag trägt das Datum der Änderung.

1.2.0 — Signierte Webhooks.

  • Endpunkte für Webhooks: GET und POST /v1/webhooks, GET, PATCH und DELETE /v1/webhooks/{id}, POST /v1/webhooks/{id}/rotate und POST /v1/webhooks/{id}/test. Lesen erfordert read, jede Änderung write; höchstens zehn Endpunkte je Konto.
  • Vier Ereignisse — search.finished, prospect.replied, application.received, partner.approved — signiert nach der Spezifikation Standard Webhooks (webhook-id, webhook-timestamp, webhook-signature). Das Geheimnis whsec_ wird einmal angezeigt; nach einer Rotation signiert das alte 24 Stunden lang mit.
  • Eine fehlgeschlagene Zustellung wird nach 1 Minute, 5 Minuten, 30 Minuten, 2 Stunden und 12 Stunden wiederholt. Die Nutzdaten enthalten Kennungen und Zählwerte, nie eine E-Mail-Adresse oder eine Nachricht.
  • Webhooks sind nicht als MCP-Werkzeuge verfügbar: Ihre Geheimnisse landeten sonst in den Verläufen der Assistenten.
  • Ein unbekannter Pfad unter /api/v1 antwortet jetzt nach der Authentifizierung mit 404 not_found als application/problem+json statt mit einer HTML-Seite.

1.1.0 — Partnergewinnung über die API und der MCP-Server.

  • 29 neue Operationen für alles, was die Bildschirme zur Partnergewinnung können: Websites, Kriterien und ihre generierten Themenbegriffe, die Partnersuche und ihre letzten Ergebnisse, die Auswahl und ihre Übernahme als Interessenten, Interessenten und die kostenpflichtige E-Mail-Suche, die dialogbasierte Suche, der Creator-Index (Suche, Profil, ähnliche Profile, Bibliothek gefundener Creator), Wettbewerber und Outreach — Postfächer, Sequenzen, Aufnahme. Kein Endpunkt sendet direkt eine E-Mail.
  • Die Geltungsbereiche read, search, write und spend; vor 1.1 erstellte Schlüssel behalten genau read.
  • Die Kostenbestätigung: Eine Operation, die Anbieter-Credits verbraucht, erfordert spend und ein confirmCost, das mindestens der Schätzung entspricht; andernfalls antwortet sie mit 402 cost_confirmation_required, der Schätzung in error.details, und gibt nichts aus. Bestätigte Ausgaben werden protokolliert.
  • Idempotency-Key bei Schreibzugriffen (24 Stunden, nur Erfolge), Request-Bodys auf 32 KiB begrenzt (413 payload_too_large), eine Ratenbegrenzung je Konto zusätzlich zu der je Schlüssel und 20 neue Fehlercodes.
  • Der MCP-Server unter /api/mcp (Streamable HTTP, Protokollversionen 2025-11-25 bis zurück zu 2024-11-05): 29 Werkzeuge nach dem Vorbild der API, mit denselben Schlüsseln und Geltungsbereichen; kostenpflichtige Werkzeuge werden zweistufig mit einem confirmToken bestätigt.

  • Gespeicherte Suchen: GET /v1/sites/{id}/partner-search/history und /history/{searchId}; MCP-Werkzeuge list_saved_searches und get_saved_search.
  • Fehler werden zu Problemdokumenten nach RFC 9457 (application/problem+json: type, title, status, detail, instance), die das error-Element von 1.0 unverändert behalten; jeder type führt zu seiner Zeile auf der Fehlerseite. 401 und 403 tragen WWW-Authenticate.
  • RateLimit-Policy und RateLimit (IETF-Entwurf) neben X-RateLimit-*; X-Request-Id und traceparent werden zurückgegeben; ein ETag bei jedem GET, If-None-Match wird mit 304 beantwortet.
  • Auffindbarkeit: /api/v1/openapi.json, /llms.txt und /llms-full.txt.
  • MCP: Anmeldung per OAuth 2.1 (MCP-Autorisierungsspezifikation 2025-11-25, PKCE S256, Metadaten der geschützten Ressource, Serverkarte unter /.well-known/mcp.json), Standard-Geltungsbereiche read search; outputSchema und structuredContent bei jedem Werkzeug; enrol_in_sequence wird zweistufig bestätigt.
  • Interessenten erhalten ein Feld stage, die Pipeline-Stufe, die der Bildschirm „Partner“ zeigt.

1.0.0 — Der erste Vertrag, nur lesend.

  • Vier Operationen: das öffentliche Programmverzeichnis (GET /v1/programs, GET /v1/programs/{slug}), das aufrufende Konto (GET /v1/me) und seine Provisionen (GET /v1/commissions).
  • Bearer-Schlüssel gaff_live_…, als Hash gespeichert und einmal angezeigt; eine Ratenbegrenzung je Schlüssel nach Tarif, mit X-RateLimit-Limit, X-RateLimit-Remaining und Retry-After.
  • Cursor-Paginierung, Browser-Ursprünge abgewiesen (CORS) und ein OpenAPI-3.1-Dokument, abgeleitet aus den Schemata, die die Routen erzwingen.

  • Die Verzeichnis-Endpunkte erhalten ihren englischen Pfad: Aus /v1/programmes wird /v1/programs.