마이그레이션, 호환성

리전 관리 마이그레이션

이 가이드에서는 통합을 쇼핑용 콘텐츠 API의 RegionsService에서 계정 하위 API 내의 RegionsService로 이전하는 방법을 설명합니다.

지역 서비스를 사용하면 지역별 가격 및 배송 재정의와 같은 사용 사례에 사용할 맞춤 지리적 영역을 정의할 수 있습니다. RegionalInventoryShippingSettings과 같은 서비스와 함께 리전을 사용할 수 있습니다.

주요 차이점

  • API 구조: 이제 지역 서비스가 Merchant API의 Accounts 하위 API (예: merchantapi.googleapis.com/accounts/v1/...)에 포함됩니다.
  • 리소스 이름: Merchant API는 Get, Update, Delete 작업의 URL 경로에서 별도의 merchant_idregion_id 매개변수 대신 리소스 이름(accounts/{account}/regions/{region})을 사용합니다.
  • 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)를 사용할 수 있습니다.
  • 오류 처리: 오류 코드와 메시지가 더 구체적인 의견을 제공합니다.

요청

요청 패턴이 변경되는 방식은 다음과 같습니다.

항목 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} 목록/생성 요청의 표준 식별자입니다.

리소스

Region 리소스 구조가 약간 변경되었습니다.

항목 Content API for Shopping Merchant API 설명
리소스 식별자 region_id (문자열), merchant_id (int64) name (문자열): accounts/{account}/regions/{region} Merchant API는 단일 name 필드를 리소스 식별자로 사용합니다.
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 요청은 URL에서 parent을 가져오고 요청 본문에는 region 객체와 region_id이 포함됩니다.
지역 업데이트 UpdateRegion UpdateRegion 요청은 region (region.name 포함해야 함) 및 update_mask를 사용합니다.
지역 삭제 DeleteRegion DeleteRegion 요청에서 name을 사용합니다.
지역 목록 ListRegions ListRegions 요청에서 parent을 사용합니다. page_sizepage_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에 영향을 미칩니다.

자세히 알아보기