Пиксельные события Facebook звонят с сервера
У меня абсолютно такой же вопрос, как и у dan - пиксель конвертации в Facebook с опцией "сервер на сервер". Там было написано, что не было никакой возможности, но это был 2013 год, поэтому я надеюсь, что что-то изменилось.
Итак, есть ли способ вызвать события пикселя Facebook (например, CompleteRegistration) со стороны сервера сейчас?
Я могу описать ситуацию более подробно. Представьте, что пользователь посещает наш сайт, где fb pixel отслеживает "PageView", конечно. Когда пользователь проходит через форму и отправляет свой номер телефона, мы вызываем событие "Lead". Но тогда нам нужно отследить еще одно событие, когда наш менеджер успешно подтвердит этого пользователя! Конечно, это происходит на другом компьютере и так далее, поэтому нет понятия, как "подключиться" к базовому пользователю.
Я видел много таких отделов документации, но я не могу полностью понять, даже если это возможно или нет.
Логически, нам нужно сгенерировать конкретный идентификатор для пользователя (или это может быть номер телефона), когда вызывается событие Lead. Затем мы должны использовать этот идентификатор для "CompleteRegistration" для этого пользователя. Но я не могу понять, как это сделать технически.
Было бы благодарно, если бы кто-нибудь смог это объяснить.
PS Как я понял, он полностью доступен в API для мобильных приложений. Можно ли использовать его для нашей ситуации, если нет другого решения?
1 ответ
Используйте автономные преобразования для записи событий, которые происходят после того, как пользователь покинул ваш сайт. Технически зарегистрировать эти преобразования очень просто. Настройка всего требует немного усилий
tldr; проверьте код ниже
Выполните шаги по настройке в документации FB (шаги по настройке 1-5):
- Настройка учетной записи Facebook Business Manager
- Добавить новое приложение в учетную запись Business Manager
- Создайте рекламный аккаунт, если у вас его еще нет
- Создать пользователя системы для рекламного аккаунта
После настройки выполните шаги для загрузки данных события на той же странице, шаги 1-3, чтобы создать автономный набор событий и связать его с вашим объявлением. Это можно сделать в Graph API Explorer, следуя ссылкам в примерах. Это может быть сделано программно, но выходит за рамки вызова событий с сервера для одной кампании.
После того, как вы создали набор событий, вы можете загрузить свой CompleteRegistration
События!
Вам нужно будет сделать запрос данных из нескольких частей в FB, ключ данных будет массивом ваших конверсионных событий. Как упомянул @Cbroe, вы должны хешировать свои ключи соответствия (имеющиеся у вас данные о вашем пользователе, чтобы сопоставить их с пользователем FB) перед отправкой в FB. Чем больше ключей соответствия вы сможете предоставить, тем больше шансов на сопоставление вашего пользователя. Так что, если вы можете получить их электронную почту и телефон одновременно, у вас гораздо больше шансов подойти к вашему пользователю.
Вот пример вызова FB с использованием node.js:
var request = require('request')
// The access token you generated for your system user
var access_token = 'your_access_token'
// The ID of the conversion set you created
var conversionId = 'your_conversion_set_id'
var options = {
url: 'https://graph.facebook.com/v2.12/' + conversionId + '/events',
formData: {
access_token: access_token,
upload_tag: 'registrations', //optional
data: [{
match_keys: {
"phone": ["<HASH>", "<HASH>"]
},
currency: "USD",
event_name: "CompleteRegistration",
event_time: 1456870902,
custom_data: { // optional
event_source: "manager approved"
},
}]
}
}
request(options, function(err, result) {
// error handle and check for success
})
Facebook теперь имеет серверный API: https://developers.facebook.com/docs/marketing-api/server-side-api/get-started
Реализация этого аналогична реализации автономных событий, указанных в принятом ответе.
Имейте в виду, что отслеживать и подключать события из браузера и с вашего сервера всегда будет неудобно. Вам необходимо использовать уникальный идентификатор пользователя между браузером и сервером, чтобы Facebook (или любой другой поставщик аналитики) знал, что событие принадлежит одному и тому же пользователю.
Такие инструменты, как mixpanel.com и ampitude.com, могут быть более адаптированы к вашим потребностям, но станут очень дорогими, когда вы выйдете из бесплатного уровня (100+ евро в mixpanel, 1000+ евро в Amplitude, ежемесячно). Эти инструменты ориентированы на успех компании, тогда как Facebook предназначен для продажи и измерения рекламы Facebook.