LiveRecoverVYG Developer Docs
CDP REST APIAPI Reference

List Profiles

List and search customer profiles, bucketed into deterministic customers and pixel-only anonymous profiles.

GET /cdp/profiles — list / search the brand's profiles, scoped to your shop.

Request

GET /cdp/profiles
Authorization: Bearer vyg_…

Query parameters

ParamTypeDefaultDescription
bucketcustomers | anonymouscustomerscustomers = deterministically-resolved identities (provenance server); anonymous = pixel-only profiles (provenance pixel). The two are never co-mingled.
qstringSearch term.
limitinteger25Page size, clamped to a maximum of 100.
offsetinteger0Offset; offset + limit must stay within the 10,000-row window or the request is rejected 400.
cursorstringOpaque scope-bound deep-pagination token. When present, offset is ignored.
sortstringitemId.keyword:ascSort key. The default stable sort is cursor-eligible; any other sort makes the page offset-only (no cursor minted).

Response 200

{
	"bucket": "customers",
	"list": [
		{
			"itemId": "shopify_your-shop_1234",
			"properties": {},
			"provenance": "server"
		}
	],
	"identities": {
		"shopify_your-shop_1234": {}
	},
	"totalSize": 1,
	"offset": 0,
	"pageSize": 25,
	"scope": "your-shop.myshopify.com",
	"nextCursor": null
}
FieldTypeDescription
bucketcustomers | anonymousThe bucket this response reflects.
listarrayThe page of profiles. Every profile carries a required provenance label (server | pixel | merged).
identitiesobjectIdentity projection keyed by each profile's itemId.
totalSizeintegerEstimated total, capped at 10,000 (see Pagination).
offsetintegerOffset this page started at.
pageSizeintegerEffective page size.
scopestringYour brand's connected shop domain.
nextCursorstring | nullToken for the next page, or null when enumeration is exhausted.

Provenance

A merged master (a probabilistic collapse) can appear in the customers bucket because it carries a deterministic shopify_* id, but it is always labelled merged — never silently server — so you never mistake it for one confirmed human.

Example

curl -s "https://cdp.vyg.app/cdp/profiles?bucket=customers&limit=25" \
  -H "Authorization: Bearer vyg_your_key_here"

Errors

StatusWhen
400A deep offset past the result window, or a malformed/cross-endpoint cursor.
401Missing or invalid credential.
403No connected shop resolves a scope; or a cursor minted for a different brand.
405Non-GET method.

See Errors for the full envelope.

On this page