Power Automate Integration
Convert PDFs to structured data inside Microsoft Power Automate using the PDFPipe API. This guide walks through the complete setup using the built-in HTTP action — no custom connector required.
Create a new flow
Open Power Automate and create a new Automated cloud flow or Instant cloud flow. Choose a trigger that provides a PDF URL, for example:
- SharePoint — "When a file is created or modified"
- Outlook — "When a new email arrives" (with PDF attachment links)
- Manual trigger — for testing
Add an HTTP action to call PDFPipe
Add a new step and search for the HTTP action (built-in). Configure it:
- Method: POST
- URI:
https://api.pdfpipe.dev/v1/convert - Headers:
Authorization:Bearer pk_live_your_key_hereContent-Type:application/json
Set the Body to:
{
"url": "@{triggerOutputs()?['body/Link']}",
"format": "json"
}Replace the dynamic expression with the URL from your trigger. Use "format": "text" or "markdown" if you prefer a different output.
Handle the response
For small PDFs (<10 MB), you'll get a synchronous 200 response with a resultUrl. Add a Parse JSON action after the HTTP step to extract the fields.
For larger files, the response is 202 with a pollUrl. Add a Do Until loop:
- Inside the loop, add an HTTP GET action to
https://api.pdfpipe.dev@{body('Convert_PDF')?['pollUrl']} - Set the loop condition to continue until status equals
complete - Add a Delay of 5 seconds between iterations
@equals(body('Poll_Status')?['status'], 'complete')Use the result
Once the status is complete, use the resultUrl in a follow-up HTTP GET action to download the converted data. From there you can:
- Save the JSON output to SharePoint or OneDrive
- Send extracted text via Teams or Outlook
- Insert rows into Excel or Dataverse
- Pass data to AI Builder or Copilot for further processing
Error handling (recommended)
Wrap your HTTP actions in a Scope action and add a parallel branch with "Configure run after" set to "has failed". This lets you log errors or send notifications when a conversion fails.
PDFPipe returns structured error codes (see the error reference) that you can parse to determine whether to retry or alert.
Tips
- Store your API key in a Power Automate Environment Variable or Azure Key Vault rather than hard-coding it.
- For batch processing multiple PDFs, see the Batch Processing guide.
- Use
"format": "markdown"when feeding results to AI Builder or GPT-based Copilot actions.