REST Resource: monetization.subscriptions.basePlans.offers

Zasób: SubscriptionOffer

pojedyncza oferta tymczasowa,

Zapis 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)
    }
  ]
}
Pola
packageName

string

Wymagane. Niezmienne. Nazwa pakietu aplikacji, do której należy subskrypcja nadrzędna.

productId

string

Wymagane. Niezmienne. Identyfikator subskrypcji nadrzędnej, do której należy ta oferta.

basePlanId

string

Wymagane. Niezmienne. Identyfikator abonamentu podstawowego, którego ta oferta jest rozszerzeniem.

offerId

string

Wymagane. Niezmienne. Unikalny identyfikator tej oferty subskrypcji. Musi być unikalna w ramach planu podstawowego.

state

enum (State)

Tylko dane wyjściowe. Bieżący stan tej oferty. Można go zmienić za pomocą działań Aktywuj i Dezaktywuj. Uwaga: stan abonamentu podstawowego zastępuje ten stan, więc aktywna oferta może być niedostępna, jeśli abonament podstawowy nie jest aktywny.

phases[]

object (SubscriptionOfferPhase)

Wymagane. Etapy tej oferty subskrypcji. Musi zawierać co najmniej 1 wpis, ale nie więcej niż 2. Użytkownicy zawsze będą przechodzić te etapy w określonej kolejności.

targeting

object (SubscriptionOfferTargeting)

Wymagania, które użytkownicy muszą spełnić, aby skorzystać z tej oferty. Określa wymagania, które Google Play będzie oceniać, aby zdecydować, czy oferta powinna zostać zwrócona. Deweloperzy mogą dodatkowo filtrować te oferty.

regionalConfigs[]

object (RegionalSubscriptionOfferConfig)

Wymagane. Konfiguracja tej oferty w danym regionie. Musi zawierać co najmniej 1 wpis.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferConfig)

Konfiguracja dla wszystkich nowych lokalizacji, w których Play może w przyszłości uruchomić usługę.

offerTags[]

object (OfferTag)

Lista maksymalnie 20 tagów niestandardowych określonych dla tej oferty, które są zwracane do aplikacji za pomocą biblioteki płatności.

Stan

Obecny stan oferty subskrypcji.

Wartości w polu enum
STATE_UNSPECIFIED Wartość domyślna, której nigdy nie należy używać.
DRAFT Oferta subskrypcji nie jest i nigdy nie była dostępna dla użytkowników.
ACTIVE Oferta subskrypcji jest dostępna dla nowych i obecnych użytkowników.
INACTIVE Oferta subskrypcji nie jest dostępna dla nowych użytkowników. Dotychczasowi użytkownicy zachowają dostęp.

SubscriptionOfferPhase

Pojedynczy etap oferty subskrypcji.

Zapis JSON
{
  "recurrenceCount": integer,
  "duration": string,
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferPhaseConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferPhaseConfig)
  }
}
Pola
recurrenceCount

integer

Wymagane. Liczba powtórzeń tego etapu. Jeśli ten etap oferty nie jest bezpłatny, przy każdym odnowieniu subskrypcji użytkownikowi zostanie naliczona cena tego etapu oferty.

duration

string

Wymagane. Czas trwania pojedynczego wystąpienia tej fazy. Podany w formacie ISO 8601.

regionalConfigs[]

object (RegionalSubscriptionOfferPhaseConfig)

Wymagane. Konfiguracja tej fazy oferty właściwa dla regionu. Lista musi zawierać dokładnie 1 wpis dla każdego regionu, w którym oferta subskrypcji ma konfigurację regionalną.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferPhaseConfig)

informacje o cenach w nowych lokalizacjach, w których może być dostępna usługa Google Play;

RegionalSubscriptionOfferPhaseConfig

Konfiguracja pojedynczej fazy oferty subskrypcji w jednym regionie.

