Skip to content

List Event Types

GET /cdp/events/types — the discoverable event-type catalog. Lists every event type your brand can send through POST /cdp/events, each with its name, source, and a JSON-schema summary of the accepted envelope — so you never have to reverse-engineer accepted payloads.

The response is scope-filtered server-side: built-in types are platform-wide, and custom types are only ever your own brand’s registered schemas. Another brand’s custom event types never appear. Custom schema registration is not yet available — until it ships, the catalog contains the built-in types.

GET /cdp/events/types
Authorization: Bearer vyg_your_api_key

No query parameters. The scope is resolved from your API credential — there is no caller-suppliable scope input on this route.

{
"eventTypes": [
{
"name": "order_created",
"source": "built-in",
"title": "Order Created",
"description": "Fired when a Shopify/BC order is paid. Source: orders/paid webhook handler.",
"schema": {
"$id": "https://com.shopify/schemas/json/events/order_created/1-0-0",
"version": "1-0-0",
"required": ["eventType", "profileId"],
"properties": {
"eventType": "string — const \"order_created\"",
"profileId": "string — required, ≤60 chars, no \":\"",
"sessionId": "string — optional, ≤60 chars, no \":\" (server-minted when absent)",
"properties": "object — optional event properties (must not contain scope/shopDomain)",
"flattenedProperties": "object — optional flattened properties (must not contain scope/shopDomain)",
"timeStamp": "string — optional ISO-8601 timestamp (defaults to forward time)",
"target": "object — optional { itemId, itemType, properties? } (no scope)"
}
}
}
],
"scope": "your-shop.myshopify.com"
}
FieldTypeDescription
eventTypesarrayThe catalog, sorted by name. One entry per sendable event type.
scopestringYour brand’s connected shop domain.
FieldTypeDescription
namestringThe eventType value to send on POST /cdp/events.
sourcestringbuilt-in (platform-registered, visible to every brand) or custom (yours only).
titlestringDisplay title.
descriptionstringWhen the event fires / what it carries.
schemaobjectJSON-schema summary: $id, version, required fields, and properties map.

The built-in catalog covers the storefront pixel events (page_viewed, cart_viewed, checkout_started, checkout_completed, product_viewed, product_added_to_cart, search_submitted, …), the server-side commerce events (order_created, checkout_abandoned, checkout_recovered, customer_updated, consent_updated, subscription_changed, refund_issued, cart_updated, fulfillment_updated), the identity event (updateProperties), and the public CDP-native types (view, modifyConsent).

Terminal window
curl -s "https://cdp.vyg.app/cdp/events/types" \
-H "Authorization: Bearer vyg_your_api_key"
Statuserror codeWhen
401unauthorizedMissing or invalid credential.
403forbiddenAuthenticated, but no connected integration resolves a CDP scope for this brand.
405method_not_allowedMethod other than GET / OPTIONS.

See Errors for the full envelope.