Referral Tracking
API-eindpunten
Server-side verwijzingsvolg-eindpunten
Verwijzings-API-eindpunten
Als je de voorkeur geeft aan server-side verwijzingsvolging (of dit nodig hebt voor backend-only integraties), kun je deze eindpunten rechtstreeks aanroepen in plaats van het JavaScript-volgscrip te gebruiken.
Alle verwijzings-eindpunten ondersteunen CORS en vereisen geen API-sleutel authenticatie.
Verwijzings- versus affiliatecampagnes: Verwijzingscampagnes belonen punten bij aanmeldingen en aankopen. Affiliatecampagnes belonen dollarcommissie op verwezen aankopen met een exclusieve uitbetalingsstructuur — ofwel een percentage van de verkoop of een vast bedrag per verkoop (niet beide). Aanmeldingsvolging betaalt geen commissie bij affiliatecampagnes (alleen bij aankopen). Antwoorden op aankopen bevatten pointsAwarded voor verwijzingsmodus en commissionAwarded voor affiliate modus.
Verifieer Verwijzingscode
/api/referral/validate-codeControleer of een verwijzingscode geldig is en haal informatie op over de verwijzer.
Queryparameters
codestring required De te verifiëren verwijzingscode
contestIdstring required De wedstrijdidentificatie
Verzoek
curl -X GET "https://blitzrocket.com/api/referral/validate-code?code=REF-XYZ789&contestId=clx1abc123"
Antwoord
{
"valid": true,
"referrerEmail": "jane@example.com",
"referrerName": "Jane Doe",
"contestId": "clx1abc123"
}
Volg Bezoek
/api/referral/track-visitRegistreer dat iemand je site bezocht via een verwijzingslink.
Verzoek Body
referralCodestring required De verwijzingscode uit de URL
contestIdstring required De wedstrijdidentificatie
urlstringDe bezochte pagina-URL (optioneel)
Verzoek
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"
}'
Antwoord
{
"success": true
}
Volg Aanmelding
/api/referral/track-signupRegistreer dat een verwezen bezoeker zich heeft aangemeld.
Verzoek Body
emailstring required E-mailadres van de nieuwe aanmelding
contestIdstring required De wedstrijdidentificatie
referralCodestringDe verwijzingscode van de persoon die hen verwees (optioneel voor directe aanmeldingen)
externalSiteUrlstring required URL van de pagina waar de aanmelding plaatsvond
namestringNaam van de nieuwe aanmelding (optioneel)
Verzoek
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"
}'
Antwoord
{
"success": true,
"data": {
"entryId": "entry_new789",
"isReferred": true,
"pointsAwarded": {
"advocate": 10,
"friend": 5
}
}
}
Volg Aankoop
/api/referral/track-purchaseRegistreer dat een verwezen gebruiker een aankoop heeft gedaan. Wordt gebruikt door RocketTracker.trackPurchase() in blitzrocket.js.
Verzoek Body
campaignIdstring required De wedstrijdidentificatie (zelfde als contestId)
referralCodestring required De verwijzingscode van de pleitbezorger
orderIdstring required Unieke orderidentificatie
amountnumber required Aankoopbedrag
externalSiteUrlstring required URL van de pagina waar de aankoop plaatsvond
emailstringE-mailadres van de koper (optioneel)
phonestringTelefoonnummer van de koper (optioneel)
currencystringValutacode (standaard: 'USD')
Verzoek
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"
}'
Antwoord
Verwijzingscampagne (punten):
{
"success": true,
"message": "Aankoop succesvol geregistreerd",
"referrerEntryId": "entry_abc123",
"pointsAwarded": { "advocate": 50, "friend": 10 },
"commissionAwarded": { "advocate": 0 }
}
Affiliate campagne (dollar commissie):
{
"success": true,
"message": "Aankoop succesvol geregistreerd",
"referrerEntryId": "entry_abc123",
"pointsAwarded": { "advocate": 0, "friend": 0 },
"commissionAwarded": { "advocate": 24.99 }
}
Voor alleen e-mail aankoopregistratie (geen verwijzingscode in het verzoek), gebruik in plaats daarvan POST /api/contest/track-purchase.
Volledig Server-Side Voorbeeld
Hier is een volledig voorbeeld van het implementeren van referral tracking op je 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. Maak gebruiker aan in je systeem
const user = await createUser({ email, name });
// 2. Volg de verwezen aanmelding 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. Verwerk de aankoop in je systeem
const order = await processOrder({ email, orderId, amount });
// 2. Volg de aankoop 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 });
});