Get a participant
Retrieve a participant with full details.
id with inline state: balances, tags, counters, attributes, tiers, program_ids, and profile fields (email, phone, first_name, last_name, display_name).
To look up a participant by your application’s user ID instead, use the list endpoint filtered by external_id.
Use the include query parameter to fetch only the sections you need: a comma-separated list of programs, state (tags, counters, attributes), tiers, and balances. Omit it to get all sections, or pass include=none for the profile only. Trimming unused sections reduces response size and skips the corresponding reads server-side.
id, external_id, status, profile fields, timestamps). Use this detail endpoint when you need the full participant state.Authorizations
API key passed in the X-API-Key header.
Path Parameters
Internal participant UUID
Query Parameters
Comma-separated detail sections: programs, state (tags, attributes, counters), tiers, balances. Omit for all sections; use none for profile only.
Response
Participant details
Key-value metadata. Each key is accessible in rules via the participant.attribute. shorthand (null if unset) or get(participant.attributes, "key", "")
{ "plan": "premium", "region": "us-east" }Current balances per asset, split by bucket
Numeric accumulators, returned as strings for precision
{
"points_earned": "1500",
"purchases": "42"
}When the participant was created
"2024-01-15T10:30:00Z"
Display name
"Jane Doe"
Contact email
"jane@example.com"
Your application's identifier for this user
"user_123"
First name
"Jane"
Participant ID
"550e8400-e29b-41d4-a716-446655440000"
Last name
"Doe"
Contact phone
"+15551234567"
Programs this participant is enrolled in
["550e8400-e29b-41d4-a716-446655440000"]Lifecycle state
"ACTIVE"
Labels for segmentation, accessible in rules via participant.tag. (true/false) or 'name' in participant.tags
["vip"]Current tier level per tier type
{ "loyalty": { "level": "gold", "rank": 2 } }When the participant was last modified
"2024-01-15T10:30:00Z"