データソースを移行する

このガイドでは、Content API for Shopping の datafeeds サービスと datafeedstatuses サービスから Merchant API のデータソース サブ API に統合を移行する方法について説明します。新しいデータソース サブ API により、データ パイプラインをより直接的に制御し、データソースの管理を簡素化できます。

新機能について詳しくは、データソースを管理するガイドをご覧ください。

主な違い

Merchant API には、Content API for Shopping と比較して次のようなメリットがあります。

  • 明示的なデータソースの作成。API では、最初の商品挿入時に「Content API」データソースが自動的に作成されなくなりました。Merchant API では、商品データをアップロードする前にデータソースを明示的に作成する必要があります。これにより、最初から商品データ パイプラインの整理と管理をより細かく制御できます。

  • 複数の API データソースのサポート。Content API for Shopping では、自動的に作成される「Content API」データソース 1 つのみに制限されていました。Merchant API を使用すると、API 入力タイプの複数のデータソースを作成して管理できます。

  • ラベルと言語のないデータソース。Merchant API を使用すると、feedLabelcontentLanguage を指定せずにプライマリ データソースを作成できます。このタイプのデータソースでは、feedLabelcontentLanguage の任意の組み合わせで商品を受け入れるため、地域ごとに別々のデータソースを必要としない統合で商品のアップロードを簡素化できます。

  • 簡素化されたデータターゲット。各データソースは、feedLabelcontentLanguage の一意の組み合わせで定義された単一のターゲットに対応するようになりました。Merchant API では、複数データをターゲットにしたフィードは非推奨になりました。

  • 専用のファイル アップロード ステータス。Merchant API は、ファイルベースのデータソースのステータスを、読み取り専用の別の fileUploads リソースを使用して表します。ファイル アップロードのステータスを取得するには、latest エイリアスを使用して fileUploads.get メソッドを使用します。

  • 新しいデータソース タイプ。DataSource リソースは、プロモーション、ローカル在庫、地域在庫など、より多くの業種をサポートしており、すべてのデータ パイプラインを統合的に管理する方法を提供します。

  • 自動データソース。Merchant API を使用すると、Accounts サブ API の autofeedSettings.updateAutofeedSettings メソッドを使用して、アカウントの自動データソース機能を有効または無効にできるようになりました。詳細については、自動フィード設定を構成するをご覧ください。

リクエスト

次の表は、Content API for Shopping と Merchant API のリクエスト URL 形式を比較したものです。

リクエストの説明 Content API for Shopping Merchant API
データソースを作成する POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources
データソースを取得する GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}
データソースを一覧表示する GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources
データソースを更新する PUT https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} PATCH https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}
データソースを削除する DELETE https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} DELETE https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}
データソースを取得する POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID}/fetchNow POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}:fetch
データソースのステータスを取得する GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses/{DATAFEED_ID} GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}/fileUploads/latest
データソースのステータスを一覧表示する GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses 利用できません。ファイルベースのデータソースごとに dataSources.listfileUploads.get を使用します。

識別子

Merchant API では、文字列ベースのリソース名が識別子として使用されます。

識別子の説明 Content API for Shopping Merchant API
データソース識別子 datafeedId(数値) name(文字列、形式: accounts/{account}/dataSources/{datasource}

メソッド

次の表に、Content API for Shopping の datafeeds サービスと datafeedstatuses サービスのメソッドと、Merchant API の同等のメソッドを比較します。

Content API for Shopping のメソッド Merchant API メソッド 提供状況と注意事項
datafeeds.custombatch 利用不可 代わりに個別の API 呼び出しを使用してください。
datafeeds.delete dataSources.delete 使用可能
datafeeds.fetchnow dataSources.fetch 利用できます。このメソッドは、ファイル入力のあるデータソースでのみ機能するようになりました。
datafeeds.get dataSources.get 使用可能
datafeeds.insert dataSources.create 使用可能
datafeeds.list dataSources.list 使用可能
datafeeds.update dataSources.update 利用できます。PUT ではなく PATCH のセマンティクスを使用します。
datafeedstatuses.custombatch 利用不可 代わりに個別の API 呼び出しを使用してください。詳しくは、複数のリクエストを一度に送信するをご覧ください。
datafeedstatuses.get fileUploads.get ファイルベースのデータソースで使用できます。latest エイリアスを使用して、最新のアップロードのステータスを取得します。他のデータソース タイプの場合、ステータス情報は DataSource リソースの一部です。
datafeedstatuses.list 利用不可 複数のデータソースのステータスを取得するには、まず dataSources.list を使用してすべてのデータソースを一覧表示します。次に、各ファイルベースのデータソースの latest エイリアスを指定して fileUploads.get を呼び出します。

フィールドの変更の詳細

次の表は、Content API for Shopping の Datafeed リソースと DatafeedStatus リソース、Merchant API の DataSource リソースと FileUpload リソースのフィールド レベルでの変更点を示しています。

Content API for Shopping Merchant API 説明
Datafeed DataSource データソース構成のメインリソース。
id name リソース識別子。数値 ID から文字列リソース名に変更されました。
name displayName データソースのユーザー向けの名前。
attributeLanguage primaryProductDataSource.contentLanguage データソース内のアイテムの 2 文字の ISO 639-1 言語コード。
fileName fileInput.fileName アップロードされたファイルの名前。このフィールドは fileInput の下にネストされるようになりました。
fetchSchedule fileInput.fetchSettings ファイルベースのデータソースを取得するスケジュール。これは fileInput の下にネストされるようになりました。
fetchSchedule.paused fileInput.fetchSettings.enabled ロジックが反転しています。paused: trueenabled: false と同等です。
format 利用不可 fileEncodingcolumnDelimiterquotingMode の各フィールドが削除されます。これらは自動的に検出されるようになりました。
targets primaryProductDataSource.feedLabelprimaryProductDataSource.contentLanguageprimaryProductDataSource.countries 繰り返し targets フィールドが削除されます。各データソースには、これらのフィールドで定義された単一のターゲットが設定されるようになりました。これは、マルチデータ ターゲット フィードの非推奨を反映したものです。
DatafeedStatus FileUpload ファイル アップロードのステータスは、独立した読み取り専用リソースになりました。
datafeedId name ファイル アップロードの識別子。親データソースを参照します。
processingStatus processingState アップロードの処理ステータス。文字列値(successfailurein progress)は列挙型(SUCCEEDEDFAILEDIN_PROGRESS)に置き換えられます。
errorswarnings issues エラーと警告は 1 つの issues リストに統合されます。各問題には severity フィールド(ERROR または WARNING)があります。
lastUploadDate uploadTime 最終アップロードのタイムスタンプ。形式が文字列から Timestamp オブジェクトに変更されました。
countrylanguagefeedLabel 該当なし これらのフィールドはステータス リソースに存在しなくなりました。これらは DataSource リソースの一部です。
targets[].included_destinationstargets[].excluded_destinations primaryProductDataSource.destinations 追加された宛先と除外された宛先の 2 つの別々のリストが、1 つの destinations リストに置き換えられます。新しいリストの各項目は、宛先とその状態(ENABLED または DISABLED)を指定するオブジェクトであり、より明示的な構成を提供します。