Create Outlook Dataflows on PowerBI.com

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Connect to the CData Power BI Connector for Outlook from PowerBI.com to create Power BI Dataflows with real-time data.

The CData API Driver for Power BI seamlessly integrates with the tools and wizards in Power BI, including the real-time data workflows on PowerBI.com. Follow the steps below to pull data directly into DataFlows on PowerBI.com and use the Power BI Gateway to configure automatic refresh.

Create a DSN

Installing the Power BI Connector creates a DSN (data source name) called CData Power BI Outlook. This the name of the DSN that Power BI uses to request a connection to the data source. Configure the DSN by filling in the required connection properties.

You can use the Microsoft ODBC Data Source Administrator to create a new DSN or configure (and rename) an existing DSN: From the Start menu, enter "ODBC Data Sources." Ensure that you run the version of the ODBC Administrator that corresponds to the bitness of your Power BI Desktop installation (32-bit or 64-bit).

Using OAuth Authentication

Microsoft Graph API uses OAuth 2.0 for authentication. You must register an application in the Microsoft Azure Portal to obtain OAuth credentials (Client ID and Client Secret).

Obtaining OAuth Credentials

  1. Log in to the Azure Portal.
  2. Navigate to Azure Active Directory > App registrations.
  3. Click New registration to create a new application.
  4. Enter an application name and select the appropriate account types.
  5. Set the Redirect URI to your application's callback URL (e.g., http://localhost:33333 for desktop apps).
  6. Click Register to create the application.
  7. On the application overview page, copy the Application (client) ID - this is your OAuthClientId.
  8. Navigate to Certificates & secrets and create a new client secret.
  9. Copy the client secret value - this is your OAuthClientSecret.
  10. Navigate to API permissions and add the required Microsoft Graph API permissions:
    • Mail.Read - For accessing email messages
    • Contacts.Read - For accessing contacts
    • Calendars.Read - For accessing calendar events
    • Tasks.Read - For accessing To Do tasks
    • offline_access - For obtaining refresh tokens
  11. Click Grant admin consent to grant these permissions.

Connecting with OAuth

After setting the following connection properties, you are ready to connect:

  • AuthScheme: Set this to OAuth.
  • InitiateOAuth: Set this to GETANDREFRESH. The CData API Profile for Outlook will automatically walk through the OAuth process in order to obtain the access token.
  • OAuthClientId: Set this to the Application (client) ID from Azure Portal.
  • OAuthClientSecret: Set this to the client secret value from Azure Portal.
  • TenantId: Set this to your Azure AD tenant identifier (GUID or domain name like 'contoso.onmicrosoft.com').
  • CallbackURL: Set this to the Redirect URI you specified in your app registration (e.g., http://localhost:33333 for desktop apps).

Example connection string

Profile=C:\profiles\Outlook.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;TenantId=your_tenant_id;CallbackUrl=http://localhost:33333;

Pulling Outlook Data Directly Into Your Dataflow

With the data source configured, follow the steps below to load data from Outlook tables into your DataFlow.

Set Up the Power BI Gateway

Follow the steps below to configure the gateway on your machine:

  1. Run the CData Power BI Connector installer. If you have not already done so, download the Power BI Gateway.
  2. Select the on-premises data gateway (recommended) option.
  3. Sign into the gateway.
  4. Name the gateway and specify a recovery key.
  5. In the Connectors step, choose a folder where the gateway will look for the CData Power BI Connector. This article uses C:\Users\PBIEgwService\Documents\Power BI Desktop\Custom Connectors\. Copy the .pqx files for the CData Connector (found in C:\Users\USERNAME\Documents\Power BI Desktop\Custom Connectors\) to the folder you configured.

    NOTE: The account configured for the service (NT SERVICE\PBIEgwService) needs to be able to access the folder chosen for the gateway. If needed, you can change the service account in the Service Settings section of the gateway installer.

  6. Confirm that the entry CData.PowerBI.API is displayed in the list in the Connectors section.

Set up Power BI Online for a Dataflow

  1. In Power BI Online, create a new workspace, which is also known as an app, if you do not already have one. Note that this is only available with Power BI Pro or higher.
  2. Set up your On-Premises Gateway. The steps for this are in the Configuring the Gateway section of this article.
  3. Go back to Power BI Online. In settings, go to 'Manage Gateways', and add a new data source to your Gateway
    • Enter the Data Source Name, the name that the data source will be referred to within Power BI Online
    • Select the Data Source Type, (e.g. CData API Driver for Power BI) and set the Data Source Name (e.g. CData Power BI Outlook)
    • Set Authentication Method to "Anonymous"
    • Set Privacy Level as needed
  4. Click Add to finish the configuration (do not skip the test connection as it is important to know if a successful connection was made).

    If you would like to manage the users that have access to this data source, you can go to the Users tab.

Set up your Dataflow and pull the Outlook data

  1. In the new workspace, go to Create > Dataflow > Add New Entities.
  2. Choose the ODBC data source and enter the correct connection properties.
    Enter your DSN name in the ODBC connection string section, dsn=CData Power BI API. Choose your gateway and set the authentication type to Anonymous.
  3. Choose the table(s) you want to work with and click Transform data.
    If you want to make any changes to the query, you can right click on the query and click on Advanced Editor.

Configure Data Refresh on PowerBI.com

Refresh your dataflow to have the most up to date data.

  • To refresh manually, open the dataflow options menu from your workspace -> Dataflows and click Refresh Now.
  • To schedule refreshes, open the dataflow options menu from your workspace -> Dataflows and click Schedule Refresh. Enable the option to keep your data up to date. Specify the refresh frequency in the menus.

At this point, you will have a Dataflow built on top of live Outlook data. Learn more about the CData Power BI Connectors for Outlook and download a free trial from the CData API Driver for Power BI page. Let our Support Team know if you have any questions.

Ready to get started?

Connect to live data from Outlook with the API Driver

Connect to Outlook