REST Resource: monetization.subscriptions.basePlans.offers

리소스: SubscriptionOffer

단일 임시 혜택

JSON 표현
{
  "packageName": string,
  "productId": string,
  "basePlanId": string,
  "offerId": string,
  "state": enum (State),
  "phases": [
    {
      object (SubscriptionOfferPhase)
    }
  ],
  "targeting": {
    object (SubscriptionOfferTargeting)
  },
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferConfig)
  },
  "offerTags": [
    {
      object (OfferTag)
    }
  ]
}
입력란
packageName

string

필수 항목입니다. 변경할 수 없습니다. 상위 구독이 속한 앱의 패키지 이름입니다.

productId

string

필수 항목입니다. 변경할 수 없습니다. 이 혜택이 속한 상위 정기 결제의 ID입니다.

basePlanId

string

필수 항목입니다. 변경할 수 없습니다. 이 혜택이 연장되는 기본 요금제의 ID입니다.

offerId

string

필수 항목입니다. 변경할 수 없습니다. 이 정기 결제 혜택의 고유 ID입니다. 기본 요금제 내에서 고유해야 합니다.

state

enum (State)

출력 전용. 이 오퍼의 현재 상태입니다. 활성화 및 비활성화 작업을 사용하여 변경할 수 있습니다. 참고: 기본 요금제 상태가 이 주를 대체하므로 기본 요금제가 활성 상태가 아닌 경우 활성 혜택이 제공되지 않을 수 있습니다.

phases[]

object (SubscriptionOfferPhase)

필수 항목입니다. 이 정기 결제 혜택의 단계 최소 1개의 항목을 포함해야 하며 최대 5개를 포함할 수 있습니다. 사용자는 항상 이러한 모든 단계를 지정된 순서대로 받게 됩니다. 최초 생성 후에는 단계를 추가, 삭제 또는 재정렬할 수 없습니다.

targeting

object (SubscriptionOfferTargeting)

이 혜택을 이용하려면 사용자가 충족해야 하는 요구사항입니다. 혜택의 반환 여부를 결정하기 위해 Play에서 평가하는 요구사항을 나타냅니다. 개발자는 이러한 혜택을 직접 필터링할 수 있습니다.

regionalConfigs[]

object (RegionalSubscriptionOfferConfig)

필수 항목입니다. 이 오퍼의 리전별 구성입니다. 하나 이상의 항목을 포함해야 합니다.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferConfig)

향후 Play에서 새로운 위치의 구성이 출시될 수 있습니다.

offerTags[]

object (OfferTag)

이 혜택에 지정된 최대 20개의 맞춤 태그 목록으로, 결제 라이브러리를 통해 앱으로 반환됩니다.

상태

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

열거형
STATE_UNSPECIFIED 기본값이며 사용해서는 안 됩니다.
DRAFT 정기 결제 혜택은 사용자가 이용할 수 없으며 제공된 적이 없습니다.
ACTIVE 정기 결제 혜택은 신규 및 기존 사용자에게 제공됩니다.
INACTIVE 신규 사용자는 정기 결제 혜택을 이용할 수 없습니다. 기존 사용자는 계속 액세스할 수 있습니다.

SubscriptionOfferPhase

정기 결제 혜택의 단일 단계입니다.

JSON 표현
{
  "recurrenceCount": integer,
  "duration": string,
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferPhaseConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferPhaseConfig)
  }
}
입력란
recurrenceCount

integer

필수 항목입니다. 이 단계가 반복되는 횟수입니다. 혜택 단계가 무료가 아닌 경우 반복 결제될 때마다 이 혜택 단계의 가격이 사용자에게 청구됩니다.

duration

string

필수 항목입니다. 이 단계의 반복 간격입니다. ISO 8601 형식으로 지정됩니다.

regionalConfigs[]

object (RegionalSubscriptionOfferPhaseConfig)

필수 항목입니다. 이 혜택 단계의 리전별 구성입니다. 이 목록에는 정기 결제 혜택에 리전별 구성이 있는 리전마다 정확히 하나의 항목이 포함되어야 합니다.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferPhaseConfig)

Play가 출시될 새로운 지역의 가격 정보입니다.

RegionalSubscriptionOfferPhaseConfig

단일 리전에서 제공되는 정기 결제 혜택의 단일 단계에 대한 구성입니다.

JSON 표현
{
  "regionCode": string,

  // Union field price_override can be only one of the following:
  "price": {
    object (Money)
  },
  "relativeDiscount": number,
  "absoluteDiscount": {
    object (Money)
  },
  "free": {
    object
  }
  // End of list of possible types for union field price_override.
}
입력란
regionCode

string

필수 항목입니다. 변경할 수 없습니다. 이 구성이 적용되는 리전입니다.

