REST Resource: monetization.subscriptions

리소스: 구독

앱의 단일 정기 결제입니다.

JSON 표현
{
  "packageName": string,
  "productId": string,
  "basePlans": [
    {
      object (BasePlan)
    }
  ],
  "listings": [
    {
      object (SubscriptionListing)
    }
  ],
  "archived": boolean,
  "taxAndComplianceSettings": {
    object (SubscriptionTaxAndComplianceSettings)
  },
  "restrictedPaymentCountries": {
    object (RestrictedPaymentCountries)
  }
}
필드
packageName

string

변경할 수 없습니다. 상위 앱의 패키지 이름입니다.

productId

string

변경할 수 없습니다. 제품의 고유한 제품 ID입니다. 상위 앱 내에서 고유합니다. 제품 ID는 소문자(a~z), 숫자(0~9), 밑줄(_), 점(.)으로 이루어져 있어야 합니다. 소문자나 숫자로 시작하고 1~40자 길이여야 합니다.

basePlans[]

object (BasePlan)

이 정기 결제의 기본 요금제 조합입니다. 다른 혜택이 적용되지 않을 경우 정기 결제의 가격 및 기간을 나타냅니다.

listings[]

object (SubscriptionListing)

필수 항목입니다. 이 정기 결제의 현지화된 등록정보 목록입니다. 상위 앱의 기본 언어에 최소 하나의 항목이 포함되어 있어야 합니다.

archived
(deprecated)

boolean

출력 전용입니다. 지원 중단됨: 정기 결제 보관처리는 지원되지 않습니다.

taxAndComplianceSettings

object (SubscriptionTaxAndComplianceSettings)

세금 및 법률 규정 준수에 관한 세부정보입니다.

restrictedPaymentCountries

object (RestrictedPaymentCountries)

선택사항입니다. 이 정기 결제의 구매가 동일 국가에 등록된 결제 수단으로 제한된 국가입니다. 비어 있는 경우 결제 위치 제한이 적용되지 않습니다.

BasePlan

정기 결제의 단일 기본 요금제입니다.

JSON 표현
{
  "basePlanId": string,
  "state": enum (State),
  "regionalConfigs": [
    {
      object (RegionalBasePlanConfig)
    }
  ],
  "offerTags": [
    {
      object (OfferTag)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsBasePlanConfig)
  },

  // Union field base_plan_type can be only one of the following:
  "autoRenewingBasePlanType": {
    object (AutoRenewingBasePlanType)
  },
  "prepaidBasePlanType": {
    object (PrepaidBasePlanType)
  },
  "installmentsBasePlanType": {
    object (InstallmentsBasePlanType)
  }
  // End of list of possible types for union field base_plan_type.
}
필드
basePlanId

string

(필수) 변경할 수 없습니다. 이 기본 요금제의 고유 식별자입니다. 정기 결제 내에서 고유해야 하며 RFC-1034를 준수해야 합니다. 즉, 이 ID에는 소문자 (a~z), 숫자 (0~9), 하이픈 (-)만 포함해야 하며, 길이는 최대 63자여야 합니다.

state

enum (State)

출력 전용입니다. 활성 여부를 비롯한 기본 요금제의 상태입니다. 초안 및 비활성 기본 요금제는 활성화하거나 삭제할 수 있습니다. 활성 기본 요금제는 비활성화할 수 있습니다. 비활성 기본 요금제는 취소할 수 있습니다. 이 필드는 리소스를 업데이트하여 변경할 수 없습니다. 대신 전용 엔드포인트를 사용하세요.

regionalConfigs[]

object (RegionalBasePlanConfig)

이 기본 요금제의 지역별 정보입니다.

offerTags[]

object (OfferTag)

이 기본 요금제에 지정되고 결제 라이브러리를 통해 앱에 반환되는 최대 20개의 맞춤 태그 목록입니다. 또한 이 기본 요금제의 정기 결제 혜택은 결제 라이브러리에서 혜택 태그를 수신합니다.

otherRegionsConfig

object (OtherRegionsBasePlanConfig)

향후 Play가 출시될 수 있는 새 위치의 가격 정보입니다. 누락할 경우 향후 Play가 출시될 수 있는 새 위치에서 BasePlan이 자동 제공되지 않습니다.

통합 필드 base_plan_type. 이 기본 요금제의 유형입니다. 정확히 하나만 설정해야 합니다. 기본 요금제는 기본 요금제를 만든 후에는 변경할 수 없습니다. base_plan_type은 다음 중 하나여야 합니다.
autoRenewingBasePlanType

