LiveRecoverVYG Developer Docs
MCPToolsCDP tools

Customer Journey

Get a customer's full consolidated journey

cdp_customer_journey

Returns a single customer's full consolidated journey for the current brand: one newest-first timeline that merges CDP interaction events (orders, messages, subscriptions) with message bodies fetched live from the source and the browse / pixel timeline from the CDP. The three sources are composed on demand — if one browns out, the timeline still returns with a degraded flag set for that source rather than failing the whole call.

Identify the customer by either a CDP customerId or an external identity. Read-only and scoped to your brand.

Parameters

NameTypeRequiredDescriptionDefault
customerIdstringNo*The CDP customer id (uuid). Provide this or identity.
identityobjectNo*An external identity key: { type, value }, e.g. { "type": "phone", "value": "+14155550123" }.
limitnumberNoMax journey entries (1–500).200
sincestringNoISO-8601 lower bound — only include activity at or after this instant.
include_rawbooleanNoReturn the raw Unomi pixel payloads verbatim on browse entries instead of the compact projection (large).false

* Provide exactly one of customerId or identity.

Returns

  • customerId, brandId — the resolved customer and brand.
  • identities — the customer's identity graph (every resolved key).
  • journey — an array of entries, newest first. Each entry has a kind (message, order, browse, or event), occurredAt, source, eventType, sourceRef, signals, and any on-demand detail. Browse entries carry a compact projection by default (page title, url, path, referrer, product, order total, utm); order entries carry compact line-items. Set include_raw: true to return the raw Unomi pixel payloads verbatim.
  • degraded{ detail, browse }, flags noting any on-demand source that browned out for this request.
  • linkedCustomerIds — sibling cdp.customer uuids whose events were merged into this journey (a person often has separate email-anchored and phone-anchored rows, so SMS/message events attributed to the phone row surface here too). Empty when there are no linked siblings.

Example prompts

What's the full journey for jane@example.com?
Show me everything customer 8f2c… has done since June 1st

Notes

  • The brand is taken from your authenticated context; you can only read your own customers.
  • Message bodies and browse activity are fetched live and composed at read time — they aren't duplicated into the CDP.
  • Browse and order entries return a compact projection by default; pass include_raw: true only when you need the full verbatim pixel payloads (each raw browse entry is large — window/document geometry, userAgent, full checkout dumps).
  • Use limit and since to keep long histories focused on the window you care about.

On this page