앱에서 대략적으로 다음과 같은 시나리오를 처리해야 합니다.
사용자가 Cloud Marketplace에서 제품 등록과 같은 요청 또는 변경을 수행합니다.
Cloud Marketplace는 Pub/Sub를 통해
eventType
필드의 요청 정보가 포함된 알림을 앱에 보냅니다. 예를 들어 사용자가 자격을 변경하면eventType
은ENTITLEMENT_PLAN_CHANGED
가 됩니다.가능한
eventType
의 전체 목록을 참조하세요.요청을 승인하기 위해 앱은 Partner Procurement API에
HTTP POST
요청을 보냅니다.
다음 섹션에서는 사용자가 수행할 수 있는 요청 유형 및 앱이 요청을 처리하기 위해 수행해야 하는 작업을 설명합니다.
이 섹션에 설명된 API 호출에 대해 다음 엔드포인트를 사용합니다.
https://cloudcommerceprocurement.googleapis.com/
시작하기 전에
- 앱 통합의 설명대로 Cloud Commerce Partner Procurement API에 대한 액세스를 설정합니다.
새 사용자의 계정 만들기
사용자가 처음으로 제품을 구입하면 Cloud Marketplace에서 사용자와 개발자와의 관계를 추적하는 계정 리소스를 만듭니다. 계정 리소스가 생성되면 생성된 Pub/Sub 주제를 통해 알림을 받습니다. Pub/Sub 메시지의 형식은 다음과 같습니다.
{ "eventId": "...", "providerId": "YOUR_PARTNER_ID", "account": { "id": "USER_ACCOUNT_ID", "updateTime": "..." } }
여기서 USER_ACCOUNT_ID는 Cloud Marketplace에서 만든 계정 ID이고 YOUR_PARTNER_ID는 파트너 엔지니어가 Partner Procurement API에 대한 액세스를 사용 설정할 때 개발자에게 할당된 ID입니다.
동시에 사용자가 등록 페이지로 연결되고, 여기에서 개발자 시스템의 계정을 만듭니다. 등록 페이지 만들기에 대한 자세한 내용은 앱의 프런트엔드 통합을 참조하세요.
사용자 계정 승인
사용자가 등록에 성공하면 앱에서 Partner Procurement API를 호출하고 계정이 승인되었음을 표시해야 합니다.
계정은 ACCOUNT_ACTIVE
상태로 작성되지만 signup
라고 부르는 approvals
필드에 PENDING
항목이 존재하며 이는 사용자가 아직 등록되지 않았다는 의미입니다. 사용자가 등록한 후 계정을 승인하려면 다음 HTTP POST
요청을 사용합니다.
POST v1/providers/YOUR_PARTNER_ID/accounts/USER_ACCOUNT_ID:approve {'approvalName': 'signup'}
사용자 계정 상태 확인
연결된 계정의 상태를 확인하려면 다음 HTTP GET
요청을 사용하세요.
GET v1/providers/YOUR_PARTNER_ID/accounts/USER_ACCOUNT_ID
응답은 다음 형식입니다.
{ "name": "providers/YOUR_PARTNER_ID/accounts/USER_ACCOUNT_ID", "provider": "acme-services", "state": "ACCOUNT_ACTIVE", "approvals": [{ "name": "signup", "state": "APPROVED", "updateTime": "...", }], "updateTime": "...", "createTime": "..." }
가능한 계정 상태 목록은 providers.accounts
API 참조를 참조하세요.