Spacebring Captive Portal Integration
IronWiFi validates Spacebring member WiFi logins in real time by calling the Spacebring REST API at each captive portal login attempt. There is no account sync — the captive portal asks Spacebring whether the member exists and whether their membership is currently active, and grants or denies WiFi based on the response. Spacebring remains the source of truth for members and plans.
How It Works
- A member connects to the WiFi SSID and is redirected to your IronWiFi captive portal.
- The member submits their Spacebring email and password on the splash page.
- IronWiFi POSTs those credentials to the Spacebring API endpoint you configured on the captive portal's REST API authentication provider, passing your Spacebring API token as a Bearer header.
- Spacebring validates the credentials and the member's active membership, then returns to allow the session or
2xxto reject it.4xx - IronWiFi grants or denies the WiFi session based on the response.
The request and response contract is described in External Authentication via REST API.
Prerequisites
- An IronWiFi account with a captive portal already created. See Captive Portals.
- A Spacebring account with admin access and the ability to issue an API key.
- A walled garden on your captive portal that allows the Spacebring API hostname (see Walled Garden below).
Setup
In Spacebring
- Log in to your Spacebring admin dashboard.
- Go to Settings > Integrations > API and generate:
- An API Key (used as the Bearer token).
- Your Workspace ID, which is required in the Spacebring API endpoint URL.
- The Spacebring API base URL is unless your account uses a custom endpoint.
https://api.spacebring.com - Store the API key securely — you will paste it into IronWiFi next.
In IronWiFi
- Open the IronWiFi Console and go to Captive Portals.
- Select the captive portal you want members to authenticate against.
- Go to Authentication Providers > Add and choose REST API.
- Configure the provider:
- Endpoint URL: The Spacebring endpoint for your workspace that validates the captive portal credential payload.
- Bearer Token: The Spacebring API key from the previous section.
- Save the provider. For field-by-field details, see the REST API provider configuration reference.
- Make sure the REST API provider is enabled on the captive portal's login page.
Walled Garden
Add the Spacebring API hostname to the captive portal's walled garden so the provider endpoint is reachable before the user is authenticated:
See Walled Garden for how to edit the list.
Testing
- Connect a test device to the SSID and wait for the captive portal to load.
- Log in with a known-active Spacebring member — you should be granted WiFi.
- Try a paused or cancelled member — the captive portal should show an authentication failure.
- In the IronWiFi Console, check the captive portal session log to confirm the request hit the Spacebring API and returned the expected or
2xx.4xx
Troubleshooting
- 401/403 from Spacebring — the API key is missing, wrong, or lacks permission. Regenerate it in Spacebring and re-paste into the REST API provider.
- Request never reaches Spacebring — the Spacebring hostname is missing from the walled garden. Add it and retest.
- Active members are rejected — confirm the Workspace ID in the endpoint URL is correct and the member's plan is currently active in Spacebring.
- Previously working logins suddenly fail — the Spacebring API key may have been rotated. Issue a new one and update the provider.
Related
Was this page helpful?