Content API v2 から v2.1 に移行する

Google は、2019 年 3 月に Content API for Shopping のバージョン 2.1 をリリースし、2021 年 4 月に、v2 が 2021 年 9 月 30 日に廃止されることを発表しました。バージョン v2 は廃止されました。すぐに v2.1 に移行してください。

アプリケーションの移行

v2 から v2.1 に移行するには、新しい v2.1 バージョンを呼び出すようにエンドポイント URL を更新し、v2.1 で導入された互換性のない変更を考慮してアプリケーションを変更する必要があります。

v2.1 エンドポイントを使用するように API 呼び出しを更新する

v2.1 を呼び出すには、新しい v2.1 エンドポイントを使用するようにリクエストを更新します。

たとえば、v2 で products.get メソッドを呼び出すには、次のコマンドを使用します。

GET https://shoppingcontent.googleapis.com/content/v2/merchantId/products/productId

v2.1 の場合は、URL を次のように更新します。

GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId

v2.1 のサービスとエンドポイントの詳細については、API リファレンスをご覧ください。

必要な変更を加える

API 呼び出しの URL を更新するだけでなく、v2.1 で導入されたいくつかの互換性を破る変更に対応するために、アプリケーションも更新する必要があります。以下のセクションを確認し、必要に応じてアプリケーションを更新します。

1. inventory サービスとの統合を更新する

v2 inventory サービスは削除されました。v2.1 の次の機能で、同等の機能を使用できます。

  • 商品の一部更新には、新しい補助フィードまたは products.update を使用します。以前に inventory.set で更新されたすべてのフィールドを含む、すべての変更可能な商品フィールド(localinventory 以外のフィールドを除く)を更新できます。詳しくは、補助フィードへの移行をご覧ください。

  • ローカル プロダクトの更新には、新しい localinventory サービスを使用します。

2. accounts サービスへの呼び出しを更新する

  • v2.1 で accounts.update メソッドを呼び出すと、リクエストに含まれるフィールドのみが更新されるのではなく、accounts リソースが完全に上書きされます。accounts リソースのフィールドが削除されないようにするには、すべてのフィールドが含まれるように呼び出しリクエストを更新します。

  • reviewsUrl を削除しました。

  • adsLinksgoogleMyBusinessLinkyoutubeChannelLinks のリンク ステータス inactive が削除されました。

3. products サービスへの呼び出しを更新する

  • カスタム属性にタイプと単位が含まれなくなりました。代わりに単位が値に追加され、型が自動的に検出されます。

  • productTypeadditionalProductTypes の両方が繰り返しフィールド productTypes に置き換えられました。

  • 繰り返しフィールド includedDestinationsexcludedDestinations が繰り返しフィールド destinations を置き換えました。

  • AdWords 関連の次のフィールドの名前が変更されました。

    • adwordsGrouping -> adsGrouping
    • adwordsLabels -> adsLabels
    • adwordsRedirect -> adsRedirect
  • 次のフィールドが削除されました。

    • aspects
    • destinations
    • onlineOnly
    • validatedDestinations
    • warnings
  • includeInvalidInsertedItems パラメータが削除されました。v2.1 では、デフォルトですべての商品が返されます。

  • 挿入された商品が products.get または products.list を介して取得されるまでに数分の遅延が発生しました。

  • 返される offerId と入力 offerId が同じになるとは限りません。v2.1 では、offerId の先頭と末尾の空白文字が削除され、複数の空白文字が 1 つに統合されます。この変更は、推奨の offerId 構文に準拠する offerId 値には影響しません。

  • 商品の挿入前に価格が検証されるようになりました。値の文字列に使用できる文字は、+-.、および数字(09)。カンマは使用できなくなりました。

  • products.insert または products.update 呼び出しのレスポンスには、次の属性のみが含まれます。

    • channel
    • contentLanguage
    • id
    • offerId
    • feedLabel
  • v2 オプション includeAttributes が非推奨になりました。完全な商品情報を表示するには、代わりに products.getProductId とともに使用してください。

4. productstatuses サービスへの呼び出しを更新する

  • product 属性は、includeAttributes パラメータとともに削除されました。ステータスに対応する商品の属性を取得するには、products サービスを使用して、新しい productId フィールドの値を渡します。

  • includeInvalidInsertedItems パラメータが削除されました。商品が有効かどうかにかかわらず、すべての商品の productId が返されるようになりました。

  • destinationStatusesintentionapprovalStatusapprovalPending フィールドが status に置き換えられました。これは、approveddisapprovedpending のいずれかにできる文字列です。

  • dataQualityIssuesitemLevelIssues に置き換えました。

5. datafeeds サービスへの呼び出しを更新する

  • 次のターゲット フィールドが置き換えられました。

    • contentLanguage -> language
    • targetCountry -> country
    • intendedDestinations -> includedDestinationsexcludedDestinations
  • contentType = "product inventory update" を使用するデータフィードは削除されました。