통합 필드 price_override. 이 단계의 가격 재정의입니다. 필수 항목입니다. price_override은 다음 중 하나여야 합니다.
price

object (Money)

이 혜택 단계에서 사용자가 지불하는 절대 가격입니다. 가격은 이 지역에 허용되는 최소 가격 이상이어야 합니다.

relativeDiscount

number

사용자가 이 혜택 단계에 대해 지불하는 단계 기간 동안 기본 요금제 가격에서 일할 계산된 비율입니다. 예를 들어 이 리전의 기본 요금제 가격이 1년 동안 12달러인 경우 3개월 기간의 50% 할인은 1.50달러의 가격에 해당합니다. 할인율은 0보다 크고 1보다 작은 분수로 지정해야 합니다. 최종 가격은 가장 가까운 청구 가능 단위로 반올림됩니다 (예: USD의 경우 센트). 할인 가격이 이 지역에서 허용되는 최소 가격보다 낮아진 경우 상대적 할인은 유효하지 않은 것으로 간주됩니다.

absoluteDiscount

object (Money)

사용자가 이 혜택 단계에 대해 지불하는 단계 기간 동안 비례 배분된 기본 요금제 가격에서 차감된 절대 금액입니다. 예를 들어 이 리전의 기본 요금제 가격이 1년 동안 12달러인 경우 3개월의 단계에서 1달러의 절대 할인은 2달러 가격에 해당합니다. 최종 가격은 이 지역에 허용되는 최소 가격보다 작을 수 없습니다.

free

object

이 혜택을 무료로 받을 수 있음을 나타내도록 설정합니다.

OtherRegionsSubscriptionOfferPhaseConfig

단일 혜택 단계를 위해 Play가 출시할 수 있는 새로운 지역의 구성입니다.

JSON 표현
{

  // Union field price_override can be only one of the following:
  "otherRegionsPrices": {
    object (OtherRegionsSubscriptionOfferPhasePrices)
  },
  "relativeDiscount": number,
  "absoluteDiscounts": {
    object (OtherRegionsSubscriptionOfferPhasePrices)
  },
  "free": {
    object
  }
  // End of list of possible types for union field price_override.
}
입력란
통합 필드 price_override. 이 단계의 가격 재정의입니다. 필수 항목입니다. price_override은 다음 중 하나여야 합니다.
otherRegionsPrices

object (OtherRegionsSubscriptionOfferPhasePrices)

이 혜택 단계에서 사용자가 지불하는 절대 가격입니다. 가격은 Play가 출시될 새로운 지역에 허용되는 최소 가격 이상이어야 합니다.

relativeDiscount

number

사용자가 이 혜택 단계에 대해 지불하는 단계 기간 동안 기본 요금제 가격에서 일할 계산된 비율입니다. 예를 들어 이 리전의 기본 요금제 가격이 1년 동안 12달러인 경우 3개월 기간의 50% 할인은 1.50달러의 가격에 해당합니다. 할인율은 0보다 크고 1보다 작은 분수로 지정해야 합니다. 최종 가격은 가장 가까운 청구 가능 단위로 반올림됩니다 (예: USD의 경우 센트). 할인 가격이 Play가 출시될 새로운 지역에서 허용되는 최소 가격보다 낮아진 경우 상대적 할인은 무효로 간주됩니다.

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

사용자가 이 혜택 단계에 대해 지불하는 단계 기간 동안 비례 배분된 기본 요금제 가격에서 차감된 절대 금액입니다. 예를 들어 이 리전의 기본 요금제 가격이 1년 동안 12달러인 경우 3개월의 단계에서 1달러의 절대 할인은 2달러 가격에 해당합니다. 최종 가격은 Play가 출시될 새로운 지역에 허용되는 최소 가격보다 작을 수 없습니다.

free

object

이 혜택을 무료로 받을 수 있음을 나타내도록 설정합니다.

OtherRegionsSubscriptionOfferPhasePrices

Play가 출시될 새로운 지역의 가격 정보입니다.

JSON 표현
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  }
}
입력란
usdPrice

object (Money)

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

eurPrice

object (Money)

필수 항목입니다. Play가 출시될 새로운 지역에 적용되는 가격은 유로(EUR)입니다.

SubscriptionOfferTargeting

사용자가 이 혜택을 받기 위해 충족해야 하는 규칙을 정의합니다.

JSON 표현
{

  // Union field rule can be only one of the following:
  "acquisitionRule": {
    object (AcquisitionTargetingRule)
  },
  "upgradeRule": {
    object (UpgradeTargetingRule)
  }
  // End of list of possible types for union field rule.
}
입력란
통합 필드 rule. 개발자가 결정한 혜택 자격 요건을 충족하려면 비워 둡니다. rule은 다음 중 하나여야 합니다.
acquisitionRule

object (AcquisitionTargetingRule)

