ブログ

Inventory Mapping APIの探索 (Explore the Inventory Mapping API) Inventory Mapping API が開発者のテスト用に利用可能になりました。GraphQLを基盤として構築されたこのAPIは、既存の製品データから生成されたAIによる推奨事項を使用して、セラーが高品質な出品を作成するのを支援し、出品の品質とパフォーマンスを向上させます。 なぜこのAPIを使用するのか? Inventory Mapping API は、セラーに以下のメリットをもたらします。 出品の品質を向上させ、可視性、バイヤーの信頼、およびコンバージョンを高める。 AIが生成したコンテンツ提案により迅速に出品を行い、在庫をより早くバイヤーの目に触れさせる。 誰のためのものか? Inventory Mapping API は米国マーケットプレイスで利用可能であり、現時点では結果は米国サイトの出品にのみ使用する必要があります。追加のマーケットプレイスへ適用範囲が拡大され次第、お知らせします。 はじめ方 Inventory Mapping API との統合を開始し、セラーがAIを活用した出品をより迅速に作成できるように支援します。ドキュメントはこちらで入手可能です: Inventory Mapping API。 新しい GraphQL API Explorer を使用して、テストをサポートしてください。 問題を迅速に診断して解決するために、Inventory Mapping APIの推奨事項を使用して生成または修正されたすべての出品に mappingReferenceID フィールドを含めてください。 セラーからの推奨事項やユースケースに関するフィードバックを収集し、製品の改善にご協力ください。 注: ユースケースをサポートするために拡張アクセスが必要な場合は、Application Growth Checkを申請 して統合をスケーリングできます。 サポートとフィードバック 統合がスムーズに進むことを確認したく、皆様からのフィードバックをお待ちしております。Inventory Mapping API をテストする際にサポートを得るための最良の方法は以下の通りです。 ドキュメント — 詳細なガイドとベストプラクティスについては、Inventory Mapping API をご覧ください。 GraphQL Explorer — 新しい GraphQL Explorer を使用してサンプルコールを実行し、テストをサポートしてください。 AIチャットボット — 統合を進める中で、素早い回答とガイダンスを得ることができます。ログイン中は developer.ebay.com の全ページで利用可能です。 開発者テクニカルサポートチケット — 技術的な支援については、Developer support ticket を提出してください。現在はすべての開発者が無料で利用できます!
本物保証(Authenticity Guarantee, AG)関連機能を統合するための実用的なヒント eBay APIの本物保証(Authenticity Guarantee、以下AG)関連機能を統合する際、開発者は以下の特徴を理解しておく必要があります: 商品が属するカテゴリが条件を満たす場合、システムはカテゴリルールに基づいて自動的にその商品のAGを有効にします。 同時に、出品は以下の要件も満たす必要があります: 少なくとも1つの配送方法を提供する ハンドリングタイム(Handling time)が3営業日を超えない 商品の出品要件を満たす 現在、AGは以下のサイトで適用されます:米国(US)、オーストラリア(AU)、カナダ(CA)、ドイツ(DE)、イギリス(GB)。 適用サイトのリストについては、AGヘルプページを参照してください: https://www.ebay.com/help/selling/selling-tools/ebay-authenticity-guarantee?id=4644 特定の出品がAG要件を満たしているかどうかを判断するには、開発者は Trading API の getItem 呼び出しを行い、レスポンス内の IsItemEMSEligible 属性を確認できます: https://developer.ebay.com/Devzone/XML/docs/Reference/eBay/GetItem.html#Response.Item.IsItemEMSEligible 商品出品を作成する際、その商品がシステムによってAG有効化された場合、出品作成インターフェースはレスポンスに警告 #21920343 を含みます: https://developer.ebay.com/Devzone/XML/docs/Reference/eBay/Errors/ErrorMessages.htm#21920343 鑑定センター(AG Center)へ送る必要がある商品について、eBayは無料の配送ラベルを提供します。これは以下のインターフェースフィールドで確認できます: Trading API – getOrders フィールド: eBayEstimatedLabelCost = 0.0 ドキュメントリンク Fulfillment API – getOrders フィールド: shippingLabelProvidedBy = EBAY ドキュメントリンク また、以下のインターフェースのレスポンスには Program.AuthenticityVerification フィールドも含まれます: Trading API – getOrders https://developer.ebay.com/devzone/xml/docs/reference/ebay/getorders.html...AuthenticityVerification Fulfillment API – getOrders https://developer.ebay.com/api-docs/sell/fulfillment/resources/order/methods/getOrders...authenticityVerification 詳細については、開発者は上記に対応するAPIドキュメントリンクを参照してください。
一部のAPI機能のMetadata APIへの移行について 物流関連のメソッド Metadata APIに、物流に関連する以下の5つのメソッドが新たに追加されました: getExcludeShippingLocations getHandlingTimes getShippingCarriers getShippingLocations getShippingServices 上記のメソッドは、Trading APIにおける GeteBayDetails 呼び出しの関連する代替手段として機能します。 製品メタデータ関連のAPI Product APIの getProductCompatibilities メソッドおよび Product Metadata API は、今年の第2四半期に廃止(Decommission)される予定です。現在これらのAPIインターフェースを使用している開発者の皆様には、Metadata API 内の getProductCompatibilities メソッドおよびその他の互換性関連メソッドへの移行を推奨いたします。 GetCategoryFeatures 現在 GetCategoryFeatures 呼び出しを使用している場合は、以下のメソッドへの移行を準備してください: getCategoryPolicies getClassifiedAdPolicies getListingTypePolicies getMotorsListingPolicies getShippingPolicies getSiteVisibilityPolicies 詳細については、GetCategoryFeatures移行ガイド を参照してください。 GetCategories 現在 GetCategories 呼び出しを使用している場合は、以下のメソッドへの移行を準備してください: getCategoryPolicies getCategoryTree (Taxonomy API) getCategorySubtree (Taxonomy API) 詳細については、GetCategories移行ガイド を参照してください。 注意: getCategoryFeatures および getCategories 呼び出しは、いずれも今年の第2四半期に廃止される予定です。 APIの廃止に関する詳細情報は、以下のページをご覧ください: https://developer.ebay.com/develop/apis/api-deprecation-status
出品アスペクトでエネルギー効率ラベル (EEK Label) がサポートされました エネルギー効率ラベル(Eneregy Efficiency Label、または略して EEK Label)が付いた製品について、出品アスペクト(aspect)に欧州エネルギーラベル製品登録番号(European Product Registry for Energy Labelling Registration Number、または EPREL Registration Number、以下「EPREL登録番号」)を追加できるようになりました。セラーが有効なEPREL登録番号を提供すると、システムは関連するエネルギー効率クラス(Energy Efficiency Class、略して EEK)情報(エネルギー効率ラベルや関連する製品データシートなど)を自動的に取得し、商品ページに表示します。 EU規制の要件に基づき、EU諸国および北アイルランド内で事業を行っている、または同地域へ発送するセラーは、特定の製品カテゴリ(家電製品、スマートフォン、タブレット、タイヤなど)に対してエネルギー効率ラベルを提供する必要があります。製品のEPREL登録番号は、製品のエネルギー効率ラベル上のQRコードをスキャンするか、EPRELデータベースで製品のGTIN値を検索することで取得できます。 開発者は、Metadata API の getRegulatoryPolicies メソッドを使用して、どのeBayリーフカテゴリ(leaf categories)がエネルギー効率ラベルをサポートしているかを確認できます。このメソッドの戻り値において、エネルギー効率ラベルをサポートするリーフカテゴリでは、supportedAttributes.name フィールドに ENERGY_EFFICIENCY が表示されます。開発者は、Taxonomy API の getItemAspectsForCategory メソッドを呼び出すか、fetchItemAspects メソッドと Taxonomy SDK を組み合わせることで、どのリーフカテゴリがエネルギー効率ラベルをサポートしているかを確認することもできます。 注: 出品アスペクトでEPREL登録番号を提供することは、Trading API の EnergyEfficiencyLabel フィールドや Inventory API の energyEfficiencyLabel フィールドを使用する代わりの方法です。もしこれらのフィールドとアスペクト内のEPREL登録番号の両方が提供された場合、上記のフィールド内の情報が優先されます(上記のフィールドはアスペクト内のEPREL登録番号よりも優先度が高くなります)。
[eBay 開発者ニュース] Post-Order バイヤー向けAPIメソッドの提供終了通知 Post-Order APIに含まれる15のバイヤー向け関連メソッドは、2026年1月20日(「提供終了日」)をもって正式に提供終了(Decommission)となります。 提供終了となるメソッド 提供終了となるメソッドは以下の通りです: Cancel Return Request Check Return Eligibility Check Shipping Label Print Eligibility Create Return Draft Delete Return Request Draft File Get Return Draft Get Return Estimate Get Return Request Draft Files Get Return Shipping Label Initiate Return Shipping Label Mark Return Refund Received Mark Return Shipped Send Return Shipping Label Update Return Draft Upload Return Request Draft File 利用率が低いため、上記のAPIメソッドは提供終了となります。提供終了後も、バイヤーは引き続きeBayウェブサイトおよびモバイルアプリを通じて、返品関連事項の作成と管理を行うことができます。 重要: アプリケーションで上記のAPIメソッドを使用している場合は、提供終了日までに必ず対応するコードの変更を行ってください。
前回の記事はこちら API入門講座、全10回お疲れ様でした!皆さんは今、APIという魔法の杖の基本的な振り方をマスターしました。 「でも、この杖で具体的にどんな魔法が使えるんだろう?」 そんなあなたの好奇心にお応えするため、今回は番外篇として、日々のeBay運営が劇的に楽になる「自動化のアイデア」を5つ、レシピ形式でご紹介します。あなたのビジネスに当てはまるものがないか、ぜひ探してみてください。 【アイデア1】在庫ゼロ商品の「うっかり」出品を自動で防ぐ魔法 こんなお悩みに: 「他のサイトで売れて在庫がゼロになったのに、eBayの出品を取り下げるのを忘れて、カラ売りしてしまった…」 使うAPI(呪文): Trading API の ReviseInventoryStatus または EndItem 魔法のレシピ: あなたの在庫管理システム(例えば、シンプルなExcelシートでもOK)の在庫数を定期的にチェックするプログラムを作ります。 もし在庫数が「0」になった商品を見つけたら、プログラムが自動でその商品のSKUやItemIDを使ってReviseInventoryStatusを呼び出し、eBay上の在庫数も「0」に更新します。 あるいは、EndItemを呼び出して、その商品の出品を自動で停止させます。 効果: これで、寝ている間も、他の仕事をしている間も、プログラムが在庫を見張ってくれるので、売り越しリスクから解放されます! 【アイデア2】ライバル価格を「こっそり」自動チェックする魔法 こんなお悩みに: 「自分の商品の価格が適正か知りたいけど、毎日ライバルのページを見に行くのは大変…」 使うAPI(呪文): Browse API 魔法のレシピ: あなたが注目している商品やキーワードをプログラムに設定しておきます。 プログラムが1日に1回など、決まった時間にBrowse APIを呼び出し、そのキーワードでeBayを検索します。 検索結果から、ライバル商品の価格や送料、販売数などの情報を自動で取得し、スプレッドシートなどに記録します。 効果: 手作業のリサーチから解放され、データに基づいた価格戦略を立てるための、強力な武器が手に入ります。 注意:これは高級呪文でかなり習得のレベルが高いですよ、自分のビジネスに自信があれば挑みましょう! 【アイデア3】お客様への「ありがとう」を自動で伝える魔法 こんなお悩みに: 「購入してくれたお客様一人ひとりに、お礼と発送予定の連絡をしたいけど、注文が増えると手が回らない…」 使うAPI(呪文): Fulfillment API または Trading API の注文取得系コール 魔法のレシピ: プログラムが定期的に新しい注文がないかAPI経由でチェックします。 新しい注文を見つけたら、購入者の情報とお礼のメッセージ(例:「ご購入ありがとうございます!日本から丁寧に梱包し、3営業日以内に発送します」)を組み合わせ、API経由でお客様にメッセージを自動送信します。 効果: 顧客満足度を向上させ、ポジティブなフィードバックを得る機会を増やします。忙しい中でも、丁寧な対応が可能です。 【アイデア4】スプレッドシートから「魔法の呪文」で一括出品 こんなお悩みに: 「似たような商品をたくさん出品したい。毎回同じような情報を入力するのが面倒…」 使うAPI(呪文): Trading API の AddItem 魔法のレシピ: 出品したい商品の情報(タイトル、価格、SKU、説明文など)を、GoogleスプレッドシートやExcelに一覧でまとめます。 プログラムがそのシートを1行ずつ読み込み、その情報をAddItemコールの各パラメータに当てはめて、自動で出品リクエストを次々と送信します。 効果: 100点の商品出品も、シートさえ完成すれば、あとはプログラムにお任せ。作業時間が劇的に短縮されます。 【アイデア5】為替レートと連動!「賢い」価格自動調整の魔法 こんなお悩みに: 「日本円での利益は固定したいのに、為替レートの変動で、USドルでの販売価格を毎日変更するのが大変…」 使うAPI(呪文): Trading API の ReviseInventoryStatus + 外部の為替レートAPI 魔法のレシピ: プログラムが、まず外部の無料の為替レートAPIから、最新のドル円レートを取得します。 あなたが日本円で設定した「目標利益価格」を、そのレートで現在のドル価格に換算します。 ReviseInventoryStatusを使い、eBay上のドル価格を、算出した新しい価格に自動で更新します。 効果: 為替変動のリスクを最小限に抑え、常に目標とする利益を確保するための、高度な価格管理が自動で実現します。 いかがでしたでしょうか、これらはほんの一例です。APIの本当の力は、ここで紹介したような個々の「呪文」を、あなたのビジネスに合わせて自由に組み合わせ、あなただけの「オリジナルの魔法」を創造できる点にあります。 この入門講座で、皆さんはその第一歩を踏み出しました。あなたの前には、無限の可能性が広がっています。私Stanは、いつもeBayであなたの力に添えるように待っています、あなたのAPI運用成功の喜びと悩み、ご相談など何でもebayjapan-techsupport@ebay.com までに連絡してください。
前回の記事はこちら ついに、私たちのeBay API入門講座も、この最終回を迎えることになりました。ハンズオンプロジェクトを最後までやり遂げた皆さん、本当におめでとうございます!APIが何かも分からなかった状態から、今やあなたは自らの手で、APIを通じてeBayの商品を管理するスキルを手にしました。 この最後の章では、これまでの旅を振り返り、皆さんがこれからAPIを実世界で活用していくためのヒントと、さらに広がる可能性の扉をお見せしたいと思います。 1. このシリーズで学んだことの振り返り まずは、私たちが共に歩んできた道のりを振り返ってみましょう。 APIの基本を理解した: APIを「レストランのウェイター」に例え、その役割を学びました。 開発者登録と認証情報の取得: 開発者プログラムに登録し、APIキーとトークンという「鍵」と「合言葉」を手に入れました。 安全なサンドボックスでの練習: 実際の店舗に影響を与えずに、安全にAPIを試す方法をマスターしました。 Trading APIでの商品管理: Postmanを使い、商品の「作成(C)・読み取り(R)・更新(U)・削除(D)」という一連の操作を、自らの手で成功させました。 あなたはもう、API活用のための、最も重要で基本的な土台を築き上げたのです。 2. APIをより効果的に使うためのヒント これからAPIを本格的に活用していく上で、知っておくと役立つヒントをいくつかご紹介します。 エラー処理 (Error Handling) APIを呼び出した際、必ずしも毎回「成功(Success)」するとは限りません。失敗はつきものです。重要なのは、失敗した時に返ってくるエラーメッセージを正しく読み解くことです。 レスポンスの <Ack> タグが Failure だった場合、<Errors> ブロックにその原因が記されています。<ErrorCode>(エラー番号)と <LongMessage>(詳細なエラー説明)が、問題解決の大きな手がかりになります。よくあるエラーと対処法を以下の表にまとめました。 表1: よくあるeBay Trading APIエラーコードと対処のヒント エラーコード例 考えられる原因 簡単な対処法/確認ポイント 37 (Input data for tag <tag> is invalid or missing.) リクエストXML内の必須タグが欠落している、またはタグの値が無効(例:データ型不一致、範囲外)。 APIドキュメントで該当コールの必須項目と各フィールドの仕様(データ型、有効値)を再確認。XML構造の妥当性をチェック。 240 (Item cannot be accessed or revised.) 指定されたItemIDが存在しない、既に終了している、または認証ユーザーがその商品の出品者ではない。 ItemIDが正しいか、商品は有効な状態か、使用しているトークンが出品者のものかを確認。 21917053 (Auth token is invalid.) 提供されたeBayAuthTokenが無効、期限切れ、または取り消されている。 トークンが正しくコピーされているか、有効期限内かを確認。必要であれば再生成する。 21916702 (Invalid ItemID.) 指定されたItemIDの形式が正しくないか、存在しない。 ItemIDの形式(通常は数字のみ)と正確性を確認。 APIコール回数制限 (Rate Limits) eBay APIは、プラットフォームの安定性を保つため、一日に呼び出せる回数に上限が設けられています。例えば、無料の開発者アカウントでは、一日あたり5000回までといった制限があります。この上限を超えないよう、APIを呼び出すタイミングや頻度を計画的に設計することが大切です。 この制限は調整可能です。もし、開発中のアプリケーションでAPI呼び出しの上限に達してしまった場合や、会社の成長速度が予想を上回り、さらに多くのAPI呼び出し枠が必要な場合は、お気軽に ebayjapan-techsupport@ebay.com までご連絡ください。上限緩和についてサポートさせていただきます。 3. さらなる可能性:Trading API以外の便利なeBay API 私たちはこれまで Trading API を中心に学んできましたが、eBayのAPIエコシステムには、特定の業務をさらに効率化するための、専門的で強力なAPIが他にもたくさん存在します。 以下に、その代表的なAPIと、日本のセラー向けの活用例をご紹介します。 表2:eBay APIエコシステム:主要APIとその活用例 API名 主な機能 日本のセラー向け活用例 Inventory API 在庫アイテムの作成・管理、複数ロケーション在庫、出品作成、eBayカタログ連携。 複数のECチャネル(楽天市場、Yahoo!ショッピング等)とeBay間での在庫情報の一元管理と自動同期による売り越し防止。 Browse API (審査が厳しい) eBay上の商品検索、競合価格調査、人気商品のトレンド分析。 海外市場での日本製品(ゲームソフト、限定フィギュア等)の適正販売価格の調査・設定。 Fulfillment API 注文詳細取得、発送処理(追跡番号アップロードなど)、返金・返品処理、支払い紛争管理。 海外発送業務の自動化(例:注文情報を倉庫管理システムや配送業者システムへ連携)。 Analytics API 販売実績、トラフィックデータ、出品パフォーマンスなどの分析レポート取得。 日本のセラーの特定商品カテゴリ(日本の伝統工芸品等)の海外での販売トレンド分析。 Translation API 商品タイトル、説明文などの機械翻訳。 日本語の商品情報を英語等のターゲット市場の言語へ迅速に翻訳し、多言語出品をサポート。 Account API ビジネスポリシー(支払い、返品、送料)の管理、販売手数料の確認、アカウント設定。 日本のセラーが設定する標準的な国際配送ポリシー等を一元管理し、API経由での出品時に効率的に適用。 4. 継続的な学習のためのリソース これからあなたがAPI活用の旅を続けていく上で、道に迷ったり、さらに深く学びたくなったりした時のために、いくつかの羅針盤となるリソースをご紹介します。 eBay開発者ポータル (eBay Developer Program Portal): すべての公式ドキュメント、APIの仕様書、最新情報がここにあります。あなたの冒険のホームベースです。 Link:https://developer.ebay.com/ eBay開発者コミュニティフォーラム: 世界中の開発者と情報交換をしたり、質問をしたりできる場所です。多くの問題の解決策がここに眠っています。 Link:https://community.ebay.com/t5/Developer-Forums/ct-p/developergroup eBay Japanデベロッパーポータル: 日本のセラーに特化した情報やツール、開発に役に立つパッケージなど、日本語でのサポートが提供しています。 Link:https://www.ebay.co.jp/developer 結び:あなたの旅は始まったばかり この入門講座は、APIという広大な世界への入り口に過ぎません。しかし、あなたは今、地図の読み方とコンパスの使い方を学びました。これからどんな課題に直面しても、APIという強力なツールを使って、自分自身の力で解決策を見つけ出すことができるはずです。 この講座が、あなたのビジネスを次のステージへと押し上げる、そのきっかけとなったなら、私Stanにとって、これ以上の喜びはありません。 あなたのAPI活用の旅が、成功と発見に満ちた素晴らしいものになることを、心から応援しています。 次の記事はこちら
前回の記事はこちら 前回のハンズオンプロジェクト第一弾では、GetItemコールを使って商品の情報を「読み取る(Read)」スキルをマスターしました。APIから返ってきたXMLのレスポンスを読み解く、という重要な一歩を踏み出しましたね。 今回は、プロジェクトの第二弾です。商品管理の残りの部分、「C (Create) - 作成」「U (Update) - 更新」「D (Delete) - 削除」を一気に体験します。この三つの操作をマスターすれば、あなたはAPIを通じた商品管理の基本を完全に習得したことになります。 さあ、Postmanを開いて、一緒にプロジェクトを完成させましょう! 1. C (Create) - AddItemで商品を新規登録する まずは、API経由でサンドボックスに新しい商品をゼロから出品してみましょう。 ステップ1:Postmanの準備 Postmanで新しいリクエストを作成し、「AddItem Project」と名付けます。メソッドは POST、URLは https://api.sandbox.ebay.com/ws/api.dll です。 ヘッダータブには、これまでのプロジェクトと同様に認証情報などを設定しますが、一番重要な X-EBAY-API-CALL-NAME には AddItem と指定してください。 ステップ2:リクエストボディの作成 AddItemは、出品する商品の詳細な情報をすべて含める必要があるため、リクエストボディが少し長くなります。Bodyタブに、以下のXMLを貼り付けてください。これは、出品に必要な最小限の項目を含んだサンプルです。 <?xml version="1.0" encoding="utf-8"?> <AddItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <ErrorLanguage>en_US</ErrorLanguage> <WarningLevel>High</WarningLevel> <Item> <Title>【API出品】日本の素敵なテスト商品</Title> <Description>これはPostmanとTrading APIを使って出品されたテスト商品です。</Description> <PrimaryCategory> <CategoryID>29223</CategoryID> </PrimaryCategory> <StartPrice>1.0</StartPrice> <CategoryMappingAllowed>true</CategoryMappingAllowed> <Country>US</Country> <Currency>USD</Currency> <DispatchTimeMax>3</DispatchTimeMax> <ListingDuration>Days_7</ListingDuration> <ListingType>Chinese</ListingType> <PictureDetails> <PictureURL>https://mysamplepicture.com/14.jpg</PictureURL> </PictureDetails> <PostalCode>95125</PostalCode> <Quantity>1</Quantity> <ItemSpecifics> <NameValueList> <Name>Title</Name> <Value>Harry Potter and the Philosophers Stone</Value> </NameValueList> <NameValueList> <Name>Publisher</Name> <Value>Smashwords</Value> </NameValueList> <NameValueList> <Name>Author</Name> <Value>JK Rowling</Value> </NameValueList> <NameValueList> <Name>Language</Name> <Value>English</Value> </NameValueList> </ItemSpecifics> <ReturnPolicy> <ReturnsAcceptedOption>ReturnsAccepted</ReturnsAcceptedOption> <RefundOption>MoneyBack</RefundOption> <ReturnsWithinOption>Days_30</ReturnsWithinOption> <ShippingCostPaidByOption>Buyer</ShippingCostPaidByOption> </ReturnPolicy> <ShippingDetails> <ShippingType>Flat</ShippingType> <ShippingServiceOptions> <ShippingServicePriority>1</ShippingServicePriority> <ShippingService>USPSMedia</ShippingService> <ShippingServiceCost>2.50</ShippingServiceCost> </ShippingServiceOptions> </ShippingDetails> <Site>US</Site> </Item> </AddItemRequest> ステップ3:送信とItemIDの記録 「Send」ボタンを押してリクエストを送信します。成功すると、レスポンスに <Ack>Success</Ack> と表示されるはずです。 そして、レスポンスの中にある <ItemID> というタグを探してください。これが、新しく出品されたあなたの商品固有のIDです。 重要: このItemIDを必ずコピーして、メモ帳などに保存しておいてください。 次の「更新」と「削除」のステップで必要になります。 2. U (Update) - ReviseItemで商品情報を更新する 次に、先ほど出品した商品の価格を更新してみましょう。 ステップ1:Postmanの準備 新しいリクエスト「ReviseItem Project」を作成します。ヘッダーの X-EBAY-API-CALL-NAME には ReviseItem と指定します。 ステップ2:リクエストボディの作成 ReviseItemのボディは非常にシンプルです。どの商品を(ItemID)、どの項目を(例:StartPrice)、どう変更したいか、だけを記述します。 <?xml version="1.0" encoding="utf-8"?> <ReviseItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <Item> <ItemID>ここに先ほど記録したItemIDを入力</ItemID> <Description>APIでReviseされました</Description> <StartPrice>199</StartPrice> </Item> </ReviseItemRequest> ステップ3:送信と更新内容の確認 リクエストを送信し、成功を確認します。では、本当に価格が変更されたか、どうやって確かめれば良いでしょうか? ここで、前回のプロジェクトでマスターした GetItem の出番です。先ほど作ったGetItemリクエストのタブに戻り、同じItemIDで再度リクエストを送信してみてください。レスポンスの中の <StartPrice> が「1」から「199」に変わっていれば、更新成功です! 3. D (Delete) - EndItemで出品を終了する 最後に、この商品の出品を取り下げて、プロジェクトを締めくくりましょう。 ステップ1:Postmanの準備 新しいリクエスト「EndItem Project」を作成し、ヘッダーの X-EBAY-API-CALL-NAME には EndItem と指定します。 ステップ2:リクエストボディの作成 EndItemに必要なのは、どの商品を(ItemID)、どういう理由で(EndingReason)終了させるか、です。EndingReasonは必須項目です。 <?xml version="1.0" encoding="utf-8"?> <EndItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <ItemID>ここに先ほど記録したItemIDを入力</ItemID> <EndingReason>NotAvailable</EndingReason> </EndItemRequest> ステップ3:送信と最終確認 リクエストを送信し、成功を確認します。 そして、最後の最後に、もう一度だけGetItemでこのItemIDを問い合わせてみてください。 今度は <Ack>Success</Ack> というレスポンスが返ってくるはずですが、<ListingStatus> では Ended が見つけられます。ここに注意すべきなのは、厳密に言えばEndItemは出品のデータを削除することではなく、出品を終了(無効)にするAPI呼び出しです。実際の商品のデータの削除は、eBayのシステムが自動的に実行(数ヶ月後)します。 サイトでの効果は、下の画像のように見えます。 まとめと次回予告 素晴らしい!これで、あなたの商品はAPIによって生まれ(Create)、変更され(Update)、そしてその役目を終えました(Delete)。このCUDサイクルを自らの手で完遂したことで、あなたはAPIによる商品管理の、最も重要で基本的なスキルを完全に手にしたことになります。 さて、私たちのAPI入門講座も、いよいよ次が最終回です。 最終回では、これまでの学びを振り返り、エラーへの対処法やAPIの利用上限といった、より実践的な知識をご紹介します。 さらに、Trading API以外の便利なAPIの世界も覗いてみましょう。この旅の締めくくりと、次なるステップへの展望をお届けします。 APIは難しくない!あなたのビジネスを加速させる魔法の杖です。 リファレンス1:AddItem主要必須フィールドと設定例 フィールド名 設定例 簡単な説明 Item/Title 「テスト商品:日本の素敵な品」 商品のタイトルです。 Item/PrimaryCategory/CategoryID 155174 (アニメフィギュアの例) 商品が属するeBayのメインカテゴリIDです。適切なIDはeBayサイトやGetCategoriesAPIで確認できます。 Item/StartPrice (と currencyID) 19.99 (USD) 商品の開始価格と通貨単位です。 Item/Country JP (日本) 商品の所在地(国)です。 Item/Currency USD (米ドル) 価格表示に使用する通貨です。 Item/PaymentMethods PayPal 受け付ける支払い方法です。国際取引ではPayPalが一般的です。 Item/ListingDuration GTC (Good 'Til Cancelled) 出品期間です。「GTC」はキャンセルされるまで出品が継続されます。 Item/Quantity 10 販売可能な在庫数です。 Item/PictureDetails/PictureURL https://example.com/image.jpg 商品画像のURLです。複数指定可能です。 Item/ShippingDetails/... (各種送料設定) 国内・国際配送のサービス、費用などを設定します。 Item/ReturnPolicy/... (各種返品ポリシー設定) 返品の可否、期間、返金方法、送料負担者などを設定します。 リファレンス2:ReviseItem更新可能フィールドと注意点 更新対象 XML要素 更新時の注意点 商品タイトル Item/Title 通常、いつでも更新可能です。 価格 Item/StartPrice オークション形式で入札がない場合、または固定価格形式では通常更新可能です。特定の条件下では制限がある場合があります。 在庫数 Item/Quantity 固定価格形式で更新可能です。在庫を0にすると出品が終了する(または非表示になる)場合があります。 商品説明 Item/Description 通常更新可能です。<DescriptionReviseMode>要素で、既存の説明に追加(Append)、前置(Prepend)、または完全置換(Replace)するかを指定できます。 画像 Item/PictureDetails/PictureURL 画像の追加、削除、順序変更が可能です。 Item Specifics Item/ItemSpecifics/NameValueList 商品属性の追加、変更、削除が可能です。 リファレンス3:EndItem主なEndingReasonとその意味 EndingReasonコード 意味 影響 NotAvailable 商品が販売できなくなった(例:在庫切れ、販売中止)。 通常、既存の入札はキャンセルされます。最も使われています。 Incorrect 出品情報に誤りがあった(例:価格、説明の間違い)。 通常、既存の入札はキャンセルされます。 LostOrBroken 商品が紛失した、または破損した。 通常、既存の入札はキャンセルされます。 SellToHighBidder (オークション形式で有効な入札がある場合のみ) 最高額入札者に商品を販売する。 取引が成立し、オークションが終了します。この理由を選択するには、通常、特定の条件(例:最低落札価格到達)を満たす必要があります。 OtherListingError 上記以外の出品に関するエラー。 通常、既存の入札はキャンセルされます。 次の記事はこちら
前回の記事はこちら 前回の記事では、APIとの対話ルールである「HTTPリクエスト」の基本を学び、便利ツール「Postman」を使って、そのリクエストを組み立てて送信する準備を整えました。理論と準備は万端です。(今回の内容は前回とほぼ同じように見えますが、復習として読んで行きましょう。) 今日から、いよいよ本格的なハンズオンプロジェクトを開始します。このプロジェクトを通じて、商品管理の基本となる4つの操作「作成(C)・読み取り(R)・更新(U)・削除(D)」を、一つずつ確実にマスターしていきましょう。 今回はその第一弾、「R (Read - 読み取り)」です。Trading APIの GetItem コールを使い、サンドボックスに出品された商品の情報を正確に取得し、その内容を確認する方法をじっくりと学びます。 プロジェクトの準備 まず、Postmanを起動し、前回設定したリクエストを選択してください。 このプロジェクトで最も重要な準備物は、サンドボックスで出品中(Active)の商品のItemIDです。ItemIDは、商品がeBayに出品されると自動的に割り振られる、その商品固有の背番号のようなものです。 もし、まだサンドボックスに出品済みの商品がない場合は、一度第五回の記事に戻って、テスト商品を一つ作成しておいてください。準備はよろしいでしょうか? それでは、始めましょう! GetItemリクエストの組み立てと送信 GetItemは、その名の通り、特定の商品の情報を「取得する」ためのAPIコールです。eBay上に登録されている、その商品の「公式データ」を丸ごと取得できる、非常に基本的ながら重要な命令です。 ステップ1:新しいリクエストの作成 Postmanで新しいリクエストを作成し、分かりやすいように「GetItem Project」といった名前を付けましょう。HTTPメソッドは POST、URLは https://api.sandbox.ebay.com/ws/api.dll を入力します。 ステップ2:ヘッダーの設定 「Headers」タブを開き、GetItemコールに必要な情報を設定します。これは、APIへの「お作法」でしたね。 X-EBAY-API-CALL-NAME: GetItem X-EBAY-API-IAF-TOKEN: // API Explorerで取得したトークン その他、前回設定したヘッダーをすべて入力します。 ステップ3:リクエストボディの作成 「Body」タブを開き、「raw」と「XML」を選択します。そして、以下のXMLをテキストエリアに貼り付けましょう。 <?xml version="1.0" encoding="utf-8"?> <GetItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <ItemID>ここにあなたのサンドボックス商品のItemIDを入力</ItemID> <DetailLevel>ReturnAll</DetailLevel> <IncludeItemSpecifics>true</IncludeItemSpecifics> </GetItemRequest> ここでは、3つの重要なパラメータを指定しています。 <ItemID>: これが情報の取得対象です。ここに、準備しておいたあなたのサンドボックス商品のItemIDを正確に入力してください。 <DetailLevel>: どれだけ詳しい情報を返すかを指定します。ReturnAllは「可能な限り全ての情報をください」という意味の、最も詳細なレベルです。 <IncludeItemSpecifics>: trueに設定することで、商品の詳細属性(ブランド、色、サイズなど)をレスポンスに含めるように要求します。これは非常に重要な情報なので、trueにしておくことをお勧めします。 ステップ4:リクエストを送信! 全ての設定が完了したら、青い「Send」ボタンをクリックして、リクエストをeBayのサンドボックスサーバーに送信します。 レスポンス(返事)の読み解き方 リクエストが成功すると、Postmanの下部にあるレスポンス画面に、XML形式のデータが返ってきます。最初は呪文のように見えるかもしれませんが、構造を理解すれば簡単です。ここでは前回より詳しい説明で行きます。 確認ポイント①:通信の成功チェック まず最初に確認するのは、リクエストが正しく処理されたかどうかです。レスポンスの先頭にある <Ack> というタグを探してください。 <Ack>Success</Ack>: これが表示されていれば、リクエストは成功です! <Ack>Failure</Ack>: もし失敗した場合は、<Errors>というタグが同時に返ってきます。その中の<LongMessage>を読むと、「ItemIDが存在しない」「トークンが無効」など、失敗の原因に関するヒントが書かれています。 確認ポイント②:商品情報の本体 成功を確認したら、いよいよ中身を見ていきましょう。商品の詳細情報は、すべて <Item> という大きなタグの中に含まれています。 確認ポイント③:主要な情報の探し方 <Item>タグの中で、以下のタグを探してみてください。あなたが設定した情報が正しく登録されているか、宝探しのように確認してみましょう。 <Title>: 商品のタイトル <Description>: 商品の説明文 <SellingStatus><CurrentPrice>: 現在の価格 <Quantity>: 現在の在庫数 <QuantitySold>: これまでに売れた数 <PictureDetails><PictureURL>: 商品画像のURL。複数ある場合は、このタグも複数返ってきます。 <ItemSpecifics>: 商品の詳細属性。<NameValueList>の中に、属性名(Name)と値(Value)のペアで格納されています。 これらの情報を自分の目で確認することで、APIを通じてeBayのデータベースと直接対話している、という事実を強く実感できるはずです。もし分からない部分があったら、AIもしっかり活用して確認をとりましょう。 まとめと次回予告 お疲れ様でした!これで、ハンズオンプロジェクトの第一弾「R (Read)」は完了です。あなたは今、APIを使って特定の商品の情報を正確に取得し、その内容を読み解くという、自動化に不可欠な基本スキルを身につけました。 さて、情報の「読み取り」をマスターしたなら、次はいよいよ情報の「作成」です。 次回のプロジェクト第二弾では、「C (Create)」に挑戦します。引き続きPostmanを使い、AddItemコールを組み立てて、API経由でサンドボックスに新しい商品をゼロから出品してみましょう。ご期待ください! APIは難しくない!あなたのビジネスを加速させる魔法の杖です。 次の記事はこちら
前回の記事はこちら 前回は、eBay販売管理の中核をなすTrading APIの全体像と、その主要な機能について学びましたね。APIという「言葉」の種類と意味が分かったところで、いよいよ実践に移ります。 今回は、プログラミングを一切行わずにAPIを呼び出すことができる、非常に強力で初心者にも優しいツール「Postman」をご紹介します。これを使って、Trading APIとの初めての本格的な対話を体験してみましょう。 その前に:APIとの対話の基本ルール「HTTPリクエスト」 Postmanを使い始める前に、私たちがAPIと対話する際の基本的なルール、「HTTPリクエスト」について少しだけお話しします。難しく考えず、「レストランでの注文の仕方」を思い出してください。 私たちがAPIに何かを依頼することは、ウェブの世界では「HTTPリクエストを送る」と言います。これは、あなたがウェイターに渡す一枚の「注文伝票」のようなものです。この伝票は、いくつかの重要なパートで構成されています。 メソッド (Method): これは「注文の種類」です。 GET: 「情報を取得したい (Get)」時に使います。「メニューを見せてください」というような、読み取り専用の依頼です。 POST: 「情報を提出したい (Post)」時に使います。「この内容で料理を作ってください」というように、何かを新しく作成したり、更新したりする依頼です。eBayのTrading APIでは、たとえ情報を取得する場合でも、リクエスト内容が複雑なため、主にこのPOSTを使います。 URL: これは「宛先」です。「厨房(eBayのAPIサーバー)の住所」に当たります。この宛先を間違えると、注文は届きません。 ヘッダー (Headers): これは伝票の「ヘッダー情報」です。注文内容そのものではなく、「誰からの注文か(認証キー)」「どんな形式で書かれているか(データ形式)」といった、配送伝票のラベルのような補足情報が含まれます。 ボディ (Body): これが「注文内容の本体」です。POSTメソッドの場合、ここに「どんな商品情報を取得したいか」や「どんな商品を出品したいか」といった、具体的な依頼内容を書き込みます。Trading APIでは、このボディにXML形式で指示を記述します。 パラメータ (Parameters): ボディやURLの中に含まれる、個々の具体的な指示内容です。「どの商品の?(ItemID)」や「どれくらい詳しく?(DetailLevel)」といった、詳細な指定がこれにあたります。 これらの要素を正しく組み立ててAPIサーバーに送ることで、初めてAPIとの対話が成立します。そして、これから紹介するPostmanは、この「注文伝票」を簡単かつ正確に作成するための、非常に優れたツールなのです。 Postmanとは? API初心者の心強い味方 Postmanは、先ほど説明したHTTPリクエストを、グラフィカルな画面で直感的に組み立てて、送受信できるツールです。コーディングは一切不要で、APIの動きを目で見て理解できるため、初心者にとって最高の学習パートナーとなります。 まずは公式サイト(postman.com)から、お使いのPCに合わせたアプリケーションをインストールしておきましょう。 事前準備:ヘッダーの設定とURLの入力 前の内容が書いたように、API呼び出しを行う前に、私たちは相手に「自分が誰であるか」を伝える必要があります。これは、まるでレストランに入って注文する前に、店員に自分の身元(例えば予約者名)を伝えるようなものです。APIの世界では、この「私が誰か」という情報やその他の重要な情報は、「HTTPヘッダー」を介して伝達されます。 ヘッダーには、リクエストを送信する形式や認証情報(APIキーやトークンなど)といったメタデータが含まれます。これらの情報は、APIサーバーがリクエストを正しく理解し、応答するために不可欠です。ここで第五回の記事で紹介したAPI Explorerはまだ覚えていますでしょうか。 画像のようにAPI ExplorerでAPIを呼び出した際に、Trading APIでよく使用され、設定が必須となるヘッダーは以下です: X-EBAY-API-SITEID: 0 このヘッダーは、APIリクエストの対象となるeBayサイトIDを指定します。`0`は通常、米国サイト(US)を指し、異なる数字はeBayの異なるグローバルサイトに対応します。これにより、リクエストが正しいeBayの地域サーバーに送信されることが保証されます。 X-EBAY-API-COMPATIBILITY-LEVEL: 967 このヘッダーは、使用しているAPIバージョンの互換性レベルを示します。これは、サーバーがあなたのアプリケーションがどのAPIバージョン向けに設計されているかを認識し、互換性のある方法でリクエストを処理し、該当するバージョンのデータ構造を返すために役立ちます。APIの更新に伴い、この数値は変更される可能性があります。 X-EBAY-API-CALL-NAME: GetItem このヘッダーは、実行したい特定のAPI操作名を指定します。この例では、`GetItem`は特定の商品(Item)の詳細情報を取得したいことを意味します。異なるAPI呼び出し(例:商品出品、注文変更など)を行うたびに、この値はそれに応じて変更されます。 X-EBAY-API-IAF-TOKEN: (トークンを入力) これはAPI認証トークンであり、あなたの身元と権限を検証するために使用されます。eBay APIにアクセスし、指定された操作を実行する権限があることを証明します。ここに、eBay開発者センターで取得したOAuthトークンまたはレガシー認証トークンを入力する必要があります。このトークンがないと、リクエストは認証されません。 どうでしょうか?難しいそうな設定のように見えますが、実際は”身分証明証”を持って、0番の役所に行き、967室でGetItemの業務をしたいとほぼ同じの意味です。ヘッダーの設定が完了すると、URLに https://api.sandbox.ebay.com/ws/api.dll を入力しましょう。(Memo: 入力が分からない場合は、API Explorerでコピー&ペーストをしましょう)、設定済みの画像は以下です。 これから見ていくように、API呼び出しのたびにこれらのヘッダーを入力するのは手間がかかります。Postmanには、「Environment(環境)」機能があり、これらの共通情報を変数として保存し、後で簡単に再利用できます。このチュートリアルではEnvironment機能の詳細には触れませんが、興味のある方はPostmanの公式ウェブサイトで学習することをお勧めします。 ハンズオン:GetItemリクエストを送信してみよう 準備が整いました。サンドボックスに出品したテスト商品の情報を取得するGetItemコールを送信してみましょう。 簡単な方法(ショートカット) 本格的にリクエストを組み立てる前に、素晴らしいお知らせです。eBay Japanでは、主要なAPIコールをすぐに試せるPostmanのコレクションファイルを準備中です。これをダウンロードしてPostmanにインポートすれば、APIの設定の大部分が完了した状態からスタートできます。手っ取り早く試したい方は、ぜひリリースを楽しみにお待ちください。詳細はeBay Japanのデベロッパーサイトのニュースにご注目ください。 GetItemリクエストを送信 今回は学習のため、あえて手動でリクエストを組み立てることで、その仕組みを深く理解していきましょう。先ほど学んだHTTPリクエストの知識を思い出しながら、各項目を設定してみてください。 ボディの設定 「Body」タブを開き、「raw」と「XML」を選びますと、ボディの入力ボックスが現れます。下の画像をチェックしてください。 ボディの入力ボックスに以下のXMLリクエストを貼り付けます。ItemIDが、このリクエストにおける重要なパラメータの一つです。 <?xml version="1.0" encoding="utf-8"?> <GetItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <ErrorLanguage>en_US</ErrorLanguage> <WarningLevel>High</WarningLevel> <!--Enter an ItemID--> <ItemID>110583461480</ItemID> </GetItemRequest> 注: <ItemID> タグの中身を、第五回の記事でサンドボックスに作成した、実在するテスト商品のItemIDに書き換えるのを忘れないでください。 リクエストを送信して結果を確認! 右上にある青い「Send」ボタンをクリックします。成功すれば、下のレスポンス画面に商品の詳細情報がXML形式で返ってくるはずです。 おめでとうございます!HTTPリクエストの基本を学び、Postmanを使ってAPIとの対話を成功させました。 次回からは、いよいよデータの「読み取り(Read)」「作成(Create)」「更新(Update)」「削除(Delete)」に挑戦します。引き続きPostmanを使い、商品管理の一連の流れをハンズオンで体験します。ぜひ、ご期待ください。 APIは難しくない!あなたのビジネスを加速させる魔法の杖です。 リファレンス1:XMLとは?API応答のXMLデータをどう読み解く? XMLの基本的な形: eBay Trading APIでは、APIにお願いするデータ(リクエスト)や、APIから返ってくるデータ(レスポンス)を作るのに、XMLがよく使われています。 XMLの文書は、いくつかの部分が入れ子になった形でできています。それぞれの部分は、始まりの印(タグ)と終わりの印(タグ)で囲まれています。例えば: <要素名> <子要素名>内容</子要素名> <別の要素名 属性="値">もっと内容</別の要素名> </要素名> タグ(Tags): <>で囲まれた部分、例えば<GetItemRequest>。始まりのタグと終わりのタグ(/がついている、例えば</GetItemRequest>)で一つの「要素」が決まります。 要素(Elements): タグとその中の内容全体、例えば<ItemID>110583461480</ItemID>。 属性(Attributes): 始まりのタグの中に書かれた追加の情報。「名前="値"」の形、例えば<別の要素名 属性="値">。 ルート要素(Root Element): XML文書の一番上の部分。他のすべての要素はこの中に入っています。GetItemRequestの例では、<GetItemRequest>がルート要素です。 API応答のXMLデータをどう読み解く? APIへのリクエストが成功すると、eBayのサーバーからXML形式の応答が返ってきます。この応答を読み解くのは、階層のある報告書を読むようなものです。 ルート要素を見つける: 応答の一番上の要素は、たいていResponseで終わります。例えばGetItemResponse。これは、あなたが行ったお願いに対する応答だということを示しています。 一つずつ下の要素を見ていく: 一番上の状態情報: ルート要素のすぐ下には、リクエストがうまくいったかどうか(Ack:Success、Failure、Warningなど)といった、リクエストの状態に関する要素があります。 お願いした内容のデータ: 次に、あなたのお願いした具体的な内容に関する要素が出てきます。例えば、GetItemResponseの中には、お願いした商品の詳しい情報がすべて入った<Item>要素があります。 さらに中の要素と属性: <Item>要素の中には、もっと細かい要素があります。例えば<Title>(商品のタイトル)、<CurrentPrice>(今の価格)、<EndTime>(終了時間)などです。これらは具体的な商品データを含んでいます。データによっては、タグの中に属性として書かれていることもあります。 名前空間に注意: xmlns="urn:ebay:apis:eBLBaseComponents"のようなものを見かけるかもしれません。これはXMLの名前空間と言って、同じ名前の要素が他のXML文書とぶつからないように、要素や属性の集まりを定義しています。データを読み解く上では、通常気にしなくても大丈夫です。 エラーや警告の情報: もしリクエストがうまくいかなかったり、警告があったりすると、応答の中に<Errors>や<Warnings>要素が含まれます。これらには、何が問題だったのか、エラーコードは何なのかなどが詳しく書かれています。 このように、階層をたどっていくことで、必要なデータをはっきり見つけることができます。例えば、GetItemResponseから商品のタイトルを知りたい場合は、GetItemResponseの下にあるItem要素、さらにその下のTitle要素を見つければ、その中のテキストが商品のタイトルです。 リファレンス2:eBay Trading API (XML) 共通HTTPヘッダー設定リスト ヘッダー名 (Header Name) 設定値の例 説明 必須/任意 X-EBAY-API-CALL-NAME GetItem, AddItem など 呼び出すAPIの操作名を指定します。 必須 X-EBAY-API-APP-NAME YourAppIDxxxx (環境変数参照) アプリケーションID (App ID) を指定します。 必須 X-EBAY-API-DEV-NAME YourDevIDxxxx (環境変数参照) 開発者ID (Dev ID) を指定します。 必須 X-EBAY-API-CERT-NAME YourCertIDxxxx (環境変数参照) 証明書ID (Cert ID) を指定します。 必須 X-EBAY-API-COMPATIBILITY-LEVEL 1193 など (環境変数参照) API互換性レベルを指定します。最新版はドキュメントで確認。 必須 X-EBAY-API-SITEID 0 (米国)、77 (ドイツ) など (環境変数参照) 対象のeBayサイトIDを指定します。 必須 Content-Type text/xml; charset=utf-8 リクエストボディの形式がXMLであり、UTF-8エンコーディングであることを示します。 必須 次の記事はこちら
トップに戻る