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

GET/api/v1/contests/:contestId/entries
Public or Private API Key

Renvoie 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

pagenumber

Numéro de page, à partir de 1. Par défaut : 1

limitnumber

Inscriptions par page (1-100). Par défaut : 20

searchstring

Recherche par email ou nom (insensible à la casse)

Requête

bash
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

json
{
  "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

idstring

Identifiant unique de l'inscription

emailstring

Adresse email du participant

namestring | null

Nom du participant

phonestring | null

Numéro de téléphone du participant

pointsnumber

Total des points gagnés

emailConfirmedboolean

Indique si l'email a été confirmé

disqualifiedboolean

Indique si l'inscription est disqualifiée

referralCodestring | null

Code de parrainage unique pour cette inscription

createdAtstring

Horodatage ISO 8601 de la création de l'inscription


Obtenir une Inscription

GET/api/v1/entries/:entryId
Public or Private API Key

Ré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

bash
curl -X GET https://blitzrocket.com/api/v1/entries/entry_abc123 \
  -H "x-api-key: your_api_key_here"

Réponse

json
{
  "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

POST/api/v1/contests/:contestId/entries
Private API Key Required

Cré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

emailstring

Adresse e-mail du participant. Soit l'email soit le téléphone est requis.

phonestring

Numéro de téléphone du participant. Soit l'email soit le téléphone est requis.

namestring

Nom du participant (optionnel)

referralCodestring

Code de parrainage d'un autre participant (optionnel)

customFieldDataobject

Objet des données de champ personnalisé (optionnel)

Requête

bash
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éé)

json
{
  "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

PUT/api/v1/entries/:entryId
Private API Key Required

Mettre à 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

namestring

Nom mis à jour

emailstring

Adresse e-mail mise à jour

phonestring

Numéro de téléphone mis à jour

customFieldDataobject

Données de champ personnalisé mises à jour

Requête

bash
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

json
{
  "success": true,
  "data": {
    "id": "entry_abc123",
    "email": "jane@example.com",
    "name": "Jane Updated",
    "phone": "+1987654321",
    "points": 150
  }
}

Disqualifier une participation

POST/api/v1/entries/:entryId/disqualify
Private API Key Required

Disqualifier ou requalifier une participation.

Paramètres de chemin

entryIdstring required

L'identifiant unique de la participation

Corps de la requête

disqualifyboolean

Mettre à true pour disqualifier, false pour requalifier. Omettre pour basculer.

Request

bash
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

json
{
  "success": true,
  "data": {
    "entryId": "entry_abc123",
    "disqualified": true,
    "message": "Entry has been disqualified"
  }
}

Ajuster les points

POST/api/v1/entries/:entryId/points
Private API Key Required

Ajouter 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

bash
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

json
{
  "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 :

json
{
  "points": -25,
  "reason": "Pénalité pour violation des règles"
}

Réponses d'erreur

StatutErreurDescription
400Points ou motif manquantLes deux champs sont obligatoires
403Clé privée requiseCe point d'accès nécessite une clé API privée
404Participation non trouvéeAucune participation avec l'ID donné n'existe