신규 사용자 획득을 위한 혜택 타겟팅 규칙입니다.

upgradeRule

object (UpgradeTargetingRule)

사용자의 기존 요금제 업그레이드를 위한 혜택 타겟팅 규칙입니다.

AcquisitionTargetingRule

다음 형식의 타겟팅 규칙을 나타냅니다. 사용자가 이전에 {scope}을(를) 사용한 적이 없습니다.

JSON 표현
{
  "scope": {
    object (TargetingRuleScope)
  }
}
입력란
scope

object (TargetingRuleScope)

필수 항목입니다. 이 규칙에서 고려하는 구독 범위입니다. '이 정기 결제' 및 '앱의 모든 정기 결제'만 허용합니다.

TargetingRuleScope

이전 또는 현재 사용 권한을 기반으로 사용자에게 혜택을 타겟팅하기 위해 타겟팅 규칙이 일치시킬 수 있는 정기 결제 범위를 정의합니다.

JSON 표현
{

  // Union field scope can be only one of the following:
  "thisSubscription": {
    object (TargetingRuleScopeThisSubscription)
  },
  "anySubscriptionInApp": {
    object (TargetingRuleScopeAnySubscriptionInApp)
  },
  "specificSubscriptionInApp": string
  // End of list of possible types for union field scope.
}
입력란

통합 필드 scope.

scope는 다음 중 하나여야 합니다.

thisSubscription

object (TargetingRuleScopeThisSubscription)

현재 타겟팅 규칙의 범위는 이 혜택이 정의된 구독입니다.

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

현재 타겟팅 규칙의 범위는 상위 앱의 모든 구독입니다.

specificSubscriptionInApp

string

현재 타겟팅 규칙의 범위는 지정된 구독 ID가 있는 구독입니다. 동일한 상위 앱 내의 정기 결제여야 합니다.

TargetingRuleScopeThisSubscription

이 유형에는 필드가 없습니다.

이 혜택이 정의된 구독에 해당하는 타겟팅 규칙 범위를 나타냅니다.

TargetingRuleScopeAnySubscriptionInApp

이 유형에는 필드가 없습니다.

상위 앱의 모든 구독에 해당하는 타겟팅 규칙 범위를 나타냅니다.

UpgradeTargetingRule

다음 형식의 타겟팅 규칙을 나타냅니다. 사용자는 현재 {scope}이(가) [결제 기간 {billing_period}]입니다.

JSON 표현
{
  "oncePerUser": boolean,
  "scope": {
    object (TargetingRuleScope)
  },
  "billingPeriodDuration": string
}
입력란
oncePerUser

boolean

이 혜택은 사용자당 한 번만 제공됩니다. true로 설정하면 사용자가 이 혜택을 구독한 적이 있다면 이 혜택을 다시는 사용할 수 없습니다.

scope

object (TargetingRuleScope)

필수 항목입니다. 이 규칙에서 고려하는 구독 범위입니다. '이 정기 결제' 및 '앱에서 특정 정기 결제'만 허용합니다.

billingPeriodDuration

string

이 규칙을 적용하기 위해 사용자가 현재 구독해야 하는 ISO 8601 형식으로 지정된 특정 결제 기간입니다. 지정하지 않으면 모든 결제 기간을 구독한 사용자가 일치합니다.

RegionalSubscriptionOfferConfig

단일 리전의 정기 결제 혜택 구성입니다.

JSON 표현
{
  "regionCode": string,
  "newSubscriberAvailability": boolean
}
입력란
regionCode

string

필수 항목입니다. 변경할 수 없습니다. ISO 3166-2에 정의된 대로 이 설정이 적용되는 지역 코드입니다(예: 'US').

newSubscriberAvailability

boolean

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

OtherRegionsSubscriptionOfferConfig

Play가 출시될 수 있는 새로운 위치의 경우 정기 결제 혜택에 지정되어 있습니다.

JSON 표현
{
  "otherRegionsNewSubscriberAvailability": boolean
}
입력란
otherRegionsNewSubscriberAvailability

boolean

향후 Play의 새로운 지역에서 정기 결제 혜택이 출시될 수 있는지 여부 지정하지 않으면 기본값은 false입니다.

방법

activate

정기 결제 혜택을 활성화합니다.

batchGet

하나 이상의 정기 결제 혜택을 읽습니다.

batchUpdate

정기 결제 항목 배치를 업데이트합니다.

batchUpdateStates

정기 결제 혜택 상태 배치를 업데이트합니다.

create

새 정기 결제 혜택을 만듭니다.

deactivate

정기 결제 혜택을 비활성화합니다.

delete

정기 결제 혜택을 삭제합니다.

get

단일 쿠폰 읽기

list

지정된 구독에 있는 모든 혜택을 나열합니다.

patch

기존 정기 결제 혜택을 업데이트합니다.