Referral Tracking
API-Endpunkte
Serverseitige Endpunkte für Empfehlungsverfolgung
Empfehlungs-API-Endpunkte
Wenn Sie serverseitige Empfehlungsverfolgung bevorzugen (oder sie für Backend-Only-Integrationen benötigen), können Sie diese Endpunkte direkt aufrufen, anstatt das JavaScript-Tracking-Skript zu verwenden.
Alle Empfehlungsendpunkte unterstützen CORS und erfordern keine API-Schlüssel-Authentifizierung.
Empfehlungs- vs. Affiliate-Kampagnen: Empfehlungs-Kampagnen vergeben Punkte bei Anmeldungen und Käufen. Affiliate-Kampagnen vergeben Dollar-Provisionen bei empfohlenen Käufen mit einer exklusiven Auszahlungsstruktur – entweder einen Prozentsatz des Verkaufs oder eine Pauschale pro Verkauf (nicht beides). Die Anmeldeverfolgung zahlt bei Affiliate-Kampagnen keine Provision (nur bei Käufen). Kaufantworten enthalten pointsAwarded für den Empfehlungsmodus und commissionAwarded für den Affiliate-Modus.
Empfehlungs-Code validieren
/api/referral/validate-codePrüfen Sie, ob ein Empfehlungs-Code gültig ist, und rufen Sie Informationen über den Empfehlenden ab.
Abfrageparameter
codestring required Der zu validierende Empfehlungs-Code
contestIdstring required Die Wettbewerbs-ID
Anfrage
curl -X GET "https://blitzrocket.com/api/referral/validate-code?code=REF-XYZ789&contestId=clx1abc123"
Antwort
{
"valid": true,
"referrerEmail": "jane@example.com",
"referrerName": "Jane Doe",
"contestId": "clx1abc123"
}
Besuch verfolgen
/api/referral/track-visitErfassen Sie, dass jemand Ihre Seite über einen Empfehlungslink besucht hat.
Anfrageinhalt
referralCodestring required Der Empfehlungs-Code aus der URL
contestIdstring required Die Wettbewerbs-ID
urlstringDie besuchte Seiten-URL (optional)
Anfrage
curl -X POST https://blitzrocket.com/api/referral/track-visit \
-H "Content-Type: application/json" \
-d '{
"referralCode": "REF-XYZ789",
"contestId": "clx1abc123",
"url": "https://yoursite.com/landing-page"
}'
Antwort
{
"success": true
}
Anmeldung verfolgen
/api/referral/track-signupErfassen Sie, dass ein empfohlener Besucher sich angemeldet hat.
Anfrageinhalt
emailstring required E-Mail-Adresse des neuen Anmelders
contestIdstring required Die Wettbewerbs-ID
referralCodestringDer Empfehlungs-Code der Person, die ihn empfohlen hat (optional bei direkten Anmeldungen)
externalSiteUrlstring required URL der Seite, auf der die Anmeldung erfolgte
namestringName des neuen Anmelders (optional)
Anfrage
curl -X POST https://blitzrocket.com/api/referral/track-signup \
-H "Content-Type: application/json" \
-d '{
"email": "newuser@example.com",
"campaignId": "clx1abc123",
"referralCode": "REF-XYZ789",
"externalSiteUrl": "https://yoursite.com/signup"
}'
Antwort
{
"success": true,
"data": {
"entryId": "entry_new789",
"isReferred": true,
"pointsAwarded": {
"advocate": 10,
"friend": 5
}
}
}
Kauf verfolgen
/api/referral/track-purchaseErfasst, dass ein geworbener Nutzer einen Kauf getätigt hat. Wird von RocketTracker.trackPurchase() in blitzrocket.js verwendet.
Anfragetext
campaignIdstring required Die Wettbewerbskennung (gleich wie contestId)
referralCodestring required Der Empfehlungs-Code des Befürworters
orderIdstring required Eindeutige Bestellnummer
amountnumber required Kaufbetrag
externalSiteUrlstring required URL der Seite, auf der der Kauf stattfand
emailstringE-Mail-Adresse des Käufers (optional)
phonestringTelefonnummer des Käufers (optional)
currencystringWährungscode (Standard: 'USD')
Anfrage
curl -X POST https://blitzrocket.com/api/referral/track-purchase \
-H "Content-Type: application/json" \
-d '{
"campaignId": "clx1abc123",
"referralCode": "REF-XYZ789",
"orderId": "order-12345",
"amount": 99.99,
"currency": "USD",
"externalSiteUrl": "https://yoursite.com/checkout/success",
"email": "buyer@example.com"
}'
Antwort
Referral-Kampagne (Punkte):
{
"success": true,
"message": "Kauf erfolgreich erfasst",
"referrerEntryId": "entry_abc123",
"pointsAwarded": { "advocate": 50, "friend": 10 },
"commissionAwarded": { "advocate": 0 }
}
Affiliate-Kampagne (Dollar-Provision):
{
"success": true,
"message": "Kauf erfolgreich erfasst",
"referrerEntryId": "entry_abc123",
"pointsAwarded": { "advocate": 0, "friend": 0 },
"commissionAwarded": { "advocate": 24.99 }
}
Für die nur per E-Mail erfolgende Kaufverfolgung (ohne Empfehlungs-Code in der Anfrage) verwenden Sie stattdessen POST /api/contest/track-purchase.
Vollständiges Server-seitiges Beispiel
Hier ist ein vollständiges Beispiel zur Implementierung der Empfehlungsverfolgung auf Ihrem Server:
const express = require("express");
const app = express();
const BLITZROCKET_BASE = "https://blitzrocket.com/api/referral";
const CONTEST_ID = process.env.CONTEST_ID;
app.post("/api/signup", async (req, res) => {
const { email, name, referralCode } = req.body;
// 1. Erstelle Benutzer in deinem System
const user = await createUser({ email, name });
// 2. Verfolge die vermittelte Anmeldung in Blitz Rocket
if (referralCode) {
await fetch(`${BLITZROCKET_BASE}/track-signup`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
email,
name,
contestId: CONTEST_ID,
referralCode,
}),
});
}
res.json({ success: true, user });
});
app.post("/api/purchase", async (req, res) => {
const { email, orderId, amount, currency } = req.body;
// 1. Verarbeite den Kauf in deinem System
const order = await processOrder({ email, orderId, amount });
// 2. Verfolge den Kauf in Blitz Rocket
await fetch(`${BLITZROCKET_BASE}/track-purchase`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
email,
contestId: CONTEST_ID,
orderId,
amount,
currency,
}),
});
res.json({ success: true, order });
});