이 방법에서는 일반적으로 HTTP(S)를 통해 API 엔드포인트에 직접 원시 요청을 전송하여 Merchant API와 상호작용합니다. 요청 본문 형성, 헤더 설정 (인증 포함), 응답 파싱과 같은 측면을 수동으로 처리합니다.
1단계: 개발자로 등록
Merchant API를 사용하려면 개발자 연락처 정보를 등록해야 합니다.
등록을 통해 다음을 수행할 수 있습니다.
- 사용자에게
API developer
역할을 할당하여 판매자 센터 계정의 기술 담당자를 만듭니다. 이를 통해 Google은 개발자가 사용하는 API 및 기능에 관한 중요한 업데이트(예: 서비스 공지사항, 새로운 기능에 관한 정보)를 전송할 수 있습니다. 이러한 업데이트는 개발자가 아닌 사용자에게는 관심이 없을 수 있습니다. - 여러 번 등록하지 않고도 여러 판매자 계정으로 작업할 수 있습니다. 등록하면 판매자 API에 인증하는 데 사용되는 Google Cloud 프로젝트 ID가 기술 담당자 (
API developer
)가 있는 판매자 센터 계정과 연결됩니다. 이렇게 하면 등록된 Google Cloud 프로젝트로 인증하는 한 관리하는 모든 판매자 계정에 대한 중요한 업데이트를 받을 수 있습니다.
등록 시 등록에 자세히 설명된 기본 요건과 제한사항을 준수하세요.
developerRegistration.registerGcp
메서드를 사용하여 등록하려면 이 예시로 시작하여 요청 본문에서 {DEVELOPER_EMAIL}
를 적절한 이메일 주소로 바꾸세요.
POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/developerRegistration:registerGcp
{
"developerEmail": "{DEVELOPER_EMAIL}"
}
호출에 성공하면 프로젝트와 계정 간의 링크를 확인하는 DeveloperRegistration
리소스가 반환됩니다.
{
"name": "accounts/{ACCOUNT_ID}/developerRegistration",
"gcpIds": [
"123456789012345"
]
}
2단계: 개발자 연락처 및 권한 관리
등록 시 다음 사항이 적용됩니다.
- 이메일 주소가 판매자 센터 계정의 사용자에게 속한 경우 해당 사용자에게
API_DEVELOPER
역할이 부여됩니다. - 이메일 주소가 기존 사용자의 주소가 아닌 경우 해당 주소로 초대가 전송됩니다.
API_DEVELOPER
역할이 있는 새 사용자로 추가되려면 수신자가 초대를 수락해야 합니다.
초기 등록 후에는 여러 개발자를 추가하고 추가 액세스 권한을 부여하는 것이 좋습니다.
2a단계. 추가 권한 부여
API_DEVELOPER
역할은 중요한 알림을 받는 데 필요하지만 판매자 센터 내에서 최소한의 권한을 갖습니다. 이 사용자가 다른 API를 호출하거나 판매자 센터 UI에서 설정을 관리하도록 허용하려면 STANDARD
또는 ADMIN
과 같은 추가 역할을 부여해야 합니다. 자세한 내용은 액세스 유형을 참고하세요.
accounts.users.patch
메서드로 사용자의 액세스 권한을 업데이트할 수 있습니다.
다음 예는 사용자에게 ADMIN
및 API_DEVELOPER
역할을 모두 부여하도록 사용자를 업데이트하는 방법을 보여줍니다. 이렇게 하면 계정을 완전히 관리할 수 있으며 API 관련 커뮤니케이션도 수신하게 됩니다.
PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/users/{DEVELOPER_EMAIL}?update_mask=access_rights
{
"access_rights": [
"ADMIN",
"API_DEVELOPER"
]
}
2b단계. 백업 개발자 추가
기본 개발자 연락처가 조직을 떠날 경우 API 액세스가 중단되지 않도록 백업 개발자를 한 명 이상 추가해야 합니다.
accounts.users.create
메서드를 사용하여 사용자를 추가하거나 accounts.users.patch
을 사용하여 사용자를 업데이트할 수 있습니다.
이 사용자에게 ADMIN
및 API_DEVELOPER
역할을 모두 부여하는 것이 좋습니다.
3단계: 기본 제품 데이터 소스 만들기
제품을 삽입하려면 기본 제품 데이터 소스가 필요합니다. 다음 요청은 계정에 제품을 삽입하는 데 사용할 수 있는 데이터 소스를 만드는 방법을 보여줍니다.
POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources
{
"primaryProductDataSource": {
"contentLanguage": "en",
"countries": [
"US"
],
"feedLabel": "US"
},
"name": "primary-data-source",
"displayName": "Primary Products Data Source"
}
{ACCOUNT_ID}를 생성한 판매자 센터 계정의 ID로 바꿉니다.
이 요청을 성공적으로 실행하면 다음과 같은 응답이 표시됩니다.
{
"name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
"dataSourceId": "{DATASOURCE_ID}",
"displayName": "Primary Products Data Source",
"primaryProductDataSource": {
"feedLabel": "US",
"contentLanguage": "en",
"countries": [
"US"
],
"defaultRule": {
"takeFromDataSources": [
{
"self": true
}
]
}
},
"input": "API"
}
name
필드 값을 복사합니다. 제품을 삽입하는 데 필요합니다.
판매자 센터 UI에서 이 데이터 소스를 확인할 수 있습니다. 자세한 내용은 데이터 소스 탭을 찾는 방법을 참고하세요.
4단계: 제품 삽입
데이터 소스를 만든 후 제품을 삽입해 보세요. 올바른 ACCOUNT_ID
를 제공하여 다음을 실행합니다. {DATASOURCE_NAME}를 이전에 복사한 값으로 바꿉니다.
POST https://merchantapi.googleapis.com/products/v1/accounts/{ACCOUNT_ID}/productInputs:insert?dataSource={DATASOURCE_NAME}
{
"contentLanguage": "en",
"feedLabel": "US",
"name": "Red T-shirt",
"productAttributes": {
"gender": "MALE",
"brand": "New brand"
},
"offerId": "tshirt-123"
}
이 요청을 성공적으로 실행하면 다음과 같은 응답이 표시됩니다.
{
"name": "accounts/{ACCOUNT_ID}/productInputs/en~US~tshirt-123",
"product": "accounts/{ACCOUNT_ID}/products/en~US~tshirt-123",
"offerId": "tshirt-123",
"contentLanguage": "en",
"feedLabel": "US",
"productAttributes": {
"brand": "New brand",
"gender": "MALE"
}
}
새로 생성된 제품의 제품 ID는 en~US~tshirt-123
입니다. accounts.products.get
메서드를 사용하여 이 제품에 관한 세부정보를 가져올 수 있습니다. 판매자 센터 UI를 사용하여 이 제품을 볼 수도 있습니다. 제품 데이터 보기를 참고하세요.