마이그레이션, 호환성
리전 관리 마이그레이션
이 가이드에서는 통합을 쇼핑용 콘텐츠 API의 RegionsService
에서 계정 하위 API 내의 RegionsService
로 이전하는 방법을 설명합니다.
지역 서비스를 사용하면 지역별 가격 및 배송 재정의와 같은 사용 사례에 사용할 맞춤 지리적 영역을 정의할 수 있습니다. RegionalInventory
및 ShippingSettings
과 같은 서비스와 함께 리전을 사용할 수 있습니다.
주요 차이점
- API 구조: 이제 지역 서비스가 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 개선 제안서 패턴 (예: 목록/생성에
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 리소스를 사용합니다. |
식별자
다음과 같이 식별자 사용을 변경합니다.
항목 | 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_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 에 영향을 미칩니다. |