Skip to main content

ShareCodes

ShareCodes are shareable WiFi access codes that allow multiple users to authenticate to your network using a single code. They're perfect for events, temporary access, guest WiFi, and situations where you need to distribute network access quickly to groups of people.

What are ShareCodes?

A ShareCode is a unique alphanumeric code that grants WiFi access under controlled conditions. Unlike individual user accounts, a single ShareCode can be used by multiple people, making it ideal for:

  • Event WiFi - Share one code with all attendees
  • Guest Access - Provide temporary access to visitors
  • Conference Rooms - Post a code for meeting participants
  • Retail Stores - Display customer WiFi codes
  • Temporary Workers - Quick access without creating individual accounts

Key Features

Flexible Code Generation

  • Generate 1-1,000 codes at once
  • Multiple formats (digits only, letters, mixed, custom)
  • 4-32 character length
  • Custom or auto-generated codes

Usage Controls

  • User Limits - Control how many users can register with one code
  • Device Limits - Restrict devices per code (1-100)
  • Data Quotas - Set data consumption limits
  • Session Duration - Limit total connection time
  • Expiration Dates - Auto-expire after specified period

Distribution Options

  • Email Delivery - Send codes via email automatically
  • SMS Delivery - Send codes via text message
  • Manual Sharing - Post, print, or share codes directly
  • Batch Distribution - Send multiple codes at once

Tracking and Monitoring

  • Track which users registered with each code
  • Monitor device connections per code
  • View data and time usage statistics
  • Audit code creation and deletion

Creating ShareCodes

Generate a Single Code

  1. Navigate to ShareCodes in the IronWifi Console
  2. Click Generate ShareCode
  3. Configure code settings:
    • Code Format - Choose generation pattern
    • Code Length - 4-32 characters
    • User Limit - Max users per code
    • Device Limit - Max devices per user
    • Duration - Access duration in hours
    • Expiration - Auto-delete after N days
  4. Optionally add:
    • Description/notes
    • Group assignment
    • Organizational unit
  5. Click Generate

Generate Multiple Codes

  1. Navigate to ShareCodes
  2. Click Generate ShareCode
  3. Set Quantity to number of codes (1-1,000)
  4. Configure settings (applied to all codes)
  5. Click Generate
Bulk Generation

When generating many codes, consider using templates (see below) to save time on future generations.

Code Formats

Available Formats

FormatDescriptionExample
Digits OnlyNumbers only12345678
Letters OnlyAlphabetic charactersABCDEFGH
MixedLetters and numbersAB12CD34
CustomSpecify your own codeGUEST2024
PicturePattern-based (advanced)XX99-XX99

Code Length

Choose length between 4-32 characters:

  • Short codes (4-6) - Easy to type, less secure
  • Medium codes (8-12) - Balance of usability and security
  • Long codes (16+) - Maximum security, harder to share
Security Consideration

Longer codes are more secure but harder for users to enter. For public WiFi, 8-12 characters is recommended.

ShareCode Properties

Basic Settings

FieldDescriptionRange/Format
CodeThe access code itself4-32 alphanumeric
DescriptionOptional notes about this codeMax 500 characters
Statusvalid, used_data, used_time, expiredAuto-calculated

Access Controls

FieldDescriptionDefault
User LimitMax users who can registerUnlimited
Device LimitMax devices per code5
ActiveEnable/disable the codeEnabled

Usage Limits

FieldDescriptionFormat
Session DurationMax connection time1-8,760 hours (1 year max)
Data QuotaMax data transferBytes (0-10 TB)
Time ResetReset pattern for time limitnone, daily, weekly, monthly, yearly
Data ResetReset pattern for data limitnone, daily, weekly, monthly, yearly

Expiration

FieldDescriptionRange
Expiration DateWhen code auto-deletes1-365 days from creation
Creation DateWhen code was generatedAuto-set
Last UsedMost recent authenticationAuto-updated

Managing ShareCodes

Viewing Your ShareCodes

  1. Navigate to ShareCodes
  2. View list showing:
    • Code
    • Status (valid/used/expired)
    • Registered users
    • Creation date
    • Expiration date
  3. Use filters to find codes:
    • Search by code or description
    • Filter by status
    • Sort by date or usage

Viewing ShareCode Details

  1. Click on a ShareCode in the list
  2. View comprehensive information:
    • Usage Statistics - Data and time consumed
    • Registered Users - Who used this code
    • Connected Devices - Tracked by MAC address
    • Session History - Authentication timeline

Editing a ShareCode

  1. Open the ShareCode details
  2. Click Edit
  3. Modify any of:
    • Description/notes
    • Active status (enable/disable)
    • User limit
    • Device limit
    • Data quota
    • Time limit
    • Reset patterns
    • Group assignment
  4. Click Save
Renaming Codes

