To connect Power Automate to a custom .NET API, build a Custom Connector using the API's OpenAPI definition and Entra ID OAuth for auth. Flows can then call your .NET endpoint securely, with no hardcoded credentials, and handle transient failures with a retry policy.
This guide assumes the following are in place. Missing any one of these will stall you mid-setup.
/swagger/v1/swagger.json.For background on connector concepts, browse our Power Automate and workflow automation guides.
/swagger/v1/swagger.json accurately describes request parameters and response schema. Incomplete schema means Power Automate cannot generate typed connector inputs automatically.Invoke). In your .NET API, configure AddMicrosoftIdentityWebApi() and annotate protected endpoints with the required scope. Do not accept shared secrets in query strings or headers. They appear in logs and rotate poorly.swagger.json. On the Security tab, select OAuth 2.0 and authorization type Azure Active Directory. Enter the client ID, client secret, tenant ID, and resource URL (the application ID URI from step 2). The Microsoft Custom Connectors documentation has a full field reference.Client secrets are the fastest way to get a connector working, but they expire (Entra ID caps secrets at two years). Certificates do not expire on the same schedule and are auditable in Azure Key Vault. Azure API Management is worth adding when multiple teams' flows call the same .NET API and you want rate-limiting, request logging, or IP restrictions applied at the gateway rather than in application code.
| Auth method | Setup effort | Best for | Watch for |
|---|---|---|---|
| Entra ID OAuth 2.0 + client secret | Low | Most production connectors | Secret expires in 1-2 years; set a calendar alert |
| Entra ID OAuth 2.0 + certificate | Medium | Connectors requiring long-term stability | Certificate rotation must be planned and documented |
| Azure API Management + subscription key | Medium-high | Multiple flows sharing one .NET API | Adds a billable APIM tier; plan size affects throughput limits |
Start with Entra ID OAuth 2.0 and a client secret. Move to certificate auth or APIM if the connector is shared across teams or if the API handles data subject to audit requirements.
Three patterns break this setup in production:
Hardcoded API key instead of Entra ID auth. Passing a shared secret in a custom header works until the key leaks, rotates under pressure, or the security team audits the flow. Custom Connector credentials stored in Entra ID are scoped, auditable in Azure logs, and do not live inside the flow definition where any Maker with read access can see them.
Calling the API inside an Apply to Each loop without batching. A flow iterating over 500 records that calls your .NET API once per item will hit Power Automate's action throttling limits and your API's rate limits at the same time. Design the .NET endpoint to accept an array of inputs, or enable Apply to Each concurrency control to cap parallel calls at a value your API can handle.
No retry policy on transient failures. Power Automate's default behavior when an action fails is to fail the run. A .NET API returning a 500 due to a database blip or a brief network interruption will terminate the flow unless you configure a retry policy before go-live, not after the first production incident.
QServices builds Power Automate integrations against custom .NET APIs as part of our Power Automate development service. Most connector builds run 3 to 8 weeks end-to-end. Project budgets range from $6,000 for a single-connector project to $35,000 for multi-flow automation replacing a manual process. For a detailed breakdown, see our Power Automate cost guide.
We have shipped this integration pattern in production. For a manufacturing client, we built Power Apps and .NET integrations that digitized the full inventory lifecycle, including supervisor approval workflows tied to a custom ERP API:
Manufacturing and stocking company
Digitized full lifecycle of inventory operations with barcode and QR scanning, replacing error-prone spreadsheet tracking
Multi-warehouse management with FIFO/LIFO valuation, batch tracking, and supervisor approval workflows
For a US pest control business, we connected a .NET API to QuickBooks Online, automating customer and invoice syncing and eliminating manual invoicing errors that were causing billing delays:
Pest control business, US
Automated customer and invoice syncing with QuickBooks Online eliminating manual invoicing errors
Multi-rate tax handling (in-town, out-of-town, exempt) with sandbox environment for safe testing
Yes. Custom Connectors are a premium feature in Power Automate. You need either a Power Automate Premium per-user plan or a per-flow plan assigned to the flow that uses the connector. The standard Microsoft 365 or Office 365 license does not include Custom Connector access. Verify your license in the Power Platform admin center before starting the build to avoid discovering the restriction after completing the setup.
Share your requirements with QServices. Our engineers will give you a straight answer on fit, timeline, and cost — no sales scripts.
Book a Free Consultation