PHPライブラリ for Yahoo!ショッピングAPI リファレンス
-
YSAPI_SELLING (出品に関するAPI)
-
YSAPI_ITEM (商品に関するAPI)
-
YSAPI_PRODUCT (製品/SHPカテゴリ/ブランドに関するAPI)
-
YSAPI_STOCK (在庫に関するAPI)
-
YSAPI_CATEGORY (ストアカテゴリに関するAPI)
-
YSAPI_IMAGE (画像に関するAPI)
-
YSAPI_DESIGN (デザインに関するAPI)
-
YSAPI_ORDER (注文に関するAPI)
-
YSAPI_ORDER (問い合わせ管理に関連するAPI) ※作成中
-
YSAPI_AUTH (Y!Connect認証クラス)
-
YSAPI_UTIL (共通ユーティリティクラス)
問い合わせ管理に関連するAPIクラス(YSAPI_QUESTION)の追加
(コンストラクタ)
new YSAPI_QUESTION($auth,$seller_id,$ssl_cert,$ssl_key);
(メソッド)
・メッセージ投稿API
externalTalkAdd($topicId, $body, $fileList=array())
・質問詳細API
externalTalkDetail($topicId)
・質問一覧API
externalTalkList($request)
・既読API
externalTalkRead($topicId)
・質問完了API
externalTalkComplete($topicId, $completeConditionId)
・質問非公開API
externalTalkPrivate($topicId)
・ファイル投稿API
externalTalkFileAdd($topicId, $filePath="")
・ファイル取得API
externalTalkFileDownload($key)
・ファイル削除API
externalTalkFileDelete($key)
※詳細はYahooデベロッパーネットワークを参照
https://developer.yahoo.co.jp/webapi/shopping/question/
共通項目
コンストラクタ
すべてのAPIクラスのコンストラクタは__construct($auth,$seller_id="")
となっています。
※注文API、お問い合わせAPIは__construct($auth,$seller_id="",$ssl_cert,$ssl_key)で証明書ファイルの指定が可能
例えば、商品APIの場合だと$auth = ('ApplicationID', 'Secret');
となります。
$api = new YSAPI_ITEM($auth, 'seller_id');
YSAPI_AUTHのインスタンスをひとつ作成したら、すべてのAPIクラスで使い回せます。
また、各APIクラスのコンストラクタ内でYSAPI_AUTH::Authorization()を自動実行しているためアクセストークンの取得は自動的に行えます。
※seller_idはYSAPIモジュールの先頭で定義されている場合は省略可能です。
※1つのスクリプトで時間のかかる処理を行うと、各APIクラスのファンクション実行時にアクセストークンの有効期限切れで失敗する場合があります。その場合には、定期的にYSAPI_AUTHを初期化またはYSAPI_AUTH::Authorization()の実行を行って下さい。
実行結果
すべてのAPIで関数を実行すると、結果はSimpleXMLオブジェクトで返されます。
getItemを実行した場合だと$xml = $api->getItem('商品コード');
といった感じになります。
$item = $xm->Result;
【結果】
$item->ItemCode -> '939124-001'
$item->PathList->Path[0] -> '<![CDATA[生活家電・調理家電・美容家電:生活家電:テレビ・AV機器]]>'
$item->PathList->Path[1] -> '<![CDATA[生活家電・調理家電・美容家電:生活家電]]>'
$item->Name -> '<![CDATA[防水CD/DVDプレーヤー/mini labo/ベルメゾンネット]]>'
$item->ProductCategory -> '646'
request/responseモデル
各APIで利用する情報responseモデル(YSAPI_GET_ITEM_RESPONSEなど)は、以下の方法で初期化して利用出来ます。
$xml = $api->getItem('商品コード');
また、取得した結果を利用して情報の更新を行う場合には
$item = new YSAPI_GET_ITEM_RESPONSE($xml->Result);
echo $item->ItemCode;
>939124-001
$item->Price = 1000;
と言った形で利用出来ます。
$req = new YSAPI_EDIT_ITEM_REQUEST( $item );
$result = $api->editItem( $req );
2020/03/31