6. orders サービスと TestOrders サービスへの呼び出しを更新する

  • v2.1 では、税金データが自動的に計算されるため、呼び出しに税金データを含めないでください。マーケットプレイス公平性法(MFA)などが有効な州で注文が処理される場合、税金データを含む呼び出しは失敗します。注文が MFA 以外の州で処理される場合、Merchant Center で設定された設定に基づいて税金が計算されます。設定しない場合、税金は 0 になります。

  • InStoreRefundLineItem フィールドと ReturnRefundLineItem フィールド amountPretaxamountTax が、それぞれ priceAmounttaxAmount に置き換えられました。priceAmount は、注文の地域に応じて、税抜きまたは税引後の金額になります。

  • リクエストの ShipLineItem フィールド carriershipmentIdtrackingIdshipmentInfos に移動しました。

  • billingAddresspredefinedBillingAddress が、それぞれ ordersTestOrder の最上位フィールドになりました。

  • customer.explicitMarketingPreferencecustomer.marketingRightsInfo に置き換えました。

  • netAmount フィールドが netPriceAmountnetTaxAmount に分割されました。

  • shippingOptionlineItems[].shippingDetails に置き換えました。

  • リクエストの CancelLineItem フィールド amountamountPretaxamountTax が削除されました。払い戻し額が自動的に計算されるようになりました。

  • CustomBatch を削除しました。

  • Refund を削除しました。代わりに refundOrder または refundItem を使用してください。

  • paymentMethod フィールドが削除されました。

  • v2 のメソッド orders.returnlineitemorders.refund が、orderreturns.creatOrderReturnorderreturns.process に置き換えられました。

  • customer.emailchannelTypelineItem.product.channel の各フィールドが削除されました。

  • promotions フィールドが TestOrder サービスから削除され、Order でその形式が変更されました。

7. orderinvoice サービスへの呼び出しを更新する

  • amountPretax フィールドと amountTax フィールドがそれぞれ priceAmounttaxAmount に置き換えられました。priceAmount フィールドは、注文の地域に応じて税抜きまたは税抜きになります。

  • invoiceSummary とプロモーション料金に関連するフィールドの残高(販売者、お客様、Google)を削除しました。

8. v2.1 に含まれていない機能の削除

他のいくつかの機能が v2.1 の Content API から削除されました。次のリストを確認し、必要に応じてアプリケーションを更新してください。

  • XML はサポートされなくなりました。JSON への切り替えについて詳しくは、Content API for Shopping での XML サポートの終了をご覧ください。

  • dryRun パラメータが削除されました。この変更は、すべての API 呼び出しに適用されます。

  • すべての HTTP BATCH メソッドが削除されました。代わりに customBatch を使用してください。

  • patch メソッドは次のサービスから削除されました。

    • accounts
    • accounttax
    • datafeeds
    • liasettings
    • shippingsettings
  • orderpayments サービスは削除されました。

移行をテストする

v2.1 に移行した後にアプリケーションへの変更をテストする方法について詳しくは、Content API for Shopping の使用のテストをご覧ください。アップデートのテスト中に問題が発生した場合は、Content API フォーラムに問題を投稿してください。

v2.1 での変更点

v2.1 では、更新が必要な変更に加え、次のような新機能と互換性を損なわない変更も導入されています。

  • 新しいサービス:

    • v2 の inventory サービスの代わりに、新しい localinventory サービスを使用してローカル プロダクトを更新できます。

    • 新しい orderreturns サービスを使用すると、orders サービスを使用しなくても返品を処理できるため、Google で購入(旧称: ショッピング アクション)の管理が容易になります。

  • 補助フィードを使用すると、商品の一部を更新できます。

  • products サービスに対するその他の変更:

    • products.insert リクエストで致命的でない警告やエラーが報告されなくなりました。これにより、Content API の外部でフィードを管理する場合と同様に、Merchant Center のフィードのルールを使用して、商品を挿入し、その後更新して問題を解決できます。

    • products.update が追加され、選択した一連の商品フィールドを更新できるようになりました。考えられる使用方法について詳しくは、ガイドをご覧ください。

    • 次の属性の無効な値によって挿入エラーがトリガーされ、productstatus サービスによって itemLevelIssues の一部として返されることがなくなりました。

      • ageGroup
      • availability
      • condition
      • energyEfficiencyClass
      • gender
      • maxEnergyEfficiencyClass
      • minEnergyEfficiencyClass
      • sizeSystem
      • sizeType
    • カスタム属性は再帰的になり、カスタム グループが不要になりました。

    • カスタム属性に、元の value フィールドに加えて groupValues フィールドが追加されました。いずれかのフィールドを設定する必要があります。