REST Resource: purchases.subscriptionsv2

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

리소스: SubscriptionPurchaseV2

사용자의 정기 결제 구매 상태를 나타냅니다.

JSON 표현
{
  "kind": string,
  "regionCode": string,
  "latestOrderId": string,
  "lineItems": [
    {
      object (SubscriptionPurchaseLineItem)
    }
  ],
  "startTime": string,
  "subscriptionState": enum (SubscriptionState),
  "linkedPurchaseToken": string,
  "pausedStateContext": {
    object (PausedStateContext)
  },
  "canceledStateContext": {
    object (CanceledStateContext)
  },
  "testPurchase": {
    object (TestPurchase)
  },
  "acknowledgementState": enum (AcknowledgementState),
  "externalAccountIdentifiers": {
    object (ExternalAccountIdentifiers)
  },
  "subscribeWithGoogleInfo": {
    object (SubscribeWithGoogleInfo)
  }
}
필드
kind

string

이 유형은 androidpublisher 서비스의 SubscriptionPurchaseV2 객체를 나타냅니다.

regionCode

string

가입이 승인된 시점의 ISO 3166-1 alpha-2 청구서 수신 국가/지역 코드입니다.

latestOrderId

string

정기 결제 구매와 연결된 최근 주문의 주문 ID입니다. 자동 갱신 정기 결제의 경우 아직 갱신되지 않은 경우 가입 주문의 주문 ID 또는 마지막 반복 주문 ID (성공, 대기중 또는 거부된 주문)입니다. 선불 구독의 경우 쿼리된 구매 토큰과 연결된 주문 ID입니다.

lineItems[]

object (SubscriptionPurchaseLineItem)

정기 결제 구매의 상품 수준 정보 동일한 구매의 항목은 모두 AutoRenewingPlan이 있거나 모두 선불 요금제가 있어야 합니다.

startTime

string (Timestamp format)

정기 결제가 부여된 시간입니다. 대기 중인 구독에 설정되어 있지 않습니다 (구독이 생성되었지만 가입 과정에서 결제가 대기 중입니다).

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

subscriptionState

enum (SubscriptionState)

정기 결제의 현재 상태입니다.

linkedPurchaseToken

string

정기 결제가 다음 중 하나에 해당하는 경우 이전 정기 결제의 구매 토큰입니다. * 취소되었지만 만료되지 않은 정기 결제 재가입 * 이전 정기 결제에서 업그레이드/다운그레이드합니다. * 선불에서 자동 갱신 정기 결제로 전환 * 자동 갱신되는 정기 결제에서 선불로 전환 * 선불 구독 잔액 충전

pausedStateContext

object (PausedStateContext)

일시중지된 정기 결제와 관련된 추가 컨텍스트입니다. 구독에 현재 subscriptionState가 SUBSCRIPTION_STATE_PAUSED인 경우에만 존재합니다.

canceledStateContext

object (CanceledStateContext)

취소된 정기 결제와 관련된 추가 컨텍스트입니다. 현재 구독에 subscriptionState SUBSCRIPTION_STATE_CANCELED가 있는 경우에만 존재합니다.

testPurchase

object (TestPurchase)

이 정기 결제 구매가 테스트 구매인 경우에만 표시됩니다.

acknowledgementState

enum (AcknowledgementState)

정기 결제의 확인 상태입니다.

externalAccountIdentifiers

object (ExternalAccountIdentifiers)

타사 서비스의 사용자 계정 식별자입니다.

subscribeWithGoogleInfo

object (SubscribeWithGoogleInfo)

Google을 통한 구독과 연결된 사용자 프로필입니다.

구독 상태

구독의 상태(예: 활성 또는 취소) 정기 결제 구매 내의 항목은 모든 자동 갱신 요금제 또는 선불 요금제일 수 있습니다.