object (AutoRenewingBasePlanType)

기본 요금제가 정기적으로 자동 갱신되는 경우 설정합니다.

prepaidBasePlanType

object (PrepaidBasePlanType)

결제 기간이 끝나면 기본 요금제를 자동 갱신하지 않을 경우 설정합니다.

installmentsBasePlanType

object (InstallmentsBasePlanType)

사용자가 지정된 결제 횟수를 약정하는 할부 기본 요금제에 설정합니다.

기본 요금제의 현재 상태입니다.

열거형
STATE_UNSPECIFIED 지정되지 않은 상태.
DRAFT 기본 요금제가 현재 초안 상태이며 활성화되지 않았습니다. 이 시점에는 안전하게 삭제할 수 있습니다.
ACTIVE 기본 요금제가 활성 상태이며 신규 정기 결제 사용자가 사용할 수 있습니다.
INACTIVE 기본 요금제가 비활성 상태이며 기존 정기 결제 사용자에게만 제공됩니다.

AutoRenewingBasePlanType

정기 결제 기간이 끝나면 자동으로 갱신되는 기본 요금제를 나타냅니다.

JSON 표현
{
  "billingPeriodDuration": string,
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode),
  "legacyCompatible": boolean,
  "legacyCompatibleSubscriptionOfferId": string
}
필드
billingPeriodDuration

string

(필수) 변경할 수 없습니다. ISO 8601 형식으로 지정된 정기 결제 기간입니다. 허용되는 결제 기간 목록은 고객센터를 참고하세요. 기본 계획을 만든 후에는 기간을 변경할 수 없습니다.

gracePeriodDuration

string

ISO 8601 형식으로 지정된 정기 결제 유예 기간입니다. 허용되는 값은 일 단위이며 P0D와 30D 중 더 작은 값과 기본 요금제 결제 기간 중 더 작은 값 사이여야 합니다.

지정하지 않을 경우 결제 기간에 따라 기본값이 사용됩니다.

gracePeriodDuration 및 accountHoldDuration의 합이 P30D일~P60D일(양 끝값 포함)이어야 합니다.

accountHoldDuration

string

선택사항입니다. ISO 8601 형식으로 지정된 정기 결제 계정 보류 기간입니다. 허용되는 값은 일 단위이며 P0D와 P60D 사이여야 합니다.

지정하지 않으면 기본값은 P30D입니다.

gracePeriodDuration 및 accountHoldDuration의 합이 P30D일~P60D일(양 끝값 포함)이어야 합니다.

resubscribeState

enum (ResubscribeState)

사용자가 Google Play 표시 경로에서 이 기본 요금제의 정기 결제를 재신청할 수 있는지를 나타냅니다. 지정하지 않을 경우 기본값은 RESUBSCRIBE_STATE_ACTIVE입니다.

prorationMode

enum (SubscriptionProrationMode)

기본 요금제의 비례 배분 모드에 따라 사용자가 이 요금제에서 다른 기본 요금제로 전환할 경우 발생하는 일이 결정됩니다. 지정하지 않으면 기본값은 CHARGE_ON_NEXT_BILLING_DATE입니다.

legacyCompatible

boolean

갱신 기본 요금제가 이전 버전과 호환되는지를 나타냅니다.

이전 버전과 호환되는 기본 요금제는 Google Play 결제 라이브러리의 지원 중단된 메서드 querySkuDetailsAsync()에서 반환됩니다.

갱신 기본 요금제 하나만 지정된 정기 결제에 기존 버전과 호환 가능한 것으로 표시할 수 있습니다.

legacyCompatibleSubscriptionOfferId

string

기존 버전과 호환 가능한 정기 결제의 혜택 ID입니다.

이전 버전과 호환되는 정기 결제 혜택은 Google Play 결제 라이브러리의 지원 중단된 메서드 querySkuDetailsAsync()에서 반환됩니다.

정기 결제 혜택 하나만 지정된 갱신 기본 요금제에서 기존 버전과 호환 가능한 것으로 표시할 수 있습니다.

어떠한 정기 결제 혜택도 기존 버전과 호환 가능하지 않도록 하려면 이 필드를 빈 문자열로 설정합니다.

ResubscribeState

기본 요금제 정기 결제 재신청 상태입니다.

열거형
RESUBSCRIBE_STATE_UNSPECIFIED 지정되지 않은 상태.
RESUBSCRIBE_STATE_ACTIVE 정기 결제 재신청이 활성 상태입니다.
RESUBSCRIBE_STATE_INACTIVE 정기 결제 재신청이 비활성 상태입니다.

