What is a Connector?
A Connector (including a Custom Connector) is a wrapper around an API that allows a service to communicate with Power Apps or Power Automate. Connectors allow the Power Platform to access data hosted on other Microsoft products or from completely separate organisations such as Salesforce.com, Oracle and a host of others. You can connect Power Apps to WordPress sites, do a SurveyMonkey questionnaire or take a payment using Stripe
At the time of writing, the Power Platform has 422 connectors supported by Microsoft and the number grows almost daily!
The full list of all Microsoft supported connectors is here: https://docs.microsoft.com/en-us/connectors/connector-reference
Custom Connectors - Some General Info
Microsoft Licensing
Of the current 422 connectors, 148 of those are ‘Standard Connectors’ providing access to both Microsoft and non-Microsoft data sources and services. Standard connectors do not require any additional Microsoft licensing, so if a standard connector is available for the data source you are wanting to access, then that is definitely what you should use
Generally speaking, for Power Apps connectors to other Microsoft products, if a connector interfaces with the Office 365 suite (ie OneDrive, Excel, SharePoint etc) it is considered to be an ‘enabler’ for O365 and therefore covered by standard Power Apps / O365 licencing
If the connector is for products outside O365 such as the many Azure or Dynamics services for example, then it is classed as premium and requires a standalone Power Apps or Power Automate plan license for everyone who uses the connector
Many connectors to non-Microsoft products are also classed as premium connectors so they too need a plan license for each user
Microsoft licensing is often a complex subject and there have been quite a few changes over recent months with some previously standard connectors now classed as premium
Here’s a link to the Power Apps & Power Automate licensing FAQs: https://docs.microsoft.com/en-us/power-platform/admin/powerapps-flow-licensing-faq
A very important point on is that you don’t need the premium licensing to create premium connectors and learn new skills!
Custom Connectors
One of the many great features of the Power Platform is that if none of the ‘out of the box’ connectors meets your needs, you can build your own custom connector
This sounds complicated but it often isn’t. Power Apps has a Custom Connector Wizard that walks you through creating the connector. See my blog posts Build a Basic Custom Connector and Custom Connectors, API Keys & Identifiers
Custom connectors are one of the easiest ways you can extend the Power Platform. You can use custom connectors as a data source in much the same way you would use SharePoint, though exactly what you are able to do depends on the data source itself and the functionality provided by the API
As well as organisations using custom connectors to access their own data, they can also be used to bring data from many publicly available sources into the Power Platform. Many organisations such as the BBC or Spotify have publicly accessible APIs with comprehensive documentation. There are also many other providers providing access to vast amounts of data such as food nutritional information, weather forecasts, census info and postcode/Zip code address lookups. The list is almost endless and using custom connectors to access these web services, you can bring all of this data directly into Power Apps. Some of the services charge for corporate use but the vast majority provide free access for developers and low volume users
It’s also worth bearing in mind that you can also use custom connectors to extend some of the pre-built Microsoft supported connectors if they don’t provide all the access or data you require
Why bother creating a Custom Connector rather than just use a HTTP call?
Well you could just make a HTTP request but there are good reasons why you should build a custom connector instead
- The first reason is simplicity. With a custom connector you can create it and make it available for you and your citizen developers. Power Apps developers are already familiar with using connectors so there are no new skills to learn
- Once you’ve built the custom connector it can be used in multiple Power Apps and Flows and doesn’t need to be re-created
- You avoid unnecessary complexity by avoiding the use of Power Automate. You can’t make direct HTTP calls in Power Apps but you can use custom connectors
- Because your users using the service are all using the one custom connector rather than separate HTTP calls, you gain better analytics and user logging. You can monitor the connectors usage in the Power Platform Admin Center
- Using the HTTP connector in Power Automate is also a premium feature so there is no cost benefit to not using a custom connector
- And finally, it’s not hard to build a custom connector. The Power Apps Custom Connector Wizard takes you through the process step by step and at the end you can test if it’s working. If not, you can go back and make tweaks
Further Reading
For more info, check out my blog posts Build a Basic Custom Connector and Custom Connectors, API Keys & Identifiers for real examples of how to build custom connectors