API Reference
Inscriptions
Créez, récupérez, mettez à jour et gérez les inscriptions au concours
Inscriptions
Gérez les participants au concours et leurs inscriptions.
Lister les Inscriptions
/api/v1/contests/:contestId/entriesRenvoie une liste paginée des inscriptions pour un concours spécifique.
Paramètres de chemin
contestIdstring required L'identifiant unique du concours
Paramètres de requête
pagenumberNuméro de page, à partir de 1. Par défaut : 1
limitnumberInscriptions par page (1-100). Par défaut : 20
searchstringRecherche par email ou nom (insensible à la casse)
Requête
curl -X GET "https://blitzrocket.com/api/v1/contests/clx1abc123/entries?page=1&limit=10" \
-H "x-api-key: your_api_key_here"
Réponse
{
"success": true,
"data": [
{
"id": "entry_abc123",
"email": "jane@example.com",
"name": "Jane Doe",
"phone": null,
"points": 150,
"emailConfirmed": true,
"disqualified": false,
"referralCode": "REF-XYZ789",
"createdAt": "2025-06-15T10:30:00.000Z"
},
{
"id": "entry_def456",
"email": "john@example.com",
"name": "John Smith",
"phone": "+1234567890",
"points": 85,
"emailConfirmed": true,
"disqualified": false,
"referralCode": "REF-ABC456",
"createdAt": "2025-06-16T14:20:00.000Z"
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 1523,
"totalPages": 153
}
}
Champs de réponse
idstringIdentifiant unique de l'inscription
emailstringAdresse email du participant
namestring | nullNom du participant
phonestring | nullNuméro de téléphone du participant
pointsnumberTotal des points gagnés
emailConfirmedbooleanIndique si l'email a été confirmé
disqualifiedbooleanIndique si l'inscription est disqualifiée
referralCodestring | nullCode de parrainage unique pour cette inscription
createdAtstringHorodatage ISO 8601 de la création de l'inscription
Obtenir une Inscription
/api/v1/entries/:entryIdRécupérez les informations détaillées sur une inscription spécifique.
Paramètres de chemin
entryIdstring required L'identifiant unique de l'inscription
Requête
curl -X GET https://blitzrocket.com/api/v1/entries/entry_abc123 \
-H "x-api-key: your_api_key_here"
Réponse
{
"success": true,
"data": {
"id": "entry_abc123",
"email": "jane@example.com",
"name": "Jane Doe",
"phone": null,
"points": 150,
"pointsUsed": 25,
"emailConfirmed": true,
"disqualified": false,
"referralCode": "REF-XYZ789",
"contestId": "clx1abc123def456",
"contestTitle": "Summer Giveaway 2025",
"referralsCount": 3,
"bonusActionsCompleted": 5,
"totalPurchaseValue": 129.99,
"totalPurchaseCount": 2,
"createdAt": "2025-06-15T10:30:00.000Z"
}
}
Créer une Inscription
/api/v1/contests/:contestId/entriesCréez une nouvelle inscription pour un concours. Une clé API privée est requise.
Paramètres de chemin
contestIdstring required L'identifiant unique du concours
Corps de la requête
emailstringAdresse e-mail du participant. Soit l'email soit le téléphone est requis.
phonestringNuméro de téléphone du participant. Soit l'email soit le téléphone est requis.
namestringNom du participant (optionnel)
referralCodestringCode de parrainage d'un autre participant (optionnel)
customFieldDataobjectObjet des données de champ personnalisé (optionnel)
Requête
curl -X POST https://blitzrocket.com/api/v1/contests/clx1abc123/entries \
-H "x-api-key: your_private_key_here" \
-H "Content-Type: application/json" \
-d '{
"email": "newuser@example.com",
"name": "New User",
"referralCode": "REF-XYZ789"
}'
Réponse (201 Créé)
{
"success": true,
"data": {
"entryId": "entry_new789",
"email": "newuser@example.com",
"alreadyExists": false,
"isReferred": true,
"pointsAwarded": {
"advocate": 10,
"friend": 5
}
}
}
Si l'email existe déjà dans le concours, la réponse inclura "alreadyExists": true avec un statut 200 OK.
Mettre à jour une participation
/api/v1/entries/:entryIdMettre à jour les informations d'une participation existante. Au moins un champ doit être fourni.
Paramètres de chemin
entryIdstring required L'identifiant unique de la participation
Corps de la requête
namestringNom mis à jour
emailstringAdresse e-mail mise à jour
phonestringNuméro de téléphone mis à jour
customFieldDataobjectDonnées de champ personnalisé mises à jour
Requête
curl -X PUT https://blitzrocket.com/api/v1/entries/entry_abc123 \
-H "x-api-key: your_private_key_here" \
-H "Content-Type: application/json" \
-d '{
"name": "Jane Updated",
"phone": "+1987654321"
}'
Réponse
{
"success": true,
"data": {
"id": "entry_abc123",
"email": "jane@example.com",
"name": "Jane Updated",
"phone": "+1987654321",
"points": 150
}
}
Disqualifier une participation
/api/v1/entries/:entryId/disqualifyDisqualifier ou requalifier une participation.
Paramètres de chemin
entryIdstring required L'identifiant unique de la participation
Corps de la requête
disqualifybooleanMettre à true pour disqualifier, false pour requalifier. Omettre pour basculer.
Request
curl -X POST https://blitzrocket.com/api/v1/entries/entry_abc123/disqualify \
-H "x-api-key: your_private_key_here" \
-H "Content-Type: application/json" \
-d '{"disqualify": true}'
Response
{
"success": true,
"data": {
"entryId": "entry_abc123",
"disqualified": true,
"message": "Entry has been disqualified"
}
}
Ajuster les points
/api/v1/entries/:entryId/pointsAjouter ou retirer des points à une participation. Les points ne peuvent pas descendre en dessous de zéro.
Paramètres de chemin
entryIdstring required L'identifiant unique de la participation
Corps de la requête
pointsnumber required Points à ajouter (positif) ou retirer (négatif)
reasonstring required Motif de l'ajustement
Requête
curl -X POST https://blitzrocket.com/api/v1/entries/entry_abc123/points \
-H "x-api-key: your_private_key_here" \
-H "Content-Type: application/json" \
-d '{
"points": 50,
"reason": "Bonus pour avoir complété le sondage"
}'
Réponse
{
"success": true,
"data": {
"message": "50 points ajoutés avec succès",
"previousTotal": 150,
"newTotal": 200,
"adjustment": 50
}
}
Pour retirer des points, utilisez une valeur négative :
{
"points": -25,
"reason": "Pénalité pour violation des règles"
}
Réponses d'erreur
| Statut | Erreur | Description |
|---|---|---|
400 | Points ou motif manquant | Les deux champs sont obligatoires |
403 | Clé privée requise | Ce point d'accès nécessite une clé API privée |
404 | Participation non trouvée | Aucune participation avec l'ID donné n'existe |