API REST Captivux
API JSON pour piloter portails captifs, RADIUS et CRM. Base :https://api.captivux.com/api/radius
Authentification
Les endpoints d’administration exigent un token (obtenu via /login/), transmis dans l’en-tête :
curl -X POST https://api.captivux.com/api/radius/login/ \
-H "Content-Type: application/json" \
-d '{"username":"admin","password":"••••••"}'
# → { "success": true, "token": "<40-char-token>", "tenants": [...] }
curl https://api.captivux.com/api/radius/stats/?tenant=demo \
-H "Authorization: Token <40-char-token>"Endpoints publics (portail captif)
/login/Authentifie un administrateur et renvoie un token.
/tenant-profile/?tenant=<slug>Branding du portail captif (couleurs, logo, méthodes).
/auth/Enregistre un invité depuis le portail captif.
/sms/send/Envoie un code OTP par SMS.
/sms/verify/Vérifie le code OTP et authentifie l’invité.
/contact/Soumet une demande de contact / démo.
Endpoints d’administration (token requis)
/stats/?tenant=<slug>KPIs réels : invités, sessions, footfall, accès, cohortes.
/crm/?tenant=<slug>Liste des contacts collectés (export CSV côté CRM).
/sessions/?tenant=<slug>Sessions RADIUS de l’établissement (actives + fermées).
/sessions/kick/Déconnexion forcée d’un utilisateur (CoA).
/logs/?tenant=<slug>Timeline des évènements RADIUS (Accept/Reject/CoA).
/nas/?tenant=<slug>Liste des bornes Wi-Fi (NAS).
/nas/Enregistre une borne (MAC, IP, localisation).
/nas/<id>/Supprime une borne.
/tenants/Liste enrichie des clients (KPIs + méthodes auth).
/tenants/Crée un nouveau client (établissement).
/tenant-profile/Met à jour le branding / les méthodes d’authentification.
Intégrations marketing
Chaque établissement peut renseigner son Pixel Facebook et son Google Tag (GTM/GA4) dans la console CRM. Ces identifiants sont injectés automatiquement dans le portail captif : chaque connexion Wi-Fi devient une audience retargetable, et le trafic est redirigé vers le site du client après authentification (redirect_url).