Skip to main content
POST
/
stores
/
{storeId}
/
events
curl --request POST \
  --url https://api.getredo.com/v2.2/stores/{storeId}/events \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "eventName": "Purchase Milestone Reached",
  "customer": {
    "id": "665f1a2b3c4d5e6f7a8b9c0d",
    "email": "stewart@example.com",
    "phoneNumber": "+11234567890",
    "firstName": "Stewart",
    "lastName": "Thompson",
    "location": {
      "street1": "123 Main St",
      "street2": "Apt 4B",
      "city": "Seattle",
      "state": "Washington",
      "stateCode": "WA",
      "postalCode": "98101",
      "country": "United States",
      "countryCode": "US",
      "ianaTimeZoneName": "America/Los_Angeles",
      "latitude": 47.6062,
      "longitude": -122.3321
    },
    "customFields": {
      "Age at Signup": 25,
      "Birthday": "1976-07-04T12:00:00Z",
      "Loyalty Tier": "Gold",
      "Accepts Marketing": true
    }
  },
  "eventTimestamp": "2026-04-02T12:00:00Z",
  "value": 299.99,
  "valueCurrency": "USD",
  "uniqueId": "milestone-test-001",
  "data": {
    "Milestone Type": "100th_purchase",
    "Total Spent": 5000,
    "VIP Tier": "gold",
    "Enrolled At": "2025-01-01T00:00:00Z",
    "Campaign Source": "email_drip",
    "Last Purchase Date": "2026-03-15T00:00:00Z",
    "$extra": {
      "Most Recent Order IDs": [
        1,
        2,
        3
      ],
      "Profile Snapshot": {
        "tier": "gold",
        "memberSince": "2024-01-01"
      }
    }
  }
}
'
{
  "detail": "<string>",
  "instance": "<string>",
  "title": "<string>",
  "type": "about:blank"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

storeId
string
required

Store ID

Example:

"64e5a8a1af49a89df37e4ee7"

Body

application/json

Custom event to trigger flows with merchant-defined event names and properties.

eventName
string
required

The name of the custom event (e.g., 'User Registered', 'Loyalty Reward Earned').

customer
object
required

Customer identity and profile fields. At least one of id, email, or phoneNumber is required for identity resolution.

data
object

Custom properties for this event (must not exceed 400 properties). The size of the event payload must not exceed 5 MB, and each string cannot be larger than 100 KB. For a full list of data limits on event payloads, see Limitations.

Note any top-level property that is not an object can be used to create segments. The $extra property records any non-segmentable values that can be referenced later, e.g., HTML templates are useful on a segment but are not used to create a segment.

eventTimestamp
string<date-time>

ISO 8601 timestamp when the event occurred. Defaults to current time if not provided.

value
number

Monetary or conversion value associated with the event (e.g., purchase amount).

valueCurrency
string

ISO 4217 currency code for the value field (e.g., "USD", "EUR").

uniqueId
string

Merchant-controlled deduplication key (1-255 characters). If provided, subsequent events with the same uniqueId for the same store are silently deduplicated. Use this for safe retries and at-least-once delivery patterns.

Response

Event accepted and queued for processing. No response body is returned.