Insights & updates from our experts
Overview
Utility connector for working with CSV content inside a runbook. It parses an in-memory CSV string into structured data, including an optional header row and positional data rows. The input is normalized to UTF-8 before parsing, making it suitable for processing CSV content from previous actions, HTTP responses, or file attachments.
Actions
Parse CSV
Parses an in-memory CSV string into an optional header row and positional rows. Blank lines are skipped, and ragged rows are preserved.
Use case: Convert a CSV payload from an upstream action into structured rows that a runbook can iterate over.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
content |
String | Yes | - | The CSV text to parse. |
headers |
Boolean | No | true |
Treat the first row as a header row. |
col_sep |
String | No | , |
Field delimiter. |
quote_char |
String | No | " |
Quote character. |
declared_encoding |
String | No | UTF-8 |
Fallback encoding used only when the input has no byte-order mark. |
Example Input
{
"content": "name,city\nAlice,NYC\n"
}
Output
| Field | Type | Description |
|---|---|---|
header |
String[] | The first row when headers is true; otherwise empty. |
rows |
Array[] | Parsed data rows. Each row is returned as a list of string values. Ragged rows are preserved. |
truncated |
Boolean | Indicates whether the input contained more rows than the connector returned. |
source_encoding |
String | The detected or declared encoding before conversion to UTF-8. |
lossy_encoding |
Boolean | Indicates whether any characters were replaced during UTF-8 conversion. |
Example Output
{
"header": [
"name",
"city"
],
"rows": [
[
"Alice",
"NYC"
]
],
"truncated": false,
"source_encoding": "UTF-8",
"lossy_encoding": false
}
Error Handling
The action fails with a clear error message when the CSV input cannot be parsed, an invalid option is supplied (such as an unknown
declared_encoding, an empty col_sep, or a multi-character quote_char), or when a row exceeds
16,384 columns, which typically indicates an incorrect delimiter.
Ragged rows are preserved with their original length. If character conversion to UTF-8 results in data loss, the
lossy_encoding output is set to true.
Best Practices
- Combine the
headeroutput with each row to enable name-based column access. - The connector returns a maximum of 65,536 rows. Check the
truncatedoutput to determine whether additional rows were omitted. - Verify the
lossy_encodingoutput before processing text originating from non-UTF-8 sources. - Use the parsed rows with Loop or For Each actions to process CSV records efficiently within a runbook.
Common Use Cases
- Parse CSV files retrieved from HTTP endpoints.
- Process CSV attachments from email connectors.
- Import data into business applications from CSV exports.
- Transform CSV reports into structured data for downstream actions.
- Iterate over CSV records to automate bulk operations.






.webp)






.webp)
.webp)













