Facebook 图表 API 广告报告 运行 - 消息:不支持获取请求

Facebook Graph API Ad Report Run - Message: Unsupported get request

我正在发出一个包含 50 个报告 post 请求的异步批处理请求。

第一批请求returns我报告ID

第一步

dynamic report_ids = await fb.PostTaskAsync(new
                    {
                        batch = batch,
                        access_token = token
                    });

接下来我将获取报告信息,以获取异步状态以查看它们是否已准备好下载。

第二步

var tListBatchInfo = new List<DataTypes.Request.Batch>();
                        foreach (var report in report_ids)
                        {
                            if (report != null)
                                tListBatchInfo.Add(new DataTypes.Request.Batch
                                {
                                    name = !ReferenceEquals(report.report_run_id, null) ? report.report_run_id.ToString() : report.id,
                                    method = "GET",
                                    relative_url = !ReferenceEquals(report.report_run_id, null) ? report.report_run_id.ToString() : report.id,
                                });

                        }
dynamic reports_info = await fb.PostTaskAsync(new
                        //dynamic results = fb.Post(new
                        {
                            batch = JsonConvert.SerializeObject(tListBatchInfo),
                            access_token = token
                        });

第一步生成的一些id返回这个错误,一旦我在第二步调用它们

Message: Unsupported get request. Object with ID '6057XXXXXX' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api

我知道 id 是正确的,因为我可以在使用 facebook api 资源管理器中看到它。我做错了什么?

这可能是 Facebook 的复制滞后造成的。当您的 POST 请求被路由到服务器 A 并返回报告 ID,但对该 ID 的查询被路由到服务器 B 时,通常会发生这种情况,而服务器 B 还不知道该报告是否存在。

如果您稍后尝试查询 ID 并且有效,那就是延迟。 FB 官方对此的建议是在查询报告之前稍等片刻。

https://developers.facebook.com/bugs/250454108686614/