PDF Tools by Tachytelic (Independent Publisher) (Preview)
PDF Tools is a free set of actions for working with PDF files. It provides capabilities to merge, split, extract pages, extract text, optimize file size, and manage PDF metadata. Designed to simplify PDF operations in your flows.
This connector is available in the following products and regions:
| Service | Class | Regions |
|---|---|---|
| Copilot Studio | Premium | All Power Automate regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Logic Apps | Standard | All Logic Apps regions except the following: - Azure Government regions - Azure China regions - US Department of Defense (DoD) |
| Power Apps | Premium | All Power Apps regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Power Automate | Premium | All Power Automate regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Contact | |
|---|---|
| Name | Paul Murana |
| URL | https://tachytelic.net |
| paulie@tachytelic.net |
| Connector Metadata | |
|---|---|
| Publisher | tachytelic |
| Website | https://tachytelic.net/pdf-tools-for-power-automate/ |
| Privacy policy | https://tachytelic.net/privacy |
| Categories | Data |
PDF Tools by Tachytelic
PDF Tools is a free set of actions for working with PDF files in Power Automate. It provides capabilities to merge, split, extract pages, extract text, optimize file size, and manage PDF metadata. Designed to simplify PDF operations in your flows without requiring a premium license.
Publisher: Paul Murana
Prerequisites
There are no prerequisites to use this connector. It is completely free and requires no API keys or authentication.
Supported Operations
Optimize PDF
Optimise a PDF by cleaning and recompressing internal objects. Takes a base64-encoded PDF and returns an optimised base64-encoded PDF. Supports aggressive and safe compression modes.
Extract Specific Pages
Extract specific pages from a PDF file using a page range (e.g., "1-3,7"). Returns a new PDF containing only the specified pages.
Extract Info
Extracts detailed metadata from a PDF file including Title, Author, CreationDate, PDF version, Page count, and more.
Set Metadata
Sets metadata values (title, author, subject, keywords, dates) on a PDF file. Returns the PDF with updated metadata.
Extract Text
Extracts all text from a PDF file, with optional StartPage and EndPage parameters. Returns both combined text and text organized by page.
Split PDF
Splits a PDF file either by a fixed number of pages or by specified page ranges. Returns an array of PDF files.
Merge PDFs
Merges multiple PDF files provided as base64 strings into a single PDF.
Obtaining Credentials
No credentials are needed for this connector. It is a free service with no authentication required.
Getting Started
- Add the connector to your Power Automate flow
- No connection setup is required - simply start using the actions
- All PDF content must be provided as base64-encoded strings
- Use the "Get file content" action from OneDrive, SharePoint, or other connectors to retrieve PDFs and convert them to base64
Example: Optimize a PDF from SharePoint
- Add "Get file content" from SharePoint
- Add "Optimize PDF" action
- Set PdfFileContent to the output from Get file content (it will be automatically base64 encoded)
- Use the OptimizedPdf output to save back to SharePoint using "Create file"
Known Issues and Limitations
- All PDF operations work with base64-encoded content, which increases the data size by approximately 33%
- Very large PDFs (over 100MB) may experience timeouts
- Password-protected PDFs cannot be processed by most operations
- The Extract Text operation may not work well with scanned documents (image-based PDFs)
Frequently Asked Questions
Is this connector really free?
Yes! This connector is completely free with no usage limits, no API keys, and no premium license required.
What is the maximum file size supported?
The connector can handle most typical business documents. Very large files (over 100MB) may experience timeout issues due to processing time.
Can I process scanned PDFs?
The connector works best with text-based PDFs. Scanned documents (image PDFs) will not have extractable text. Consider using an OCR service first.
How do I convert a file to base64?
When you use actions like "Get file content" from SharePoint or OneDrive, the content is automatically available in a format that can be passed to this connector.
Deployment Instructions
This is a published Independent Publisher connector and is available directly in Power Automate. No deployment is required.
If you wish to deploy this as a custom connector for testing:
- Download the
apiDefinition.swagger.jsonandapiProperties.jsonfiles - Run:
paconn create --api-def apiDefinition.swagger.json --api-prop apiProperties.json
Throttling Limits
| Name | Calls | Renewal Period |
|---|---|---|
| API calls per connection | 100 | 60 seconds |
Actions
| Extract Info |
Extracts detailed metadata from a PDF file (e.g., Title, Author, CreationDate, PDF version, File size, etc.). |
| Extract Specific Pages |
Extract specific pages from a PDF file using a page range (e.g., "1-3,7"). |
| Extract Text |
Extracts all text from a PDF file, with optional StartPage and EndPage. |
| Merge PDFs |
Merges multiple PDF files provided as base64 strings into a single PDF. |
| Optimize PDF |
Optimise a PDF by cleaning and recompressing internal objects. Takes a base64-encoded PDF and returns an optimised base64-encoded PDF. |
| Set Metadata |
Sets metadata values (title, author, dates, etc.) on a PDF file. |
| Split PDF |
Splits a PDF file either by a fixed number of pages or by specified page ranges. |
Extract Info
Extracts detailed metadata from a PDF file (e.g., Title, Author, CreationDate, PDF version, File size, etc.).
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
PDF File Content
|
PdfFileContent | True | byte |
The base64-encoded content of the PDF file |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Document Title
|
Title | string |
The PDF's Title metadata |
|
Document Author
|
Author | string |
The PDF's Author metadata |
|
Document Subject
|
Subject | string |
The PDF's Subject metadata |
|
Document Keywords
|
Keywords | string |
The PDF's Keywords metadata |
|
Is Encrypted?
|
IsEncrypted | boolean |
Indicates whether the PDF is encrypted |
|
Has Extractable Text?
|
HasText | boolean |
Indicates whether the PDF pages contain extractable text |
|
Creator Application
|
Creator | string |
The name of the application used to create the PDF |
|
Producer
|
Producer | string |
The software that produced the PDF |
|
Creation Date
|
CreationDate | string |
The date the PDF was originally created |
|
Modification Date
|
ModDate | string |
The date the PDF was last modified |
|
Page Count
|
PageCount | integer |
The total number of pages in the PDF |
|
PDF Version
|
PDFVersion | string |
The PDF specification version (e.g., 1.4, 1.7) |
Extract Specific Pages
Extract specific pages from a PDF file using a page range (e.g., "1-3,7").
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
PDF File Content
|
PdfFileContent | True | byte |
Base64-encoded content of the PDF file. |
|
Page Range
|
PageRange | True | string |
Page range to extract (e.g., "1-3,7") |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Extracted PDF
|
ExtractedPdf | byte |
Base64-encoded content of the extracted PDF file. |
Extract Text
Extracts all text from a PDF file, with optional StartPage and EndPage.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
PDF File Content
|
PdfFileContent | True | byte |
Base64-encoded PDF file |
|
Start Page
|
StartPage | integer |
Page number to start extraction from |
|
|
End Page
|
EndPage | integer |
Page number to stop extraction at (inclusive) |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Extracted Text
|
ExtractedText | string |
Combined text from all selected pages |
|
Text by Page
|
ExtractedTextByPage | array of object |
Array of extracted text objects per page |
|
Page Number
|
ExtractedTextByPage.Page | integer |
Page number of the PDF |
|
Text Content
|
ExtractedTextByPage.Text | string |
Text extracted from that page |
Merge PDFs
Merges multiple PDF files provided as base64 strings into a single PDF.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
PDF Files
|
PdfFiles | True | array of byte |
An array of base64-encoded PDF files to merge |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Merged PDF
|
MergedPdf | byte |
Base64-encoded content of the merged PDF |
Optimize PDF
Optimise a PDF by cleaning and recompressing internal objects. Takes a base64-encoded PDF and returns an optimised base64-encoded PDF.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
PDF File Content
|
PdfFileContent | True | byte |
Base64-encoded content of the PDF file to optimize. |
|
Optimization Mode
|
Mode | string |
Choose aggressive for maximum compression or safe for compatibility. |
|
|
Garbage Collection Level
|
Garbage | integer |
Level of unused object removal (0-4). Higher values remove more unused data. |
|
|
Apply Deflate Compression
|
Deflate | boolean |
Whether to apply deflate compression to streams. |
|
|
Clean Document
|
Clean | boolean |
Whether to clean and sanitize the PDF content. |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Optimized PDF
|
OptimizedPdf | byte |
Base64-encoded content of the optimized PDF file. |
Set Metadata
Sets metadata values (title, author, dates, etc.) on a PDF file.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
PDF File Content
|
PdfFileContent | True | byte |
Base64-encoded PDF content |
|
Title
|
Title | string |
The document title |
|
|
Author
|
Author | string |
The document author |
|
|
Subject
|
Subject | string |
The document subject |
|
|
Keywords
|
Keywords | string |
Document keywords |
|
|
Creation Date
|
CreationDate | string |
Date the PDF was created |
|
|
Modification Date
|
ModificationDate | string |
Date the PDF was modified |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Updated PDF
|
UpdatedPdf | byte |
Base64-encoded PDF with updated metadata |
Split PDF
Splits a PDF file either by a fixed number of pages or by specified page ranges.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
PDF File Content
|
PdfFileContent | True | byte |
Base64-encoded content of the PDF file. |
|
Split Type
|
SplitType | True | string |
Choose how to split the PDF. |
|
Pages Per Split
|
PagesPerSplit | integer |
Number of pages per output file (required if Split Type is Number Of Pages). |
|
|
Page Ranges
|
PageRanges | string |
Page ranges to split by (e.g., "1-2,4") (required if Split Type is Specified Ranges). |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Split PDF Files
|
SplitPdfs | array of byte |
Array of split PDF files. |