Connecting to Data Sources
Power Apps connects to over 1,000 data sources through connectors. Learn how tabular and action-based connectors work, what delegation means, and how to use multiple data sources in one app.
How connectors work
Think of a connector like a translator at a meeting.
Your app speaks “Power Apps.” Your data speaks “SharePoint” or “SQL” or “Outlook.” The connector sits between them and translates so they can work together.
You don’t need to know how SharePoint’s API works. You just pick the SharePoint connector, sign in, choose your list, and your app can read and write data. The connector handles all the technical details.
Connector types
There are three tiers of connectors in Power Platform:
| Tier | What it means | Examples | Cost |
|---|---|---|---|
| Standard | Included with every Power Apps licence | SharePoint, Excel, Outlook, Microsoft Teams, Dataverse | No extra cost |
| Premium | Require a Power Apps Premium licence | SQL Server, Salesforce, Mailchimp, HTTP connector | Premium licence |
| Custom | You build them to connect to any API | Your company’s internal API, niche services | Premium licence |
Exam tip: standard vs premium
The exam may ask which connectors require a premium licence. The key ones to remember:
Standard (free): SharePoint, Excel, Outlook, Teams, Dataverse, OneDrive, Approvals, Microsoft Forms
Premium (paid): SQL Server, HTTP, Salesforce, Dataverse (some advanced features), Azure services
If a question mentions “no additional licensing,” stick to standard connectors.
Tabular vs action-based connectors
| Feature | Tabular Connectors | Action-Based Connectors |
|---|---|---|
| What they do | Return data as a table (rows and columns) | Perform a specific action and return a result |
| How you use them | Bind directly to galleries, tables, and forms | Call them from formulas or buttons |
| Examples | SharePoint lists, Dataverse tables, SQL tables, Excel tables | Send an email (Outlook), post a message (Teams), get weather data |
| Power Fx pattern | Filter(SharePointList, Status = "Active") | Office365Outlook.SendEmailV2(to, subject, body) |
| Think of it as | A spreadsheet your app reads from | A button that makes something happen |
Common data sources
Here are the most common data sources you will see on the PL-900 exam:
| Data source | Type | Best for | Notes |
|---|---|---|---|
| Dataverse | Tabular | Enterprise apps, model-driven apps | Most powerful, supports relationships and security |
| SharePoint | Tabular | Team lists, document libraries | Very common for small-to-medium apps |
| Excel (OneDrive) | Tabular | Quick prototypes, simple data | Must be formatted as a table in Excel |
| SQL Server | Tabular (premium) | Existing business databases | Requires premium licence |
| Microsoft 365 Users | Action-based | Look up user profiles | Standard connector |
| Outlook | Action-based | Send emails from apps | Standard connector |
| Approvals | Action-based | Built-in approval workflows | Works with Power Automate |
Delegation: the concept that trips people up
Delegation is how canvas apps handle large data sets. This is important for the exam.
When you write a formula like Filter(Products, Category = "Electronics"), the app needs to decide where to do the filtering:
- Delegable — the data source does the filtering. SharePoint filters millions of records and sends back only matches. Fast and efficient.
- Non-delegable — the app downloads records to the device first, then filters locally. Limited to the first 500 or 2,000 records (configurable). Anything beyond that limit is ignored.
Why delegation matters
Imagine Priya’s SharePoint list has 5,000 campaigns. She writes Search(Campaigns, SearchBox.Text, "Name").
The Search function is not delegable with SharePoint. So the app downloads the first 2,000 records and searches only those. The other 3,000 campaigns are invisible to the search.
The fix: Use delegable functions like Filter() with supported operators, or move data to Dataverse which supports more delegable operations.
Exam tip: If a question describes missing data in a large list, delegation is likely the answer.
| Delegable to most sources | Not delegable |
|---|---|
| Filter with =, in | Search function |
| Sort | Complex lookups |
| LookUp (single record) | Nested filters |
| Simple comparisons | String functions like Left, Mid |
Adding data sources to your app
In Power Apps Studio, adding a data source takes three steps:
- Open the Data panel on the left sidebar
- Search for a connector — type “SharePoint” or “SQL” or whatever you need
- Authenticate and select — sign in to the service and pick the specific list, table, or database
Once connected, the data source appears in your formulas. You can reference it by name: Filter(Campaigns, Status = "Active") where “Campaigns” is the SharePoint list name.
Multiple data sources in one app
A single canvas app can connect to many data sources at once. Priya’s campaign tracker uses three:
- SharePoint list — campaign data (names, budgets, statuses)
- Office 365 Users connector — to look up team member photos and emails
- Outlook connector — to send status update emails directly from the app
Each data source is independent. You add them all from the Data panel and reference them in different formulas throughout the app.
Aisha's logistics example
Aisha Patel, the IT admin at Coastal Logistics, built a driver check-in app that connects to:
- Dataverse for the main driver and vehicle records
- SharePoint for document storage (licences, inspections)
- SQL Server for the legacy dispatch system
Three data sources, one app. The connectors handle all the communication.
🎬 Video walkthrough
🎬 Video coming soon
Connecting to Data in Power Apps — PL-900 Domain 3
Connecting to Data in Power Apps — PL-900 Domain 3
~9 minFlashcards
Knowledge Check
Priya's canvas app searches a SharePoint list with 5,000 records using the Search function, but some records never appear in results. What is the most likely cause?
Which of the following connectors requires a Power Apps Premium licence?
A canvas app needs to display a list of customers from a SQL database AND send email notifications via Outlook. How many data sources does this require?
Next up: Controls and responsive design — the building blocks you place on your canvas app screens.