The Formatter Import CSV File Utility can be used as an Action Step in your Zap to import CSV files. You'll find it in the Utilities section:
It uses a File type field for input, so you can import a File field from a previous step, a public URL that points to your CSV file, or even text entered in CSV format. The existence of a header row is determined based on the content of the CSV file. In some cases, this check doesn't work, so you can use the "Force First Row as Header Row" option by selecting "yes" from the menu.
The type of CSV file you are importing is also automatically determined. If in your Test Step you find that this did not work, you can use the Type of CSV File option to choose the specific file type (including one column):
In the example below, we are using a File field from a Google Drive Trigger Step that has a header row:
Its output is four fields:
- dialect - was the dialect automatically determined (default), or chosen from the Type of File option?
- header - was a header found in the CSV file or forced by the option.
- csv_text - a text field that includes all of the text from the CSV file.
- line-items - line-item fields for each of the CSV file's column values
If you wanted to import your CSV into a Google Sheet, you could add the "Create Spreadsheet Row(s)" Action, and then map the line-item fields from your Formatter Import CSV Step:
CSV (Comma Separated Values) files are a special kind of formatted text file that are used to store column-oriented data, much like a spreadsheet. In their simplest form, there is a header row, followed by multiple rows of data, with each column separated by a comma. A simple example is here:
Year,Make,Model 1997,Ford,E350 2000,Mercury,Cougar 2019,Tesla,3
Exceptions are the rule with CSV files, though, and many CSV files are labeled as such but don't have this kind of formatting. The Formatter Import CSV File transform will try to interpret your format and do the right thing, but there are many edge cases when it won't be able to. You can use the Type of CSV File option to try to help with this interpretation, but not all CSV files can be imported.
I am not seeing my full CSV file when I do a Test Step
As CSV files can be rather large, we limit the Test Step to 1000 characters of text and 50 line-items. Please let us know if this is not enough for you to set up your Zap.
CSV Import only supports file sizes < 150K error
The utility only supports importing files that are 150K or less (which is around 1000 rows of a 10 column CSV file.) You'll need to split the CSV file into multiple files if it's too large.
Could not determine delimiter error
The CSV file you are trying to import doesn't use a recognized delimiter (commas, semi-colons, tabs), or the delimiter was not able to be recognized. If you know your delimiter or you have a One Colum CSV, you can choose that in the Type of CSV File option and hopefully that will help the transform determine this.
"utf8 codec can't decode byte xxx in position yyyy: invalid continuation byte"
Import CSV File only supports ASCII and UTF-8 encoding today. You'll need to re-encode your CSV in order to import it into your Zap.
My Action App does not support Line-Items
Many Zapier integrations don't support line-items fields. One option here is to use Google Sheets and its "Create Spreadsheet Row(s)" Action, which accepts line-item fields mapped to columns. Once the data is in the sheet, then other Zaps can be created to manipulate it.