Parse CSV to JSON in Power Automate with PDF4me
PDF4me CSV - Parse to JSON is a Power Automate action that converts a CSV file into a structured JSON array with a three-tier header priority system and configurable delimiter. Use it to feed CSV exports into databases, REST APIs, or Excel without writing a custom parser in your flow.
What this action does
PDF4me CSV - Parse to JSON reads a CSV file and returns a Base64-encoded JSON array of objects, with Column Headers, Skip First Line, and Culture Name controlling how rows and headers are interpreted. Any delimiter works, and malformed rows are handled gracefully instead of failing the flow.
How Do I Authenticate My Power Automate Flow?
Every PDF4me action in Power Automate requires a valid connection. Create or select one that holds your PDF4me API key so the flow can authenticate CSV parsing requests securely.
Important Facts You Should Not Miss

Map File Content and File Name, set CSV Delimiter, then expand Advanced parameters for Column Headers, Skip First Line, and Culture Name.
Parameters
Required: File Content, File Name, and CSV Delimiter must be provided. Column Headers, Skip First Line, and Culture Name are optional advanced parameters.
| Parameter | Required | What it does | Example |
|---|---|---|---|
| File Content | Required | Base64 content of the source CSV file, mapped from SharePoint, OneDrive, or an email attachment. | [File Content from Get File] |
| File Name | Required | CSV filename including extension, used for processing and output identification. | data.csv |
| CSV Delimiter | Required | Character or short string separating columns. Comma, semicolon, tab, and pipe are all supported, as are multi-character delimiters. | , |
| Column Headers | Optional | Comma-separated custom header names. When provided, every CSV line including the first is treated as data and Skip First Line is ignored. | FullName,Age,Email |
| Skip First Line | Optional | When true and Column Headers is empty, uses the first CSV line as headers and starts data from the second line. Default false. | true |
| Culture Name | Optional | Locale used to interpret region-specific number and date formats in the CSV content. | en-US |
Output Fields
| Field | Type | What it contains |
|---|---|---|
document | Base64 | The parsed JSON array, UTF-8 encoded and Base64 wrapped. |
FileName | String | Fixed output filename, "parsed_data.json". |
Success | Boolean | true if parsing completed, false if the action failed. |
ErrorMessage | String | Error description, null when Success is true. |
Errors | Array | Detailed error objects with Code and Message, empty when Success is true. |
What Do the Common Error Messages Mean?
| Error Message | Cause | Solution |
|---|---|---|
| Request is empty | Request object is null. | Provide a valid request object. |
| Document is empty | Document object is null or CSV content is null. | Provide valid CSV file content. |
| Encoding exceptions | CSV content is not UTF-8 encoded. | Re-save or export the CSV file as UTF-8. |
| Empty array output | CSV content is empty or contains only a header row. | Provide a CSV file with at least one data row. |
How Do I Set Up Parse CSV in Power Automate?
- Add PDF4me → CSV - Parse to JSON to your Power Automate flow.
- Map File Content and File Name from a previous action (SharePoint, OneDrive, or email attachment).
- Set CSV Delimiter to match your source file (comma, semicolon, tab, or pipe).
- Expand Advanced parameters and set Column Headers for custom names, or Skip First Line to use the file's own header row.
- Run the flow, decode the document Base64 output, and loop through the resulting JSON array with Apply to each.
Typical Setups
Workflow ExamplesCommon Power Automate flow patterns using Parse CSV.
- A CSV file lands in a SharePoint "Imports" folder, triggering the flow.
- Parse CSV converts it to JSON with CSV Delimiter set to a comma and Skip First Line enabled.
- The document output is decoded and parsed into individual JSON objects.
- Apply to each loops through the records and inserts them via a SQL connector.
- The processed CSV is moved to an "Archive" folder.
- A source system emails a semicolon-delimited CSV export.
- Parse CSV runs with CSV Delimiter set to a semicolon and Skip First Line enabled.
- Each parsed record is posted to a REST API endpoint with HTTP.
- Response codes are collected to flag any failed records.
- A summary is emailed once the loop completes.
- A legacy report arrives as a tab-delimited CSV with no header row.
- Parse CSV runs with CSV Delimiter set to a tab and Column Headers set explicitly.
- The resulting JSON array feeds a PDF4me Add Rows action to populate an Excel template.
- The formatted Excel workbook is emailed to stakeholders.
Practical Tips
Cheat Sheet
| Field | Value |
|---|---|
| Action | CSV - Parse to JSON |
| Header priority | Column Headers > Skip First Line > auto-generated |
| Common delimiters | , (comma) / ; (semicolon) / \t (tab) / | (pipe) |
| Output filename | parsed_data.json (fixed) |
| Output format | document (Base64 JSON array) |
| Malformed data behavior | Returns empty array, does not error |
Common Questions
Industry Use Cases & Applications
- IT & System Integration
- Finance & Accounting
- Sales & Marketing
- Human Resources
- Operations & Supply Chain
- Legacy System Integration: Parse CSV exports from legacy systems to JSON
- API Data Feed: Convert CSV data to JSON for REST API consumption
- Database Migration: Parse CSV files for database import operations
- Log File Processing: Parse CSV-formatted log files for analysis
- Bank Statement Import: Parse CSV bank statements to JSON for processing
- Transaction Processing: Convert CSV transaction exports to structured JSON
- GL Data Import: Parse chart of accounts CSV exports for ERP import
- Invoice Processing: Convert CSV invoice data to JSON for automation
- Lead Import: Parse CSV lead lists from marketing platforms
- Campaign Data: Convert CSV campaign results to JSON for analysis
- Contact Import: Parse CSV contact exports from various sources
- Sales Data Integration: Convert CSV sales reports to JSON for CRM import
- Payroll Data: Parse CSV timesheets for payroll system import
- Employee Import: Convert CSV employee data to JSON for HRIS
- Benefits Enrollment: Parse CSV enrollment data for processing
- Attendance Records: Convert CSV attendance exports to structured JSON
- Inventory Import: Parse CSV inventory exports to JSON for system import
- Order Processing: Convert CSV order data to JSON for processing
- Shipping Data: Parse CSV shipping manifests for logistics systems
- Supplier Data: Convert CSV vendor lists to JSON for procurement