Captivux REST API
JSON API to drive captive portals, RADIUS and CRM. Base:https://api.captivux.com/api/radius
Authentication
Admin endpoints require a token (obtained via /login/), passed in the header:
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>"Public endpoints (captive portal)
/login/Authenticates an administrator and returns a token.
/tenant-profile/?tenant=<slug>Captive portal branding (colors, logo, methods).
/auth/Registers a guest from the captive portal.
/sms/send/Sends an OTP code by SMS.
/sms/verify/Verifies the OTP code and authenticates the guest.
/contact/Submits a contact / demo request.
Admin endpoints (token required)
/stats/?tenant=<slug>Real KPIs: guests, sessions, footfall, access, cohorts.
/crm/?tenant=<slug>List of collected contacts (CSV export in the CRM).
/sessions/?tenant=<slug>Venue RADIUS sessions (active + closed).
/sessions/kick/Force-disconnect a user (CoA).
/logs/?tenant=<slug>RADIUS event timeline (Accept/Reject/CoA).
/nas/?tenant=<slug>List of Wi-Fi access points (NAS).
/nas/Registers an access point (MAC, IP, location).
/nas/<id>/Deletes an access point.
/tenants/Enriched client list (KPIs + auth methods).
/tenants/Creates a new client (venue).
/tenant-profile/Updates branding / authentication methods.
Marketing integrations
Each venue can set their Facebook Pixel and Google Tag (GTM/GA4) in the CRM console. These IDs are automatically injected into the captive portal: every Wi-Fi connection becomes a retargetable audience, and traffic is redirected to the client’s site after authentication (redirect_url).