API Reference

v1

Connect any backend to Retake. Use this REST API if our SDKs don't support your language yet.

Authentication

Authenticate all requests by passing your API key in the header.

X-API-KeyHeader
Your Live API Keyrk_live_...

The Endpoint

POSThttps://retakeapi.com/api/v1/track

This single endpoint handles everything: tracking intent, marking conversions, and identifying users. The action is determined by the event parameter.

bash
# 1. Track Intent (Cart Abandonment)
curl -X POST https://retakeapi.com/api/v1/track \
  -H "Content-Type: application/json" \
  -H "X-API-Key: rk_live_..." \
  -d '{
    "event": "INTENT",
    "type": "cart",
    "userId": "user_123",
    "email": "[email protected]",
    "value": 120.50,
    "items": [{"id": "shoe_1", "price": 120.50, "name": "Air Max"}]
  }'

# 2. Track Conversion
curl -X POST https://retakeapi.com/api/v1/track \
  -H "Content-Type: application/json" \
  -H "X-API-Key: rk_live_..." \
  -d '{
    "event": "CONVERSION",
    "userId": "user_123",
    "transactionId": "tx_999",
    "value": 120.50
  }'

Event Types

1. Event: INTENT

Triggered when a user shows purchase intent (e.g. Abandoned Cart, Pricing View).

ParameterTypeRequiredDescription
eventstringYesMust be INTENT
typestringYesE.g. cartpricingcheckout
userIdstringYesUnique user ID or Session ID
emailstringCond.Required if new user, or to update email.
valuenumberOpt.Value of the cart/plan (e.g. 50.00)
itemsarrayOpt.Array of product objects for email templates.

2. Event: CONVERSION

Triggered after successful payment. Stops any scheduled recovery emails.

ParameterTypeRequiredDescription
eventstringYesMust be CONVERSION
userIdstringYesMust match the userId from the Intent event.
valuenumberYesFinal transaction value.
transactionIdstringOpt.Payment provider's transaction ID (Stripe/Paddle).

3. Event: IDENTIFY

Updates user profile (email, name) without triggering a workflow.

ParameterTypeRequiredDescription
eventstringYesMust be IDENTIFY
userIdstringYesUser ID to update.
emailstringOpt.New email address.
namestringOpt.User's full name.