Renaming a ShareCode creates a new code identifier. Users with the old code will need the new code to authenticate.

Disabling a ShareCode

Temporarily disable without deleting:

  1. Open the ShareCode details
  2. Click Disable
  3. Code status changes to inactive
  4. Users cannot authenticate with disabled codes
  5. Re-enable anytime by clicking Enable

Deleting a ShareCode

Permanently remove a ShareCode:

  1. Select ShareCode(s) to delete
  2. Click Delete
  3. Confirm deletion
  4. Code removed from system
  5. Registered users lose access
User Accounts Preserved

Deleting a ShareCode doesn't delete user accounts created with it. Users can no longer authenticate with the code, but their accounts remain.

Distribution Methods

Email Distribution

Send codes via email during generation:

  1. When generating codes, enable Email Delivery
  2. Enter recipient email address
  3. Optionally customize email template
  4. Codes sent automatically after generation

Email includes:

  • The access code
  • Usage instructions
  • Expiration information
  • Network name (SSID)

SMS Distribution

Send codes via text message:

  1. When generating codes, enable SMS Delivery
  2. Enter recipient phone number (10-15 digits)
  3. Codes sent via SMS immediately

SMS includes:

  • The access code
  • Brief usage instructions
  • Expiration date
SMS Requirements

SMS delivery requires Twilio integration. Configure in Twilio Settings.

Manual Distribution

Share codes manually:

  1. Generate codes
  2. Copy codes from the ShareCodes list
  3. Share via:
    • Printed handouts
    • Posted signs
    • Verbal communication
    • Messaging apps
    • Social media
    • QR codes

Usage Tracking

View Code Usage

For each ShareCode, monitor:

User Registrations:

  • Total users registered
  • List of usernames
  • Registration timestamps

Device Connections:

  • Number of connected devices
  • Device MAC addresses
  • First seen / last seen dates
  • Device status (active/inactive)

Session Statistics:

  • Total session time consumed
  • Total data transferred (uploaded + downloaded)
  • Remaining quota (time and data)
  • Reset schedule status

Status Indicators:

  • valid - Code available for use
  • used_data - Data quota consumed
  • used_time - Time quota consumed
  • expired - Past expiration date

Templates

Save frequently used configurations as templates for quick code generation.

Creating a Template

  1. When generating ShareCodes, enable Save as Template
  2. Enter a template name (e.g., "Event WiFi - 24hr")
  3. Generate codes
  4. Template saved with all settings

Using a Template

  1. Click Generate from Template
  2. Select saved template
  3. Optionally modify settings
  4. Generate codes with template configuration

Managing Templates

View Templates:

  • Navigate to ShareCodes > Templates
  • View all saved templates

Delete Template:

  • Open template
  • Click Delete Template
  • Confirm deletion
Template vs Code Deletion

Deleting a template doesn't delete codes generated from it. Templates and codes are independent.

Bulk Operations

Bulk Enable/Disable

Enable or disable multiple codes at once:

  1. Navigate to ShareCodes
  2. Select codes (up to 100)
  3. Click Bulk Actions > Enable or Disable
  4. Confirm action

Bulk Delete

Remove multiple codes simultaneously:

  1. Select codes to delete (up to 100)
  2. Click Delete Selected
  3. Confirm bulk deletion

Bulk Update

Update properties across multiple codes:

  1. Select codes (up to 100)
  2. Click Bulk Actions > Update
  3. Choose properties to modify:
    • Active status
    • Time limit
    • Data limit
    • Reset patterns
    • Notes
  4. Apply changes
Rate Limits
  • Create: 100 codes per minute
  • Update: 100 updates per minute
  • Delete: 200 deletions per minute
  • Bulk operations: Max 100 items per request

Usage Scenarios

Conference WiFi

Scenario: 500-person conference needing WiFi for 2 days

Setup:

  1. Generate 1 ShareCode
  2. Set user limit: 500
  3. Set device limit: 2 per user
  4. Duration: 48 hours
  5. Expiration: 3 days (auto-cleanup)
  6. Display code at venue

Result: All attendees use one code, automatic expiration after event.

Retail Customer WiFi

Scenario: Store offering customer WiFi

Setup:

  1. Generate 1 ShareCode
  2. Set no user limit
  3. Device limit: 1-2
  4. Duration: 4 hours per session
  5. Data limit: 500 MB per device
  6. Daily reset (new limits each day)
  7. Post code near entrance

Result: Customers get limited free WiFi, renewed daily.

Temporary Contractor Access

Scenario: 10 contractors need access for 1 month

Setup:

  1. Generate 10 unique ShareCodes
  2. Set user limit: 1 per code
  3. Device limit: 5 per contractor
  4. Duration: 720 hours (30 days)
  5. Email codes to contractors
  6. Assign to "Contractors" group

Result: Tracked individual access with automatic expiration.

Event Series

