我正在使用亚马逊MWS Reports API来使用" _GET_SELLER_FEEDBACK_DATA _"来获取客户的反馈。报告类型。
但不幸的是,它表示"报告状态已取消"。使用Scratchpad请求此报告,它可以正常工作。
以下是我的代码:
$report_type = "_GET_SELLER_FEEDBACK_DATA_";
$config = array(
'ServiceURL' => "https://mws.amazonservices.co.uk",
'ProxyHost' => null,
'ProxyPort' => -1,
'MaxErrorRetry' => 3,
);
$service = new MarketplaceWebService_Client($AWS_ACCESS_KEY_ID, $AWS_SECRET_ACCESS_KEY, $config, $APPLICATION_NAME, $APPLICATION_VERSION);
$marketplaceIdArray = array("Id" => array($MARKETPLACE_ID));
//Sends Report Request
$request = new MarketplaceWebService_Model_RequestReportRequest();
$request->setMarketplaceIdList($marketplaceIdArray);
$request->setMerchant($MERCHANT_ID);
$request->setReportType($report_type);
$request->setReportOptions('ShowSalesChannel=true');
$request->setStartDate(new DateTime('-90 Days', new DateTimeZone('UTC')));
$report_request_id = invokeRequestReport($service, $request);
报告API类方法invokeReportRequest()
,invokeGetReportRequestList()
,invokeGetReportList()
和invokeGetReport()
由我保持不变。
答案 0 :(得分:2)
亚马逊接受您的报告请求,但随后拒绝实际生成报告请求。我不确定是否有办法从MWS中获取任何有意义的错误消息,但从过去的经验来看,当您的请求在技术上有效但具有某些类型的逻辑错误时会发生这种情况(例如,您提交XML对XSD进行验证但包含不属于您的库存的商品的价格的文件)
我没有对此进行测试,但查看了API文档(MWS Reports API Reference第46页),ShowSalesChannel
似乎不是ReportOption
的有效_GET_SELLER_FEEDBACK_DATA_
报告(似乎仅在订单报告中允许,并且获得卖家反馈不支持任何 ReportOption)。所以请尝试删除
$request->setReportOptions('ShowSalesChannel=true');
从你的代码中看看会发生什么。