如何通过服务端JS代码向Google Ads发送转化数据,类似Facebook转化API?
服务端JavaScript上报转化数据实现方案
通常我们会在网站中添加脚本为Google Analytics追踪转化行为,你完全可以参考Facebook转化API的实现逻辑,通过原生JavaScript代码从服务端发送对应数据,Facebook侧的实现示例如下:
方式一:使用官方Node.js SDK上报
'use strict'; const bizSdk = require('facebook-nodejs-business-sdk'); const Content = bizSdk.Content; const CustomData = bizSdk.CustomData; const DeliveryCategory = bizSdk.DeliveryCategory; const EventRequest = bizSdk.EventRequest; const UserData = bizSdk.UserData; const ServerEvent = bizSdk.ServerEvent; const access_token = '<ACCESS_TOKEN>'; const pixel_id = '<ADS_PIXEL_ID>'; const api = bizSdk.FacebookAdsApi.init(access_token); let current_timestamp = Math.floor(new Date() / 1000); const userData = (new UserData()) .setEmails(['joe@eg.com']) .setPhones(['12345678901', '14251234567']) // 转化API事件建议上报客户端IP和User Agent .setClientIpAddress(request.connection.remoteAddress) .setClientUserAgent(request.headers['user-agent']) .setFbp('fb.1.1558571054389.1098115397') .setFbc('fb.1.1554763741205.AbCdEfGhIjKlMnOpQrStUvWxYz1234567890'); const content = (new Content()) .setId('product123') .setQuantity(1) .setDeliveryCategory(DeliveryCategory.HOME_DELIVERY); const customData = (new CustomData()) .setContents([content]) .setCurrency('usd') .setValue(123.45); const serverEvent = (new ServerEvent()) .setEventName('Purchase') .setEventTime(current_timestamp) .setUserData(userData) .setCustomData(customData) .setEventSourceUrl('http://jaspers-market.com/product/123') .setActionSource('website'); const eventsData = [serverEvent]; const eventRequest = (new EventRequest(access_token, pixel_id)) .setEvents(eventsData); eventRequest.execute().then( response => { console.log('Response: ', response); }, err => { console.error('Error: ', err); } );
方式二:直接调用接口上报
你也可以直接通过HTTP请求上报事件:向对应API的/events端点发起POST请求,请求路径格式为https://graph.facebook.com/{API_VERSION}/{PIXEL_ID}/events?access_token={TOKEN},提交请求后即可完成服务端事件创建。
内容的提问来源于stack exchange,提问作者Avijit Mandal
相关产品推荐
相关产品推荐

