商品一括更新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

本番環境
https://circus.shopping.yahooapis.jp/ShoppingWebService/V1/updateItems
テスト環境
https://test.circus.shopping.yahooapis.jp/ShoppingWebService/V1/updateItems

テスト用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に関する利用約款はこちら

アプリケーションの管理

目次

利用のルール

開発のヒント