Record authenticated commerce intent
Merchant server only, secret API key with retention:edit AND contacts:edit. Verify the authenticated buyer before mapping Bitelio integrationId/contactId/orderId. Requires enabled tracking and an active order-scoped program with no withdrawal or erased feedback. Shopify product/variant GIDs must belong to that integration. occurredAt must be within the last 24 hours and not in the future. Immutable eventId deduplication rejects changed payloads; 120 requests/project/minute. Public pixel events do not establish trusted purchase intent. Does not create consent or answer surveys. Decision evidence expires in 2–48 hours; the cleanup worker then removes temporary diagnostic history.
Authorization
ApiKeyAuth API Key authentication. Secret keys (sk_*) are required for all endpoints except /v1/track. Public keys (pk_*) only work with the /v1/track endpoint for client-side event tracking. The project is automatically derived from the key.
In: header
Request Body
application/json
1 <= length <= 1001 <= length <= 1001 <= length <= 100^[a-zA-Z0-9._:-]+$1 <= length <= 128"VIEWED_PRODUCT" | "ADDED_TO_CART" | "CHECKOUT_STARTED" | "CHECKOUT_ABANDONED" | "CHECKOUT_COMPLETED"date-time1 <= items <= 20Response Body
application/json
curl -X POST "https://bitelio-api.heltia.com/v1/retention/commerce-intents" \ -H "Content-Type: application/json" \ -d '{ "integrationId": "string", "contactId": "string", "orderId": "string", "eventId": "string", "kind": "VIEWED_PRODUCT", "occurredAt": "2019-08-24T14:15:22Z", "products": [ { "productId": "string" } ] }'{
"id": "string",
"accepted": true,
"duplicate": true,
"expiresAt": "2019-08-24T14:15:22Z"
}