Skip to main contentSkip to search
Skip to main content

Twitter/X Social Login

Allow WiFi guests to authenticate on your captive portal using their Twitter/X accounts with OAuth 2.0, enabling quick access and profile data collection.

Overview

Twitter/X social login provides:

  • Quick authentication via Twitter/X accounts
  • Profile data collection (username, name)
  • Social engagement potential
  • Broad user base access

Prerequisites

  • IronWiFi account with captive portal
  • Twitter/X Developer account
  • Twitter API v2 access (Elevated or higher)

Important Note on API Access

Twitter/X has changed its API access tiers:

  • Free tier: Very limited (may not support OAuth)
  • Basic tier: ($100/month) OAuth support
  • Pro tier: ($5000/month) Full features

Verify your access level supports OAuth 2.0 User Authentication.

Twitter Developer Setup

Create Developer Account

  1. Go to developer.twitter.com
  2. Apply for developer access
  3. Complete application process
  4. Wait for approval

Create Project and App

  1. In Developer Portal, click Projects & Apps
  2. Create a new Project
  3. Create an App within the project
  4. Note your:
    • Client ID
    • Client Secret

Configure OAuth 2.0

  1. In app settings, go to User authentication settings
  2. Click Set up
  3. Configure:
    • App permissions: Read (minimum)
    • Type of App: Web App
    • Callback URI:
      https://auth.ironwifi.com/callback/twitter
    • Website URL: Your company website

IronWiFi Configuration

Step 1: Add Twitter Provider

  1. Log in to IronWiFi Console
  2. Navigate to Networks > Captive Portals
  3. Select your captive portal
  4. Go to Authentication Providers
  5. Click Add Provider > Twitter/X

Step 2: Configure OAuth

Enter credentials:

  • Client ID: Your Twitter OAuth 2.0 Client ID
  • Client Secret: Your Twitter Client Secret
  • Redirect URI: Confirm matches Twitter app config

Step 3: Configure Scopes

Select requested permissions:

  • tweet.read
    - Read tweets
  • users.read
    - Read user profile
  • offline.access
    - Refresh tokens (optional)

Data Collection

Available Data

Twitter API provides:

FieldDescription
id
Twitter user ID
name
Display name
username
Twitter handle (@username)
profile_image_url
Profile picture URL
verified
Verification status
description
Bio (if permissions allow)

Data Limitations

Note these limitations:

  • Email requires special approval from Twitter
  • Some fields require elevated access
  • Rate limits apply

Authentication Flow

User Experience

  1. Guest connects to WiFi
  2. Captive portal shows "Continue with X" button
  3. Guest clicks and redirects to Twitter/X
  4. Logs in and authorizes app
  5. Redirected back, WiFi access granted

OAuth 2.0 with PKCE

Twitter uses OAuth 2.0 with PKCE:

Splash Page Integration

Add Twitter Button

Was this page helpful?