Zum Inhalt springen

JavaScript-API

Nach dem Laden steht window.usertraxFeedback bereit:

MethodeBeschreibung
open()Feedback-Panel öffnen
close()Panel schließen
reset()Formular zurücksetzen
configure({ hideOnPages })Laufzeit-Optionen setzen (z. B. Widget auf bestimmten Routen ausblenden)
captureException(error, extra?)JS-Fehler für die nächste Einsendung puffern
captureMessage(message, extra?)Eigene Meldung in den Fehler-Puffer schreiben
getErrors()Gepufferte Fehler auslesen
clearErrors()Fehler-Puffer leeren

Blendet das Widget auf Routen aus, auf denen Feedback keinen Sinn ergibt (Checkout, Login, Admin, …). Abgleich gegen location.pathname. Patterns: exakte Pfade, *-Globs, RegExp oder eine Funktion. SPA-Navigation (pushState / replaceState / Vor/Zurück) wird automatisch erkannt.

<script>
window.usertraxFeedback = {
hideOnPages: ["/checkout", "/login", "/admin/*", /^\/settings/],
};
</script>
<script src="https://usertrax.io/feedback.js" data-key="DEIN_AUTH_KEY" defer></script>

Oder zur Laufzeit aktualisieren (z. B. aus dem Router):

window.usertraxFeedback.configure({
hideOnPages: ["/checkout", "/cart/*", (pathname) => pathname.startsWith("/app/onboarding")],
});

open() funktioniert auch auf ausgeblendeten Seiten programmatisch (z. B. eigener „Feedback geben“-Link). Nach close() wird das Widget wieder ausgeblendet, wenn die aktuelle Route matcht.

Nutze die Tracker-API — ein Aufruf gilt für Conversions und Feedback-Widget:

usertrax.identify("user-123", {
email: "nutzer@beispiel.de",
plan: "pro",
});

Hat identify bereits auf einer vorherigen Seite gelaufen, hydriert das Widget automatisch aus localStorage (usertrax_identify).

API-Aufrufe können in eine Warteschlange gelegt werden:

<script>
window.usertraxFeedback = window.usertraxFeedback || {};
(window.usertraxFeedback._q = window.usertraxFeedback._q || []).push([
"configure",
[{ hideOnPages: ["/checkout"] }],
]);
</script>
<script src="https://usertrax.io/feedback.js" data-key="DEIN_AUTH_KEY" defer></script>

Identify vor dem Widget-Load über den Tracker (wird für das Widget persistiert):

<script>
// Sobald tracker.js da ist — oder in dessen Queue:
usertrax.identify("user-123", { email: "nutzer@beispiel.de" });
</script>

Praktisch für einen eigenen „Feedback geben“-Link:

document.querySelector("#feedback-link").addEventListener("click", (e) => {
e.preventDefault();
window.usertraxFeedback.open();
});