SubscriptionProrationMode

기본 요금제 갱신에 사용된 비례 배분 모드입니다.

열거형
SUBSCRIPTION_PRORATION_MODE_UNSPECIFIED 지정되지 않은 모드입니다.
SUBSCRIPTION_PRORATION_MODE_CHARGE_ON_NEXT_BILLING_DATE 사용자에게는 현재 결제 기간이 끝날 때 새로운 기본 요금제가 청구됩니다.
SUBSCRIPTION_PRORATION_MODE_CHARGE_FULL_PRICE_IMMEDIATELY 사용자에게는 즉시 새로운 기본 요금제가 전액 청구됩니다. 기존 정기 결제의 남은 기간은 새로운 요금제의 기간을 연장하는 데 사용됩니다.

PrepaidBasePlanType

기본 요금제가 끝날 때 자동 갱신되지 않아 사용자가 직접 갱신해야 하는 기본 요금제를 나타냅니다.

JSON 표현
{
  "billingPeriodDuration": string,
  "timeExtension": enum (TimeExtension)
}
필드
billingPeriodDuration

string

(필수) 변경할 수 없습니다. ISO 8601 형식으로 지정된 정기 결제 기간입니다. 허용되는 결제 기간 목록은 고객센터를 참고하세요. 기본 계획을 만든 후에는 기간을 변경할 수 없습니다.

timeExtension

enum (TimeExtension)

사용자가 Google Play 표시 경로에서 이 선불 기본 요금제를 연장할 수 있는지를 나타냅니다. 지정하지 않을 경우 기본값은 TIME_EXTENSION_ACTIVE입니다.

TimeExtension

기본 요금제 시간 연장입니다.

열거형
TIME_EXTENSION_UNSPECIFIED 지정되지 않은 상태.
TIME_EXTENSION_ACTIVE 시간 연장이 활성 상태입니다. 사용자가 선불 요금제를 충전하거나 연장할 수 있습니다.
TIME_EXTENSION_INACTIVE 시간 연장이 비활성 상태입니다. 사용자는 선불 요금제를 충전하거나 연장할 수 없습니다.

InstallmentsBasePlanType

사용자가 지정된 결제 횟수를 약정하는 할부 기본 요금제를 나타냅니다.

JSON 표현
{
  "billingPeriodDuration": string,
  "committedPaymentsCount": integer,
  "renewalType": enum (RenewalType),
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode)
}
필드
billingPeriodDuration

string

(필수) 변경할 수 없습니다. ISO 8601 형식으로 지정된 정기 결제 기간입니다. 허용되는 결제 기간 목록은 고객센터를 참고하세요. 기본 계획을 만든 후에는 기간을 변경할 수 없습니다.

committedPaymentsCount

integer

필수 항목입니다. 변경할 수 없습니다. 사용자가 약정한 결제 횟수입니다. 기본 계획이 생성된 후에는 변경할 수 없습니다.

renewalType

enum (RenewalType)

필수 항목입니다. 변경할 수 없습니다. 할부 기본 요금제 갱신 유형입니다. 첫 약정 종료 시 행동을 결정합니다. 기본 요금제를 만든 후에는 갱신 유형을 변경할 수 없습니다.

gracePeriodDuration

string

ISO 8601 형식으로 지정된 정기 결제 유예 기간입니다. 허용되는 값은 일 단위이며 P0D와 30D 중 더 작은 값과 기본 요금제 결제 기간 중 더 작은 값 사이여야 합니다.

지정하지 않을 경우 결제 기간에 따라 기본값이 사용됩니다.

gracePeriodDuration 및 accountHoldDuration의 합이 P30D일~P60D일(양 끝값 포함)이어야 합니다.

accountHoldDuration

string

선택사항입니다. ISO 8601 형식으로 지정된 정기 결제 계정 보류 기간입니다. 허용되는 값은 일 단위이며 P0D와 P60D 사이여야 합니다.

지정하지 않으면 기본값은 P30D입니다.

gracePeriodDuration 및 accountHoldDuration의 합이 P30D일~P60D일(양 끝값 포함)이어야 합니다.

resubscribeState

enum (ResubscribeState)

사용자가 Google Play 표시 경로에서 이 기본 요금제의 정기 결제를 재신청할 수 있는지를 나타냅니다. 지정하지 않을 경우 기본값은 RESUBSCRIBE_STATE_ACTIVE입니다.

