You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用Facebook Conversion Api报(#100) The parameter data is required错误求解

问题原因

  • 你当前设置的请求头Content-Type: multipart/form-data和实际提交的POST数据格式不匹配:你直接传递了JSON字符串,但multipart/form-data要求提交键值对格式的参数,Facebook接口无法从你提交的内容中解析出data参数,因此抛出参数缺失的报错。

修复方案(二选一即可)

方案1:保持JSON提交格式(更简单,适配你现有代码)

仅需要修改请求头的Content-Type为application/json即可,修改后的完整代码如下:

<?php
// 替换为你真实的像素ID和访问令牌
$url = "https://graph.facebook.com/v10.0/<PIXEL ID>/events?access_token=<TOKEN>";

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

// 仅修改这里的Content-Type
$headers = array(
    "content-type: application/json",
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

$data = '{
    "data": [
        {
            "event_name": "Purchase",
            "event_time": '.time().',
            "action_source": "website", 
            "event_id": '.rand(100000, 500000).',
            "user_data": {
                "em": "6b583232e99af45c3b436798f32800a4dd6f3524624ba6507ed8269b53ce82a3",
                "ph": null
            },
            "custom_data": {
                "currency": "USD",
                "value": "37"
            }
        }
    ],
    "test_event_code":"TEST9031"
}';

curl_setopt($curl, CURLOPT_POSTFIELDS, $data);

$resp = curl_exec($curl);
curl_close($curl);
var_dump($resp);
?>

方案2:使用multipart/form-data格式提交

如果你需要保持multipart/form-data的提交方式,就需要把参数拆为键值对传递:

<?php
$url = "https://graph.facebook.com/v10.0/<PIXEL ID>/events?access_token=<TOKEN>";

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$headers = array(
    "content-type: multipart/form-data",
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

// 构造键值对参数
$postData = [
    'data' => json_encode([
        [
            "event_name" => "Purchase",
            "event_time" => time(),
            "action_source" => "website",
            "event_id" => rand(100000, 500000),
            "user_data" => [
                "em" => "6b583232e99af45c3b436798f32800a4dd6f3524624ba6507ed8269b53ce82a3",
                "ph" => null
            ],
            "custom_data" => [
                "currency" => "USD",
                "value" => "37"
            ]
        ]
    ]),
    'test_event_code' => 'TEST9031'
];

curl_setopt($curl, CURLOPT_POSTFIELDS, $postData);

$resp = curl_exec($curl);
curl_close($curl);
var_dump($resp);
?>

内容的提问来源于stack exchange,提问作者Артем Дорошенко

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 10:12:02