Microsoft Fabric
Learn how configuring Microsoft Fabric enables data sync for personalized engagement and growth.
Overview
Configuring Microsoft Fabric with CleverTap enables seamless data import, ensuring synchronization and access to relevant information for analysis, personalized engagement, and data-driven growth.
Private BetaMicrosoft Fabric integration is currently released in Private Beta and is available as part of CleverTap's Data Warehouse support. Contact your Customer Success Manager for access.
Quick Start Guide for Existing Users
Expand for quick setup if you have previously configured a Microsoft Fabric workspace and are familiar with the CleverTap dashboard. If you are setting up Microsoft Fabric for the first time, skip to Prerequisites for Integration below.
Prerequisites
Before you begin, ensure you have the following details:
- Connection Nickname
- Host (SQL Connection String Endpoint)
- Port (default:
1433) - Client ID
- Tenant ID
- Client Secret
- Database
- Schema (optional): If not specified, the
dboschema is used by default.
Configure Microsoft Fabric Credentials in CleverTap
To set up the Microsoft Fabric credentials in CleverTap, perform the following steps:
- Go to CleverTap Dashboard > Settings > Partners > Microsoft Fabric.
- Enter the following details: Connection Nickname, Host, Port, Client ID, Tenant ID, Client Secret, Database, and Schema.
- Click Test Connection and then Save.
After setting up the configuration, you can import data from Microsoft Fabric into CleverTap.
Prerequisites for Integration
If you are setting up Microsoft Fabric for the first time, ensure you have the following before proceeding with the CleverTap configuration:
- CleverTap Access to configure Microsoft Fabric.
- Microsoft Fabric Workspace Details:
- An active Azure account with access to the Microsoft Fabric portal.
- A provisioned Fabric Warehouse or Lakehouse SQL analytics endpoint.
- The workspace must be publicly accessible or have appropriate network configurations to allow CleverTap to connect.
- Microsoft Entra ID (Azure AD) Credentials:
- Use a dedicated Microsoft Entra app registration for CleverTap, grant least privilege, and set an expiry/rotation policy for the client secret.
- Configure the Microsoft Entra app registration as a service principal.
- The service principal, associated with the Client ID, must have at a minimum:
- Membership in a Fabric Workspace with a Contributor (or higher) role
CONNECTprivilege on the target databaseSELECTpermission on tables you plan to import.
- Authentication Method: Client ID, Tenant ID, and Client Secret.
IP WhitelistingEnsure CleverTap IP addresses are added to your Redshift cluster's security group inbound rules. To access the list of IPs to whitelist, refer to CleverTap IP Ranges for Import.
Set Up Microsoft Fabric for Integration
You can set up Microsoft Fabric using one of the following ways:
- For new users who need to provision Fabric resources from scratch: Create New Microsoft Fabric Setup
- For users who already have configured resources in Microsoft Fabric: Use Existing Microsoft Fabric Credentials.
Create New Microsoft Fabric Setup
If you do not already have a Fabric Warehouse or Lakehouse, Microsoft Entra App Registration, and Schema configured, you must create them before proceeding. These components are required to ensure CleverTap can securely access, store, and process your data.
To create each resource, perform the following steps:
- Create Warehouse
- Register App in Microsoft Entra ID
- Create Client Secret
- Create Schema (Optional)
- Configure Permissions
Create Warehouse
To store data for CleverTap integration, you first need to create a Fabric Warehouse. CleverTap reads data through the Warehouse's SQL analytics endpoint. Follow these steps:
PrerequisiteCreating a Warehouse requires access to a Microsoft Fabric workspace with a Fabric capacity (F64 or higher) or a Power BI Premium capacity (P1 or higher). Contact your Fabric administrator if you do not have this access.
- Log in to the Microsoft Fabric portal.
- Navigate to your target Workspace from the left sidebar.
- Click + New Item and select Warehouse under the Data Warehouse section.
- Enter a descriptive Name (for example,
clevertap_warehouse). This name will be pasted in the Database field on the CleverTap dashboard. - Click Create.
To obtain the Host value:
- In your Workspace, locate the Warehouse you just created.
- Click the three dots (…) next to the Warehouse name and select Copy SQL connection string.
- The connection string contains the Host value in the following format:
abc1def2ghij3klmn.datawarehouse.fabric.microsoft.com,1433
Copy only the server name portion (without the port number or protocol) as shown below:
abc1def2ghij3klmn.datawarehouse.fabric.microsoft.com
You will need this when configuring CleverTap.
NoteYou can also use a Lakehouse SQL analytics endpoint instead of a Warehouse. Every Lakehouse in Fabric automatically provisions a SQL analytics endpoint. To find its connection string, select the Lakehouse SQL analytics endpoint item in your workspace and navigate to Settings > SQL endpoint.
Register App in Microsoft Entra ID
To manage access securely, create a dedicated app registration in Microsoft Entra ID (formerly Azure Active Directory). This provides the Client ID and Tenant ID that CleverTap uses to authenticate via service principal.
To register an app, perform the following steps:
- Sign in to the Azure portal.
- Search for and select Microsoft Entra ID from the top search bar.
- In the left menu, select App registrations.
- Click + New registration at the top of the page.
- Configure the registration:
- Name: Enter a descriptive name (for example,
CleverTap Fabric Integration). - Supported account types: Select Accounts in this organizational directory only (Single tenant).
- Redirect URI: Leave blank (not required for this integration).
- Name: Enter a descriptive name (for example,
- Click Register.
- On the app's Overview page, copy and securely store the following values:
- Application (client) ID: The Client ID you will enter in CleverTap.
- Directory (tenant) ID: The Tenant ID you will enter in CleverTap.
Create Client Secret
After registering the app, generate a client secret that CleverTap will use to authenticate. To generate a client secret, perform the following steps:
- In the Azure portal, navigate to your app registration (Microsoft Entra ID > App registrations > your app).
- In the left menu, select Certificates & secrets.
- Under the Client secrets tab, click + New client secret.
- Enter a Description (for example,
CleverTap Integration) to identify the secret. - Set the Expires duration. For production integrations, a minimum of 6 months is recommended.
- Click Add.
- Copy the Value of the client secret immediately and store it securely. The secret value is displayed only once.
Secret ExpirationClient secrets expire based on the duration you set during creation. When a secret expires, the CleverTap connection will fail and imports will stop. Monitor secret expiration dates and regenerate secrets before they expire.
Create Schema (Optional)
Microsoft Fabric Warehouses include a default dbo schema. If you want to organize CleverTap-related tables under a separate schema, you can create one. To do so, perform the following steps:
- Open your Warehouse in the Microsoft Fabric portal.
- Click New SQL query from the top toolbar.
- Run the following SQL command to create a schema:
-- Create a new schema for CleverTap data
CREATE SCHEMA IF NOT EXISTS clevertap_schema;
-- Verify schema creation
SELECT name FROM sys.schemas ORDER BY name;
Default SchemaIf you do not create a custom schema, CleverTap will read from the default
dboschema. Specify the schema name during the CleverTap connection setup.
Configure Permissions
To ensure the service principal (app registration) can access your Fabric data, you must grant the required permissions. This step is essential for CleverTap to read data from your Microsoft Fabric workspace.
Step 1: Enable Service Principals in Fabric Admin Portal
- Sign in to the Fabric Admin portal.
- Navigate to Tenant settings.
- Locate Service principals can use Fabric APIs and enable it for the security group containing your service principal.
- Ensure Users can access data stored in OneLake with apps external to Fabric is also enabled under OneLake settings.
Step 2: Add Service Principal to Workspace
- In the Microsoft Fabric portal, navigate to your target Workspace.
- Click Manage access.
- Click + Add people or groups.
- Search for your app registration name (for example,
CleverTap Fabric Integration). - Assign the Contributor role (minimum required for data read access).
- Click Add.
Step 3: Grant Database-Level Permissions (if required)
If granular table-level permissions are needed, run the following SQL commands in your Warehouse:
-- Grant CONNECT access to the service principal
GRANT CONNECT TO [<service_principal_name>];
-- Grant SELECT access on a specific schema
GRANT SELECT ON SCHEMA::dbo TO [<service_principal_name>];
Granular Table PermissionsIf you prefer to grant access to specific tables rather than the entire schema, use the following command instead:
GRANT SELECT ON [dbo].[table_name] TO [<service_principal_name>];Repeat for each table that CleverTap needs to access.
Use Existing Microsoft Fabric Credentials
If you already have Microsoft Fabric set up, perform the following steps to find each detail in the Azure portal and Fabric portal.
- Obtain the Host (SQL Connection String Endpoint)
- Find Existing Port
- Find Client ID and Tenant ID
- Create or Retrieve a Client Secret
- Find Existing Database Name
- Find Existing Schema
- Verify Existing Permissions
Obtain the Host (SQL Connection String Endpoint)
The Host is the SQL connection string endpoint that CleverTap uses to connect to your Microsoft Fabric instance. To locate the endpoint, perform the following steps:
- In the Microsoft Fabric portal, navigate to your Workspace.
- Locate the target Warehouse or Lakehouse SQL analytics endpoint in the item list.
- Click the three dots (…) next to the item name and select Copy SQL connection string.
- The copied value follows this format:
abc1def2ghij3klmn.datawarehouse.fabric.microsoft.com,1433
The Host is the server name that appears before the comma and port number. For example:
abc1def2ghij3klmn.datawarehouse.fabric.microsoft.com
Alternatively, open your Warehouse or Lakehouse in the Fabric portal, click the Settings gear icon, and navigate to the SQL endpoint page to copy the connection string.
ImportantAlways use the Microsoft Fabric SQL connection string endpoint. Do not include the protocol (
https://) or the port number in the Host value, as this may cause connection failures.
Find Existing Port
The Port is the TCP port number that your Microsoft Fabric workspace listens on for incoming connections:
- The port is appended to the SQL connection string, following the server name after a comma.
- Alternatively, the port is visible in the SQL endpoint page under your Warehouse or Lakehouse settings.
The default port for Microsoft Fabric is 1433. If you did not modify the port, use 1433.
Default PortIf no port is explicitly configured, CleverTap defaults to port
1433for Microsoft Fabric connections.
Find Client ID and Tenant ID
The Client ID and Tenant ID are obtained from your Microsoft Entra ID app registration. To find these values, perform the following steps:
- Sign in to the Azure portal.
- Navigate to Microsoft Entra ID > App registrations.
- Select your app registration from the list (for example,
CleverTap Fabric Integration). - On the Overview page, locate:
- Application (client) ID — this is the Client ID.
- Directory (tenant) ID — this is the Tenant ID.
- Copy both values.
Create or Retrieve a Client Secret
To authenticate CleverTap with Microsoft Fabric, you need an active client secret for your app registration:
- In the Azure portal, navigate to Microsoft Entra ID > App registrations > your app.
- Select Certificates & secrets from the left menu.
- Under Client secrets, check if an active (non-expired) secret exists.
- If you need a new secret, click + New client secret, enter a description and expiry, then click Add.
- Copy the secret Value immediately and store it securely. The value is displayed only once.
Secret RotationIf your organization requires periodic credential rotation, generate a new client secret before the current one expires. Update the CleverTap connection with the new secret to avoid import interruptions. For detailed guidance, refer to Microsoft Entra documentation on App Registration Secrets.
Find Existing Database Name
The database name identifies the specific Warehouse or Lakehouse SQL analytics endpoint within your Fabric workspace:
- In the Microsoft Fabric portal, navigate to your Workspace.
- Look for items of type Warehouse or SQL analytics endpoint in the item list.
- The item name is your Database value.
Alternatively, when you copy the SQL connection string from Settings > SQL endpoint, the Initial Catalog parameter contains the database name.
Find Existing Schema
To find existing schemas in your Fabric Warehouse, perform the following steps:
- Open your Warehouse in the Microsoft Fabric portal.
- In the Object Explorer panel, expand the database node to view schemas.
- The default schema is
dbo. Any custom schemas will also be listed.
Alternatively, run the following SQL query:
-- List all schemas in the current database
SELECT name FROM sys.schemas ORDER BY name;
Default SchemaBy default, every Fabric Warehouse includes a
dboschema. If you have not created a custom schema, you can usedbo.
Verify Existing Permissions
The service principal associated with your app registration must have the required permissions to authenticate with your Fabric workspace:
- If you have created a dedicated app registration for CleverTap (as described in Register App in Microsoft Entra ID), confirm it has at minimum Contributor role access to the Workspace via Manage access.
- Verify database-level permissions by running:
-- Check current permissions for the service principal
SELECT dp.name, dp.type_desc, perm.permission_name, perm.state_desc
FROM sys.database_permissions perm
JOIN sys.database_principals dp ON perm.grantee_principal_id = dp.principal_id
WHERE dp.name = '<service_principal_name>';- If the required permissions (
CONNECTandSELECT) are not present, refer to Configure Permissions above to grant them.
Set Up CleverTap Dashboard for Integration
To connect Microsoft Fabric with CleverTap, go to Settings > Partners > Microsoft Fabric from the CleverTap dashboard, select Add Database, and configure the following fields.
Connection Details
Enter the Connection Details in the integration setup form. To create or retrieve details from your Microsoft Fabric account, refer to Create New Microsoft Fabric Setup or Use Existing Microsoft Fabric Credentials.
Connection Details
| Field | Description |
|---|---|
| Connection Nickname | A unique, user-defined name to identify this Microsoft Fabric connection within CleverTap. This name is used when setting up imports. For example, Fabric Production - US East. |
| Host | The SQL connection string endpoint of your Fabric Warehouse or Lakehouse, excluding the port number and protocol. It typically follows the format: abc1def2ghij3klmn.datawarehouse.fabric.microsoft.com. |
| Port | The TCP port number your Microsoft Fabric workspace uses for connections. Default: 1433. If left blank, CleverTap uses 1433 automatically. |
| Client ID | The Application (Client) ID from your Microsoft Entra app registration that CleverTap uses to authenticate via service principal. |
| Tenant ID | The Directory (Tenant) ID of your Microsoft Entra ID tenant. |
| Client Secret | The client secret value generated for your app registration. Used alongside the Client ID to authenticate CleverTap to your Fabric workspace. |
| Database | The name of the Fabric Warehouse or Lakehouse SQL analytics endpoint containing the data you want to integrate with CleverTap. |
| Schema | The specific schema within the database that contains the tables for import. Use dbo if no custom schema has been created. |
Test and Save Connection
After entering all the details, click Test Connection or Save:
- Test Connection: Verifies if the database credentials and network setup are correct. A successful test confirms the connection, while a failure prompts you to review your settings.
- Save: Saves the connection details, enabling you to proceed with the data import process.
Troubleshooting
If the Test Connection fails, use the following table to identify and resolve common issues:
Symptom | Likely Cause | Resolution |
|---|---|---|
Connection timeout | The network or firewall is blocking the connection |
|
Authentication failure | Invalid Client ID, Tenant ID, or expired client secret |
|
Database not found | Incorrect Database name or Warehouse is paused |
|
Schema or table not found | Incorrect schema name or missing privileges |
|
Service principal not authorized | Service principal not added to Fabric Workspace or Fabric APIs not enabled |
|
SELECT permission denied | Missing SELECT permission on tables or schema |
|
FAQs
This section addresses common questions about managing Microsoft Fabric connections and imports in CleverTap.
What is the default port for Microsoft Fabric?
The default port for Microsoft Fabric is 1433. This is the standard TDS (Tabular Data Stream) port. If you did not change the port during setup, use this value. CleverTap also defaults to 1433 if no port is specified.
How do I whitelist CleverTap IPs for my Microsoft Fabric workspace?
Add the CleverTap IP addresses to your network and Fabric workspace settings to allow inbound traffic on port 1433 (or your custom port). For the list of IPs, refer to CleverTap IP Ranges.
Can I use a Lakehouse instead of a Warehouse?
Yes. Every Lakehouse in Microsoft Fabric automatically provisions a SQL analytics endpoint. Use the SQL analytics endpoint connection string as the Host and the Lakehouse name as the Database value. The SQL analytics endpoint provides read-only T-SQL access to your Lakehouse Delta tables.
How can I find my schema if I have not created one?
Every Fabric Warehouse includes a default dbo schema. If you have not created a custom schema, enter dbo as the Schema value.
What happens when my client secret expires?
When the client secret expires, CleverTap will no longer be able to authenticate with Microsoft Fabric, and all active imports will fail. To resolve this, generate a new client secret in the Azure portal on your app registration's Certificates & secrets page, then update the connection in CleverTap by editing it and replacing the expired credential.
Can I use the same Microsoft Fabric connection for multiple imports?
Yes. A single Microsoft Fabric connection in CleverTap can be used to create multiple import configurations, each reading from different tables within the same database and schema.
What permissions does the service principal need?
At minimum, the service principal needs Contributor role membership in the Fabric Workspace and CONNECT + SELECT privileges on the target database and tables. Service principals must also be enabled in the Fabric Admin portal under Tenant settings > Service principals can use Fabric APIs.
Next Steps
Updated about 19 hours ago