Zapis JSON
{
  "regionCode": string,

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

string

Wymagane. Niezmienne. Region, do którego odnosi się ta konfiguracja.

Pole zbiorcze price_override. Cena zastępcza tego etapu. Wymagane. price_override może mieć tylko jedną z tych wartości:
price

object (Money)

Cena bezwzględna, jaką użytkownik płaci za ten etap oferty. Cena nie może być niższa niż minimalna cena dopuszczalna w tym regionie.

relativeDiscount

number

Ułamek ceny abonamentu podstawowego proporcjonalny do czasu trwania etapu, który użytkownik płaci za ten etap oferty. Jeśli na przykład cena abonamentu podstawowego w tym regionie wynosi 12 PLN za okres 1 roku, to 50% rabatu na 3-miesięczny okres odpowiada cenie 1, 50 PLN. Rabat musi być określony jako ułamek większy od 0 i mniejszy od 1. Wynikowa cena zostanie zaokrąglona do najbliższej jednostki, za którą można naliczyć opłatę (np. centów w przypadku USD). Rabat względny jest uznawany za nieprawidłowy, jeśli cena po rabacie jest niższa niż minimalna cena dopuszczalna w tym regionie.

absoluteDiscount

object (Money)

Absolutna kwota pieniędzy odjęta od proporcjonalnej ceny abonamentu podstawowego w okresie trwania etapu, którą użytkownik płaci za ten etap oferty. Jeśli na przykład cena abonamentu podstawowego w tym regionie wynosi 12 PLN za okres 1 roku, to rabat bezwzględny w wysokości 1 PLN w przypadku etapu trwającego 3 miesiące odpowiada cenie 2 PLN. Wynikowa cena nie może być niższa niż minimalna cena dozwolona w tym regionie.

free

object (RegionalSubscriptionOfferPhaseFreePriceOverride)

Ustaw, aby określić, że ta oferta jest bezpłatna.

RegionalSubscriptionOfferPhaseFreePriceOverride

Ten typ nie ma pól.

Reprezentuje konfigurację zastąpienia ceny bezpłatnej dla jednego etapu oferty subskrypcji.

OtherRegionsSubscriptionOfferPhaseConfig

Konfiguracja nowych lokalizacji, w których Play może wprowadzić ofertę w ramach jednej fazy.

Zapis JSON
{

  // Union field price_override can be only one of the following:
  "otherRegionsPrices": {
    object (OtherRegionsSubscriptionOfferPhasePrices)
  },
  "relativeDiscount": number,
  "absoluteDiscounts": {
    object (OtherRegionsSubscriptionOfferPhasePrices)
  },
  "free": {
    object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)
  }
  // End of list of possible types for union field price_override.
}
Pola
Pole zbiorcze price_override. Cena zastępcza tego etapu. Wymagane. price_override może mieć tylko jedną z tych wartości:
otherRegionsPrices

object (OtherRegionsSubscriptionOfferPhasePrices)

Cena bezwzględna, jaką użytkownik płaci za ten etap oferty. Cena nie może być niższa niż minimalna cena dopuszczalna w przypadku nowych lokalizacji, w których Google Play może wprowadzić usługę.

relativeDiscount

number

Ułamek ceny abonamentu podstawowego obliczony proporcjonalnie do czasu trwania etapu, który użytkownik płaci za ten etap oferty. Jeśli na przykład cena abonamentu podstawowego w tym regionie wynosi 12 PLN za okres 1 roku, to 50% rabatu na 3-miesięczny okres odpowiada cenie 1, 50 PLN. Rabat musi być określony jako ułamek większy od 0 i mniejszy od 1. Wynikowa cena zostanie zaokrąglona do najbliższej jednostki, za którą można naliczyć opłatę (np. centów w przypadku USD). Rabat względny jest uznawany za nieprawidłowy, jeśli cena po rabacie jest niższa niż minimalna cena dozwolona w nowych lokalizacjach, w których może pojawić się Google Play.

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

Absolutna kwota pieniędzy odjęta od proporcjonalnej ceny abonamentu podstawowego w okresie trwania etapu, którą użytkownik płaci za ten etap oferty. Jeśli na przykład cena abonamentu podstawowego w tym regionie wynosi 12 PLN za okres 1 roku, to rabat bezwzględny w wysokości 1 PLN w przypadku etapu trwającego 3 miesiące odpowiada cenie 2 PLN. Wynikowa cena nie może być niższa niż minimalna cena dozwolona w przypadku nowych lokalizacji, w których może pojawić się Google Play.

free

object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)

Ustaw, aby określić, że ta oferta jest bezpłatna.

OtherRegionsSubscriptionOfferPhasePrices

informacje o cenach w nowych lokalizacjach, w których może być dostępna usługa Google Play;

Zapis JSON
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  }
}
Pola
usdPrice

object (Money)

Wymagane. Cena w USD, która będzie używana w przypadku nowych lokalizacji, w których może pojawić się usługa Google Play.

eurPrice

object (Money)

Wymagane. Cena w EUR, która będzie używana w przypadku nowych lokalizacji, w których może pojawić się Google Play.

OtherRegionsSubscriptionOfferPhaseFreePriceOverride

Ten typ nie ma pól.

Reprezentuje konfigurację zastąpienia ceny bezpłatnej w przypadku nowych lokalizacji, w których Google Play może wprowadzić pojedynczą fazę oferty.

SubscriptionOfferTargeting

Określa regułę, którą musi spełnić użytkownik, aby otrzymać tę ofertę.

Zapis 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.
}
Pola
Pole zbiorcze rule. Aby określić, czy oferta jest dostępna, pozostaw to pole puste. rule może mieć tylko jedną z tych wartości:
acquisitionRule

object (AcquisitionTargetingRule)

Reguła kierowania ofert na potrzeby pozyskiwania nowych użytkowników.

upgradeRule

object (UpgradeTargetingRule)

Reguła kierowania ofertą dla użytkowników, którzy chcą przejść na wyższy abonament.

