Fabebook像素测试服务器事件



我正在尝试使用Graph API测试Facebook像素的服务器事件。我得到了这个响应。

{
"error": {
"message": "Invalid parameter",
"type": "OAuthException",
"code": 100,
"error_subcode": 2804019,
"is_transient": false,
"error_user_title": "Server Side Api Parameter Error",
"error_user_msg": "Unexpected key "email" on param "$['data'][0]".",
"fbtrace_id": "Ajfq0hd3gzSkADpWdh9210O"
}
}
有谁能帮我解决我做错了什么吗?

问题是,你需要发送一些数据在有建议在主页https://developers.facebook.com/docs/marketing-api/conversions-api/payload-helper客户信息必须进入有根据引用的facebook

客户信息参数为要发送的每个事件至少包含一个客户信息参数。Facebook将把这些数据用于其商业工具条款中描述的目的,包括广告归因和广告投放优化。除客户端IP地址、客户端用户代理、点击ID、浏览器ID外,所有客户信息参数均采用SHA256哈希。任何其他未散列的客户信息参数都将被Facebook自动拒绝。

有效载荷

{
"data": [
{
"event_name": "uno",
"event_time": 1613600385,
"event_source_url": "jksdhfkjsdhfkdjs",
"action_source": "website",
"user_data": {
"em": "7b17fb0bd173f625b58636fb796407c22b3d16fc78302d79f0fd30c2fc2fc068",
"ph": "7474b932bd08487ffc76773fdfd45ce84f3cbfccf2c8c2dcb7446836826c06cf"
},
"custom_data": {
"currency": "USD",
"value": "142.52"
}
}
],
"test_event_code": "TEST99348"
}

test_event_code,应以相同的令牌方式发送。

Php的例子:

<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://graph.facebook.com/v12.0/YOUR_PIXEL_ID/events',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('data' => '[{"event_name": "CompleteRegistration","event_id": "ev.123","event_time": "1633709956","action_source": "website", "user_data": {"client_ip_address": "70.80.XXX.XXX","client_user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.5 Mobile/15E148 Safari/604.1"},"custom_data": {"currency": "USD","value": 0.5,"websiteurl": "megaodds.net"}}]','access_token' => 'YOUR_TOKEN','test_event_code' => 'TEST86091'),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;

最新更新