Skip to main content
Solved

Retrieving and Updating Customer List Presence and Properties in Klaviyo


dani-peter22
Contributor I
Forum|alt.badge.img+1

Hello Klaviyo Community,

I'm currently working on a system where I aim to synchronize and manage customers from Klaviyo lists. My question is: Is it possible to retrieve information regarding whether a customer is included in a list and when they unsubscribe? I've already tried subscribing to metrics, but there have been instances where the metrics weren't triggered and the customer wasn't updated. Also tried fetching all customers from a list but then my customers in DB have still status that they are in the lists, because i don't receive the ones who unsubscribed. 

Additionally, I would like to update consents (including profile properties) for customers. I was thinking about sorting profiles by the "updated" timestamp and updating subscriptions and properties based on that. Can I rely on this method of sorting by updated timestamp, or is there a better approach that I might be missing?

Thank you

Best answer by Brian Turcotte

Hi @dani-peter22!

Yes, when a property changes in a profile, the updated timestamp will also be updated.

 

Best,

Brian

View original
Did this topic or the replies in the thread help you find an answer to your question?

5 replies

Brian Turcotte
Forum|alt.badge.img+37

Hi @dani-peter22!

To answer your questions:

  1. Is it possible to retrieve information regarding whether a customer is included in a list and when they unsubscribe?
    • You can use the Get Profile Relationship Lists API endpoint to return the lists that a profile is subscribed to. Or, you can use the Get List Profiles endpoint to return all of the profiles that are subscribed to a List. 

      However, there is not currently a way to be notified or determine the exact time someone unsubscribes.
       
  2. Additionally, I would like to update consents (including profile properties) for customers. I was thinking about sorting profiles by the "updated" timestamp and updating subscriptions and properties based on that. Can I rely on this method of sorting by updated timestamp, or is there a better approach that I might be missing?
     
    • You can update profile consent statuses using the Subscribe Profiles and Unsubscribe Profiles endpoints, and you can update profile properties using the Update Profile endpoint.

      Per the second half of the question - I’m not sure if I totally understand...would you mind explaining more about your exact use case?
       

I hope this helps get you started, and thanks for using the Community!
 

- Brian


dani-peter22
Contributor I
Forum|alt.badge.img+1
  • Author
  • Contributor I
  • 2 replies
  • October 6, 2023

Thanks @Brian Turcotte for you answer. 

To clarify the second half of the question, our goal is to synchronize customer profiles, including properties and subscriptions, with customers already imported into our internal system. We do not want to update customers in Klaviyo.

Currently, we are considering importing all customers daily. However, there might be a more optimal way to do this by sorting customers by their updated timestamp, which will allow us to fetch customer updates until the last import. Is this approach using the updated timestamp reliable, or are there any other options through which we can determine when a customer profile is updated?


Brian Turcotte
Forum|alt.badge.img+37

Hi @dani-peter22!

Thanks for clarifying - if your goal is to update profiles in a system that’s external to klaviyo, this is typically accomplished via webhook - but at this time our webhooks do not support unsubscribes, as they are not tracked by a Klaviyo metric.

 

That said, your timestamp workaround might be your best bet, but at this time Klaviyo does not have an officially supported way to externally track unsubscribes.

 

Best,
Brian


dani-peter22
Contributor I
Forum|alt.badge.img+1
  • Author
  • Contributor I
  • 2 replies
  • October 27, 2023

Thank you @Brian Turcotte for the clarification. Does this also apply to other customer properties when they change? For instance, if a customer's "country" property is updated, is “updated” timestamp value updated? Does it work like that?


Brian Turcotte
Forum|alt.badge.img+37
  • Klaviyo Alum
  • 1393 replies
  • Answer
  • January 23, 2024

Hi @dani-peter22!

Yes, when a property changes in a profile, the updated timestamp will also be updated.

 

Best,

Brian