遷移區域管理
本指南說明如何將整合程序從 Content API for Shopping 中的 RegionsService 遷移至 Accounts 子 API 中的 RegionsService。
區域服務可讓您定義自訂地理區域,用於區域價格和運送覆寫等用途。您可以在 RegionalInventory 和 ShippingSettings 等服務中使用區域。
主要差異
- API 結構:Regions 服務現在是 Merchant API 的 Accounts子 API 的一部分 (例如merchantapi.googleapis.com/accounts/v1/...)。
- 資源名稱:Merchant API 會使用資源名稱 (accounts/{account}/regions/{region}),而非 Get、Update 和 Delete 作業網址路徑中的個別merchant_id和region_id參數。
- AIP 合規性:Merchant API 方法遵循標準 API 改進提案模式 (例如使用 parent進行列出/建立、使用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。 | 
ID
請按照下列方式變更 ID 的使用方式:
| 項目 | 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 要求的標準 ID。 | 
| 家長姓名 | 不嚴格用於要求。 | parent:accounts/{account} | List/Create 要求的標準 ID。 | 
資源
Region 資源結構有小幅變更:
| 項目 | Content API for Shopping | Merchant API | 說明 | 
|---|---|---|---|
| 資源 ID | region_id(字串)、merchant_id(int64) | name(字串):accounts/{account}/regions/{region} | Merchant API 會使用單一 name欄位做為資源 ID。 | 
| display_name | google.protobuf.StringValue | optional string | 已移除包裝類型。 | 
| radius_area | 不適用 (N/A) | 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 | 要求會從網址取得 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(回應) 和用於提出 API 要求 (例如CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest和ListRegionsRequest) 的 protobuf 訊息。 | 
| 區域 ID | region_id | region(name的一部分),region_id | 大部分整合至 name,CreateRegionRequest中有獨立的region_id欄位。這會影響Region(回應) 和用於提出 API 要求的 protobuf 訊息,例如CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest和ListRegionsRequest。 | 
| 區域名稱 (輸出) | region_id | name | 回應中的主要 ID 欄位現在是完整資源 name。這會影響Region。 | 
| 顯示名稱 | display_name | display_name | 類型會從 StringValue變更為optional string。
    這會影響Region。 | 
| 資格旗標 | ...eligible | ...eligible | 類型會從 BoolValue變更為optional bool。
    這會影響Region。 | 
| 更新遮罩 | update_mask | update_mask | Region欄位路徑。這會影響UpdateRegionRequest。 |