Subscriber
APIs for managing subscriber's and subscriber access.
Adds a new key (subscription) for a subscriber to a venue unit. Accepts subscriber and unit details, service plan, contact preferences, and key information. Returns the created subscriber token, subscription details, and status.
The access token for the network operator admin session.
The unique internal identifier for the unit.
Optional. External venue ID.
Optional. External venue unit ID.
The unique identifier for the service plan.
Optional. External service plan ID.
Optional. External subscriber ID.
The subscriber's email address.
The subscriber's given name.
The subscriber's family name.
The subscriber's phone number in E.164 format.
The subscriber's locale (e.g., en-us).
Whether the subscriber prefers SMS contact.
Whether the subscriber prefers email contact.
Whether this is the primary key for the subscriber.
The user-defined part for the new key (PSK).
Optional. Tag for the key.
Subscription start date/time (UTC, ISO8601).
Subscription end date/time (UTC, ISO8601).
Optional. Invoice date/time (UTC, ISO8601).
POST /preview/networkoperatorconsole/subscribers/addKey HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 774
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"UnitID_internal": "USA.CO.80112.CustomerFIBERDEFAULTPROPERTYGROUP.ENGLEWOOD._V3VENUE.USA.MA.12345.GJTESTVE.SAMPLETOWN3.GUEST.DEFAULT.DEFAULT",
"externalVenueID": "3768-ext-2",
"externalVenueUnitID": "",
"ServicePlanID": "USA.CO.80112.Customer.ENGLEWOOD._V3SERVICEPLAN_.10GBPS",
"externalServicePlanID": "",
"externalSubscriberID": "",
"EmailAddress": "[email protected]",
"GivenName": "Test",
"FamilyName": "User",
"PhoneNumber.E164": "+12345678905",
"locale": "en-us",
"contactpref_sms": true,
"contactpref_email": true,
"primary_key": true,
"UserPartForNewKey": "abcdefgh",
"KeyTag": "MYKEY1",
"StartDateTimeUTC.ISO8601": "2021-11-16T15:35:26.965Z",
"EndDateTimeUTC.ISO8601": "2021-11-23T15:35:26.965Z",
"InvoiceDateTimeUTC.ISO8601": "2022-10-08T12:00Z"
}
Key added successfully. Returns subscriber and subscription details.
{
"Status": "AUP not accepted",
"EmailAddress": "[email protected]",
"SubscriberToken": "TestToken",
"PhoneNumber.E164": "+12345678906",
"locale": "en-us",
"GivenName": "Test",
"FamilyName": "User",
"contactpref_sms": false,
"contactpref_email": false,
"dateAddedUTC": "2021-11-16T20:35:26.965Z",
"Subscription": {
"psk": "abcdefgh.PoroRixe",
"KeyTag": "MYKEY1",
"UnitID_internal": "USA.CO.80112.CustomerFIBERDEFAULTPROPERTYGROUP.ENGLEWOOD._V3VENUE.USA.MA.12345.GJTESTVE.SAMPLETOWN3.GUEST.DEFAULT.DEFAULT",
"purpose": "guest",
"vlan": 1100,
"UnitID": "GUEST",
"UnitBuilding": "DEFAULT",
"UnitFloor": "DEFAULT",
"AddressLine1": "2 Annette Rd",
"AddressLine2": "GUEST",
"City": "SAMPLETOWN4",
"State": "MA",
"Country.ISO3166A3": "USA",
"NASIdentifier": "USA.MA.12345.GJTESTVE.SAMPLETOWN3",
"StartDateTimeUTC.ISO8601": "2021-11-16T15:35:26.965Z",
"EndDateTimeUTC.ISO8601": "2021-11-23T15:35:26.965Z",
"WelcomeEmail_sendNow": true,
"WelcomeEmail_sendTime": "2021-11-16T15:35:26.965Z",
"ServicePlanID": "USA.CO.80112.Customer.ENGLEWOOD._V3SERVICEPLAN_.10GBPS"
}
}
Resets or updates the PSK (pre-shared key) for a subscriber. You may set a custom PSK or use a legacy PSK format.
Note:
If you are attempting to set a CustomPSK, you should only send the
NewKey
value.If you are using a LegacyPSK, you should send the
UserPartForNewKey
and theSubscriberToken
will be appended for the full PSK.
The access token for the network operator admin session.
The unique identifier for the current key to be reset.
The user-defined part for the new key (for legacy PSK; optional if using CustomPSK).
The new custom PSK value (for CustomPSK; optional if using legacy PSK).
POST /preview/networkoperatorconsole/subscribers/resetKey HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 197
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"CurrentKeyID": "FAKEKEYID-1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcd",
"UserPartForNewKey": "abcdefgh2",
"NewKey": "customPSK"
}
Key reset successfully. Returns a message indicating the result.
{
"message": "Updated PSK. "
}
Closes a subscriber account and removes all subscriptions for the given email address. Requires a valid network operator admin access token. To end a specific subscription use /networkoperatorconsole/subscribers/resetSubscriptionEndDate
The access token for the network operator admin session.
The email address of the subscriber to close.
POST /preview/networkoperatorconsole/subscribers/closeSubscriberAccount HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 92
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]"
}
Subscriber account closed successfully. Returns a message indicating the result.
{
"message": "Closed subscriber account. "
}
Lists all keys (subscriptions) and related details for a subscriber, including administrative access, keys in keypools, devices, and logs. Requires a valid network operator admin access token and the subscriber's email address.
The access token for the network operator admin session.
The email address of the subscriber to query.
POST /preview/networkoperatorconsole/subscribers/listSubscriberKeys HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 89
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]"
}
Subscriber keys and details returned successfully.
{
"Status": "In Service",
"EmailAddress": "[email protected]",
"SubscriberToken": "TestToken",
"PhoneNumber.E164": "+12345678907",
"locale": "en-us",
"GivenName": "Test",
"FamilyName": "User",
"externalReferenceID": "",
"contactpref_sms": false,
"contactpref_email": false,
"dateAddedUTC.ISO8601": "2022-01-18T17:29:20.600Z",
"AdministrativeAccess": {
"NetworkSoftwareProviderAdministrator": [],
"PropertyManagementAdministrator": [],
"NetworkOperatorAdministrator": [
"USA.MA.67890.Customer.SAMPLETOWN4"
],
"VenueAdministrator": [
"USA.MA.67890.CustomerOFFICELOCATIONS.SAMPLETOWN4._V3VENUE.USA.MA.67890.CustomerHQ.SAMPLETOWN4"
],
"LeasingAgent": []
},
"KeyCount": 10,
"KeyCountActive": 0,
"DeviceCountOnline": 0,
"DeviceCountOffline": 0,
"KeysInKeyPools": {
"USA.MA.67890.Customer.SAMPLETOWN4._V3SSID.VAULT.global": {
"ssid": "VAULT",
"88e3dd0ab4f74cdf8f3274dfff480695f783ffeea5bc3f36899217c548034f81": {
"dateAddedUTC.ISO8601": "2022-01-21T17:34:44.312Z",
"psk": "nxwyxpcq.BlotCity",
"primary_key": true,
"KeyTag": "151-1-1-569",
"Calling-Station-Id-Whitelist": [],
"NAS-Identifier-Whitelist": [],
"log": [
{
"timestamp": "2022-01-21T17:34:44.664Z",
"Administrator": "BlotCity",
"function_name": "vault_venuemgmtconsole_addSubscriber",
"event": "Adding new policy at ...",
"SourceUA": "PostmanRuntime/7.29.0",
"sourceIP": "203.0.113.42",
"FirewallSourceIP": "203.0.113.42"
}
],
"VenueUnitPolicies": {
"USA.MA.67890.CustomerOFFICELOCATIONS.SAMPLETOWN4._V3VENUE.USA.MA.67890.CustomerHQ.SAMPLETOWN4.151.1.1.admin@example.com.2022-01-21T17:34:44.312Z.2023-01-22T04:59:59.999Z": {
"vlan": 151,
"UnitID_internal": "USA.MA.67890.CustomerOFFICELOCATIONS.SAMPLETOWN4._V3VENUE.USA.MA.67890.CustomerHQ.SAMPLETOWN4.151.1.1",
"UnitID": "151",
"UnitBuilding": "1",
"UnitFloor": "1",
"AddressLine1": "2 Annette Rd",
"AddressLine2": "",
"City": "SAMPLETOWN4",
"State": "MA",
"PostalCode": "67890",
"Country.ISO3166A3": "USA",
"VenueID": "USA.MA.67890.CustomerOFFICELOCATIONS.SAMPLETOWN4._V3VENUE.USA.MA.67890.CustomerHQ.SAMPLETOWN4",
"VenueName": "Customer HQ",
"VenueAddressLine1": "2 Annette Rd",
"VenueAddressLine2": "",
"VenueCity": "SAMPLETOWN4",
"VenueState": "MA",
"VenuePostalCode": "67890",
"VenueCountry.ISO3166A3": "USA",
"dateAddedUTC.ISO8601": "2022-01-21T17:34:44.312Z",
"StartDateTimeUTC.ISO8601": "2022-01-21T17:34:44.312Z",
"EndDateTimeUTC.ISO8601": "2023-01-22T04:59:59.999Z",
"ServicePlan": {
"ServicePlanID": "USA.MA.67890.Customer.SAMPLETOWN4._V3SERVICEPLAN_.1 Gbps",
"ServicePlanName": "1 Gbps",
"DownloadKbps": 1000000,
"UploadKbps": 1000000,
"ConcurrentDevices": 100,
"SessionTimeoutSecondsPerDevice": 86400,
"LifetimeSeconds": 0
}
}
},
"Devices": {}
}
}
},
"AllDevices": {},
"WPA2-Enterprise-SessionCount": 0,
"WPA2-Enterprise-Sessions": {},
"log": [
{
"timestamp": "2022-01-18T17:29:20.781Z",
"Administrator": "NeifBawn",
"function_name": "vault_networkoperatorconsole_enableStaffAccess",
"event": "Adding [email protected] in DomainAdministrators group. ",
"SourceUA": "PostmanRuntime/7.28.4",
"sourceIP": "203.0.113.42",
"FirewallSourceIP": "203.0.113.42"
}
],
"errorProcessing": false
}
Lists session usage data for a specific key associated with a subscriber, including hourly or periodic usage statistics (octet counts, RSSI, device MAC addresses) for each reporting interval. Requires a valid network operator admin access token, the subscriber's email, and the key ID.
The access token for the network operator admin session.
The email address of the subscriber to query.
The unique identifier for the subscriber key.
POST /preview/networkoperatorconsole/subscribers/listSubscriberKeySessions HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 175
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]",
"KeyID": "FAKEKEYID-1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcd"
}
Subscriber key session usage data returned successfully.
{
"UsageData": [
{
"ReportingTimestamp": "2025-06-11T18:00:00.000Z",
"Acct-Input-Octets": 0,
"Acct-Output-Octets": 0,
"Acct-Total-Octets": 0,
"rssi": 0,
"Calling-Station-Id": []
},
{
"ReportingTimestamp": "2025-06-11T19:00:00.000Z",
"Acct-Input-Octets": 0,
"Acct-Output-Octets": 0,
"Acct-Total-Octets": 0,
"rssi": 0,
"Calling-Station-Id": []
}
],
"errorProcessing": false
}
Lists all payment records for a subscriber, including invoice, payment, plan, venue, and financial details. Requires a valid network operator admin access token and the subscriber's email address.
The access token for the network operator admin session.
The email address of the subscriber to query.
POST /preview/networkoperatorconsole/subscribers/listPayments HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 88
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]"
}
Subscriber payment records returned successfully.
{
"PaymentCount": 23,
"NonZeroPaymentCount": 0,
"Payments": [
{
"dateAddedUTC.ISO8601": "2024-06-25T15:04:32.227Z",
"InvoiceDateTimeUTC.ISO8601": "2024-06-25T15:03:02.071Z",
"PaymentSuccessDateTimeUTC.ISO8601": "2024-06-25T15:04:32.227Z",
"GivenName": "*",
"FamilyName": "AnyPlace Inc",
"SubscriberToken": "BijlesCheveu",
"externalSubscriberID": "2502900-14087",
"externalSubscriptionID": "",
"StripeCustomerID": "cus_SAMPLE1234567890",
"StripePaymentIntentId": "",
"StripeClientSecret": "",
"EmailAddress": "[email protected]",
"PhoneNumber.E164": "+12345678908",
"ServicePlanID": "USA.VA.22102.Customer.City._V3SERVICEPLAN_.1GIGX1GIG",
"ServicePlanName": "1GIG x 1GIG",
"ServicePlanDescription": "1 Gbps billed monthly. Blazing fast internet speed. Perfect for 10+ devices.",
"externalServicePlanID": "1x1 Gbps (Monthly)",
"VenuePriceAdjustment": -10000,
"VenueUnitPriceAdjustment": -2500,
"BillingCycleHours": 730.5,
"UploadKbps": 1000000,
"DownloadKbps": 1000000,
"Currency": "USD",
"CurrencySymbol": "$",
"ConcurrentDevices": 100,
"BillingCyclePrice.USD": 0,
"ListBillingCyclePrice.USD": 12500,
"NetBillingCyclePrice.USD": 0,
"UnitID_internal": "USA.VA.22102.CustomerMANAGEDPROPERTIES.City._V3VENUE.USA.NY.10005.Site.NEWYORK.18H-TEMP-937.1.18",
"externalVenueUnitID": "",
"externalVenueID": "",
"VenueID": "USA.VA.22102.CustomerMANAGEDPROPERTIES.City._V3VENUE.USA.NY.10005.Site.NEWYORK",
"VenueName": "10 Hanover Square",
"AddressLine1": "10 Hanover Square",
"AddressLine2": "#18H",
"City": "New York",
"State": "NY",
"Country.ISO3166A3": "USA",
"PostalCode": "10005",
"AmountProcessed.USD": 0,
"AmountReceived.USD": 0,
"AmountRefunded.USD": 0,
"StripeReceiptURL": "",
"StripeRefundReceiptURL": "",
"StripePaymentChargeId": "",
"CancellationSource": "",
"CancellationReasons": [],
"BillingCyclePriceAdjustment": 0,
"BillingCycleAdjustmentReasons": []
},
{
"dateAddedUTC.ISO8601": "2024-07-02T18:21:45.822Z",
"InvoiceDateTimeUTC.ISO8601": "2024-07-02T18:19:20.901Z",
"PaymentSuccessDateTimeUTC.ISO8601": "2024-07-02T18:21:45.822Z",
"GivenName": "*",
"FamilyName": "AnyPlace Inc",
"SubscriberToken": "BijlesCheveu",
"externalSubscriberID": "2502900-14087",
"externalSubscriptionID": "",
"StripeCustomerID": "cus_SAMPLE1234567890",
"StripePaymentIntentId": "",
"StripeClientSecret": "",
"EmailAddress": "[email protected]",
"PhoneNumber.E164": "+12345678908",
"ServicePlanID": "USA.VA.22102.Customer.City._V3SERVICEPLAN_.1GIGX1GIG",
"ServicePlanName": "1GIG x 1GIG",
"ServicePlanDescription": "1 Gbps billed monthly. Blazing fast internet speed. Perfect for 10+ devices.",
"externalServicePlanID": "1x1 Gbps (Monthly)",
"VenuePriceAdjustment": -10000,
"VenueUnitPriceAdjustment": -2500,
"BillingCycleHours": 730.5,
"UploadKbps": 1000000,
"DownloadKbps": 1000000,
"Currency": "USD",
"CurrencySymbol": "$",
"ConcurrentDevices": 100,
"BillingCyclePrice.USD": 0,
"ListBillingCyclePrice.USD": 12500,
"NetBillingCyclePrice.USD": 0,
"UnitID_internal": "USA.VA.22102.CustomerMANAGEDPROPERTIES.City._V3VENUE.USA.NY.10005.95WALL.NEWYORK.2201.1.2",
"externalVenueUnitID": "",
"externalVenueID": "",
"VenueID": "USA.VA.22102.CustomerMANAGEDPROPERTIES.City._V3VENUE.USA.NY.10005.95WALL.NEWYORK",
"VenueName": "95 Wall",
"AddressLine1": "95 Wall St",
"AddressLine2": "Apt 2201",
"City": "New York",
"State": "NY",
"Country.ISO3166A3": "USA",
"PostalCode": "10005",
"AmountProcessed.USD": 0,
"AmountReceived.USD": 0,
"AmountRefunded.USD": 0,
"StripeReceiptURL": "",
"StripeRefundReceiptURL": "",
"StripePaymentChargeId": "",
"CancellationSource": "",
"CancellationReasons": [],
"BillingCyclePriceAdjustment": 0,
"BillingCycleAdjustmentReasons": []
}
],
"BillingCycleHours": 16801.5,
"DownloadKbps": 23000000,
"UploadKbps": 23000000,
"PricePerDownloadGbps.USD": 1,
"VenuePriceAdjustment": -230000,
"VenueUnitPriceAdjustment": -57500,
"MinInvoiceDateTimeUTC.ISO8601": "2023-06-18T19:20:36.485Z",
"ListBillingCyclePrice.USD": 287500,
"NetBillingCyclePrice.USD": 0,
"errorProcessing": false
}
Initiates a refund for a subscriber payment. Requires a valid network operator admin access token, subscriber email, refund amount, currency, reason, Stripe client secret, and venue ID.
The access token for the network operator admin session.
The email address of the subscriber to refund.
The currency for the refund (e.g., USD).
The reason for the refund.
The amount to refund (in minor units, e.g., cents).
The Stripe client secret for the payment intent.
The venue ID associated with the payment.
POST /preview/networkoperatorconsole/subscribers/refundPayment HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 324
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]",
"Currency": "USD",
"Reason": "TestSSID",
"RefundAmount": 500,
"StripeClientSecret": "pi_SAMPLE1234567890123_secret_SampleSecretKey123456789",
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.24680.SAMPLERETAIL.SAMPLECITY2"
}
Refund initiated successfully. Returns a message and errorProcessing status.
{
"message": "Initiated refund re_3Quy79CPkuNba5021bYdO59O for APIRequestBody.Currency 500",
"errorProcessing": false
}
Retrieves the activity log for a subscriber, including actions performed, timestamps, administrator details, and event messages. Requires a valid network operator admin access token and the subscriber's email address.
The access token for the network operator admin session.
The email address of the subscriber whose log is being requested.
POST /preview/networkoperatorconsole/subscribers/listSubscriberLog HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 89
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]"
}
Subscriber log returned successfully.
{
"log": [
{
"timestamp": "2025-05-22T15:42:42.926Z",
"function_name": "vault_subscriberconsole_acceptTandC",
"event": {
"message": "Subscriber accepted TandC. "
},
"Administrator": "Admin User ([email protected])",
"SourceIP": "203.0.113.42",
"SourceLocale": "en-us",
"AdministratorOS": "",
"AdministratorBrowser": "PostmanRuntime/7.44.0"
},
{
"timestamp": "2025-05-22T15:42:29.048Z",
"function_name": "vault_subscriberconsole_acceptTandC",
"event": {
"message": "Current OTP expired, sending new OTP. "
},
"Administrator": "Admin User ([email protected])",
"SourceIP": "203.0.113.42",
"SourceLocale": "en-us",
"AdministratorOS": "",
"AdministratorBrowser": "PostmanRuntime/7.44.0"
},
{
"timestamp": "2025-01-22T16:04:52.881Z",
"function_name": "vault_shoppingcart_stripepayment_addSubscriber",
"event": {
"message": "Added subscription at ... for KirEat.********* (1102-TEMP-3996-1-1-582) starting 2025-01-22T16:04:52.326Z"
},
"SourceIP": "203.0.113.42",
"SourceLocale": "en-us",
"AdministratorOS": "Mac OS 10.15.7",
"AdministratorBrowser": "Safari 18.2",
"UnitID_internal": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.54321.TESTUNIT.SAMPLETOWN2.1102-TEMP-3996.1.1",
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.54321.TESTUNIT.SAMPLETOWN2"
},
{
"timestamp": "2025-01-22T16:03:24.449Z",
"function_name": "vault_shoppingcart",
"event": {
"message": "Updating StripeCustomerID=cus_SAMPLE1234567890. "
},
"Administrator": "Admin User ([email protected])",
"SourceIP": "203.0.113.42",
"SourceLocale": "en-us",
"AdministratorOS": "Mac OS 10.15.7",
"AdministratorBrowser": "Safari 18.2"
},
{
"timestamp": "2025-01-22T16:03:21.595Z",
"function_name": "vault_shoppingcart",
"event": {
"message": "Subscriber added. "
},
"SourceIP": "203.0.113.42",
"SourceLocale": "en-us",
"AdministratorOS": "Mac OS 10.15.7",
"AdministratorBrowser": "Safari 18.2"
}
],
"errorProcessing": false
}
Updates the start date for a subscriber's existing subscription at a venue unit. Requires a valid network operator admin access token, subscriber token, unit and venue identifiers, and the new start date in ISO8601 format.
The access token for the network operator admin session.
The email address of the subscriber.
The unique token for the subscriber.
The unique internal identifier for the unit.
The unique identifier for the venue.
The current start date/time of the subscription (UTC, ISO8601).
The new start date/time for the subscription (UTC, ISO8601).
The user's timezone offset in minutes (e.g., 360 for UTC+6).
POST /preview/networkoperatorconsole/subscribers/resetSubscriptionStartDate HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 452
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]",
"SubscriberToken": "Token",
"UnitID_internal": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3.108.2.1",
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3",
"StartDateTimeUTC.ISO8601": "2025-06-26T06:00Z",
"NewStartDateTimeUTC.ISO8601": "2025-06-30T06:00Z",
"UserTimeZone": 360
}
Subscription start date updated successfully.
{
"UnitID_internal": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3.108.2.1",
"SubscriberToken": "Token",
"NewStartDateTimeUTC.ISO8601": "2025-06-30T04:00:00.000Z",
"errorProcessing": false
}
Updates the end date for a subscriber's existing subscription at a venue unit. Requires a valid network operator admin access token, subscriber token, unit and venue identifiers, and the new end date in ISO8601 format.
The access token for the network operator admin session.
The email address of the subscriber.
The unique token for the subscriber.
The unique internal identifier for the unit.
The unique identifier for the venue.
The current start date/time of the subscription (UTC, ISO8601).
The new end date/time for the subscription (UTC, ISO8601).
The user's timezone offset in minutes (e.g., 360 for UTC+6).
POST /preview/networkoperatorconsole/subscribers/resetSubscriptionEndDate HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 457
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]",
"SubscriberToken": "Token",
"UnitID_internal": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3.108.2.1",
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3",
"StartDateTimeUTC.ISO8601": "2025-06-30T06:00:00.000Z",
"NewEndDateTimeUTC.ISO8601": "2026-06-30T06:00Z",
"UserTimeZone": 360
}
Subscription end date updated successfully.
{
"message": "Subscription end date updated to 2026-07-01T03:59:59.999Z",
"EndDateTimeUTC.ISO8601": "2026-07-01T03:59:59.999Z",
"errorProcessing": false
}
Changes the service plan for a subscriber's existing subscription at a venue unit. Requires a valid network operator admin access token, subscriber token, unit and venue identifiers, and the new service plan ID.
The access token for the network operator admin session.
The email address of the subscriber.
The unique token for the subscriber.
The unique internal identifier for the unit.
The unique identifier for the venue.
The current start date/time of the subscription (UTC, ISO8601).
The unique identifier for the new service plan.
The user's timezone offset in minutes (e.g., 360 for UTC+6).
POST /preview/networkoperatorconsole/subscribers/modifyServicePlan HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 505
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]",
"SubscriberToken": "Token",
"UnitID_internal": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3.108.2.1",
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3",
"CurrentStartDateTimeUTC.ISO8601": "2025-06-30T06:00:00.000Z",
"NewServicePlanID": "USA.MA.12345.ROAMINIQDEMO.SAMPLETOWN3._V3SERVICEPLAN_.500MBPSRETAIL",
"UserTimeZone": 360
}
Service plan updated successfully and payment failed status.
{
"paymentFailed": true,
"errorProcessing": false
}
Updates the price adjustment for a subscriber's existing subscription at a venue unit. Requires a valid network operator admin access token, venue ID, and the new price adjustment value. Optionally accepts a new end date, Stripe client secret, and setup intent ID.
The access token for the network operator admin session.
The unique identifier for the venue.
The new price adjustment for the venue unit (in minor units, e.g., cents).
(Optional) The new end date/time for the subscription (UTC, ISO8601).
(Optional) The Stripe client secret for the payment intent.
(Optional) The Stripe setup intent ID.
POST /preview/networkoperatorconsole/subscribers/modifySubscriptionPrice HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 333
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3",
"NewVenueUnitPriceAdjustment": -500,
"NewEndDateTimeUTC.ISO8601": "2026-06-30T06:00Z",
"StripeClientSecret": "seti_SAMPLE123456789_secret_SampleSecretKey987654321",
"SetupIntentId": ""
}
Subscription price adjustment updated successfully.
{
"message": "Updated unit-level price adjustment to -5. ",
"errorProcessing": false
}
Applies a one-time price adjustment (credit or charge) to the next billing cycle for a subscriber's active subscription. Requires a valid network operator admin access token, the adjustment amount (in minor units, e.g., cents), a reason, and the Stripe client secret.
The access token for the network operator admin session.
The one-time price adjustment to apply (in minor units, e.g., cents; negative for credit).
The reason for the adjustment.
The Stripe client secret for the payment intent.
POST /preview/networkoperatorconsole/subscribers/applyOneTimeCredit HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 183
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"NewBillingCyclePriceAdjustment": 200,
"Reason": "test",
"StripeClientSecret": "seti_SAMPLE123456789_secret_SampleSecretKey654321987"
}
One-time credit applied successfully. Returns a message and errorProcessing status.
{
"message": "Applying one-time adjustment of -$2.00 to next bill due on Jul 7, 2025",
"errorProcessing": false
}
Migrates a subscriber's key (subscription) to a new venue unit. Requires a valid network operator admin access token, the new unit ID, venue ID, and the Stripe client secret.
If the subscription is linked to Stripe, StripeClientSecret is required.
The access token for the network operator admin session.
The unique internal identifier for the new venue unit.
The unique identifier for the venue.
(Required if the subscription is linked to Stripe) The Stripe client secret for the payment intent.
POST /preview/networkoperatorconsole/subscribers/modifyVenueUnit HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 371
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"NewUnitID_internal": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.24680.SAMPLERETAIL.SAMPLECITY2.13104.Building-13.Floor-1",
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.24680.SAMPLERETAIL.SAMPLECITY2",
"StripeClientSecret": "seti_SAMPLE123456789_secret_SampleSecretKey321987654"
}
Venue unit migrated successfully. Returns a message and errorProcessing status.
{
"message": "Migrating key for Token, ssid: RoamingIQ Demo from USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.24680.SAMPLERETAIL.SAMPLECITY2.13201.Building-13.Floor-2 to USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.24680.SAMPLERETAIL.SAMPLECITY2.13104.Building-13.Floor-1",
"errorProcessing": false
}
Resends the Terms & Conditions acceptance e-mail to the subscriber's email address for an active subscription at a venue. Requires a valid network operator admin access token, the subscriber's email, and the venue ID.
The access token for the network operator admin session.
The email address of the subscriber.
The unique identifier for the venue.
POST /preview/networkoperatorconsole/subscribers/resendCodeforTandC HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 194
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"EmailAddress": "[email protected]",
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.24680.SAMPLERETAIL.SAMPLECITY2"
}
Code resent successfully. Returns errorProcessing status.
{
"errorProcessing": false
}
Updates allowed Personally Identifiable Information (PII) fields for a subscriber. Only the following fields may be updated: GivenName, FamilyName, EmailAddress, PhoneNumber.E164, locale, contactpref_sms, contactpref_email. Requires a valid network operator admin access token and the subscriber's token.
The access token for the network operator admin session.
The unique token for the subscriber whose PII is being updated.
The subscriber's given name.
The subscriber's family name.
The subscriber's email address.
The subscriber's phone number in E.164 format.
The subscriber's locale (e.g., en-us).
Whether the subscriber prefers SMS contact.
Whether the subscriber prefers email contact.
(Optional) The unique identifier for the venue.
POST /preview/networkoperatorconsole/subscribers/updateSubscriberPIIs HTTP/1.1
Host: api.wifikey.io
Content-Type: application/json
Accept: */*
Content-Length: 350
{
"AccessToken": "{{NetworkOperatorAdmin-AccessToken}}",
"SubscriberToken": "Token",
"GivenName": "Tester",
"FamilyName": "Nesper",
"EmailAddress": "[email protected]",
"PhoneNumber.E164": "",
"locale": "en-us",
"contactpref_sms": false,
"contactpref_email": true,
"VenueID": "USA.SAMPLE.12345.SAMPLEPROPERTY.SAMPLECITY._V3VENUE.USA.MA.12345.SAMPLEHOTEL.SAMPLETOWN3"
}
Subscriber PII updated successfully. Returns a message and errorProcessing status.
{
"message": "Updating GivenName=Tester. PII data updated. ",
"errorProcessing": false
}
Was this helpful?