πŸ”’ Guided

Pre-launch preview. Authorised access only.

Incorrect code

Guided by A Guide to Cloud
Explore AB-900 AI-901
Guided PL-400 Domain 1
Domain 1 β€” Module 4 of 5 80%
4 of 26 overall

PL-400 Study Guide

Domain 1: Create a Technical Design

  • Solution Architecture: What Goes Where Free
  • Security by Design: Auth, Roles & DLP Free
  • Designing UX Components: Canvas, PCF & Client Scripts Free
  • Designing Platform Extensions: Connectors, Plug-ins & APIs Free
  • Integration & Automation Blueprints Free

Domain 2: Build Power Platform Solutions

  • Environment Setup & Security Troubleshooting
  • Solutions & Layers: ALM Foundations
  • CI/CD Pipelines for Power Platform

Domain 3: Implement Power Apps Improvements

  • Advanced Power Fx & Canvas Components
  • Troubleshoot & Optimise Apps

Domain 4: Extend the User Experience

  • Client Scripting: Form Events & the Client API
  • Commands, Buttons & Custom Page Navigation
  • PCF Components: Build & Lifecycle
  • PCF Components: Package, Deploy & Advanced Features

Domain 5: Extend the Platform

  • The Plug-in Pipeline: How Dataverse Processes Events Free
  • Writing Plug-ins: Business Logic, Service & Registration
  • Custom APIs & Business Events
  • Custom Connectors: OpenAPI & Authentication
  • Custom Connectors: Azure, Policies & Code
  • Dataverse APIs: Web API & Organisation Service
  • Azure Functions for Power Platform
  • Cloud Flows: Dataverse Triggers & Expressions
  • Cloud Flows: Security, Errors & Child Flows

Domain 6: Develop Integrations

  • Publishing Dataverse Events
  • Service Endpoints: Webhooks, Service Bus & Event Hub
  • Data Sync: Change Tracking, Alternate Keys & Upsert

PL-400 Study Guide

Domain 1: Create a Technical Design

  • Solution Architecture: What Goes Where Free
  • Security by Design: Auth, Roles & DLP Free
  • Designing UX Components: Canvas, PCF & Client Scripts Free
  • Designing Platform Extensions: Connectors, Plug-ins & APIs Free
  • Integration & Automation Blueprints Free

Domain 2: Build Power Platform Solutions

  • Environment Setup & Security Troubleshooting
  • Solutions & Layers: ALM Foundations
  • CI/CD Pipelines for Power Platform

Domain 3: Implement Power Apps Improvements

  • Advanced Power Fx & Canvas Components
  • Troubleshoot & Optimise Apps

Domain 4: Extend the User Experience

  • Client Scripting: Form Events & the Client API
  • Commands, Buttons & Custom Page Navigation
  • PCF Components: Build & Lifecycle
  • PCF Components: Package, Deploy & Advanced Features

Domain 5: Extend the Platform

  • The Plug-in Pipeline: How Dataverse Processes Events Free
  • Writing Plug-ins: Business Logic, Service & Registration
  • Custom APIs & Business Events
  • Custom Connectors: OpenAPI & Authentication
  • Custom Connectors: Azure, Policies & Code
  • Dataverse APIs: Web API & Organisation Service
  • Azure Functions for Power Platform
  • Cloud Flows: Dataverse Triggers & Expressions
  • Cloud Flows: Security, Errors & Child Flows

Domain 6: Develop Integrations

  • Publishing Dataverse Events
  • Service Endpoints: Webhooks, Service Bus & Event Hub
  • Data Sync: Change Tracking, Alternate Keys & Upsert
Domain 1: Create a Technical Design Free ⏱ ~12 min read

Designing Platform Extensions: Connectors, Plug-ins & APIs

When out-of-the-box features are not enough, you extend the platform. Learn how to design custom connectors, Dataverse plug-ins, custom APIs, and Power Fx functions β€” and when each approach fits.

Extending the platform’s brain

β˜• Simple explanation

Think of Power Platform as a smartphone.

Out of the box, it does calls, texts, and web browsing. But the real power comes from the app store (connectors to external services), custom apps (plug-ins that add new capabilities), and APIs (ways for other systems to talk to your phone).