Scenario: Weekly meetup needing fresh codes

Setup:

  1. Create template: "Weekly Meetup"
    • User limit: 50
    • Duration: 4 hours
    • Device limit: 2
    • Expiration: 7 days
  2. Generate new code from template each week
  3. Email to organizer

Result: Consistent settings, unique code each event.

API Integration

ShareCodes can be managed programmatically via the IronWifi REST API.

API Endpoints

POST   /api/{company_id}/sharecodes              - Generate ShareCode(s)
GET /api/{company_id}/sharecodes - List all ShareCodes
GET /api/{company_id}/sharecodes/{id} - Get ShareCode details
PATCH /api/{company_id}/sharecodes/{id} - Update ShareCode
DELETE /api/{company_id}/sharecodes/{id} - Delete ShareCode

Generate ShareCodes

curl -X POST https://console.ironwifi.com/api/{company_id}/sharecodes \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"voucher_quantity": 10,
"voucher_format": "lettersdigits_password",
"voucher_length": 8,
"voucher_devices": 5,
"voucher_duration": 24,
"voucher_deletedate": 7,
"voucher_comment": "Conference WiFi",
"email_vouchers": true,
"email_vouchers_value": "admin@company.com"
}'

Response:

[
{
"id": "sharecode-uuid",
"username": "AB12CD34",
"code": "AB12CD34",
"link": "https://console.ironwifi.com/api/{company_id}/sharecodes/sharecode-uuid"
}
]

List ShareCodes

curl -X GET "https://console.ironwifi.com/api/{company_id}/sharecodes?page=1&page_size=25&filter=conf" \
-H "Authorization: Bearer YOUR_TOKEN"

Query Parameters:

  • filter - Search codes/descriptions (max 100 chars)
  • page - Page number (default: 1)
  • page_size - Items per page (1-1000, default: 25)
  • sort - Sort field: creationdate, authdate, username, deletiondate, source, notes
  • format - Response format: json (default) or csv

Get ShareCode Details

curl -X GET https://console.ironwifi.com/api/{company_id}/sharecodes/{id} \
-H "Authorization: Bearer YOUR_TOKEN"

Response includes:

  • Code details
  • Usage statistics
  • Registered users
  • Connected devices
  • Session limits
  • Status

Update ShareCode

curl -X PATCH https://console.ironwifi.com/api/{company_id}/sharecodes/{id} \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"active": 1,
"notes": "Updated for extended event",
"total_time": 86400,
"total_data": 1073741824
}'

Updateable Fields:

  • active - 1 (enabled) or 0 (disabled)
  • username - Rename code (4-32 alphanumeric)
  • total_time - Session time limit (seconds)
  • total_data - Data limit (bytes)
  • time_reset_type - none, daily, weekly, monthly, yearly
  • data_reset_type - none, daily, weekly, monthly, yearly
  • notes - Description (max 500 chars)
  • orgunit - Organizational unit ID

Bulk Update

Update multiple ShareCodes (comma-separated IDs, max 100):

curl -X PATCH https://console.ironwifi.com/api/{company_id}/sharecodes/id1,id2,id3 \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"active": 0,
"notes": "Expired - conference ended"
}'

Delete ShareCode

curl -X DELETE https://console.ironwifi.com/api/{company_id}/sharecodes/{id} \
-H "Authorization: Bearer YOUR_TOKEN"

Bulk Delete

Delete multiple ShareCodes (comma-separated IDs, max 100):

curl -X DELETE https://console.ironwifi.com/api/{company_id}/sharecodes/id1,id2,id3 \
-H "Authorization: Bearer YOUR_TOKEN"

Permissions

Access to ShareCode management is controlled by permissions:

PermissionAccess Level
sharecodes.readView ShareCodes and details
sharecodes.fullFull access: create, update, delete

Permission Requirements:

OperationRequired Permission
List ShareCodessharecodes.read OR sharecodes.full
View detailssharecodes.read OR sharecodes.full
Generate codessharecodes.full
Update codessharecodes.full
Delete codessharecodes.full
Bulk operationssharecodes.full

Contact your administrator to request ShareCode management permissions.

Best Practices

1. Code Naming and Organization

Use Descriptive Notes:

  • Include purpose: "Q1 2024 Sales Conference"
  • Add expiration context: "Valid until Jan 31"
  • Note distribution: "Emailed to attendees"

Organize by Groups:

  • Assign ShareCodes to groups for consistent policies
  • Use organizational units for hierarchical management

2. Security Considerations

Choose Appropriate Limits:

  • Set reasonable user limits (avoid unlimited for public codes)
  • Limit devices to prevent sharing beyond intended audience
  • Use data quotas to prevent abuse

Use Expiration Dates:

  • Always set expiration for temporary access
  • Auto-cleanup keeps your ShareCode list manageable
  • Reduces risk of old codes being misused

