Google Play Developer API . purchases . subscriptions

Instance Methods

cancel(packageName, subscriptionId, token)

Cancels a user's subscription purchase. The subscription remains valid until its expiration time.

defer(packageName, subscriptionId, token, body)

Defers a user's subscription purchase until a specified future expiration time.

get(packageName, subscriptionId, token)

Checks whether a user's subscription purchase is valid and returns its expiry time.

refund(packageName, subscriptionId, token)

Refunds a user's subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.

revoke(packageName, subscriptionId, token)

Refunds and immediately revokes a user's subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.

Method Details

cancel(packageName, subscriptionId, token)
Cancels a user'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, 'com.some.thing'). (required)
  subscriptionId: string, The purchased subscription ID (for example, 'monthly001'). (required)
  token: string, The token provided to the user's device when the subscription was purchased. (required)
defer(packageName, subscriptionId, token, body)
Defers a user'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, 'com.some.thing'). (required)
  subscriptionId: string, The purchased subscription ID (for example, 'monthly001'). (required)
  token: string, The token provided to the user's device when the subscription was purchased. (required)
  body: object, The request body. (required)
    The object takes the form of:

{
    "deferralInfo": { # 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.
      "expectedExpiryTimeMillis": "A String", # 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.
      "desiredExpiryTimeMillis": "A String", # 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.
    },
  }


Returns:
  An object of the form:

    {
    "newExpiryTimeMillis": "A String", # The new expiry time for the subscription in milliseconds since the Epoch.
  }
get(packageName, subscriptionId, token)
Checks whether a user'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, 'com.some.thing'). (required)
  subscriptionId: string, The purchased subscription ID (for example, 'monthly001'). (required)
  token: string, The token provided to the user's device when the subscription was purchased. (required)

Returns:
  An object of the form:

    { # A SubscriptionPurchase resource indicates the status of a user's subscription purchase.
    "kind": "androidpublisher#subscriptionPurchase", # This kind represents a subscriptionPurchase object in the androidpublisher service.
    "countryCode": "A String", # ISO 3166-1 alpha-2 billing country/region code of the user at the time the subscription was granted.
    "developerPayload": "A String", # A developer-specified string that contains supplemental information about an order.
    "autoRenewing": True or False, # Whether the subscription will automatically be renewed when it reaches its current expiry time.
    "paymentState": 42, # The payment state of the subscription. Possible values are:
        # - Payment pending
        # - Payment received
    "priceCurrencyCode": "A String", # ISO 4217 currency code for the subscription price. For example, if the price is specified in British pounds sterling, price_currency_code is "GBP".
    "expiryTimeMillis": "A String", # Time at which the subscription will expire, in milliseconds since the Epoch.
    "cancelReason": 42, # The reason why a subscription was cancelled or is not auto-renewing. Possible values are:
        # - User cancelled the subscription
        # - Subscription was cancelled by the system, for example because of a billing problem
    "startTimeMillis": "A String", # Time at which the subscription was granted, in milliseconds since the Epoch.
    "userCancellationTimeMillis": "A String", # The time at which the subscription was canceled by the user, in milliseconds since the epoch. Only present if cancelReason is 0.
    "priceAmountMicros": "A String", # 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.
  }
refund(packageName, subscriptionId, token)
Refunds a user'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, 'com.some.thing'). (required)
  subscriptionId: string, The purchased subscription ID (for example, 'monthly001'). (required)
  token: string, The token provided to the user's device when the subscription was purchased. (required)
revoke(packageName, subscriptionId, token)
Refunds and immediately revokes a user'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, 'com.some.thing'). (required)
  subscriptionId: string, The purchased subscription ID (for example, 'monthly001'). (required)
  token: string, The token provided to the user's device when the subscription was purchased. (required)