blob: 95c021d22ecc139b71a04ffbd099021ca476a170 [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="androidpublisher_v3.html">Google Play Developer API</a> . <a href="androidpublisher_v3.purchases.html">purchases</a> . <a href="androidpublisher_v3.purchases.subscriptions.html">subscriptions</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070078 <code><a href="#acknowledge">acknowledge(packageName, subscriptionId, token, body=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070079<p class="firstline">Acknowledges a subscription purchase.</p>
80<p class="toc_element">
81 <code><a href="#cancel">cancel(packageName, subscriptionId, token)</a></code></p>
82<p class="firstline">Cancels a user's subscription purchase. The subscription remains valid until its expiration time.</p>
83<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070084 <code><a href="#defer">defer(packageName, subscriptionId, token, body=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070085<p class="firstline">Defers a user's subscription purchase until a specified future expiration time.</p>
86<p class="toc_element">
87 <code><a href="#get">get(packageName, subscriptionId, token)</a></code></p>
88<p class="firstline">Checks whether a user's subscription purchase is valid and returns its expiry time.</p>
89<p class="toc_element">
90 <code><a href="#refund">refund(packageName, subscriptionId, token)</a></code></p>
91<p class="firstline">Refunds a user's subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.</p>
92<p class="toc_element">
93 <code><a href="#revoke">revoke(packageName, subscriptionId, token)</a></code></p>
94<p class="firstline">Refunds and immediately revokes a user's subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.</p>
95<h3>Method Details</h3>
96<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -070097 <code class="details" id="acknowledge">acknowledge(packageName, subscriptionId, token, body=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070098 <pre>Acknowledges a subscription purchase.
99
100Args:
Bu Sun Kim65020912020-05-20 12:08:20 -0700101 packageName: string, The package name of the application for which this subscription was purchased (for example, &#x27;com.some.thing&#x27;). (required)
102 subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
103 token: string, The token provided to the user&#x27;s device when the subscription was purchased. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700104 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700105 The object takes the form of:
106
107{
Bu Sun Kim65020912020-05-20 12:08:20 -0700108 &quot;developerPayload&quot;: &quot;A String&quot;, # Payload to attach to the purchase.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700109 }
110
111</pre>
112</div>
113
114<div class="method">
115 <code class="details" id="cancel">cancel(packageName, subscriptionId, token)</code>
Bu Sun Kim65020912020-05-20 12:08:20 -0700116 <pre>Cancels a user&#x27;s subscription purchase. The subscription remains valid until its expiration time.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700117
118Args:
Bu Sun Kim65020912020-05-20 12:08:20 -0700119 packageName: string, The package name of the application for which this subscription was purchased (for example, &#x27;com.some.thing&#x27;). (required)
120 subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
121 token: string, The token provided to the user&#x27;s device when the subscription was purchased. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700122</pre>
123</div>
124
125<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700126 <code class="details" id="defer">defer(packageName, subscriptionId, token, body=None)</code>
Bu Sun Kim65020912020-05-20 12:08:20 -0700127 <pre>Defers a user&#x27;s subscription purchase until a specified future expiration time.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700128
129Args:
Bu Sun Kim65020912020-05-20 12:08:20 -0700130 packageName: string, The package name of the application for which this subscription was purchased (for example, &#x27;com.some.thing&#x27;). (required)
131 subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
132 token: string, The token provided to the user&#x27;s device when the subscription was purchased. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700133 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700134 The object takes the form of:
135
136{
Bu Sun Kim65020912020-05-20 12:08:20 -0700137 &quot;deferralInfo&quot;: { # A SubscriptionDeferralInfo contains the data needed to defer a subscription purchase to a future expiry time. # The information about the new desired expiry time for the subscription.
138 &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.
139 &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.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700140 },
141 }
142
143
144Returns:
145 An object of the form:
146
147 {
Bu Sun Kim65020912020-05-20 12:08:20 -0700148 &quot;newExpiryTimeMillis&quot;: &quot;A String&quot;, # The new expiry time for the subscription in milliseconds since the Epoch.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700149 }</pre>
150</div>
151
152<div class="method">
153 <code class="details" id="get">get(packageName, subscriptionId, token)</code>
Bu Sun Kim65020912020-05-20 12:08:20 -0700154 <pre>Checks whether a user&#x27;s subscription purchase is valid and returns its expiry time.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700155
156Args:
Bu Sun Kim65020912020-05-20 12:08:20 -0700157 packageName: string, The package name of the application for which this subscription was purchased (for example, &#x27;com.some.thing&#x27;). (required)
158 subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
159 token: string, The token provided to the user&#x27;s device when the subscription was purchased. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700160
161Returns:
162 An object of the form:
163
Bu Sun Kim65020912020-05-20 12:08:20 -0700164 { # A SubscriptionPurchase resource indicates the status of a user&#x27;s subscription purchase.
165 &quot;acknowledgementState&quot;: 42, # The acknowledgement state of the subscription product. Possible values are:
166 # - Yet to be acknowledged
167 # - Acknowledged
168 &quot;autoRenewing&quot;: True or False, # Whether the subscription will automatically be renewed when it reaches its current expiry time.
169 &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.
170 &quot;cancelReason&quot;: 42, # The reason why a subscription was canceled or is not auto-renewing. Possible values are:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700171 # - User canceled the subscription
172 # - Subscription was canceled by the system, for example because of a billing problem
173 # - Subscription was replaced with a new subscription
174 # - Subscription was canceled by the developer
Bu Sun Kim65020912020-05-20 12:08:20 -0700175 &quot;cancelSurveyResult&quot;: { # Information provided by the user when they complete the subscription cancellation flow (cancellation reason survey). # Information provided by the user when they complete the subscription cancellation flow (cancellation reason survey).
176 &quot;cancelSurveyReason&quot;: 42, # The cancellation reason the user chose in the survey. Possible values are:
177 # - Other
178 # - I don&#x27;t use this service enough
179 # - Technical issues
180 # - Cost-related reasons
181 # - I found a better app
182 &quot;userInputCancelReason&quot;: &quot;A String&quot;, # The customized input cancel reason from the user. Only present when cancelReason is 0.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700183 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700184 &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.
185 &quot;developerPayload&quot;: &quot;A String&quot;, # A developer-specified string that contains supplemental information about an order.
186 &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;.
187 &quot;expiryTimeMillis&quot;: &quot;A String&quot;, # Time at which the subscription will expire, in milliseconds since the Epoch.
188 &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.
189 &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;.
190 &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;.
191 &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.
Dan O'Mearadd494642020-05-01 07:42:23 -0700192 #
193 # This field does not indicate the subscription is currently in introductory price period.
Bu Sun Kim65020912020-05-20 12:08:20 -0700194 &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.
195 &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;.
196 &quot;introductoryPriceCycles&quot;: 42, # The number of billing period to offer introductory pricing.
197 &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).
Dan O'Mearadd494642020-05-01 07:42:23 -0700198 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700199 &quot;kind&quot;: &quot;androidpublisher#subscriptionPurchase&quot;, # This kind represents a subscriptionPurchase object in the androidpublisher service.
200 &quot;linkedPurchaseToken&quot;: &quot;A String&quot;, # The purchase token of the originating purchase if this subscription is one of the following:
201 # - Re-signup of a canceled but non-lapsed subscription
202 # - 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.
203 &quot;orderId&quot;: &quot;A String&quot;, # The order id of the latest recurring order associated with the purchase of the subscription.
204 &quot;paymentState&quot;: 42, # The payment state of the subscription. Possible values are:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700205 # - Payment pending
206 # - Payment received
207 # - Free trial
208 # - Pending deferred upgrade/downgrade
Bu Sun Kim65020912020-05-20 12:08:20 -0700209 &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 €1.99, price_amount_micros is 1990000.
210 &quot;priceChange&quot;: { # Contains the price change information for a subscription that can be used to 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. # The latest price change information available. This is present only when there is an upcoming price change for the subscription yet to be applied.
211 #
212 # Once the subscription renews with the new price or the subscription is canceled, no price change information will be returned.
213 &quot;newPrice&quot;: { # The new price the subscription will renew with if the price change is accepted by the user.
214 &quot;currency&quot;: &quot;A String&quot;, # 3 letter Currency code, as defined by ISO 4217.
215 &quot;priceMicros&quot;: &quot;A String&quot;, # The price in millionths of the currency base unit represented as a string.
216 },
217 &quot;state&quot;: 42, # The current state of the price change. Possible values are:
218 # - 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.
219 # - 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.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700220 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700221 &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;.
222 &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;.
223 &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;.
224 &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.
225 &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:
226 # - One time code
227 # - Vanity code
228 &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:
229 # - Test (i.e. purchased from a license testing account)
230 # - Promo (i.e. purchased using a promo code)
231 &quot;startTimeMillis&quot;: &quot;A String&quot;, # Time at which the subscription was granted, in milliseconds since the Epoch.
232 &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.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700233 }</pre>
234</div>
235
236<div class="method">
237 <code class="details" id="refund">refund(packageName, subscriptionId, token)</code>
Bu Sun Kim65020912020-05-20 12:08:20 -0700238 <pre>Refunds a user&#x27;s subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700239
240Args:
Bu Sun Kim65020912020-05-20 12:08:20 -0700241 packageName: string, The package name of the application for which this subscription was purchased (for example, &#x27;com.some.thing&#x27;). (required)
242 subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
243 token: string, The token provided to the user&#x27;s device when the subscription was purchased. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700244</pre>
245</div>
246
247<div class="method">
248 <code class="details" id="revoke">revoke(packageName, subscriptionId, token)</code>
Bu Sun Kim65020912020-05-20 12:08:20 -0700249 <pre>Refunds and immediately revokes a user&#x27;s subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700250
251Args:
Bu Sun Kim65020912020-05-20 12:08:20 -0700252 packageName: string, The package name of the application for which this subscription was purchased (for example, &#x27;com.some.thing&#x27;). (required)
253 subscriptionId: string, The purchased subscription ID (for example, &#x27;monthly001&#x27;). (required)
254 token: string, The token provided to the user&#x27;s device when the subscription was purchased. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700255</pre>
256</div>
257
258</body></html>