リージョン管理を移行する
このガイドでは、Content API for Shopping の RegionsService から Accounts サブ API 内の RegionsService に統合を移行する方法について説明します。
Regions サービスを使用すると、地域別の価格設定や送料のオーバーライドなどのユースケースで使用するカスタムの地理的領域を定義できます。RegionalInventory や ShippingSettings などのサービスでリージョンを使用できます。
主な違い
- API の構造: Regions サービスは、Merchant API の Accountsサブ API(merchantapi.googleapis.com/accounts/v1/...など)の一部になりました。
- リソース名: Merchant API では、Get、Update、Delete オペレーションの URL パスで、個別の merchant_idパラメータとregion_idパラメータではなく、リソース名(accounts/{account}/regions/{region})を使用します。
- AIP 準拠: Merchant API メソッドは、標準の API 改善提案パターン(List/Create に parentを使用、Get/Delete にnameを使用、標準のupdate_maskの使用など)に準拠しています。
- ラッパー型: Content API で google.protobuf.StringValueまたはgoogle.protobuf.BoolValueを使用していたフィールドは、Merchant API で標準のoptionalフィールドを使用するようになりました。
- 新しい機能:
- Merchant API では、Regionリソース内にRadiusAreaタイプが導入され、ポイントを中心とした半径に基づいて地域を定義できるようになりました(最初はTRUST_TESTERの可視性)。
- バッチメソッド(BatchCreateRegions、BatchUpdateRegions、BatchDeleteRegions)を使用できます。
 
- Merchant API では、
- エラー処理: エラーコードとメッセージで、より具体的なフィードバックを提供します。
リクエスト
リクエスト パターンの変更は次のとおりです。
| 項目 | Content API for Shopping | Merchant API | 説明 | 
|---|---|---|---|
| エンドポイント | https://shoppingcontent.googleapis.com | https://merchantapi.googleapis.com | ベースドメインが変更されます。 | 
| パスを取得 | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | Merchant API は、 accountsサブ API とリソースnameを使用します。 | 
| リストパス | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | Merchant API は parentを使用してアカウントを指定します。 | 
| パスを作成 | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | Merchant API は parentを使用します。region_idはリクエスト本文のフィールドです。 | 
| 更新パス | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | Merchant API のリソース名は、本文の regionオブジェクトの一部です。 | 
| パスを削除 | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | リソース nameを使用します。 | 
識別子
識別子の使用を次のように変更します。
| 項目 | Content API for Shopping | Merchant API | 説明 | 
|---|---|---|---|
| アカウント | merchant_id(整数) | account(整数、nameまたはparent文字列の一部) | リソース名文字列に埋め込まれているアカウント ID を見つけます(例: accounts/{account})。 | 
| リージョン | region_id(文字列) | {region}(文字列、name文字列の一部) | リソース名文字列に埋め込まれているリージョン ID を見つけます(例: accounts/{account}/regions/{region})。 | 
| リソース名 | リクエストに厳密に使用されるわけではありません。 | name:accounts/{account}/regions/{region} | Get/Update/Delete リクエストの標準識別子。 | 
| 保護者名 | リクエストに厳密に使用されるわけではありません。 | parent:accounts/{account} | List/Create リクエストの標準識別子。 | 
リソース
Region リソース構造に若干の変更があります。
| 項目 | Content API for Shopping | Merchant API | 説明 | 
|---|---|---|---|
| リソース ID | region_id(文字列)、merchant_id(int64) | name(文字列):accounts/{account}/regions/{region} | Merchant API は、単一の nameフィールドをリソース識別子として使用します。 | 
| display_name | google.protobuf.StringValue | optional string | ラッパーのタイプを削除しました。 | 
| radius_area | 利用不可(該当なし) | RadiusArea | この新しいタイプでは、半径で地域を定義します。 region_code、lat_lng、radius、radius_unitsを含みます。デフォルトでは、公開設定は制限されています。 | 
| regional_inventory_eligible | google.protobuf.BoolValue(出力のみ) | optional bool(出力のみ) | ラッパータイプを削除しました。 | 
| shipping_eligible | google.protobuf.BoolValue(出力のみ) | optional bool(出力のみ) | ラッパータイプを削除しました。 | 
メソッド
メソッドの使用を次のように変更します。
| 項目 | Content API for Shopping | Merchant API | 説明 | 
|---|---|---|---|
| リージョンを取得 | GetRegion | GetRegion | リクエストは nameを使用します。 | 
| リージョンを作成 | CreateRegion | CreateRegion | リクエストは URL から parentを取得し、リクエストの本文にはregionオブジェクトとregion_idが含まれます。 | 
| リージョンを更新する | UpdateRegion | UpdateRegion | リクエストでは、 region(region.nameを含む)とupdate_maskを使用します。 | 
| リージョンを削除 | DeleteRegion | DeleteRegion | リクエストは nameを使用します。 | 
| リージョンを一覧表示する | ListRegions | ListRegions | リクエストは parentを使用します。page_sizeとpage_tokenの動作は一貫しています。 | 
| 一括作成 | なし | BatchCreateRegions | これは新しいメソッドです。 | 
| 一括更新 | なし | BatchUpdateRegions | これは新しいメソッドです。 | 
| 一括削除 | なし | BatchDeleteRegions | これは新しいメソッドです。 | 
名前が変更されたフィールド
| 項目 | Content API for Shopping | Merchant API | 説明 | 
|---|---|---|---|
| アカウント ID | merchant_id | account(nameまたはparentの一部) | リソース name文字列に統合されます。これは、Region(レスポンス)と、CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequestやListRegionsRequestなどの API リクエストの作成に使用される protobuf メッセージに影響します。 | 
| リージョン ID | region_id | region(nameの一部)、region_id | ほとんどの場合、 nameに統合されます。CreateRegionRequestには別のregion_idフィールドがあります。これは、Region(レスポンス)と、CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequestやListRegionsRequestなどの API リクエストの作成に使用される protobuf メッセージに影響します。 | 
| 地域名(出力) | region_id | name | レスポンスのプライマリ識別子フィールドが、完全なリソース nameになりました。これはRegionに影響します。 | 
| 表示名 | display_name | display_name | 型が StringValueからoptional stringに変更されます。これはRegionに影響します。 | 
| 適格性フラグ | ...eligible | ...eligible | 型が BoolValueからoptional boolに変更されます。これはRegionに影響します。 | 
| 更新マスク | update_mask | update_mask | Regionフィールド パス。これはUpdateRegionRequestに影響します。 |