HTTP接続でFile Exchangeテンプレートをアップロードしよう♪

ここでは、HTTP接続でFile Exchangeのテンプレートをアップロードする方法をご紹介しています。

通常File ExchangeのテンプレートをeBayサイト上にアップロードする際には、eBayのサイトにアクセスして、File Exchangeを選択して、といった操作をしていると思いますが、HTTP接続を利用してコマンド入力だけでアップロードを済ませることができます。

まずはeBayトークンを入手しよう

File Exchangeのテンプレートファイルをアップロードする際に、eBayのMy pageからではなく、HTTPを使ってアップロードしたい場合には、eBayトークンを使用します。

トークンを入手するためには、eBayの「Grant application access: File Exchange[外部リンク]」ページにアクセスします。

このページで「I Agree」をクリックすればeBayトークンをゲットできます。

eBayのトークン入手画面

データフォーマットにはFile Exchangeを指定し、行いたい操作を指定します

トークンは他人に知られることがないように厳重に管理しましょう。絶対に他者とトークンを共有してはなりません。

また、トークンはFile Exchangeにエントリーするために必要で1年間有効です。1年経過したら再度eBayにトークンを要求しましょう。

HTTPによるテンプレートのアップロード

HTTPでテンプレートをアップロードする方法は、以下の通りです。

  1. File Exchangeのテンプレートに必要事項を記入する
  2. HTTPS接続でFile ExchangeにeBayトークンとともにテンプレートを送信する。
    ( 接続先):https://bulksell.ebay.com/ws/eBayISAPI.dll?FileExchangeUpload
  3. 送信が完了するとeBayより自動的にE-Mailが送られます。ここには結果レポートへのリンクも貼られているので、送信結果を確認しましょう。

HTTPによるテンプレートのダウンロード

(注)File Exchangeの熟練ユーザのみこの操作を行ってください。

HTTPでファイルをダウンロードする方法は以下の通りです。

  1. File Exchangeのテンプレートに必要事項を記入する
  2. HTTPS接続でFile ExchangeにeBayトークンとともにテンプレートを送信する。
    (接続先):https://bulksell.ebay.com/ws/eBayISAPI.dll?FileExchangeProgrammaticDownload
  3. 送信が完了するとeBayより自動的にE-Mailが送られます。ここには結果レポートへのリンクも貼られているので、送信結果を確認しましょう。

HTTPによるリクエスト送信サンプル

HTTPにより、「listings.csv」というファイルをアップロードした際のリクエストのサンプルは以下の通りです。

POST /path/to/upload/script HTTP/1.0
Connection: Keep-Alive
User-Agent: My Client App v1.0
Host:
https://bulksell.ebay.com/ws/eBayISAPI.dll?FileExchangeUpload
Content-type: multipart/form-data;
boundary=THIS_STRING_SEPARATES
Content-Length: 256
--THIS_STRING_SEPARATES
Content-Disposition: form-data; name="token"
12345678987654321
--THIS_STRING_SEPARATES
Content-Disposition: form-data; name="file";
filename="listings.csv"
Content-Type: text/csv
... contents of listings.csv ...
--THIS_STRING_SEPARATESHTTP

HTTP送信時のルール

HTTPによりFile Exchangeのテンプレートをアップロードする際には、以下の記載ルールに従いましょう。

  1. HTTPによるリクエスト送信時には、1行目にリソースの適用方法、リソースの場所、プロトコルバージョンを記載する必要があります。
    (例)POST /path/to/upload/script HTTP/1.0
  2. 接続、ユーザエージェント、ホスト情報をその次に記入します。
    (例)Connection: Keep-Alive
    User-Agent: My Client App v1.0
    Host:https://bulksell.ebay.com/ws/eBayISAPI.dll?FileExchangeUpload
  3. コンテンツタイプとその長さをその次に記入します。
    (例)Content-type: multipart/form-data; boundary=THIS_STRING_SEPARATES
    Content-Length: 256
  4. トークンとファイルの内容等をその次に記入します。
    (例)--THIS_STRING_SEPARATES
    Content-Disposition: form-data; name="token"
    1234567898765432
    --THIS_STRING_SEPARATES
    Content-Disposition: form-data; name="file"; filename="listings.csv"
    Content-Type: text/csv
    ... contents of listings.csv ...
    --THIS_STRING_SEPARATESUsing

(参考)eBayのオリジナルマニュアルの参照先

eBayのFile Exchangeのオリジナルマニュアルの原文(英語)を見たい方は、以下のページをご参照ください。

  • File Exchange Advanced Template Instructionsマニュアル ⇒ Using advanced functions ⇒ Using programmatic instructions

関連記事