This module covers four ways to extend the platform beyond what it can do natively: custom connectors (bridge to external APIs), plug-ins (C# code that runs inside Dataverse), custom APIs (new endpoints you create for Dataverse), and Power Fx functions (reusable low-code logic).

Platform extensions in Power Platform fall into four categories, each operating at a different layer of the architecture:

Custom connectors wrap external REST APIs into the Power Platform connector framework, making them available to canvas apps, cloud flows, and Power Automate. They handle authentication, parameter mapping, and response shaping.

Dataverse plug-ins (C#) execute server-side within the Dataverse event pipeline, intercepting or responding to data operations (create, update, delete). They run in a sandboxed environment with access to the Organisation service.

Custom APIs define new messages (endpoints) on Dataverse that can be called from any client β€” apps, flows, external systems. They are backed by plug-in logic and are solution-aware.

Power Fx low-code plug-ins allow makers to write server-side logic using Power Fx formulas instead of C#. They are limited in capability compared to C# plug-ins but accessible to low-code developers.

Custom connector design

A custom connector bridges Power Platform to any REST API. Design decisions include authentication, actions, triggers, and policies.

When to build a custom connector

  • The external API does not have a built-in Power Platform connector
  • You need to expose specific API operations to makers (not the full API surface)
  • You want to standardise how your organisation connects to a particular service
  • An ISV wants to publish a connector for their service

Design considerations

Design AreaQuestions to Answer
AuthenticationOAuth 2.0, API Key, or Basic? Who manages the credentials? Per-user or shared?
ActionsWhich API endpoints to expose? How to name them clearly for makers?
TriggersDoes the API support webhooks for real-time triggers? Or polling?
Data transformationDo responses need to be reshaped? Are there pagination patterns?
DLP classificationWhich DLP group should this connector be in? (Custom connectors default to Non-business)
Error handlingHow does the API report errors? Do you need policy templates to standardise responses?
πŸ’‘ Scenario: Marcus designs a connector for NovaSoft's product API

Marcus Chen at NovaSoft Solutions builds a custom connector for NovaSoft’s product catalogue API. His design decisions:

  • Auth: OAuth 2.0 (each user authenticates with their NovaSoft account β€” per-user, not shared credentials)
  • Actions: GetProducts, GetProductById, UpdateInventory β€” only 3 of the API’s 20 endpoints, keeping it simple for makers
  • Triggers: Webhook-based trigger for β€œproduct price changed” events
  • Data transform: API returns nested JSON; Marcus adds a policy template to flatten the response for easier use in Power Automate
  • DLP: Requests the admin classify it as Business (it handles business inventory data)

Plug-in vs custom API vs Power Fx function

These three all add server-side logic to Dataverse, but they serve different purposes.

Three approaches to server-side logic β€” choose based on trigger, audience, and complexity
FactorPlug-inCustom APIPower Fx Function
LanguageC#C# (backed by plug-in)Power Fx (low-code)
TriggerDataverse events (create, update, delete, etc.)On-demand (called explicitly)On-demand (called from apps/flows)
Callable from outside?No β€” event-driven onlyYes β€” Web API, SDK, flows, appsYes β€” flows and apps
Transaction contextRuns within the Dataverse pipeline transactionCan run in or outside a transactionRuns within platform context
ComplexityFull C# β€” any logic, Organisation serviceFull C# β€” plus custom request/responsePower Fx β€” limited to supported functions
Solution-awareYesYesYes
Best forIntercepting data events, validation, enrichmentReusable business operations, external-facing endpointsSimple server-side logic accessible to makers

Decision guide

  • Need to react to a data event (record created, updated, deleted)? β†’ Plug-in
  • Need a reusable operation that apps, flows, or external systems can call? β†’ Custom API
  • Need server-side logic but want makers to maintain it? β†’ Power Fx function
  • Need a plug-in AND want it callable on demand? β†’ Custom API backed by a plug-in (best of both)
Question

What is a custom API in Dataverse?

Click or press Enter to reveal answer

Answer

A custom API defines a new message (endpoint) on Dataverse that can be called from apps, flows, Web API, or SDK. It has defined request parameters and response properties. It is backed by a plug-in that implements the business logic. Unlike standard plug-ins, custom APIs are callable on demand, not just triggered by data events.

Click to flip back

Question

What is a Power Fx low-code plug-in?

Click or press Enter to reveal answer

Answer

A Power Fx function that runs server-side in Dataverse. It allows makers to write business logic using Power Fx formulas instead of C#. It is more limited than C# plug-ins but accessible to low-code developers who cannot write C#. It can be triggered from apps and flows.

Click to flip back

Question

When should you choose a custom connector over a direct API call?

Click or press Enter to reveal answer

Answer

Use a custom connector when: (1) you want the API available to makers in canvas apps and Power Automate, (2) you need to standardise authentication and error handling, (3) you want the connection to be manageable through the admin centre, (4) multiple apps and flows will use the same API.

Click to flip back

Knowledge Check

Amara needs to implement a 'Calculate shipping cost' operation for a logistics client. The operation takes package dimensions, weight, and destination as input and returns a cost. It must be callable from canvas apps, cloud flows, and external ERP systems via API. Which approach should she use?

Knowledge Check

A developer builds a Dataverse plug-in that validates order data before save. The product team also wants the same validation logic to be available as an API endpoint for the company's external web portal. What is the best approach?

🎬 Video coming soon

Next up: Integration & Automation Blueprints β€” designing cloud flows and Dataverse-to-Azure integration patterns.

← Previous

Designing UX Components: Canvas, PCF & Client Scripts

Next β†’

Integration & Automation Blueprints

Guided

I learn, I simplify, I share.

A Guide to Cloud YouTube Feedback

© 2026 Sutheesh. All rights reserved.

Guided is an independent study resource and is not affiliated with, endorsed by, or officially connected to Microsoft. Microsoft, Azure, and related trademarks are property of Microsoft Corporation. Always verify information against Microsoft Learn.