Capstone Project: Build an Independent Publisher Connector
Published Oct 19 2022 10:43 PM 1,431 Views
Microsoft

You can define the duration to execute this project which can be completed in as little as 5 days, but this article highlights the steps you will take and resources that will be useful as you create and submit your very own independent publisher connector.

 

(Note: Even if you have never heard of connectors before, don't worry. If you have interacted with APIs before, this is a project you can easily get started on)

 

Skills that you will learn

 

  1. Working with APIs – You will select a public API to build a custom connector for.
  2. GitHub – You will submit your connector on the power platform connectors GitHub repository
  3. Postman – You may need to test out your API endpoints and verify your API requirements, postman is the best tool.
  4. Microsoft Power Platform Connectors CLI - Create & update a connector using the CLI (ALM)
  5. Create a free work account (****@***.onmicrosoft.com) Microsoft 365 Developer Account which provides you with a M365 E5 developer subscription to create your own sandbox and develop solutions. Steps to create a free work account
  6. Connector builder tools

Introduction

 

 

Additional Resources

a) Understand connectors: Connectors overview

b) Understand custom connectors: Custom connectors

Introduction to Key Concepts

 

Objective

Brief introduction to concepts that will be useful to know prior to creating your custom connector.

 

1. What is Power Platform and why is it important?

Julia_Muiruri_0-1666214669914.png

The power platform contains components that allow citizen developers to create business solutions without requiring a coding background. This concept is important to you since connectors are used by these citizen developers creating Power Apps, Power Automate and Logic Apps.

 

Read more about the power platform here

 

2. What is Fusion Development and why is it important?

Julia_Muiruri_1-1666215100425.png

Fusion development is the enablement of code-first developers (Pro-Devs) and citizen developers to cross-collaborate, each entity using their favorite development tools and environments. Citizen developers create business apps and flows used daily while the code-first developers extend the capabilities of power platform or solve complexities using code.

 

Read more about fusion development here

 

3. Understand connector types

Julia_Muiruri_0-1666107517582.png

For this project, you will be creating an Independent Publisher Connector since you will be working with an API that is available publicly and owned by someone else, and once certified, your connector can be accessed globally.

 

If you do not know which connector to build, see a list of the Top Connector Asks today for ideas.

 

List of Public APIs

 

Something important to note: Submit a proposal for the connector you intend to build before you start working on it to inform other developers and avoid duplication. Failure to do this might result in the submission of similar connectors and someone else might just beat you to it.

  • Title the pull request "Proposal - <Connector Name> (Independent Publisher)". For example, Proposal - HubSpotCRM (Independent Publisher).

  • Commit a readme.md file with as many details as you can provide, including your contact email (if you’re open to finding a collaborator).

Session 1: Build a Custom connector from scratch

Session Recording & Summary Blog

 

Objective

Build the chucknorris.io connector from scratch

 

Additional Resources

a) Documentation: Create a custom connector from scratch | Microsoft Learn

 

Session 2: Build a Custom Connector from scratch & from an OpenAPI Spec file and use it directly in a Power App

 

Session Recording & Summary Blog

Objectives

1. Build the SWAPI connector from scratch and show data in a Power App. Short video tutorial

2. Introduction to Triggers & policy templates

 

Additional Resources

a) Documentation: Create a custom connector from an OpenAPI definition | Microsoft Learn

b) OpenAPI extensions you can include to create your extension: Extend an OpenAPI definition for a custom connector | Microsoft Learn

c) Coding standards documentation (Best practices for your code): Coding standards | Microsoft Learn

d) Tool to convert to an OpenAPI 2.0 schema which is the only one currently supported: 

Build a Custom Connector from a Postman Collection

a) Create a custom connector from a Postman collection | Microsoft Learn

 

Session 3: Validate your connector before submitting

Session Recording & Summary Blog

 

Objectives

1. Best practices when building connectors.

2. Additional tips and insights for you

 

Optional: Use your connector in Power Platform (Testing)

a) Use a custom connector from a flow | Microsoft Learn

b) Use a custom connector from a Power Apps app | Microsoft Learn

c) Use a custom connector from a logic app | Microsoft Learn

 

Submit your connector for certification

Independent Publisher Certification process

 

a) Read the Manifesto

b) Prepare the connector artifacts

c) Ensure your connector contains valid metadata

c) Open source your connector in the GitHub Repository 

Microsoft Certification Engineers will review within 1-2 weeks, and you will be notified in GitHub (on your PR). Please include the below files in your pull request.
• apiDefinition.swagger.json
• apiProperties.json
• Readme.md (you can find an example here and for raw view for code here)
• Screenshots of the connector testing

d) Microsoft will test your connector, and we expect all tests to be completed within 1-2 weeks.

e)  If your connector passes all tests, the deployment process begins, and it typically takes up to 3-4 weeks to deploy your connector to all our regions.

 

Additional References

Independent Publisher Full Step-by-step Guide by Tomasz Poszytek, Microsoft MVP

Chapters:

0:00 Introduction

3:00 1. Create custom connector

5:20 Actions and triggers in custom connector. Define requests and responses

20:00 Test custom connector

21:00 2. Test custom connector with cloud flow

23:00 3. Download custom connector

25:30 4. Tweak downloaded files, align to requirements

32:30 5. Validate custom connector

35:10 6. Create readme.md file

38:00 7. Create a fork on Microsoft dev branch

39:00 8. Clone repo with Visual Studio Code

39:50 9. Create branch for all your changes

40:20 10. Add files to commit and create commit

42:05 11. Create Pull Request to Microsoft dev branch

44:00 Summary

 

If you have development questions, go to the Power Automate Forum. This is where you can review answers to existing questions or submit a new question. You can reach out to us directly on this GitHub Discussion

Frequently Asked Questions (FAQs)

1. What are the limits for connectors and API requests? API Limits

2. Questions on connector certification. Certification

3. Questions on requirements. Requirements

4. Questions on Support. Support

5. Questions on Triggers. Triggers

 

 

Co-Authors
Version history
Last update:
‎Oct 21 2022 08:19 AM
Updated by: