商品一括更新API
複数の商品データを一括で更新します。
- このAPIで商品の新規登録を行うことはできません。
- 指定された項目だけを更新し、省略された項目は更新しません。
※ フロント反映はしません。別途反映処理が必要です。
変更履歴
2024年03月21日
以下エラーコードを追加しました。
- it-02039
2023年06月01日
以下エラーコードを追加しました。
- it-02038
2022年10月11日
以下エラーコードを追加しました。
- it-02033
- it-02034
- it-02035
- it-02036
2022年08月19日
2022/8/18に「プロダクトカテゴリ」必須設定をリリースいたしましたが、
仕様の見直しを行うこととなり8/19中にリリース前の状態に戻しております。
詳細はこちらをご確認ください。
2022年08月16日
プロダクトカテゴリ登録必須化に伴い、以下エラーコードを追加しました。
・it-02037
2018年06月13日
リクエストパラメータに「会員向け価格(member_price)」を追加しました。
リクエストURL
テスト用APIを利用したい場合は、こちらから利用申請をお願いします。
リクエストパラメータ
「Web APIの使い方#POSTとは」をご参照ください。
パラメータ | 値 | 説明 |
---|---|---|
seller_id (必須) |
string | ストアアカウントを指定します。 |
item1~100 (必須) |
string | 1つの商品情報をまとめてエンコードしたもの。必ず連番で指定します。 詳細は以下※1 ※2 を参照ください。 |
※1 item1~item100で指定する商品情報の内容について
item1やitem2で指定する商品の情報は「key=value&key=value」で揃えたものをパーセントエンコードしてください。それを1つの商品情報とします。パーセントエンコードはRFC3986 に基づきます。
(例)商品ID「abc1」のタイトルを「車」に更新し、かつ商品ID「abc2」のタイトルを「時計」に更新したい場合
以下のとおりとして下さい。
1. item1の値は「item_code=abc1&name=%E8%BB%8A」(これを通常どおりURLエンコード)
2. item2の値は「item_code=abc2&name=%E6%99%82%E8%A8%88」(これを通常どおりURLエンコード)
3. item_num=2
※2 商品項目パラメータ仕様
パラメータ | 値 | 説明 |
---|---|---|
item_code (必須) |
string | 更新する商品コードを指定します。 |
name | string | 商品名(全角75文字以内) ※指定しなければ変更しません |
original_price | integer | 定価(半角数字のみ。8文字以内) ※指定しなければ変更しません |
price | integer | 通常販売価格(半角数字のみ。8文字以内) ※指定しなければ変更しません ※priceを更新する場合は必ずpriceとsale_priceの両方を更新する必要があります。sale_priceの項目を利用しない場合はsale_priceの値に空文字を指定してリクエストパラメーターとしてください ※sale_priceの値を更新せずにpriceの値のみを更新したい場合は商品参照APIまたは商品リストAPIより現在のsale_priceの値を取得し、取得したsale_priceの値と更新後のpriceの値をリクエストパラメーターとしてください |
sale_price | integer | 特価(半角数字のみ。8文字以内) ※指定しなければ変更しません ※sale_priceを更新する場合は必ずpriceとsale_priceの両方を更新する必要があります。sale_priceの項目を利用しない場合はsale_priceの値に空文字を指定してリクエストしてください |
member_price | integer | 会員向け価格(半角数字のみ。8文字以内) |
sale_period_start | string | 販売開始日時(半角数字のみ。YYYYMMDDHH形式) ※指定しなければ変更しません |
sale_period_end | string | 販売終了日時(半角数字のみ。YYYYMMDDHH形式) ※指定しなければ変更しません |
display | integer | ページ公開 1 : 公開 0 : 非公開 ※指定しなければ変更しません |
サンプルリクエストURL
https://circus.shopping.yahooapis.jp/ShoppingWebService/V1/updateItems
サンプルリクエスト
POST /ShoppingWebService/V1/updateItems HTTP/1.1
Host: circus.shopping.yahooapis.jp
Authorization: Bearer <アクセストークン>
seller_id=teststore&item1=item_code%3Dabc1%26name%3D%25E8%25BB%258A&item2=item_code%3Dabc2%26name%3D%25E6%2599%2582%25E8%25A8%2588
レスポンスフィールド
フィールド | 説明 |
---|---|
/ResultSet | クエリーレスポンスのすべてを含みます。 |
/ResultSet/Status | 全体としての更新結果(ひとつでも不正値があると、全商品更新されません。) OK : 更新OK NG : 更新NG |
/ResultSet/Result | 各個別レスポンスを含みます。(StatusがNGのときのみ返されます。) |
/ResultSet/Result/ItemCode | 商品コード(エラーがあった商品のみ返されます。) |
/ResultSet/Result/Error | 商品コードごとのエラー情報 |
/ResultSet/Result/Error/Target | エラーが発生した項目 |
/ResultSet/Result/Error/Code | エラーコード |
/ResultSet/Result/Error/Message | エラーメッセージ |
サンプルレスポンス
<!--・サンプルレスポンス(更新OKの場合)-->
<?xml version="1.0" encoding="UTF-8" ?>
<ResultSet>
<Status>OK</Status>
</ResultSet>
<!--・サンプルレスポンス(商品別のエラーがあった場合)-->
<?xml version="1.0" encoding="UTF-8" ?>
<ResultSet>
<Status>NG</Status>
<Result>
<ItemCode>abc1</ItemCode>
<Error>
<Target>name</Target>
<Code>it-02004</Code>
<Message>商品名は全角75文字以内で入力してください。</Message>
</Error>
</Result>
<Result>
<ItemCode>abc2</ItemCode>
<Error>
<Target>name</Target>
<Code>it-02004</Code>
<Message>商品名は全角75文字(半角150文字)以内で入力してください。</Message>
</Error>
<Error>
<Target>price</Target>
<Code>it-02008</Code>
<Message>通常販売価格は1円~99999999円を入力してください。</Message>
</Error>
</Result>
</ResultSet>
エラー
Yahoo!ショッピングで提供している全てのAPIには、共通で利用するエラーコードがあります。エラーの際には、まず始めに以下をご確認ください。
商品系API、および商品一括更新APIで固有に返すエラーコードは以下をご覧ください。
商品系API共通エラーコード
コード | HTTPステータスコード | 説明 |
---|---|---|
ed-00000 | 404 | ページが見つかりません。 |
ed-00001 | 500 | システムエラーが発生しました。 |
ed-00002 | 503 | サーバがメンテナンス中です。 |
ed-00003 | 400 | ストアアカウントが指定されていません。 |
ed-00004 | 400 | ストアアカウントが存在しません。 |
ed-00005 | 400 | ストアアカウントの指定が不正です。 |
ed-00006 | 400 | 反映またはアップロード中のため更新ができません。 |
エラーコード
コード | HTTPステータスコード | 説明 |
---|---|---|
it-02001 | 400 | 商品が指定されていません。 |
it-02002 | 200 | 指定された商品は存在しません。 |
it-02003 | 200 | 商品名のフォーマットが無効です。 |
it-02004 | 200 | 商品名は全角75文字(半角150文字)以内で入力してください。 |
it-02005 | 200 | 定価は数値を入力してください。 |
it-02006 | 200 | 定価は0円~99999999円を入力してください。 |
it-02007 | 200 | 通常販売価格は数値を入力してください。 |
it-02008 | 200 | 通常販売価格は1円~99999999円を入力してください。 |
it-02009 | 200 | 特価は数値を入力してください。 |
it-02010 | 200 | 特価は1円~99999999円を入力してください。 |
it-02011 | 200 | 特価は通常販売価格より安い金額にしてください。 |
it-02012 | 200 | 販売期間を正しく入力してください。 |
it-02013 | 200 | 終了日時は開始日時以降にしてください。 |
it-02014 | 200 | ページ公開は数字を入力してください。 |
it-02015 | 200 | ページ公開は0か1を入力してください。 |
it-02016 | 200 | 商品コードが重複しています。 |
it-02017 | 200 | 項目が重複しています。 |
it-02018 | 200 | 項目名が無効です。 |
it-02019 | 200 | 商品情報は連番で指定してください。 |
it-02020 | 200 | sale_period_endが指定されていません。 |
it-02021 | 200 | sale_period_startが指定されていません。 |
it-02022 | 200 | sale_priceが指定されていません。 |
it-02023 | 200 | priceが指定されていません。 |
it-02024 | 200 | 商品コードが指定されていません。 |
it-02033 | 200 | 定期購入:定期購入設定に定期購入のみを設定しているため、特価は設定できません。 |
it-02034 | 200 | 定期購入:定期購入設定に定期購入のみを設定しているため、Y!プレミアム会員向け販売価格は設定できません。 |
it-02035 | 200 | 定期購入:定期購入設定に定期購入のみを設定しているため、通常販売価格は定期購入価格と同じ値を入力してください。 |
it-02036 | 200 | 定期購入:定期購入設定に通常購入/定期購入を設定しているため、通常販売価格は定期購入価格以上で入力してください。 |
it-02037 | 200 | 更新先の商品情報にプロダクトカテゴリが設定されていないため、更新できません。 |
it-02038 | 200 | 定期購入設定に通常購入/定期購入を設定しているため、Y!プレミアム会員向け販売価格は定期購入価格以上で入力してください。 |
it-02039 | 400 | セール期間中の商品は編集できません。 |
利用制限
※短い時間の間に同一URLに大量にアクセスを行った場合、一定時間利用できなくなることもございます。(1クエリー/秒)
利用約款
このAPIに関する利用約款はこちら。
目次
- 商品検索
- カテゴリランキング
- カテゴリID取得
- 商品コード検索(商品詳細)
- キーワードランキング
- おすすめ情報モジュール
- ポイントキャンペーン情報取得
- 販促イベント検索
- 商品レビュー検索
- 出品管理に関連するAPI
- 商品に関連するAPI
- 問い合わせ管理に関連するAPI
- 製品/SHPカテゴリ/ブランドに関連するAPI
- 在庫に関連するAPI
- ストアカテゴリに関連するAPI
- 画像に関連するAPI
- デザインに関連するAPI
- 注文に関するAPI
- ヘルプ