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)

필수 항목입니다. 이 정기 결제 혜택의 단계입니다. 항목을 하나 이상 포함해야 하며 최대 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

필수 항목입니다. 이 단계의 1회 반복 기간입니다. 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
  },
  "anySubscriptionInApp": {
    object
  },
  "specificSubscriptionInApp": string
  // End of list of possible types for union field scope.
}
필드

통합 필드 scope.

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

thisSubscription

object

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

anySubscriptionInApp

object

현재 타겟팅 규칙의 범위는 상위 앱의 모든 정기 결제입니다.

specificSubscriptionInApp

string

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

UpgradeTargetingRule

다음 형식의 타겟팅 규칙을 나타냅니다. 현재 사용자의 {scope}(결제 기간: {billing_period})가 적용됩니다.

JSON 표현
{
  "oncePerUser": boolean,
  "scope": {
    object (TargetingRuleScope)
  },
  "billingPeriodDuration": string
}
필드
oncePerUser

boolean

이 혜택은 사용자당 1회로 제한됩니다. 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

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

create

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

deactivate

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

delete

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

get

단일 혜택 읽기

list

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

patch

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