Disable When Not Needed:

  • Disable codes between events rather than delete
  • Easier to re-enable than recreate
  • Preserves usage history

3. Distribution Strategy

For Large Events:

  • Generate fewer codes with higher user limits
  • Simplifies distribution and support
  • Easier to track overall event usage

For Individual Access:

  • Generate unique code per person
  • Better tracking and accountability
  • Can revoke individual access easily

Email vs SMS vs Manual:

  • Email: Best for documented distribution
  • SMS: Fastest for urgent access
  • Manual: Good for publicly displayed codes

4. Template Usage

Create Templates For:

  • Recurring events (weekly, monthly)
  • Standard guest access policies
  • Different access tiers (basic, premium)
  • Department-specific codes

Template Best Practices:

  • Use clear, descriptive template names
  • Document template purpose in description
  • Review and update templates quarterly
  • Delete unused templates

5. Monitoring and Maintenance

Regular Reviews:

  • Weekly: Check expiring codes
  • Monthly: Audit code usage patterns
  • Quarterly: Review and update templates
  • Annually: Purge old unused codes

Usage Monitoring:

  • Track codes approaching user limits
  • Monitor data/time quota consumption
  • Identify codes with unusual patterns
  • Review registered users periodically

Troubleshooting

ShareCode Not Working

Possible causes:

  • Code disabled or expired
  • User limit reached
  • Device limit exceeded
  • Data or time quota consumed

Solution:

  1. Check code status in console
  2. Verify expiration date hasn't passed
  3. Check user registrations vs limit
  4. Review quota consumption
  5. Re-enable or extend limits as needed

Cannot Generate ShareCodes

Possible causes:

  • Insufficient permissions (need sharecodes.full)
  • Invalid parameters (quantity, length, format)
  • Rate limit exceeded

Solution:

  1. Verify you have sharecodes.full permission
  2. Check code length is 4-32 characters
  3. Ensure quantity is 1-1,000
  4. Wait 60 seconds if rate limited
  5. Validate all input parameters

Email/SMS Not Delivered

Possible causes:

  • Invalid email/phone format
  • Email/SMS integration not configured
  • Recipient blocked or bounced
  • Rate limits on email/SMS service

Solution:

  1. Verify email format is valid
  2. Check phone number is 10-15 digits
  3. Confirm Email Settings configured
  4. Confirm Twilio Settings configured
  5. Check spam/junk folders for email
  6. Review SendGrid/Twilio logs

Users Cannot Register

Possible causes:

  • Code expired or disabled
  • User limit reached
  • Network configuration issue
  • Captive portal misconfigured

Solution:

  1. Verify code is active and valid
  2. Check user limit hasn't been reached
  3. Test code authentication yourself
  4. Review captive portal configuration
  5. Check network allows guest registration

Bulk Operation Failed

Possible causes:

  • More than 100 codes selected
  • Invalid code IDs
  • Rate limit exceeded
  • Insufficient permissions

Solution:

  1. Reduce selection to max 100 codes
  2. Verify all IDs are valid
  3. Wait 60 seconds and retry
  4. Ensure sharecodes.full permission

FAQ

What's the difference between ShareCodes and Vouchers?

ShareCodes allow multiple users to register using the same code (user limit controls how many). Vouchers are typically single-use codes for individual users. ShareCodes are better for events and group access, while vouchers are better for tracked individual access.

How many users can use one ShareCode?

You control this with the user limit setting. You can allow unlimited users or restrict to a specific number (e.g., 50 users per code).

Do ShareCodes expire automatically?

Yes, if you set an expiration date. Codes auto-delete after the specified number of days. Additionally, codes become unusable when data or time quotas are consumed.

Can I reuse a deleted ShareCode?

Yes, the code itself can be generated again. However, the history and registrations from the previous code are not preserved.

How do data quotas work?

Data quotas track total bytes transferred (uploaded + downloaded). When the limit is reached, the code status changes to "used_data" and users cannot authenticate. Reset patterns (daily, weekly, etc.) allow the quota to refresh.

Can I change a ShareCode after creation?

You can modify properties like limits, expiration, and notes. However, changing the actual code string creates a new code - users would need the new code to authenticate.

How are devices tracked?

Each time a user authenticates with a ShareCode, their device MAC address is recorded. This allows you to see all devices using each code and enforce device limits.

What happens when user limit is reached?

New users cannot register with the ShareCode. Existing registered users can continue using their accounts. You can increase the user limit to allow more registrations.

Can I export ShareCode data?

Yes, use the CSV export format when listing ShareCodes via the API. This exports code details, creation dates, expiration, and status.

How do reset patterns work?

Reset patterns (daily, weekly, monthly, yearly) reset quotas at regular intervals. For example, a daily reset gives users fresh data/time limits each day, perfect for recurring access like retail customer WiFi.