AcquisitionTargetingRule

Reprezentuje regułę kierowania w formie: użytkownik nigdy wcześniej nie miał {scope}.

Zapis JSON
{
  "scope": {
    object (TargetingRuleScope)
  }
}
Pola
scope

object (TargetingRuleScope)

Wymagane. Zakres subskrypcji, które ta reguła bierze pod uwagę. Umożliwia tylko opcje „ta subskrypcja” i „dowolna subskrypcja w aplikacji”.

TargetingRuleScope

Określa zakres subskrypcji, do których może pasować reguła kierowania, aby kierować oferty do użytkowników na podstawie przeszłych lub obecnych uprawnień.

Zapis 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.
}
Pola

Pole zbiorcze scope.

Pole scope może mieć tylko jedną z tych wartości:

thisSubscription

object (TargetingRuleScopeThisSubscription)

Zakres bieżącej reguły kierowania to subskrypcja, w której zdefiniowana jest ta oferta.

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

Zakres bieżącej reguły kierowania obejmuje wszystkie subskrypcje w aplikacji nadrzędnej.

specificSubscriptionInApp

string

Zakres bieżącej reguły kierowania to subskrypcja o określonym identyfikatorze. Musi to być subskrypcja w ramach tej samej aplikacji nadrzędnej.

TargetingRuleScopeThisSubscription

Ten typ nie ma pól.

Określa zakres reguły kierowania odpowiadający subskrypcjom, w których zdefiniowana jest ta oferta.

TargetingRuleScopeAnySubscriptionInApp

Ten typ nie ma pól.

Reprezentuje zakres reguły kierowania odpowiadający dowolnej subskrypcji w aplikacji nadrzędnej.

UpgradeTargetingRule

Reprezentuje regułę kierowania w formie: użytkownik ma obecnie {scope} [z okresem rozliczeniowym {billing_period}].

Zapis JSON
{
  "oncePerUser": boolean,
  "scope": {
    object (TargetingRuleScope)
  },
  "billingPeriodDuration": string
}
Pola
oncePerUser

boolean

Ogranicz tę ofertę do 1 użycia na użytkownika. Jeśli ma wartość „prawda”, użytkownik, który kiedykolwiek skorzystał z tej oferty, nie będzie mógł z niej skorzystać ponownie.

scope

object (TargetingRuleScope)

Wymagane. Zakres subskrypcji, które ta reguła bierze pod uwagę. Umożliwia tylko opcje „ta subskrypcja” i „konkretna subskrypcja w aplikacji”.

billingPeriodDuration

string

Określony w formacie ISO 8601 czas trwania okresu rozliczeniowego, w którym użytkownik musi mieć obecnie subskrypcję, aby kwalifikować się do tej reguły. Jeśli nie zostanie określone inaczej, dopasowywani są użytkownicy, którzy subskrybują dowolny okres rozliczeniowy.

RegionalSubscriptionOfferConfig

Konfiguracja oferty subskrypcji w jednym regionie.

Zapis JSON
{
  "regionCode": string,
  "newSubscriberAvailability": boolean
}
Pola
regionCode

string

Wymagane. Niezmienne. Kod regionu, którego dotyczy ta konfiguracja, zgodnie z normą ISO 3166-2, np. „US”.

newSubscriberAvailability

boolean

Czy oferta subskrypcji w określonym regionie jest dostępna dla nowych subskrybentów. Jeśli ta wartość jest ustawiona na „false”, subskrypcje obecnych subskrybentów nie zostaną anulowane. Jeśli nie podasz żadnej wartości, domyślnie zostanie użyta wartość „false”.

OtherRegionsSubscriptionOfferConfig

Konfiguracja nowych lokalizacji, w których może pojawić się usługa Play, określona w ofercie subskrypcji.

Zapis JSON
{
  "otherRegionsNewSubscriberAvailability": boolean
}
Pola
otherRegionsNewSubscriberAvailability

boolean

czy oferta subskrypcji ma być dostępna w nowych lokalizacjach, w których Google Play może w przyszłości rozpocząć działalność. Jeśli nie podasz żadnej wartości, domyślnie zostanie użyta wartość „false”.

Metody

activate

Aktywuje ofertę subskrypcji.

batchGet

Odczytuje co najmniej 1 ofertę subskrypcji.

batchUpdate

Aktualizuje grupę ofert subskrypcji.

batchUpdateStates

Aktualizuje stan grupy ofert subskrypcji.

create

Tworzy nową ofertę subskrypcji.

deactivate

Dezaktywuje ofertę subskrypcji.

delete

Usuwa ofertę subskrypcji.

get

Odczytuje pojedynczą ofertę

list

Wyświetla listę wszystkich ofert w ramach danej subskrypcji.

patch

Aktualizuje istniejącą ofertę subskrypcji.

Kody błędów

Operacje na tym zasobie zwracają te kody błędów HTTP:

Kod błędu Przyczyna Opis Rozdzielczość