Skip to main content
Contributor I
December 14, 2023
Solved

How to sync email send and open events to my system?

  • December 14, 2023
  • 3 replies
  • 215 views

Hello,

I want to sync all email sent and openned events to my system e.g. via webhooks.

How do I achieve that?

Thanks,

    This topic has been closed for replies.
    Best answer by saulblum

    I would use the Get Events API call linked to above. Go to the metric in question, e.g. Opened Email, in the UI and get the metric’s six-character ID from the URL, e.g. https://www.klaviyo.com/metric/QhyxVR/opened-email

    Then use that ID in a filter in the Get Events call, along with a time range. It won’t be real-time, but if you run the process often enough with small enough windows, it will be close to real-time.

    3 replies

    Klaviyo Employee
    December 14, 2023

    If you have purchased Klaviyo’s CDP, there is a webhooks feature that will hit an external webhook on events such as Opened Email and Clicked Email:

    https://help.klaviyo.com/hc/en-us/articles/17760478970907

    Otherwise, you can’t set up flows to be triggered on these events, so you would need to use the Get Events API (filtering on the IDs of the metrics you want) to periodically query Klaviyo for the events you care about, fetch their properties, and send them elsewhere.

    binhphanAuthor
    Contributor I
    December 18, 2023

    Thank you @saulblum,

    I have not purchased CDP yet, then I don’t know what webhook topics it has. I just want to make sure that I can get all email sent events. Does it has the topic like email.send?

    Do we have APIs to handle CDP flows? or I must create the flow on the console? 

    saulblumAnswer
    Klaviyo Employee
    December 18, 2023

    I would use the Get Events API call linked to above. Go to the metric in question, e.g. Opened Email, in the UI and get the metric’s six-character ID from the URL, e.g. https://www.klaviyo.com/metric/QhyxVR/opened-email

    Then use that ID in a filter in the Get Events call, along with a time range. It won’t be real-time, but if you run the process often enough with small enough windows, it will be close to real-time.