出品中の商品レポート作成リクエストを送信してみる。
(ほぼサンプルのまんまだけど・・・)
事前準備
MarketplaceWebServiceフォルダ内にある「.config.inc.php」を編集しておく。
define('AWS_ACCESS_KEY_ID', '<Your Access Key ID>');
define('AWS_SECRET_ACCESS_KEY', '<Your Secret Access Key>');
define('APPLICATION_NAME', '<Your Application Name>');
define('APPLICATION_VERSION', '<Your Application Version or Build Number>');
define ('MERCHANT_ID', '<Your Merchant ID>');
define ('MARKETPLACE_ID', '<Your Marketplace ID>');
(<Your ほにゃらら> の箇所)
訳あって、以下の行を追加。
date_default_timezone_set('Asia/Tokyo');
(MWSは日時のチェックが厳しいようで、サーバの時計は正確に合わせておく必要があるみたい)
んでもって、編集したファイルをインクルード
include_once ('.config.inc.php');
MarketplaceWebService_Clientオブジェクトを作成
$serviceUrl = "https://mws.amazonservices.jp";
$config = array (
'ServiceURL' => $serviceUrl,
'ProxyHost' => null,
'ProxyPort' => -1,
'MaxErrorRetry' => 3,
);
$service = new MarketplaceWebService_Client(
AWS_ACCESS_KEY_ID,
AWS_SECRET_ACCESS_KEY,
$config,
APPLICATION_NAME,
APPLICATION_VERSION
);
リクエストオブジェクトを作成
$request = new MarketplaceWebService_Model_RequestReportRequest();
$request->setMarketplace(MARKETPLACE_ID);
$request->setMerchant(MERCHANT_ID);
$request->setReportType('_GET_MERCHANT_LISTINGS_DATA_');
しっかし、やたら長いクラス名だな・・・。
リクエストを送信
try {
$response = $service->requestReport($request);
if ($response->isSetRequestReportResult()) {
$requestReportResult = $response->getRequestReportResult();
print_r($requestReportResult);
}
} catch (MarketplaceWebService_Exception $ex) {
print_r($ex);
}
レスポンス例)
MarketplaceWebService_Model_RequestReportResult Object
(
[fields:protected] => Array
(
[ReportRequestInfo] => Array
(
[FieldValue] => MarketplaceWebService_Model_ReportRequestInfo Object
(
[fields:protected] => Array
(
[ReportRequestId] => Array
(
[FieldValue] => 234832221
[FieldType] => string
)
[ReportType] => Array
(
[FieldValue] => _GET_MERCHANT_LISTINGS_DATA_
[FieldType] => string
)
[StartDate] => Array
(
[FieldValue] => DateTime Object
(
[date] => 2011-11-01 06:20:33
[timezone_type] => 1
[timezone] => +00:00
)
[FieldType] => DateTime
)
[EndDate] => Array
(
[FieldValue] => DateTime Object
(
[date] => 2011-11-01 06:20:33
[timezone_type] => 1
[timezone] => +00:00
)
[FieldType] => DateTime
)
[Scheduled] => Array
(
[FieldValue] =>
[FieldType] => bool
)
[SubmittedDate] => Array
(
[FieldValue] => DateTime Object
(
[date] => 2011-11-01 06:20:33
[timezone_type] => 1
[timezone] => +00:00
)
[FieldType] => DateTime
)
[ReportProcessingStatus] => Array
(
[FieldValue] => _SUBMITTED_
[FieldType] => string
)
)
)
[FieldType] => MarketplaceWebService_Model_ReportRequestInfo
)
)
)
確認
Amazonさんの管理画面から、出品用アカウント、出品レポートをダウンロードのページをチェック。
バッチIDとかを確認して、レポートが作成されているようならOK。
最終更新:2011年11月01日 15:33