BANTU MY EVENT
Retour à la documentation générale

Référence de l'API REST BANTU

Découvrez la liste complète des endpoints de notre API d'événements et Yoklama. Tous les appels doivent être authentifiés et sécurisés comme décrit ci-dessous.

Sécurité & Validation de l'Origine

Pour des raisons de sécurité, toutes les requêtes HTTP envoyées à notre API doivent inclure les headers suivants :

x-bantu-client-key: <CLE_CLIENT_APPLI_PRIVEE>

Obligatoire pour toutes les requêtes. Permet de s'assurer que l'appel provient exclusivement des applications officielles Web/Mobile BANTU.

Authorization: Bearer <JWT_TOKEN>

Requis pour tous les endpoints protégés (création d'événements, achat de ticket,Yoklama etc.).

Gestion des Utilisateurs (Auth)

POST/api/user

Inscription d'un nouvel utilisateur. Initialise le forfait free par défaut.

Request Body (JSON)

{
  "name": "Alain",
  "lastName": "Jospin",
  "email": "alain@example.com",
  "password": "securedpassword"
}
POST/api/user/login

Authentification de l'utilisateur. Retourne le jeton JWT et le plan d'abonnement.

Response Payload (200 OK)

{
  "token": "eyJhbGciOi...",
  "plan": "free",
  "email": "alain@example.com"
}

Gestion des Événements

POST/api/events

Création d'un événement. Si l'organisateur a un forfait free, la capacité maximale autorisée est de 100 participants. L'ajout d'équipes (coOrganizers) est réservé au forfait enterprise.

Request Body (FormData)

title: Conférence annuelle Tech
capacity: 100
price: 0
coOrganizers: part1@example.com, part2@example.com (Optionnel, emails)
image: [File Upload]
GET/api/events

Liste tous les événements publics actifs.

Billetterie, Yoklama & Remboursements

POST/api/tickets/verify

Validation individuelle d'un ticket par scanner Yoklama. Les co-organisateurs officiels de l'événement sont pleinement autorisés à utiliser cet endpoint.

Request Body (JSON)

{
  "eventId": "66abef...",
  "ticketCode": "BANTU-KJLK-89"
}
POST/api/tickets/bulk-cancel

Annulation et remboursement groupé de billets. Réservé exclusivement aux comptes de forfait enterprise.

Request Body (JSON)

{
  "ticketIds": [
    "66bd12...",
    "66bd34..."
  ]
}