blob: 1d92f04d2980cf4e3c7340e86b3da6e0eadeeaa7 [file] [log] [blame]
<html><body>
<style>
body, h1, h2, h3, div, span, p, pre, a {
margin: 0;
padding: 0;
border: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
font-size: 13px;
padding: 1em;
}
h1 {
font-size: 26px;
margin-bottom: 1em;
}
h2 {
font-size: 24px;
margin-bottom: 1em;
}
h3 {
font-size: 20px;
margin-bottom: 1em;
margin-top: 1em;
}
pre, code {
line-height: 1.5;
font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}
pre {
margin-top: 0.5em;
}
h1, h2, h3, p {
font-family: Arial, sans serif;
}
h1, h2, h3 {
border-bottom: solid #CCC 1px;
}
.toc_element {
margin-top: 0.5em;
}
.firstline {
margin-left: 2 em;
}
.method {
margin-top: 1em;
border: solid 1px #CCC;
padding: 1em;
background: #EEE;
}
.details {
font-weight: bold;
font-size: 14px;
}
</style>
<h1><a href="androidpublisher_v3.html">Google Play Android Developer API</a> . <a href="androidpublisher_v3.purchases.html">purchases</a> . <a href="androidpublisher_v3.purchases.subscriptions.html">subscriptions</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="#acknowledge">acknowledge(packageName, subscriptionId, token, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Acknowledges a subscription purchase.</p>
<p class="toc_element">
<code><a href="#cancel">cancel(packageName, subscriptionId, token, x__xgafv=None)</a></code></p>
<p class="firstline">Cancels a user's subscription purchase. The subscription remains valid</p>
<p class="toc_element">
<code><a href="#defer">defer(packageName, subscriptionId, token, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Defers a user's subscription purchase until a specified future expiration</p>
<p class="toc_element">
<code><a href="#get">get(packageName, subscriptionId, token, x__xgafv=None)</a></code></p>
<p class="firstline">Checks whether a user's subscription purchase is valid and returns its</p>
<p class="toc_element">
<code><a href="#refund">refund(packageName, subscriptionId, token, x__xgafv=None)</a></code></p>
<p class="firstline">Refunds a user's subscription purchase, but the subscription remains valid</p>
<p class="toc_element">
<code><a href="#revoke">revoke(packageName, subscriptionId, token, x__xgafv=None)</a></code></p>
<p class="firstline">Refunds and immediately revokes a user's subscription purchase. Access to</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="acknowledge">acknowledge(packageName, subscriptionId, token, body=None, x__xgafv=None)</code>
<pre>Acknowledges a subscription purchase.
Args:
packageName: string, The package name of the application for which this subscription was
purchased (for example, &#x27;com.some.thing&#x27;). (required)
subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
token: string, The token provided to the user&#x27;s device when the subscription was
purchased. (required)
body: object, The request body.
The object takes the form of:
{ # Request for the purchases.subscriptions.acknowledge API.
&quot;developerPayload&quot;: &quot;A String&quot;, # Payload to attach to the purchase.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
</pre>
</div>
<div class="method">
<code class="details" id="cancel">cancel(packageName, subscriptionId, token, x__xgafv=None)</code>
<pre>Cancels a user&#x27;s subscription purchase. The subscription remains valid
until its expiration time.
Args:
packageName: string, The package name of the application for which this subscription was
purchased (for example, &#x27;com.some.thing&#x27;). (required)
subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
token: string, The token provided to the user&#x27;s device when the subscription was
purchased. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
</pre>
</div>
<div class="method">
<code class="details" id="defer">defer(packageName, subscriptionId, token, body=None, x__xgafv=None)</code>
<pre>Defers a user&#x27;s subscription purchase until a specified future expiration
time.
Args:
packageName: string, The package name of the application for which this subscription was
purchased (for example, &#x27;com.some.thing&#x27;). (required)
subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
token: string, The token provided to the user&#x27;s device when the subscription was
purchased. (required)
body: object, The request body.
The object takes the form of:
{ # Request for the purchases.subscriptions.defer API.
&quot;deferralInfo&quot;: { # A SubscriptionDeferralInfo contains the data needed to defer a # The information about the new desired expiry time for the subscription.
# subscription purchase to a future expiry time.
&quot;desiredExpiryTimeMillis&quot;: &quot;A String&quot;, # The desired next expiry time to assign to the subscription, in
# milliseconds since the Epoch. The given time must be later/greater
# than the current expiry time for the subscription.
&quot;expectedExpiryTimeMillis&quot;: &quot;A String&quot;, # The expected expiry time for the subscription. If the current
# expiry time for the subscription is not the value specified
# here, the deferral will not occur.
},
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response for the purchases.subscriptions.defer API.
&quot;newExpiryTimeMillis&quot;: &quot;A String&quot;, # The new expiry time for the subscription in milliseconds since the Epoch.
}</pre>
</div>
<div class="method">
<code class="details" id="get">get(packageName, subscriptionId, token, x__xgafv=None)</code>
<pre>Checks whether a user&#x27;s subscription purchase is valid and returns its
expiry time.
Args:
packageName: string, The package name of the application for which this subscription was
purchased (for example, &#x27;com.some.thing&#x27;). (required)
subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
token: string, The token provided to the user&#x27;s device when the subscription was
purchased. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A SubscriptionPurchase resource indicates the status of a user&#x27;s
# subscription purchase.
&quot;priceChange&quot;: { # Contains the price change information for a subscription that can be used to # The latest price change information available. This is present only when
# there is an upcoming price change for the subscription yet to be applied.
#
# Once the subscription renews with the new price or the subscription is
# canceled, no price change information will be returned.
# control the user journey for the price change in the app. This can be in the
# form of seeking confirmation from the user or tailoring the experience for a
# successful conversion.
&quot;newPrice&quot;: { # Definition of a price, i.e. currency and units. # The new price the subscription will renew with if the price change is
# accepted by the user.
&quot;currency&quot;: &quot;A String&quot;, # 3 letter Currency code, as defined by ISO 4217.
# See java/com/google/common/money/CurrencyCode.java
&quot;priceMicros&quot;: &quot;A String&quot;, # Price in 1/million of the currency base unit, represented as a string.
},
&quot;state&quot;: 42, # The current state of the price change. Possible values are:
# 0. Outstanding: State for a pending price change waiting for the user to
# agree. In this state, you can optionally seek confirmation from the
# user using the In-App API.
# 1. Accepted: State for an accepted price change that the subscription
# will renew with unless it&#x27;s canceled. The price change takes effect on
# a future date when the subscription renews. Note that the change might
# not occur when the subscription is renewed next.
},
&quot;autoResumeTimeMillis&quot;: &quot;A String&quot;, # Time at which the subscription will be automatically resumed, in
# milliseconds since the Epoch. Only present if the user has requested to
# pause the subscription.
&quot;kind&quot;: &quot;A String&quot;, # This kind represents a subscriptionPurchase object in the androidpublisher
# service.
&quot;userCancellationTimeMillis&quot;: &quot;A String&quot;, # The time at which the subscription was canceled by the user, in
# milliseconds since the epoch. Only present if cancelReason is 0.
&quot;obfuscatedExternalAccountId&quot;: &quot;A String&quot;, # An obfuscated version of the id that is uniquely associated with the
# user&#x27;s account in your app. Present for the following purchases:
# * If account linking happened as part of the subscription purchase flow.
# * It was specified using
# https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid
# when the purchase was made.
&quot;emailAddress&quot;: &quot;A String&quot;, # The email address of the user when the subscription was purchased.
# Only present for purchases made with &#x27;Subscribe with Google&#x27;.
&quot;profileId&quot;: &quot;A String&quot;, # The Google profile id of the user when the subscription was purchased.
# Only present for purchases made with &#x27;Subscribe with Google&#x27;.
&quot;externalAccountId&quot;: &quot;A String&quot;, # User account identifier in the third-party service.
# Only present if account linking happened as part of the subscription
# purchase flow.
&quot;paymentState&quot;: 42, # The payment state of the subscription. Possible values are:
# 0. Payment pending
# 1. Payment received
# 2. Free trial
# 3. Pending deferred upgrade/downgrade
&quot;startTimeMillis&quot;: &quot;A String&quot;, # Time at which the subscription was granted, in milliseconds
# since the Epoch.
&quot;orderId&quot;: &quot;A String&quot;, # The order id of the latest recurring order associated with
# the purchase of the subscription.
&quot;linkedPurchaseToken&quot;: &quot;A String&quot;, # The purchase token of the originating purchase if this subscription
# is one of the following:
# 0. Re-signup of a canceled but non-lapsed subscription
# 1. Upgrade/downgrade from a previous subscription
#
# For example, suppose a user originally signs up and you receive
# purchase token X, then the user cancels and goes through the
# resignup flow (before their subscription lapses) and you receive
# purchase token Y, and finally the user upgrades their subscription
# and you receive purchase token Z. If you call this API with purchase
# token Z, this field will be set to Y. If you call this API with
# purchase token Y, this field will be set to X. If you call this API
# with purchase token X, this field will not be set.
&quot;autoRenewing&quot;: True or False, # Whether the subscription will automatically be renewed when it
# reaches its current expiry time.
&quot;promotionCode&quot;: &quot;A String&quot;, # The promotion code applied on this purchase. This field is only set if
# a vanity code promotion is applied when the subscription was purchased.
&quot;familyName&quot;: &quot;A String&quot;, # The family name of the user when the subscription was purchased.
# Only present for purchases made with &#x27;Subscribe with Google&#x27;.
&quot;acknowledgementState&quot;: 42, # The acknowledgement state of the subscription product. Possible values
# are:
# 0. Yet to be acknowledged
# 1. Acknowledged
&quot;obfuscatedExternalProfileId&quot;: &quot;A String&quot;, # An obfuscated version of the id that is uniquely associated with the
# user&#x27;s profile in your app. Only present if specified using
# https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid
# when the purchase was made.
&quot;profileName&quot;: &quot;A String&quot;, # The profile name of the user when the subscription was purchased.
# Only present for purchases made with &#x27;Subscribe with Google&#x27;.
&quot;givenName&quot;: &quot;A String&quot;, # The given name of the user when the subscription was purchased.
# Only present for purchases made with &#x27;Subscribe with Google&#x27;.
&quot;purchaseType&quot;: 42, # The type of purchase of the subscription. This field is only set if
# this purchase was not made using the standard in-app billing flow.
# Possible values are:
# 0. Test (i.e. purchased from a license testing account)
# 1. Promo (i.e. purchased using a promo code)
&quot;priceCurrencyCode&quot;: &quot;A String&quot;, # ISO 4217 currency code for the subscription price. For example,
# if the price is specified in British pounds sterling,
# price_currency_code is &quot;GBP&quot;.
&quot;developerPayload&quot;: &quot;A String&quot;, # A developer-specified string that contains supplemental
# information about an order.
&quot;priceAmountMicros&quot;: &quot;A String&quot;, # Price of the subscription, not including tax. Price is expressed
# in micro-units, where 1,000,000 micro-units represents one unit of
# the currency. For example, if the subscription price is &amp;euro;1.99,
# price_amount_micros is 1990000.
&quot;promotionType&quot;: 42, # The type of promotion applied on this purchase. This field is only set if
# a promotion is applied when the subscription was purchased. Possible
# values are:
# 0. One time code
# 1. Vanity code
&quot;countryCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 billing country/region code of the user at the time
# the subscription was granted.
&quot;expiryTimeMillis&quot;: &quot;A String&quot;, # Time at which the subscription will expire, in milliseconds
# since the Epoch.
&quot;cancelReason&quot;: 42, # The reason why a subscription was canceled or is not auto-renewing.
# Possible values are:
# 0. User canceled the subscription
# 1. Subscription was canceled by the system,
# for example because of a billing problem
# 2. Subscription was replaced with a new subscription
# 3. Subscription was canceled by the developer
&quot;introductoryPriceInfo&quot;: { # Contains the introductory price information for a subscription. # Introductory price information of the subscription. This is only present
# when the subscription was purchased with an introductory price.
#
# This field does not indicate the subscription is currently in introductory
# price period.
&quot;introductoryPriceCurrencyCode&quot;: &quot;A String&quot;, # ISO 4217 currency code for the introductory subscription price.
# For example, if the price is specified in British pounds sterling,
# price_currency_code is &quot;GBP&quot;.
&quot;introductoryPriceCycles&quot;: 42, # The number of billing period to offer introductory pricing.
&quot;introductoryPriceAmountMicros&quot;: &quot;A String&quot;, # Introductory price of the subscription, not including tax.
# The currency is the same as price_currency_code. Price is
# expressed in micro-units, where 1,000,000 micro-units represents one unit
# of the currency. For example, if the subscription price is €1.99,
# price_amount_micros is 1990000.
&quot;introductoryPricePeriod&quot;: &quot;A String&quot;, # Introductory price period, specified in ISO 8601 format.
# Common values are (but not limited to) &quot;P1W&quot; (one
# week), &quot;P1M&quot; (one month), &quot;P3M&quot; (three months), &quot;P6M&quot; (six months),
# and &quot;P1Y&quot; (one year).
},
&quot;cancelSurveyResult&quot;: { # Information provided by the user when they complete the subscription # Information provided by the user when they complete the subscription
# cancellation flow (cancellation reason survey).
# cancellation flow (cancellation reason survey).
&quot;cancelSurveyReason&quot;: 42, # The cancellation reason the user chose in the survey.
# Possible values are:
# 0. Other
# 1. I don&#x27;t use this service enough
# 2. Technical issues
# 3. Cost-related reasons
# 4. I found a better app
&quot;userInputCancelReason&quot;: &quot;A String&quot;, # The customized input cancel reason from the user. Only present when
# cancelReason is 0.
},
}</pre>
</div>
<div class="method">
<code class="details" id="refund">refund(packageName, subscriptionId, token, x__xgafv=None)</code>
<pre>Refunds a user&#x27;s subscription purchase, but the subscription remains valid
until its expiration time and it will continue to recur.
Args:
packageName: string, The package name of the application for which this subscription was
purchased (for example, &#x27;com.some.thing&#x27;). (required)
subscriptionId: string, &quot;The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
token: string, The token provided to the user&#x27;s device when the subscription was
purchased. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
</pre>
</div>
<div class="method">
<code class="details" id="revoke">revoke(packageName, subscriptionId, token, x__xgafv=None)</code>
<pre>Refunds and immediately revokes a user&#x27;s subscription purchase. Access to
the subscription will be terminated immediately and it will stop recurring.
Args:
packageName: string, The package name of the application for which this subscription was
purchased (for example, &#x27;com.some.thing&#x27;). (required)
subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
token: string, The token provided to the user&#x27;s device when the subscription was
purchased. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
</pre>
</div>
</body></html>