Pull from a CSV URL

Hi

I have a CSV from a supplier that can be accessed via a URL. What do I use to pull that in? the CSV integration just seems to pull from the Local Computer.

Thanks

Hi @JASON_MARTIN,

To pull in an external service’s CSV via a URL, you’d use the step Pull from an API and enter it as the API Endpoint URL. The URL would need to be the one where if it is clicked, it automatically downloads the CSV file.

Thanks, Adeline.

This fails but due to the data I think, although the CSV in question imports into Airtable without issue. I’m not in control of the source, is there anything I can to pull and clean the data?
image

Cheers

@JASON_MARTIN ah, I see. The import step Pull from an API has a strict way of parsing the response by running with default settings and erring out any non-standard CSV formatting. It is on our radar to make this step more flexible in what CSV response formats it can parse. Unfortunately today though, this step won’t be able to pull in the data from that source if in an unusual CSV format. Could you check to see if the external service’s API is able to send the data in a JSON format type?

2 Likes

Thanks, they don’t have an API. They have XML if that’s an option?

Hey @JASON_MARTIN1, the XML option just might work! Have you given that a try in the Pull from an API step?

1 Like

Sorry, just got back on this.

I have an issue with the XML not returning any data. If I paste into the browser it downloads the file but if I pull it using the API module there is no data?

How can I see what is going on?

Cheers

Hi @JASON_MARTIN, if in the step Pull from an API an XML isn’t working as the API Endpoint URL to bring in data, then it likely isn’t a content type we support. If it is a content type like application/xml or text/xml then it will work, but if it is like application/octet-stream then it won’t. It unfortunately sounds like the latter is occurring for your specific XML.

1 Like

Hi Jason, I have used PHP to create middleware that tweaks data so it will work with Parabola. If this is something you need to do on a regular basis, I might be able to help. It sounds like your csv file needs a little formatting done before it can be used, can you post an example of the first few lines from the csv?

1 Like

Hi Thomas,

Thanks for the reply. I’m not sure what is going on. The file looks OK but it
's just returning nothing when I use the API to pull the file directly from the endpoint. I have attached a few records from the beginning of the file.

“Code”,“Title”,“Price”,“Available Stock”,“Stock Expected”,“Stock Expected On”,“Height”,“Width”,“Depth”,“Weight”,“BarCode”
“0015”,“Wooden Plaque Holder”,“3.73”,“106”,“0”,“01/01/1900 00:00:00”,“8”,“15”,“20”,“0.166600”,“5050140001592”
“0015-B”,“Wooden Plaque Holder in Black”,“3.73”,“78”,“0”,“01/01/1900 00:00:00”,“8”,“15”,“20”,“0.000000”,“5050140232330”
“0015-N”,“Wooden Plaque Holder in Natural Finish”,“3.73”,“7”,“0”,“01/01/1900 00:00:00”,“8”,“15”,“20”,“0.000000”,“5050140232439”
“0260”,“Sitting Jazz Band Saxophonist”,“10.4”,“0”,“240”,“27/10/2020 00:00:00”,“38”,“17”,“11”,“0.701000”,“5050140026007”

I ended up using Integromat to grab the csv, and then convert it to a Google Sheet. Parabola then works very nicely.

Don’t think it is the same issue as you are facing, but it “should” work.

1 Like

Hi,

I have a question on extracting the CSV from an API call. I can see the link is pulled, but how to I "convert / import etc the file for further processing?

Hey @Thinus_Enslin – we can continue this conversation in the new post on this topic!