Secoda Docs
Get Started
  • Getting Started with Secoda
    • Secoda as an Admin
      • Deployment options
      • Sign in options
      • Settings
      • Connect your data
        • Define Service Accounts
        • Choose which schemas to extract
      • Customize the workspace
      • Populate Questions with FAQs
      • Invite your teammates
        • Joining & Navigating between Multiple Workspaces
      • Onboard new users
        • Onboarding email templates
        • Onboarding Homepage template
        • Training session guide
      • User engagement and adoption
        • Tips & Tricks to share with new users
    • Secoda as an Editor
    • Secoda as a Viewer
      • Introduction guide
      • Requesting changes in Secoda
  • Best practices
    • Setting up your workspace
    • Integrating Secoda into existing workflows
    • Documentation best practices
    • Glossary best practices
    • Data governance
    • Data quality
    • Clean up your data
    • Tool migrations using Secoda
    • Slack <> Questions workflow
    • Defining resources workflow
    • Streamline data access: Private and public teams workflow
    • Exposing Secoda to external clients
  • Resource Management
    • Editing Properties
      • AI Description Editor
      • Bulk Editing
      • Propagation
      • Templates
    • Resource Sidesheet
    • Assigning Owners
    • Custom Properties
    • Tags
      • Custom Tags
      • PII Identifier
      • Verified Identifier
    • Import and Export Resources
    • Related Resources
  • User Management
    • Roles
    • Teams
    • Groups
  • Integrations
    • Integration Settings
    • Data Warehouses
      • BigQuery
        • BigQuery Metadata Extracted
      • Databricks
        • Databricks Metadata Extracted
      • Redshift
        • Redshift Metadata Extracted
      • Snowflake
        • Snowflake Metadata Extracted
        • Snowflake Costs
        • Snowflake Native App
      • Apache Hive
        • Apache Hive Metadata Extracted
      • Azure Synapse
        • Azure Synapse Metadata Extracted
      • MotherDuck
        • MotherDuck Metadata Extracted
      • ClickHouse
        • ClickHouse Metadata Extracted
    • Databases
      • Druid
        • Druid Metadata Extracted
      • MySQL
        • MySQL Metadata Extracted
      • Microsoft SQL Server
        • Page
        • Microsoft SQL Server Metadata Extracted
      • Oracle
        • Oracle Metadata Extracted
      • Salesforce
        • Salesforce Metadata Extracted
      • Postgres
        • Postgres Metadata Extracted
      • MongoDB
        • MongoDB Metadata Extracted
      • Azure Cosmos DB
        • Azure Cosmos DB Metadata Extracted
      • SingleStore
        • SingleStore Metadata Extracted
      • DynamoDB
        • DynamoDB Metadata Extracted
    • Data Visualization Tools
      • Amplitude
        • Amplitude Metadata Extracted
      • Looker
        • Looker Metadata Extracted
      • Looker Studio
        • Looker Studio Metadata Extracted
      • Metabase
        • Metabase Metadata Extracted
      • Mixpanel
        • Mixpanel Metadata Extracted
      • Mode
        • Mode Metadata Extracted
      • Power BI
        • Power BI Metadata Extracted
      • QuickSight
        • QuickSight Metadata Extracted
      • Retool
        • Retool Metadata Extracted
      • Redash
        • Redash Metadata Extracted
      • Sigma
        • Sigma Metadata Extracted
      • Tableau
        • Tableau Metadata Extracted
      • ThoughtSpot
        • ThoughtSpot Metadata Extracted
      • Cluvio
        • Cluvio Metadata Extracted
      • Hashboard
        • Hashboard Metadata Extracted
      • Lightdash
        • Lightdash Metadata Extracted
      • Preset
        • Preset Metadata Extracted
      • Superset
        • Superset Metadata Extracted
      • SQL Server Reporting Services
        • SQL Server Reporting Services Metadata Extracted
      • Hex
        • Hex Metadata Extracted
      • Omni
        • Omni Metadata Extracted
    • Data Pipeline Tools
      • Census
        • Census Metadata Extracted
      • Stitch
        • Stitch Metadata Extracted
      • Airflow
        • Airflow Metadata Extracted
      • Dagster
        • Dagster Metadata Extracted
      • Fivetran
        • Fivetran Metadata Extracted
      • Glue
        • Glue Metadata Extracted
      • Hightouch
        • Hightouch Metadata Extracted
      • Apache Kafka
        • Apache Kafka Metadata Extracted
      • Confluent Cloud
        • Confluent Cloud Metadata Extracted
      • Polytomic
        • Polytomic Metadata Extracted
      • Matillion
        • Matillion Metadata Extracted
      • Airbyte
        • Airbyte Extracted Metadata
      • Informatica
        • Informatica Metadata Extracted
      • Azure Data Factory
        • Azure Data Factory Metadata Extracted
    • Data Transformation Tools
      • dbt
        • dbt Cloud
          • dbt Cloud Metadata Extracted
        • dbt Core
          • dbt Core Metadata Extracted
      • Coalesce
        • Coalesce Metadata Extracted
    • Data Quality Tools
      • Cyera
      • Dataplex
        • Dataplex Metadata Extracted
      • Great Expectations
        • Great Expectations Metadata Extracted
      • Monte Carlo
        • Monte Carlo Metadata Extracted
    • Data Lakes
      • Google Cloud Storage
        • GCS Metadata Extracted
      • AWS S3
        • S3 Metadata Extracted
    • Query Engines
      • Trino
        • Trino Metadata Extracted
    • Custom Integrations
      • File Upload
        • CSV File Format
        • JSONL File Format
        • Maintain your Resources
      • Marketplace
        • Secoda SDK
        • Upload and Connect your Marketplace Integration
        • Publish the Integration
        • Example Integrations
      • Secoda Fields Explained
    • Security
      • Connecting via Reverse SSH Tunnel
      • Connecting via SSH Tunnel
      • Connecting via VPC Peering
      • Connecting via AWS Cross Account Role
      • Connecting via AWS PrivateLink
        • Snowflake via AWS PrivateLink
        • AWS Service via AWS PrivateLink
      • Recommendations to Improve SSH Tunnel Concurrency on SSH Bastion
    • Push Metadata to Source
  • Extensions
    • Chrome
    • Confluence
      • Confluence Metadata Extracted
      • Confluence best practices
    • Git
    • GitHub
    • Jira
      • Jira Metadata Extracted
    • Linear
    • Microsoft Teams
    • PagerDuty
    • Slack
      • Slack user guide
  • Features
    • Access Requests
    • Activity Log
    • Analytics
    • Announcements
    • Audit Log
    • Automations
      • Automations Use Cases
    • Archive
    • Bookmarks
    • Catalog
    • Collections
    • Column Profiling
    • Data Previews
    • Data Quality Score
    • Documents
      • Comments
      • Embeddings
    • Filters
    • Glossary
    • Homepage
    • Inbox
    • Lineage
      • Manual Lineage
    • Metrics
    • Monitors
      • Monitoring Use Cases
    • Notifications
    • Policies
    • Popularity
    • Publishing
    • Queries
      • Query Blocks
        • Chart Blocks
      • Extracted Queries
    • Questions
    • Search
    • Secoda AI
      • Secoda AI User Guide
      • Secoda AI Use Cases
      • Secoda AI Security FAQs
      • Prompts
    • Sharing
    • Views
  • Enterprise
    • SAML
      • Okta SAML
      • OneLogin SAML
      • Microsoft Azure AD SAML
      • Google SAML
      • SCIM
      • SAML Attributes
    • Self-Hosted
      • Additional Resources
        • Additional Environment Variables
          • PowerBI OAuth Application (on-premise)
          • Google OAuth Application (on-premise)
          • Github Application (on-premise)
          • OpenAI API Key Creation (on-premise)
          • AWS Bucket with Access Keys (on-premise)
        • TLS/SSL (Docker compose)
        • Automatic Updates (Docker compose)
        • Backups (Docker compose)
        • Outbound Connections
      • Self-Hosted Changelog
    • SIEM
      • Google Chronicle
  • API
    • Get Started
    • Authentication
    • Example Workflows
    • API Reference
      • Getting Started
      • Helpful Information
      • Audit Logs
      • Charts
      • Collections
      • Columns
      • Custom Properties
      • Dashboards
      • Databases
      • Documents
      • Events
      • Groups
      • Integrations
      • Lineage
      • Monitors
      • Resources
      • Schemas
      • Tables
      • Tags
      • Teams
      • Users
      • Questions
      • Queries
  • FAQ
  • Policies
    • Terms of Use
    • Secoda AI Terms
    • Master Subscription Agreement
    • Privacy Policy
    • Security Policy
    • Accessibility Statement
    • Data Processing Agreement
    • Subprocessors
    • Service Level Agreement
    • Bug Bounty Program
  • System Status
  • Changelog
