Ein POST, und es ist drin

Tellstack nimmt Feedback über drei Wege auf: gehostetes Formular, Web-Widget und REST-API. Alle drei brauchen nur den öffentlichen Projektschlüssel, der ausschließlich schreiben darf.

REST-API

curl -X POST https://…/api/v1/feedback \ -H "Content-Type: application/json" \ -H "X-Tellstack-Key: ts_live_…" \ -d '{ "message": "Der PDF-Export klemmt bei großen Dateien", "category": "bug", "email": "anna@example.com", "metadata": { "appVersion": "1.4.2", "platform": "ios" } }'

Antwort bei Erfolg (201):

{ "id": "…", "status": "new", "createdAt": "2026-08-19T09:12:44.101Z" }Vollständige API-Referenz

Web-Widget

<script src="https://…/widget.js" data-project="ts_live_…" async></script>

Das Widget baut sein Fenster im Shadow DOM auf. Dein Seiten-CSS beeinflusst es nicht, und es beeinflusst dein CSS nicht. Über Tellstack.identify() lassen sich Kontextdaten mitgeben, Tellstack.open({ type: 'bug' }) öffnet es mit vorausgewählter Art.

Widget-Dokumentation

Grenzen und Regeln

Rate-Limit
120 Anfragen pro Minute je Schlüssel.
Größe
64 KB pro Anfrage, 5.000 Zeichen pro Nachricht.
Schlüsselrechte
Schreiben ja, Lesen nein. Immer.
Workspace
Wird aus dem Schlüssel abgeleitet, nie vom Client übernommen.
Validierung
Jede Eingabe läuft durch ein Schema; Fehler nennen Feld und Grund.

Häufige Fragen

Welche Authentifizierung braucht die Ingestion?

Einen öffentlichen Projektschlüssel im Header X-Tellstack-Key. Alternativ als Bearer-Token oder Query-Parameter key. Der Schlüssel darf ausschließlich Feedback schreiben und niemals lesen, deshalb darf er im Client-Code stehen.

Was sind die Grenzen der öffentlichen API?

120 Anfragen pro Minute je Projektschlüssel, maximal 64 Kilobyte pro Anfrage und 5.000 Zeichen pro Nachricht. Gehostete Formulare erlauben zehn Einsendungen pro IP in fünf Minuten.

Wie sehen Fehlerantworten aus?

Immer gleich: ein Objekt error mit code, message und optional details. Die Codes sind validation_error, unauthorized, forbidden, not_found, conflict, rate_limited, payload_too_large, not_configured und internal_error.

Kann ich den Projektschlüssel wechseln?

Ja. Ein neuer Schlüssel wird sofort ausgestellt, der alte im selben Moment ungültig. Sinnvoll, wenn ein Schlüssel an einer falschen Stelle gelandet ist.

Gibt es Webhooks?

Ja, ab dem Indie-Plan. Tellstack schickt jedes Ereignis als POST an deine Adresse — feedback.created, feedback.replied und feedback.status_changed. Signiert mit HMAC-SHA256 über Zeitstempel und Rohkörper, fünf Wiederholungen mit wachsendem Abstand, dazu ein Protokoll der Versuche. Eingerichtet wird das im Konto unter Webhooks.

Loslegen

Konto anlegen, Projekt erstellen, Schlüssel kopieren. Die Dokumentation führt in fünf Minuten durch.

Schlüssel holen