Skip to main content

I have read this prior post before posting.

I’m trying to build a connector for Klaviyo so that email marketers can pull their klaviyo campaign/flow stats to Google Sheets / ChatGPT. To achieve such a goal, I decide to do an overall aggregation over all the events due to the limitations of the existing reporting api such as not including profiles, other important fields. 

Aggregation over all events works great and accurately except that it takes too slow. If an account sends thousands of emails per day, then it will take more than 5 mins to retrieve all the Received Email events in a date range of 7 days. 

We currently do what’s advised - sequentially send requests to https://a.klaviyo.com/api/events and get the next page url from the prior response. Each response contains 200 events. 

This method is way too slow. Is it possible if we could do this concurrently while still being under the rate limits (350/s and 3500/m)? Is it possible to pre-calculate the page cursors returned at each response like WzE3MzI5MjUwMjMsICI1SlNDRHJZeEtOayIsIHRydWVd? It’s encoded with Base64 but the underlying encoded dataset does not make a whole lot of sense. 

Being able to get events fast and ideally concurrently will be a game changer for us. Thanks. 

Be the first to reply!

Reply