Powered by GitBook
On this page
  • Getting Started with Power BI
  • Option 1: OAuth
  • Option 2: Azure AD App
  • Step 1 -> Create an Azure AD App
  • Step 2 -> Create a Client Secret
  • Step 3 -> Enable API Access
  • Step 4 -> Add Azure AD to your PowerBI Workspace
  • Step 5 ->Add the PowerBI Integration To Secoda

Was this helpful?

  1. Integrations
  2. Data Visualization Tools

Power BI

An overview of the PowerBI integration with Secoda

Last updated 5 months ago

Was this helpful?

Getting Started with Power BI

There are two options for setting up the Power BI integration on Secoda, OAuth (into Secoda's managed Azure AD App) or by creating and managing your own Azure AD App.

Option 1: OAuth

You must be a PowerBI admin to connect through OAuth.

The PowerBI integration uses OAuth 2.0 to connect Secoda to your Power BI workspace. To connect Power BI to Secoda follow the steps below:

  1. In the Integrations section, click on New Integration, and select PowerBI.

  2. Navigate to the OAuth tab, and click Connect with OAuth. You will be prompted to log in to your PowerBI Workspace.

  3. Upon successful completion of OAuth authentication with Power BI, click the Run Initial Sync button to begin a sync.

To see Lineage to your PowerBI resources from external sources, make sure you enable the following settings in the Tenant tab of the Admin API Settings section in PowerBI:

  • Allow service principals to use read-only admin APIs

  • Enhance admin APIs responses with detailed metadata

  • Enhance admin APIs responses with DAX and mashup expressions and click apply to the entire organization

Option 2: Azure AD App

Step 1 -> Create an Azure AD App

  1. Search for App registrations and start a new Registration

  2. In the New Registration form, fill in the following details:

    • Name: Secoda

    • Supported account types: Accounts in this organizational directory only (Default Directory only - Single tenant)

    • Redirect URI: Leave blank

  3. Click Register to submit the form. You'll now be able to access an Application ID and Tenant ID from the Overview tab. Save these values.

Step 2 -> Create a Client Secret

  1. In the certificates and Secrets tab, click the New Client Secret button.

  2. The description and expiry of the client secret is up to you. Click Add, and save the Client Secret value.

Step 3 -> Enable API Access

Whether you set up Admin or non-admin access APIs is up to you. Admin access enables the sync of tables, columns, and measures from PowerBI datasets. These resources are used to build lineage between PowerBI and other sources (ex. Snowflake). You will not be able to see lineage between PowerBI and other sources if are not using Admin APIs.

Setting up Admin API Access (Recommended)

In the Azure Portal:

  1. Navigate to the Azure Active Directory link.

  2. In the Groups tab, create a new group with the following required information.

    • Group type: Security

    • Group name: PowerBI API Access

  3. Search for and select Secoda in the Members list. Click Create to complete the process.

In Power BI:

  1. Navigate to the tenant settings page. You must be a Power BI admin to see this page.

  2. In the Tenant settings tab, navigate to the Developer Settings section, and enable the following setting:

    • Allow service principals to use Power BI APIs (Make sure to add the PowerBI API Access Group you created in the previous step)

  3. Admin API Settings section under the Tenant settings tab, enable the following settings:

    • Allow service principals to use read-only admin APIs

    • Enhance admin APIs responses with detailed metadata

    • Enhance admin APIs responses with DAX and mashup expressions

Setting up Non-Admin API Access
  1. In the Azure Portal, navigate to the API Permissions tab and click Add a Permission.

  2. The following permissions, under the PowerBI Service, must be added to enable access by Secoda.

    • Dashboard Read All

    • Dataflow Read All

    • Dataset Read All

    • Gateway Read All

    • Pipeline Read All

    • Report Read All

    • Workspace Read All

Step 4 -> Add Azure AD to your PowerBI Workspace

  1. Sign into PowerBI, and navigate to the workspaces you want to enable access to. Use the three dots on the right of the workspace name to select Workspace Access.

  2. Fill in the Workspace Access form with the following required information. Make sure to click Add and close the form to persist the changes.

    • Member: Secoda

    • Permission: Contributor

Step 5 ->Add the PowerBI Integration To Secoda

  1. In the Integrations section, click on New Integration, and select PowerBI.

  2. Navigate to the Managed tab, and fill in the form with the required information from the previous steps.

    • Client ID: Application ID of Azure AD.

    • Tenant ID: Identifier of tenant of organization in Azure Active AD.

    • Client Secret: Client secret of the Azure AD App

Open the

If you have any trouble connecting PowerBI, get in touch at .

Azure portal
support@secoda.co