열거형
SUBSCRIPTION_STATE_UNSPECIFIED 구독 상태가 지정되지 않았습니다.
SUBSCRIPTION_STATE_PENDING 가입이 생성되었지만 가입 과정에서 결제를 기다리는 중입니다. 이 상태에서는 모든 항목이 결제 대기 중입니다.
SUBSCRIPTION_STATE_ACTIVE 구독이 활성 상태입니다. - (1) 정기 결제가 자동 갱신 요금제인 경우 하나 이상의 항목이 autoRenewEnabled이며 만료되지 않았습니다. - (2) 정기 결제가 선불 요금제라면 하나 이상의 항목이 만료되지 않습니다.
SUBSCRIPTION_STATE_PAUSED 정기 결제가 일시중지되었습니다. 이 상태는 구독이 자동 갱신 요금제인 경우에만 사용할 수 있습니다. 이 상태에서 모든 항목은 일시중지 상태입니다.
SUBSCRIPTION_STATE_IN_GRACE_PERIOD 구독은 유예 기간입니다. 이 상태는 구독이 자동 갱신 요금제인 경우에만 사용할 수 있습니다. 이 상태에서는 모든 항목이 유예 기간 상태가 됩니다.
SUBSCRIPTION_STATE_ON_HOLD 구독이 보류 중입니다 (정지됨). 이 상태는 구독이 자동 갱신 요금제인 경우에만 사용할 수 있습니다. 이 상태에서는 모든 항목이 보존 조치됩니다.
SUBSCRIPTION_STATE_CANCELED 정기 결제가 취소되었지만 아직 만료되지 않았습니다. 이 상태는 구독이 자동 갱신 요금제인 경우에만 사용할 수 있습니다. 모든 항목의 autoRenewEnabled가 false로 설정되었습니다.
SUBSCRIPTION_STATE_EXPIRED 구독이 만료되었습니다. 모든 항목의 만료 시간이 과거입니다.

일시중지 상태 컨텍스트

일시중지 상태의 구독 관련 정보입니다.

JSON 표현
{
  "autoResumeTime": string
}
필드
autoResumeTime

string (Timestamp format)

정기 결제가 자동으로 재개되는 시간입니다.

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

취소됨 상태 컨텍스트

취소된 상태의 구독에 관한 정보입니다.

JSON 표현
{

  // Union field cancellation_reason can be only one of the following:
  "userInitiatedCancellation": {
    object (UserInitiatedCancellation)
  },
  "systemInitiatedCancellation": {
    object (SystemInitiatedCancellation)
  },
  "developerInitiatedCancellation": {
    object (DeveloperInitiatedCancellation)
  },
  "replacementCancellation": {
    object (ReplacementCancellation)
  }
  // End of list of possible types for union field cancellation_reason.
}
필드
통합 필드 cancellation_reason. 정기 결제가 취소된 이유입니다. cancellation_reason은 다음 중 하나여야 합니다.
userInitiatedCancellation

object (UserInitiatedCancellation)

사용자가 구독을 취소했습니다.

systemInitiatedCancellation

object (SystemInitiatedCancellation)

결제 문제 등으로 인해 시스템에서 구독을 취소했습니다.

developerInitiatedCancellation

object (DeveloperInitiatedCancellation)

개발자가 구독을 취소했습니다.

replacementCancellation

object (ReplacementCancellation)

구독이 새 구독으로 대체되었습니다.

사용자 시작 취소

사용자가 시작한 취소와 관련된 정보입니다.

JSON 표현
{
  "cancelSurveyResult": {
    object (CancelSurveyResult)
  },
  "cancelTime": string
}
필드
cancelSurveyResult

object (CancelSurveyResult)

정기 결제 취소 절차를 완료할 때 사용자가 제공하는 정보 (취소 이유 설문조사)

cancelTime

string (Timestamp format)

사용자가 정기 결제를 취소한 시간입니다. 이 기간이 지난 후에도 사용자가 정기 결제 콘텐츠에 액세스할 수 있습니다. lineItems.expiry_time을 사용하여 사용자가 계속 액세스할 수 있는지 확인합니다.

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

CancelSurveyResult

사용자가 정기 결제를 취소했을 때 취소된 설문조사의 결과입니다.

JSON 표현
{
  "reason": enum (CancelSurveyReason),
  "reasonUserInput": string
}
필드
reason

enum (CancelSurveyReason)

사용자가 설문조사 취소에서 선택한 이유입니다.

reasonUserInput

string

CANCEL_SURVEY_REASON_OTHERS에만 설정됩니다. 설문조사에 대한 사용자의 자유 형식의 응답입니다.

취소 설문조사 이유

사용자가 설문조사 취소에서 선택한 이유입니다.

