Power Automate
Can Power Automate call REST APIs?
Quick answer
Power Automate calls REST APIs three ways, in preference order: a purpose-built connector (managed auth, best triggers), the generic HTTP action for direct calls with headers, queries, and OAuth via Entra ID app registrations, and custom connectors that package an API with its auth for reuse across flows and environments. Reserve raw HTTP for gaps; promote repeated integrations to custom connectors under solution ALM.
Key takeaways
- Connector first, HTTP action second, custom connector for reuse.
- Authenticate via Entra ID; store URLs in environment variables.
- Premium licensing applies — verify; wrap calls in error handling.
Detailed Explanation
Power Automate calls REST APIs three ways, in preference order: a purpose-built connector (managed auth, best triggers), the generic HTTP action for direct calls with headers, queries, and OAuth via Entra ID app registrations, and custom connectors that package an API with its auth for reuse across flows and environments. Reserve raw HTTP for gaps; promote repeated integrations to custom connectors under solution ALM.
How it works
The flow presents an Entra ID identity (delegated user or service principal context depending on design), acquires tokens, and calls endpoints with parsed JSON responses. Store base URLs in environment variables and connections behind connection references so Dev, Test, and Production rebind cleanly.
Limitations and considerations
HTTP actions and custom connectors carry premium-licensing implications — check current licensing per scenario. External APIs add timeout, throttling, and secret-rotation burdens that belong in Try/Catch scopes with logging, not unhandled inline calls.
For broader context, see the Power Automate Hub — it collects the guides around this topic.
When to use it
Call REST when no connector exists (Microsoft Graph edge cases, line-of-business APIs, webhooks) and wrap every call with error handling and owner notifications.
Practical example
A flow calls the Graph API over HTTP to list inactive Teams, writes candidates to a SharePoint list for owner review, and logs failures with the failing team ID.