#
События
Для сбора статистики, расчёта целей и оптимизации кампаний необходимо передавать в Gravity Field информацию о действиях пользователя.
#
event: передача событий
API reference
В API V2 события передаются в массиве data[]. Дополнительные свойства события передавайте в customProps.
#
Активация и таргетинг
/event не только сохраняет пользовательское событие для статистики. Ответ также может содержать кампании, подходящие под переданное событие.
Если в ответе вернулся непустой campaigns[], это означает:
- Для одного из переданных событий нашлась кампания.
- Пользователь и текущий
ctxподходят под условия этой кампании. campaigns[].campaignIdможно использовать в/choose, чтобы получить контент.
Если campaigns[] пустой или отсутствует, событие всё равно принято для аналитики и целей, но для текущего пользователя не нашлось кампании под это событие.
curl --request POST
--url 'https://evs-01.gravityfield.ai/v2/event'
--header 'content-type: application/json'
--header 'Authorization: Bearer your-api-key'
--data '
{
"sec": "YOUR_SECTION_ID",
"user": {
"uid": "665f0a000000000000000001",
"ses": "7356efc2-6ffd-4553-bade-b9ab5d9ce141"
},
"ctx": {
"type": "CART",
"data": [],
"location": "https://shop.ru/cart"
},
"device": {
"ua": "Mozilla/5.0",
"ip": "54.100.200.255"
},
"data": [
{
"type": "purchase-v1",
"name": "Purchase",
"productId": "sku-123",
"quantity": 1,
"value": 1990,
"currency": "RUB",
"uniqueTransactionId": "order-100500",
"customProps": {
"paymentMethod": "card"
}
}
]
}'
{
"user": {
"uid": "665f0a000000000000000001",
"ses": "7356efc2-6ffd-4553-bade-b9ab5d9ce141"
},
"campaigns": [
{
"campaignId": "665f0b000000000000000001",
"experienceId": "665f0c000000000000000001",
"trigger": "event",
"priority": 10,
"delayTime": 0
}
]
}
#
Как использовать ответ
- Сохраните обновлённые
user.uidиuser.ses, если они пришли в ответе. - Если
campaigns[]пустой, дополнительных действий для показа кампании не требуется. - Если
campaigns[]не пустой, выберите кампанию и передайте еёcampaignIdв/choose.
/event отвечает за запись события и список подходящих кампаний. Контент, вариация и tracking URL возвращаются только в /choose.
#
Пример события логина с единым CUID
Для унификации профилей пользователя между Web, мобильными SDK и офлайн-данными рекомендуется в событии login-v1 использовать один и тот же идентификатор.
{
"type": "login-v1",
"name": "Login",
"cuid": "HASHED_PHONE_STRING",
"cuidType": "phone_hash"
}
Тот же cuid и cuidType должны использоваться в Web, мобильных SDK, API V2 и импорте офлайн-данных.