열거형
CANCEL_SURVEY_REASON_UNSPECIFIED 설문조사 취소 이유가 명시되지 않았습니다.
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE 정기 결제 사용량이 부족합니다.
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES 앱을 사용하는 동안 기술적인 문제가 발생했습니다.
CANCEL_SURVEY_REASON_FOUND_BETTER_APP 사용자가 더 나은 앱을 찾았습니다.
CANCEL_SURVEY_REASON_OTHERS 기타 이유

SystemBegindCancellation

Google 시스템에서 시작한 취소 관련 정보입니다.

개발자가 취소함

개발자가 시작한 취소 관련 정보입니다.

교체 취소

정기 결제 교체로 인한 취소 관련 정보입니다.

테스트 구매

이 정기 결제 구매가 테스트 구매인지 여부입니다.

확인 상태

구독에 사용 가능한 확인 상태입니다.

열거형
ACKNOWLEDGEMENT_STATE_UNSPECIFIED 확인 상태가 지정되지 않았습니다.
ACKNOWLEDGEMENT_STATE_PENDING 구독이 아직 확인되지 않았습니다.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED 구독이 확인되었습니다.

외부 계정 식별자

타사 서비스의 사용자 계정 식별자입니다.

JSON 표현
{
  "externalAccountId": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
필드
externalAccountId

string

타사 서비스의 사용자 계정 식별자입니다. 정기 결제 구매 흐름의 일부로 계정 연결이 발생한 경우에만 표시됩니다.

obfuscatedExternalAccountId

string

앱의 사용자 계정과 고유하게 연결된 ID의 난독화된 버전입니다. 다음 구매와 관련해 표시됩니다. * 정기 결제 구매 흐름의 일부로 계정 연결이 발생한 경우. * 구매 시 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setbolddaccountid를 사용해 명시했습니다.

obfuscatedExternalProfileId

string

앱의 사용자 프로필과 고유하게 연결된 ID의 난독화된 버전입니다. 구매 시 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setitalicdprofileid를 사용하여 지정된 경우에만 표시됩니다.

Google 계정으로 구독

Google을 통한 구독과 관련된 정보

JSON 표현
{
  "profileId": string,
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string
}
필드
profileId

string

구독을 구매할 때 사용된 사용자의 Google 프로필 ID입니다.

profileName

string

구독을 구매할 때 사용된 사용자의 프로필 이름입니다.

emailAddress

string

구독을 구매할 때 사용한 사용자의 이메일 주소입니다.

givenName

string

정기 결제를 구매할 때 사용한 사용자의 이름입니다.

familyName

string

정기 결제 구매 당시의 사용자 성입니다.

SubscriptionPurchaseLineItem

정기 결제 구매의 상품 수준 정보

JSON 표현
{
  "productId": string,
  "expiryTime": string,

  // Union field plan_type can be only one of the following:
  "autoRenewingPlan": {
    object (AutoRenewingPlan)
  },
  "prepaidPlan": {
    object (PrepaidPlan)
  }
  // End of list of possible types for union field plan_type.
}
필드
productId

string

구매한 제품 ID (예: 'month001')입니다.

expiryTime

string (Timestamp format)

액세스가 연장되지 않는 한 구독이 만료되거나 만료되는 시간입니다 (예: 갱신).

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

통합 필드 plan_type. 정기 결제 요금제 유형입니다. plan_type은 다음 중 하나여야 합니다.
autoRenewingPlan

object (AutoRenewingPlan)

항목이 자동으로 갱신됩니다.

prepaidPlan

object (PrepaidPlan)

상품이 선불입니다.

자동 갱신 요금제

자동 갱신 요금제와 관련된 정보입니다.

JSON 표현
{
  "autoRenewEnabled": boolean
}
필드
autoRenewEnabled

boolean

정기 결제가 현재 자동 갱신으로 설정되어 있는 경우(예: 사용자가 정기 결제를 취소하지 않은 경우)

선불 요금제

선불 요금제와 관련된 정보입니다.

JSON 표현
{
  "allowExtendAfterTime": string
}
필드
allowExtendAfterTime

string (Timestamp format)

이 시간 이후에는 새로 충전할 때 정기 결제가 허용됩니다. 충전 방식으로 구매가 이미 연장된 경우에는 표시되지 않습니다.

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

메서드

get

정기 결제 관련 메타데이터 가져오기