Ruby
Rails
MWS
peddler

Rails MWS APIを利用するまでの事前準備

MWSとは

AmazonマーケットプレイスWebサービスの略です。
自分が販売をしているAmazon各プラットフォーム対して以下のようなことができます。

  • レポートの取得
  • 出品や商品情報の更新削除などができるフィードのサブミット
  • 商品情報の取得
  • などなど

詳しくは公式リファレンスを読みましょう。
結構色々なことができます:raised_hand:

MWSを利用するのに必要な情報

開発者ではない場合(複数セラーを扱わない場合)

MWSを利用するには以下の3つのキーが必要です。

  • Seller ID(出品者ID)
  • AWS Access Key ID(AWSアクセスキーID)
  • Secret Key(秘密キー)

取得方法は以下の記事を参照にしてください。
amazonのMWSアカウント情報はセラーセントラルから確認できるんですけど

開発者の場合(複数セラーを扱う場合)

弊社のWebアプリケーションlismoaの様に複数のセラーの情報を扱う場合には上記の3つの他に

  • MWS Auth Token(MWS認証トークン)

が必要になります。

アプリ開発者のDeveloper ID(開発者ID)とセラーのアカウントを紐付けてAuthTokenを取得します。
公式リファレンスに紐付ける方法は記載されていますが、正直分かり辛いと思います。
百聞は一見にしかずです:rolling_eyes:
黙って一回自分自身を紐付けて見ましょう。
https://sellercentral.amazon.co.jp/gp/mws/registration/register.html

Railsで簡単にMWSを使えるgem「peddler」を導入する

MWSを生で扱うのはPOSTリクエストを魔改造する必要があり、かなりハードルが高いです:alien:
peddlerというgemを使いましょう。便利ですので:v:
https://github.com/hakanensari/peddler
導入方法はREADMEにある通りいつもの感じです。

APIリファレンスはこちら
http://www.rubydoc.info/gems/peddler/toplevel

client作成のサンプル

peddlerではAPI Sectionごとにclientというオブジェクトを作成してsection以下の機能を利用するという流れになります。
API Sectionというのはこのレイヤーですね。

85ef34ab-f24d-e17e-5b86-da6422b38d0e.png
48bffedd-0149-7097-1001-026cdc34f4ba.png

今回は「商品(Products)」のclientを作成するサンプルです。
先ほど取得した複数のキー使用します。

@client = MWS.products(
  primary_marketplace_id: 'marketplace_id',
  aws_access_key_id: 'aws_access_key_id',
  aws_secret_access_key: 'aws_secret_access_key',
  merchant_id: 'seller_id',
  auth_token: 'auth_token' # 開発者ではない場合は不要
)

準備完了

これでMWSの多彩な機能を使う準備は完了です!
今後はその多彩な機能の紹介や注意点などを記事にしていこうと考えていますのでお楽しみに:kiss: