Klaviyo Track Events Deprecated

So the Klaviyo track Events is DEPRECATED? Wow, I use this a lot. Does anyone know if we can still do this via API?

The original Make app for Klaviyo used the Klaviyo V1/V2 API. This has version of the Klaviyo API has been deprecated by Klayviyo themselves, and is due to be withdrawn on the 1st January 2024.

As a result we’ve built a new version of the Klaviyo app using their new API, but for a variety of reasons it’s not possible to do a simple upgrade (the endpoints aren’t a simple 1:1 map - see here).

Any scenarios using the original Klaviyo app modules will still work until 1st Jan. But before that deadline, it will be necessary to replace those modules with the corresponding module in the new Klaviyo app.

We’re planning an email blast to all Klaviyo app users to make this clearer, and we’re also planning some more additions to the new Klaviyo app.

1 Like

Wow ok…I’ve posted on the Klaviyo forum as well. I really miss the ability to Send custom Metric Events to Klaviyo. I don’t see anything in the API that I could use to do that.

I’m still researching, but it looks like the Track Event API is replaced by the Create Event API Here - Create Event.

@DavidGurr_Make Please consider updating the Klaviyo API to bring back the Custom Events so we don’t have to keep using the API.

It seems that you guys are updating the Klaviyo APIs, but not utilizing all of the power features like Searching to see who is in a Segment. Would love for this to be updated.

Thanks for the feedback.

The scale of changes in the Klaviyo API means that we’ve not yet been able to implement the new features as quickly as we would have liked. We do have plans to add some new functionality, including adding a module for the new Get Segment Profiles endpoint to replace the old Check if Someone is in a Segment module, and adding a Make an API Call module to cover any new endpoints that we’ve not added as modules. News of that will go out at the same time as the Klaviyo app upgrade notification.

I’ll make sure our App team is aware of the Track EventCreate Event change as well, though I can’t give any guarantees on when that will be released.

As there’s still 6 months left, if there’s functionality you need in the new App that isn’t yet there, I’d recommend letting us know but staying on the old App until it’s released. Alternatively, you’ll be able to use the Make an API Call module in the new App when it’s released to cover any missing modules.

Klaviyo is a really important partner for us, so we’re keen to ease the pain of the API changes as far as we’re able.

1 Like

I’m not a person to wait until something is fully deprecated in order to make changes. I’d rather get it out of the way a soon as possible. Perhaps anyone here can help me with this API and tell me what I’m doing wrong. I absolute hate APIs and still haven’t figured this stuff out as I’d rather devote the rest of my time making money. Can anyone tell me what I’m doing wrong:

This might be really simple … in the profile object, you’ve got "$email ": … I think that should be without the trailing space!

2 Likes

Yep…That was it! Got it working…Boy do I hate APIs…haha

Big Help @DavidGurr_Make

1 Like

Final Request Content Solved:

{
  "data": {
    "type": "event",
    "attributes": {
      "profile": {
        "$email": "{{1.email}}"
      },
      "metric": {
        "name": "User Logged In"
      },
      "properties": {
        "email": "{{1.email}}"
      },
      "time": "{{now}}"
    }
  }
}

FYI, I’ve just heard we’re aiming to get the Create Event module fasttracked and released at the same time as the other Klaviyo App changes and the upgrade email notification.

Thanks for your input!

2 Likes

Good News! Hopefully the Segment API could be fast tracked as well :pray:

1 Like

We’re planning to release all those App additions (including Get Segment Profiles, Create Event and Make an API Call) at the same time - we’re aiming for weeks rather than months.

2 Likes

Hey man.

Just wandered what info you used to authenticate? I’ve been struggling to understand what needs to go where.
I’m probably even worst than you when it comes to API :sweat_smile:
Here’s the screenshot of the adding a new keychain pop up.
I know you had troubled to signed in but I didn’t find the answer in your thread on how you fixed the issue.
This is the part I don’t understand in the Klaviyo doc regarding the authentification:
Klaviyo-API-Key your-private-api-key
What is the Klaviyo API KEY?

Any suggestion?
Thanks
Screenshot 2023-06-16 at 20-27-55 test gs klaviyo Make

haha…Yeah…those darn APIs. Once you create the connection, you can’t bring it back up, so I may be wrong on some of this. If you read the error messages though at the bottom they will tell you what went wrong.

  1. The Name can be any name you choose for the API Key
  2. The Key is the actual API key from Klaviyo
  3. API Keiy Placement is the Header
  4. API Key parameter name is: Klaviyo-API-Key

@jmacman This is what I get as a response:

  • status 401
  • code not_authenticated
  • title Authentication credentials were not provided.
  • detail Missing Authorization header.

For info, this is the one API call I’m trying to do:

Not sure if I have to put anything in the header part (see screenshot). I’ve put Klaviyo-API-Key but it doesn’t work.

Looks like you may be missing the URL. As I mentioned, it took me a few tries, but just don’t remember the settings, because they are now hidden, but maybe this screenshot may help. Make sure you are Raw Json.

You don’t have to put anything in the Header, because you already told the API Auth to put the Key in the header.

FYI, we’ve just released the Klaviyo app update:

  • The List Segment Profiles module uses the Get Segment Profiles endpoint
  • There’s a new Create an Event module
  • The new Make an API Call module handles all your authentication for unhandled API endpoints
2 Likes

For anyone interested, in order to use the List Segment Profiles module that has just been added, all you need to do is:

  1. Select the Segment
  2. Choose email (probably the most popular)
  3. Create a Filter that would look like this: any(email,["john@johndoe.com"])

Hope this helps anyone

2 Likes