ショッピング

商品画像一括アップロードAPI

zipで圧縮した複数枚の商品画像を一括でアップロードします。
※ フロント反映はしません。別途反映処理が必要です。


PHP版のサンプルコードを掲載させていただきました。
サンプルコード(PHP)

リクエストURL

リクエストURL
本番環境
https://circus.shopping.yahooapis.jp/ShoppingWebService/V1/uploadItemImagePack
テスト環境
https://test.circus.shopping.yahooapis.jp/ShoppingWebService/V1/uploadItemImagePack

テスト用APIを利用したい場合は、こちらから利用申請をお願いします。



リクエストパラメータ

RESTリクエストの構築(POST)」をご参照ください。

パラメータ 説明
seller_id
(必須)
string ストアアカウントを指定します。
GETパラメータで渡してください。
file
(必須)
multipart/form-data zipファイルを指定します。

1回にアップロード可能なデータ容量は10メガバイト以下です。
zipに含める画像ファイルはGIFもしくはJPEG形式のみです。
画像一枚のサイズは、2MB以下です。

商品と画像を紐付けるためにはファイル名を以下のようにしてください。
商品画像:商品コード.拡張子
商品詳細画像:商品コード_(1-20).拡張子
※拡張子は、jpg または gif になります。

サンプルリクエストURL

https://circus.shopping.yahooapis.jp/ShoppingWebService/V1/uploadItemImagePack?seller_id=teststore

サンプルリクエスト

POST /ShoppingWebService/V1/uploadItemImagePack?seller_id=teststore HTTP/1.1
Host: circus.shopping.yahooapis.jp
Authorization: Bearer <アクセストークン>

file=(sample1.zip)



レスポンスフィールド

フィールド 説明
/ResultSet クエリーレスポンスのすべてを含みます。
/ResultSet/Result 結果
/ResultSet/Result/Status NG:失敗 OK:成功



サンプルレスポンス

<?xml version="1.0" encoding="UTF-8" ?>
<ResultSet>
    <Result>
        <Status>OK</Status>
    </Result>
</ResultSet>



エラー

商品画像一括アップロードAPIはYahoo! JAPAN Web 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ステータスコード 説明
im-03001 400 fileは必須項目です。
im-03002 400 1回にアップロード可能なデータ容量は25メガバイトまでです。
im-03004 400 反映またはアップロード中のためアップロードができません。



サンプルコード(PHP)

<?php

  $header = [
      'Content-Type: multipart/form-data',
      'POST /ShoppingWebService/V1/uploadItemImagePack?seller_id=<ストアアカウント> HTTP/1.1',
      'Host: circus.shopping.yahooapis.jp',
      'Authorization: Bearer ' . <アクセストークン>,
  ];

  $url   = 'https://circus.shopping.yahooapis.jp/ShoppingWebService/V1/uploadItemImagePack?seller_id=<ストアアカウント>';
  $param = array('file' => new CURLFile('<zipファイルのパス>'));

  // 必要に応じてオプションを追加してください。
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_CUSTOMREQUEST,  'POST');
  curl_setopt($ch, CURLOPT_HTTPHEADER,     $header);
  curl_setopt($ch, CURLOPT_URL,            $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_POST,           true);
  curl_setopt($ch, CURLOPT_POSTFIELDS,     $param);

  $response = curl_exec($ch);
  curl_close($ch);

?>
    



利用制限

※短い時間の間に同一URLに大量にアクセスを行った場合、一定時間利用できなくなることもございます。(1クエリー/秒)
※大規模なサイト構築やアプリ開発等にご利用いただけるデベロッパー様や、法人様向けに、クエリー数制限/秒を緩和させていただきます。(無料)
まずはヘルプページのお問い合わせフォームからご相談ください。

利用約款

このAPIに関する利用約款はこちら