Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Marketplace API Update 対応が めちゃくちゃ大変だった件
Search
CData Software Japan
January 29, 2022
Technology
0
2k
Amazon Marketplace API Update 対応が めちゃくちゃ大変だった件
#burikaigi 2022/01/29
CData Software Japan Kazuya Sugimoto
CData Software Japan
January 29, 2022
Tweet
Share
More Decks by CData Software Japan
See All by CData Software Japan
「データ統合の長い旅路の終着点とは?」〜現場の『壁』を打ち破るモダンアーキテクチャと CData Virtuality〜
cdataj
0
0
ログベースCDCの実装とクラウドDWHへのデータ連携 ⼤規模データ運⽤に向けたCData Syncの活⽤ポイント
cdataj
0
8
最近話題のMCP って何? HCL Dominoと組み合わせるとどうなるの? CData MCP Serversで連携してみよう
cdataj
0
48
API の仕様から紐解く「MCP 入門」 ~MCP の「コンテキスト」って何だ?~
cdataj
0
260
AI は、あなたの会社の「言葉」を話せるか?~CData MCP Servers が拓く、データ活用の新時代~
cdataj
0
140
CDataコネクタが提供する「標準化」の価値 ~なぜCDataは400種類ものMCP Serverを一度にリリースすることができたのか~
cdataj
0
90
AWS App Studio にノーコードでDB をアンロック! API 連携してみよう!
cdataj
0
160
【第1部】データサイロ化を解消!! CData Sync で始めるデータ活用
cdataj
0
26
CData Sync V25.1 アップデートを プロダクトスペシャリストが大解説 kintone のリバースETL 機能など
cdataj
0
47
Other Decks in Technology
See All in Technology
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
18k
QuickSight SPICE の効果的な運用戦略~S3 + Athena 構成での実践ノウハウ~/quicksight-spice-s3-athena-best-practices
emiki
0
290
AWS CDK 入門ガイド これだけは知っておきたいヒント集
anank
5
750
An introduction to Claude Code SDK
choplin
2
1.1k
モニタリング統一への道のり - 分散モニタリングツール統合のためのオブザーバビリティプロジェクト
niftycorp
PRO
1
520
ゼロから始めるSREの事業貢献 - 生成AI時代のSRE成長戦略と実践 / Starting SRE from Day One
shinyorke
PRO
0
110
LLM拡張解体新書/llm-extension-deep-dive
oracle4engineer
PRO
23
6.3k
microCMSではじめるAIライティング
himaratsu
0
150
CDK Vibe Coding Fes
tomoki10
1
630
ABEMAの本番環境負荷試験への挑戦
mk2taiga
5
1.3k
毎晩の 負荷試験自動実行による効果
recruitengineers
PRO
5
180
Deep Security Conference 2025:生成AI時代のセキュリティ監視 /dsc2025-genai-secmon
mizutani
4
2.9k
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
7
520
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Unsuck your backbone
ammeep
671
58k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
How to Ace a Technical Interview
jacobian
278
23k
Building an army of robots
kneath
306
45k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
282
13k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Thoughts on Productivity
jonyablonski
69
4.7k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
© 2022 CData Software Japan, LLC | www.cdata.com/jp 1. About
CData Software Amazon Marketplace API Update 対応が めちゃくちゃ大変だった件 #burikaigi 2022/01/29 CData Software Japan Kazuya Sugimoto
© 2022 CData Software Japan, LLC | www.cdata.com/jp CData Software
Japan の API holic 担当 年100種類以上のAPIを見たり触ったりしています。 Twitter:@sugimomoto Facebook:sugimomoto Blog:http://kageura.hatenadiary.jp/ About Speaker 朝5時起きでブリを買ってきました
© 2022 CData Software Japan, LLC | www.cdata.com/jp 1. About
CData Software 本日のお話
© 2022 CData Software Japan, LLC | www.cdata.com/jp 業界最多級のデータソース Drivers
for NoSQL, Big Data, & SaaS Connectivity CRMおよびマーケティング自動化 会計システム コラボレーションおよびERP オンプレミスおよびクラウドDB ドキュメントおよびファイル形式 ソーシャルネットワーキング ネットワーキングおよび認証 電子商取引 その他
© 2022 CData Software Japan, LLC | www.cdata.com/jp API アップデートへの追従がチョー大変
© 2022 CData Software Japan, LLC | www.cdata.com/jp その中でもとりわけエグかった 「Amazon
Marketplace API Update 」 その対応で得た知見をシェア
© 2022 CData Software Japan, LLC | www.cdata.com/jp 1. About
CData Software Amazon Marketplace API とは?
© 2022 CData Software Japan, LLC | www.cdata.com/jp Amazon Marketplace
の 在庫・注文・商品・レポートなどが管理できるAPI
© 2022 CData Software Japan, LLC | www.cdata.com/jp 1. About
CData Software どんなAPI Updateだったの?
© 2022 CData Software Japan, LLC | www.cdata.com/jp API Update
の変更ポイント 1.APIデザイン 2.フォーマット 3.認証・認可 4.スケジュール
© 2022 CData Software Japan, LLC | www.cdata.com/jp APIデザインが大幅刷新 RPCライクなものからRESTベースに
POST /Orders/2013-09- 01/?AWSAccessKeyId=AKIAIKW5JHOTOOWSF43A&Ac tion=ListOrders&LastUpdatedAfter=1969-12- 31T15%3A00%3A00Z&MWSAuthToken=amzn.mws.X XX&MarketplaceId.Id.1=A1VC38T7YXB528&SellerId=A 1WD8M4EQL9XVH&Signature=XXXXX&SignatureMeth od=HmacSHA256&SignatureVersion=2&Timestamp= 2020-10-02T00%3A27%3A20Z&Version=2013-09-01 HTTP/1.1 Host: mws.amazonservices.jp Accept: application/xml Content-Type: application/xml GET /orders/v0/orders?MarketplaceIds=A1VC38T7YXB5 28&CreatedAfter=2021-08-09 HTTP/1.1 Host: sellingpartnerapi-fe.amazon.com Accept: application/json Authorization:****** x-amz-access-token: XXXXX x-amz-date: 20210809T073105Z x-amz-security-token: XXXXX MWS API Selling Partner API
© 2022 CData Software Japan, LLC | www.cdata.com/jp レスポンスフォーマットが XMLからJSONに変更
<ListOrdersResponse xmlns="https://mws.amazonservices.com/Orders/2013 -09-01"> <ListOrdersResult> <Orders> <Order> <LatestShipDate>2018-08- 17T14:59:59Z</LatestShipDate> <OrderType>StandardOrder</OrderType> <PurchaseDate>2018-08- 15T09:59:55.270Z</PurchaseDate> { "payload": { "Orders": [ { "NumberOfItemsUnshipped": 0, "BuyerInfo": {}, "IsReplacementOrder": "false", "IsSoldByAB": false, "AmazonOrderId": "503-9993250-1405404", "LatestShipDate": "2018-08-17T14:59:59Z", "EarliestShipDate": "2018-08-15T15:00:00Z MWS API Selling Partner API
© 2022 CData Software Japan, LLC | www.cdata.com/jp 認証・認可方法が 独自認証から独特な
OAuth 2.0?に クライアント ユーザー リソース 1. AWS IAMで AssumeRole を実施 2. Amazon marketplace APIへのア クセス権を付与したAWS AccessKey・SecretKeyを取得 3. 認可URLを生成 4. 認証・認可処理をリクエスト・ Codeを取得 5. Codeと引き換えにAccess Token を取得 6. Access TokenとAccessKey・ SecretKeyを元にAWS Signature を生成して、リクエストを実施
© 2022 CData Software Japan, LLC | www.cdata.com/jp API仕様が大幅変更にも関わらず 旧バージョンAPI終了予定が半年後
https://sellercentral.amazon.co.jp/forums/t/topic/73349 ※現在は2022年7月に延期
© 2022 CData Software Japan, LLC | www.cdata.com/jp 1. About
CData Software 対応として工夫した点
© 2022 CData Software Japan, LLC | www.cdata.com/jp デザインディスカッションする前に 必要なAPIをすべて試す
・開発チームに共有するために自分が実装 できる粒度でAPIを一通り試しておく ・Postman Collectionで必要なAPIリ クエスト・設定・検証方法を共有 ・検証した知見をドキュメント化して共有・つ いでに Blog にしてマーケティングコンテンツ に。開発チームもHappy https://www.cdatablog.jp/entry/amazonspapihowto01
© 2022 CData Software Japan, LLC | www.cdata.com/jp データモデルを極力変えない MWS
API SP-API Column Name Type Column Name Type OrderItemId VARCHAR OrderItemId VARCHAR AmazonOrderId VARCHAR AmazonOrderId VARCHAR ASIN VARCHAR ASIN VARCHAR SellerSKU VARCHAR SellerSKU VARCHAR BuyerCustomizedInfoCustomizedURL VARCHAR BuyerCustomizedInfoCustomizedURL VARCHAR Title VARCHAR Title VARCHAR QuantityOrdered INT QuantityOrdered INT QuantityShipped INT QuantityShipped INT GrantedPointsNumber INT GrantedPointsNumber INT GrantedPointsMonetaryValueAmount DECIMAL GrantedPointsMonetaryValueAmount DECIMAL GrantedPointsMonetaryValueCurrencyCode VARCHAR GrantedPointsMonetaryValueCurrencyCode VARCHAR NumberOfItems INT NumberOfItems INT ItemPriceAmount DECIMAL ItemPriceAmount DECIMAL ItemPriceCurrencyCode VARCHAR ItemPriceCurrencyCode VARCHAR ShippingPriceAmount DECIMAL ShippingPriceAmount DECIMAL ShippingPriceCurrencyCode VARCHAR ShippingPriceCurrencyCode VARCHAR GiftWrapPriceAmount VARCHAR GiftWrapPriceAmount VARCHAR GiftWrapPriceCurrencyCode VARCHAR GiftWrapPriceCurrencyCode VARCHAR TaxCollectionName VARCHAR #N/A #N/A TaxCollectionValue VARCHAR #N/A #N/A ItemTaxAmount DECIMAL ItemTaxAmount DECIMAL ・内部の実装は異なるが、インターフェース レベルでは同じ仕様を保てるようにする ・移行のしやすさ、ビジネスロジックサイドへ の影響を最小化 ・新しいAPIで存在しない項目、追加され た項目は致し方ないが
© 2022 CData Software Japan, LLC | www.cdata.com/jp 前のデータモデル・ロジックも残す ・API順次廃止とはいえ、まだ未リリースの
APIもあったため、スムーズな切り替えのた めデータモデル・ロジックを残存 (メンテナンスコストの観点から最初は反 発があった)
© 2022 CData Software Japan, LLC | www.cdata.com/jp 1. About
CData Software まとめ
© 2022 CData Software Japan, LLC | www.cdata.com/jp そんなこんなありながら、無事リリースしました https://www.cdatablog.jp/entry/amazonmarketplacespapiupdate
© 2022 CData Software Japan, LLC | www.cdata.com/jp 不安定かつ多様な「API」と共存している
© 2022 CData Software Japan, LLC | www.cdata.com/jp 不安定かつ多様なAPIと 連携しなければいけないのが実情
もし、この不安定さが直接的に ビジネスロジックに影響したら? APIへの追従・機能追加がアプリの スケールを阻害する可能性がある
© 2022 CData Software Japan, LLC | www.cdata.com/jp API Update
前提でビジネスと アーキテクチャを考えておくこと 疎結合・インターフェースを意識 ビジネスロジックへの影響を最小化するポイント こういうアップデートもあるんだということを ぜひ心に留めておいてください
© 2022 CData Software Japan, LLC | www.cdata.com/jp 1. About
CData Software 最後に
© 2022 CData Software Japan, LLC | www.cdata.com/jp CData Software
Japan では 業務拡大につき新しいメンバーを絶賛募集中! https://www.wantedly.com/companies/cdata2/projects ・テクニカルサポートエンジニア ・製品開発エンジニア ・インサイドセールス ・ローカライゼーション etc