How to call Amplitude Export API with R


I am trying to call the Amplitude Export API (link here: with R.

Below is the explanation but I really don't see how to apply the following using a function like GET or curl functions.

curl -u API_Key:Secret_Key '

Best answer by Saish Redkar 3 June 2021, 19:29

View original

7 replies

Userlevel 7
Badge +10

Hey @Maxence 
Here are some online tools which I use to translate curl commands into a specific language 

You will have to use the httr R package to make it work. I believe this is similar to the Requests library in Python.

Let me know if this works!


Many thanks @Saish Redkar  ! I managed to make the request as I get successful 200 http response.

BUT I don’t understand the data I retrieved. It’s some kind of gibberish as follow:

Do you know how I can decode this? 

Userlevel 7
Badge +10

Looks like it’s returning a raw vector.

As per the docs, httr will automatically decode content from the server using the encoding supplied in the content-type HTTP header. 


content(res, "text") 


content(res, "text", encoding = "ISO-8859-1")

This is what I get. I have a feeling the output could be a zip file as I see in the Export API but I don’t know how to read a zip file in R.



Userlevel 7
Badge +10

Hey Maxence,
Yup. The Export API outputs a zipped archive of JSON files, one or multiple files per hour depending on your input parameters.

I’m not well-versed with R that much but I use Python’s Request library pretty much for all my Amplitude API calls.

The httr webpage shows the following.

You can try extracting the output of the API call to a zipped file and then either manually unzipping it or extracting it using R code.

I did some digging and found this which might help you out. Hope this helps!


Is your use case to analyze the raw event json files in R?


@Saish Redkar you are a life savior ! :) 

From your suggestion I made it work by writing this:

bin <- content(res, "raw")
writeBin(bin, "")

Which downloaded mant zip files which contains many json files.

And I can read json files, thanks a lot ! :)

Userlevel 7
Badge +10

Glad that worked! Happy to have helped :)