Integrating the SDK

The SDKs provide a few basic methods that ultimately allow provisioning the user device with a WiFi profile. There are two main steps to provision a WiFi profile using the SDK:

Create API Key and Secret

To authenticate the SDK and connect it with your Cloud4Wi account, you need to generate an API key and API secret.
In the Cloud4Wi classic dashboard, go to Developers and select the APIs tab. In the API V3 section click the button Add. The Add new service dialog appears.
Enter a Service name, such as the name of your app.
For Role select Public App. In the Scopes section, check Read and Write next to Organization Settings and Customers.
Once you click Save, the API credentials are generated. In the main table, click the
icon. A modal appears with your API Key and API Secret.

Initializing a User

A User must be created on the Cloud4Wi systems before creating and installing a WiFi Profile.

User properties

Users can be initialized with attributes and identifiers that allow the reconciliation of the user data with external systems, including CRMs, CDPs, and marketing automation tools. This includes email address, phone number, or any external identifiers known to the mobile app (check the Customer object for iOS and Android for the full list of attributes).
Cloud4Wi suggests passing at least a recognizible identifier to allow an easier reconciliation of the User records in Cloud4Wi with the related records in other systems, such as an external id or email address.
The user can be initialized by passing a specific username and password generated by the mobile app. If not provided in the initialization, Cloud4Wi generates random network credentials associated with the user, which will then be used to generate either Passpoint or WPA2 Enterprise Wireless Profiles.


Cloud4Wi allows configuring specific data processing rules in the account configuration that process each individual user's data based on the consent fields set on its record. Coud4Wi allows to create any custom consent fields from the dashboard, but it comes with 3 pre-configured consents:
  • Privacy Policy
  • Terms of Service
  • Marketing
The Privacy Policy (termsOfUse) and Terms of Service (privacy) consents are mandatory to be set to true whenever a customer is added via APIs or via the mobile SDKs.
The Marketing consent is an optional, pre-defined field that can be set to record consent to receive promotional marketing communications. The same purpose can be achieved using custom fields if necessary.
To retrieve the custom consents, if needed, you can use the dedicated methods (getListOfPolicies)
The SDK method to initialize the user also requires setting the profiling parameter that determines whether the customer could be "profiled' or not. The Profiling processing activity processes and stores the customer visit history and computes personalized behavioral attributes.

When to initialize the user

The user can be initialized at any time by the app, for example contextually with the app sign-up process (if any), or right before triggering the WiFi Profile installation.



Install the WiFi Profile

WiFi Profiles are configuration files, specific to each operative system, that allow a device to connect and authenticate on a WiFi network. The method to install the WiFi Profile takes as input the network credentials generated in the previous step.
When the method to install the WiFi Profile is invoked, the Operative System prompts an alert to the user to ask for permission/confirmation (see user experience).
Cloud4Wi SDK provides two types of authentication methods:
  • WPA2 Enterprise
  • Passpoint
Read the Overview to learn more about the differences between WPA2 Enterprise and Passpoint.


The support for Passpoint in Android is planned for August 2022