프라이빗 오퍼의 사용 권한 관리

고객이 프라이빗 오퍼를 구매하면 Google에서 고객이 Cloud Marketplace에서 오퍼를 구매했음을 나타내는 사용 권한을 만듭니다.

이 문서에서는 Partner Procurement API를 사용하여 프라이빗 오퍼의 사용 권한을 관리하는 방법을 검토합니다.

프라이빗 오퍼에 Partner Procurement API를 사용하는 방법에 대한 자세한 내용은 참조 문서를 확인하세요.

사용 권한 승인

고객이 프라이빗 오퍼를 구매하면 Cloud Marketplace에서 사용 권한을 만들고 제품에 다음 Pub/Sub 메시지를 보냅니다.

{
  "eventId": "...",
  "eventType": "ENTITLEMENT_CREATION_REQUESTED",
  "entitlement": {
  "id": "ENTITLEMENT_ID",
  "updateTime": "...",
  "newOfferDuration": "P1Y6M", // Contract duration for the offer
  "newOfferEndTime": "", // Ending time for the offer
  },
}

이 예시에서 ENTITLEMENT_ID는 Cloud Marketplace에서 만든 ID입니다.

기간과 함께 오퍼가 생성된 경우 메시지에 기간이 연도 및 월로 표시되고 newOfferEndTime 필드가 비어 있습니다. 종료 시간이 지정되어 오퍼가 생성된 경우 메시지에 오퍼의 종료 시간이 표시되고 newOfferDuration 필드가 비어 있습니다.

시스템에서 사용자가 오퍼를 구매한 것을 반영하도록 사용자 계정을 업데이트합니다. 그런 다음 자격을 승인하기 위해 Partner Procurement API에 대해 HTTP POST 요청을 실행하고 승인 중인 ENTITLEMENT_ID를 보냅니다.

POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approve

사용 권한 거부

사용 권한을 거부하려면 HTTP POST 요청에 reject 메서드를 사용합니다.

POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:reject

활성 오퍼 바꾸기

프라이빗 오퍼를 설정하는 방법에 따라 고객이 오퍼를 대체할 수 있습니다. 고객이 새로운 프라이빗 오퍼를 선택하면 다음 형식의 Pub/Sub 메시지가 수신됩니다.

{
  "eventId": "...",
  "eventType": "ENTITLEMENT_PLAN_CHANGE_REQUESTED",
  "entitlement": {
  "id": "ENTITLEMENT_ID",
  "newPlan": "ultimate",   // New plan for the offer,
  "newOffer": "OFFER2",    // New offer,
  "updateTime": "...",
  "newOfferDuration": "P2Y",   // Contract duration for the new offer
  },
}

이 예시에서 OFFER2는 대체 오퍼이고 ENTITLEMENT_ID는 Cloud Marketplace에서 만든 ID입니다. 오퍼 기간은 년 및 월 단위로 제공됩니다.

오퍼 교체를 승인하려면 Partner Procurement API에 다음 HTTP POST 요청을 수행합니다.

POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approvePlanChange

요청 본문에는 승인 중인 오퍼에 대한 요금제가 있어야 합니다.

{
  "pendingPlanName": PLAN_NAME
}

변경이 승인된 후에는 변경이 적용될 때 또 다른 Pub/Sub 메시지가 수신됩니다. 메시지에서 eventType 필드가 ENTITLEMENT_PLAN_CHANGED로 변경됩니다. 요금제 상태를 확인하려면 Partner Procurement API에 다음 HTTP GET 요청을 수행합니다.

GET v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID

응답은 다음과 비슷하게 표시됩니다. 여기서 state 필드는 새 오퍼가 활성화되었는지 아니면 오퍼 변경이 아직 보류 중인지를 나타냅니다.

{
  "name": "providers/PARTNER_ID/entitlements/ENTITLEMENT_ID",
  "provider": "PARTNER_ID",
  "account": "USER_ACCOUNT_ID",
  "product": "example-server",
  "Offer":   "OFFER1",
  "plan": "pro",
  "state": "ENTITLEMENT_PENDING_PLAN_CHANGE",
  "newPendingOffer": "OFFER2",
  "newPendingPlan": "ultimate",
  "newOfferDuration": "P2Y",
  "newOfferEndTime": "",
  ...
}

다른 사용 권한 태스크 완료

프라이빗 오퍼와 관련이 없는 다른 사용 권한 태스크는 Cloud Marketplace 공개 문서를 참조하세요.

프라이빗 오퍼 계정 태스크의 이벤트 유형 목록

다음 표에는 프라이빗 오퍼를 위해 Pub/Sub 메시지에서 제품이 수신할 수 있는 eventType가 포함되어 있습니다.

전체 목록은 계정 작업의 이벤트 유형 목록을 참조하세요.

eventType 설명
ENTITLEMENT_OFFER_ENDED 고객의 프라이빗 오퍼가 종료되었음을 나타냅니다. 이 오퍼는 ENTITLEMENT_CANCELLED 이벤트를 트리거하거나 할인되지 않은 가격이 포함된 활성 상태로 유지됩니다.

다음 단계