Capstone Project: Build an Independent Publisher Connector

This post has been republished via RSS; it originally appeared at: New blog articles in Microsoft Community Hub.

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

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

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.