Creating a new profile on Kaviyo, if it doesn't exist yet

Hey there!

I’m a big fan of Make, and dream of the day that I can fully ditch Zapier!

However, currently that’s not possible for us due to the below:

What we want to do:

  1. Find/Create profiles in Klaviyo.
  2. Add the profile to a List.

Zapier’s “Find a profile” module has a box which when ticked, will CREATE a new profile if no profile exists with those details, before adding them to the list.

Make doesn’t have this feature.
Either I have to use the “Create profile” module, which runs into an error if the users already exists in our database. Outcome: Profile doesn’t get added to the list due to the error.

OR I have to use the “find a profile” module, which runs into an error if it’s a new profile. Outcome: Profile doesn’t get added to the list due to the error.

Is there a workaround for this?
Is there a reason Make doesn’t have this simple feature?
Who can I speak to about getting this added?

thanks!

Hello there @Mo1 :wave:

Glad to hear you are such a fan of Make! Believe me, so are we. :smile:

This sounds like a cool feature! Please, feel free to submit your idea to our Idea Exchange page, where others can upvote your suggestion and you can monitor its progress. Remember to search for it before you create a new suggestion.

Thank you and have a wonderful day! :sunny:

1 Like

Not sure if you are still looking for a work around. I am in a similar situation.

This is how we do it:

  1. Using the Klaviyo API module, figure out if the profile exists.
    URL: /profiles
    Method: GET
    Query:
    item 1 > key : filter
    item 1 > value: equals(email, “email@email.com”)

This module will output a data object. If the customer exists, there’s going to be an id in the object. If there isn’t one, you’ll know the customer doesn’t exist and can create a profile first.

You can set a router with a condition like this:
body.data.id exists?

Caveats:
This works most of the time for me. But all these service APIs (Klaviyo’s, etc.) are not perfect. Occasionally, I see false negatives. In those instances, the Klaviyo module doesn’t return an ID, and when I’m creating a new profile (0.2 seconds later) it says the profile exists and throws an error.