prorationMode

enum (SubscriptionProrationMode)

기본 요금제의 비례 배분 모드에 따라 사용자가 이 요금제에서 다른 기본 요금제로 전환할 경우 발생하는 일이 결정됩니다. 지정하지 않으면 기본값은 CHARGE_ON_NEXT_BILLING_DATE입니다.

RenewalType

할부 기본 요금제 갱신 유형입니다. 첫 약정 종료 시 행동을 결정합니다. 기본 요금제를 만든 후에는 갱신 유형을 변경할 수 없습니다.

열거형
RENEWAL_TYPE_UNSPECIFIED 지정되지 않은 상태.
RENEWAL_TYPE_RENEWS_WITHOUT_COMMITMENT 약정 없이 결제 기간에 맞춰 주기적으로 갱신합니다.
RENEWAL_TYPE_RENEWS_WITH_COMMITMENT 첫 약정과 동일한 기간의 약정으로 갱신합니다.

RegionalBasePlanConfig

지역별 기본 요금제의 구성입니다.

JSON 표현
{
  "regionCode": string,
  "newSubscriberAvailability": boolean,
  "price": {
    object (Money)
  }
}
필드
regionCode

string

필수 항목입니다. 이 구성에 적용되는 지역 코드입니다. 지역 코드는 ISO 3166-2의 정의를 따릅니다(예: 'US').

newSubscriberAvailability

boolean

지정된 지역의 기본 요금제가 신규 정기 결제 사용자에게 제공되는지 여부입니다. 이 값이 false로 설정되어 있으면 기존 정기 결제 사용자의 정기 결제가 취소되지 않습니다. 지정하지 않을 경우 기본값은 false입니다.

price

object (Money)

지정된 지역의 기본 요금제 가격입니다. 신규 정기 결제 사용자가 기본 요금제를 사용할 수 있는 경우 설정해야 합니다. 지정된 지역에 연결된 통화로 설정해야 합니다.

OtherRegionsBasePlanConfig

Play가 출시될 수 있는 새 위치의 가격 정보입니다.

JSON 표현
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  },
  "newSubscriberAvailability": boolean
}
필드
usdPrice

object (Money)

필수 항목입니다. Play가 출시될 수 있는 새 위치에 사용할 가격(USD)입니다.

eurPrice

object (Money)

필수 항목입니다. Play가 출시될 수 있는 새 위치에 사용할 가격(EUR)입니다.

newSubscriberAvailability

boolean

Play가 출시될 수 있는 새 위치에서 기본 요금제가 새로운 정기 결제 사용자에게 제공될지를 나타냅니다. 지정하지 않으면 기본값은 false입니다.

SubscriptionListing

사용자에게 표시되는 정기 결제의 메타데이터입니다.

JSON 표현
{
  "languageCode": string,
  "title": string,
  "benefits": [
    string
  ],
  "description": string
}
필드
languageCode

string

필수 항목입니다. BCP-47로 정의(예: 'en-US')되는 이 등록정보의 언어입니다.

title

string

필수 항목입니다. 이 등록정보의 언어로 표시되는 이 정기 결제의 제목입니다. 일반 텍스트

benefits[]

string

Play 스토어와 같은 플랫폼의 복원 흐름에서 이 등록정보의 언어로 사용자에게 표시되는 혜택 목록입니다. 일반 텍스트 최대 4개 혜택의 순서가 지정된 목록입니다.

description

string

이 등록정보의 언어로 된 이 정기 결제의 설명입니다. 최대 80자까지 허용됩니다. 일반 텍스트

RestrictedPaymentCountries

이 제품의 구매가 동일 국가에 등록된 결제 수단으로 제한된 국가입니다. 비어 있는 경우 결제 위치 제한이 적용되지 않습니다.

JSON 표현
{
  "regionCodes": [
    string
  ]
}
필드
regionCodes[]

string

필수 항목입니다. ISO 3166-2의 정의에 따라 결제 제한이 적용되는 지역 코드입니다(예: 'US').

메서드

archive
(deprecated)

지원 중단됨: 정기 결제 보관처리는 지원되지 않습니다.

batchGet

하나 이상의 정기 결제를 읽어옵니다.

batchUpdate

정기 결제를 일괄 업데이트합니다.

create

새 구독을 만듭니다.

delete

구독정보를 삭제합니다.

get

단일 정기 결제를 읽어옵니다.

list

지정된 앱의 모든 정기 결제를 나열합니다.

patch

기존 정기 결제를 업데이트합니다.