The identify and track endpoints are used for identifying customer profiles and tracking profile activity. For example: tracking when someone is active on your website, when a purchase is made, or updating a customer's phone number. They are optimized for low latency and high numbers of requests, and they do not adhere to the same REST principles our other APIs use.

If you are planning on a full eCommerce integration, please see the following guide: Integrate a Platform Without a Pre-built Klaviyo Integration.

Request and Response Formats

The track and identify endpoints use the same request and response formats.

Responses from requests made to the track and identify endpoints return either 1, for success, or 0, for failure. NOTE: success in this context solely indicates that the request was formatted properly, and does not account for whether or not provided key is valid, in which case event will not be reflected in account. API requests are processed asynchronously, typically in less than a second, so when a request returns there might be a slight delay before data appears inside Klaviyo. In certain cases, such as pixel tracking, it may be better to return a blank pixel than a success or failure message. In those cases, you can always return a blank pixel by adding a parameter i=1 to your request.

For both Track & Identify, there are two valid approaches to send the request: POST and GET. We recommend that all new implementations use POST; GET is offered for backwards compatibility with existing implementations.

For customers working with GET: this approach requires base64 encoding the payload and sending it as a query parameter.