Enterprise Apps Reseller API . subscriptions

Instance Methods

activate(customerId, subscriptionId)

Activates a subscription previously suspended by the reseller

changePlan(customerId, subscriptionId, body)

Changes the plan of a subscription

changeRenewalSettings(customerId, subscriptionId, body)

Changes the renewal settings of a subscription

changeSeats(customerId, subscriptionId, body)

Changes the seats configuration of a subscription

delete(customerId, subscriptionId, deletionType)

Cancels/Downgrades a subscription.

get(customerId, subscriptionId)

Gets a subscription of the customer.

insert(customerId, body, customerAuthToken=None)

Creates/Transfers a subscription for the customer.

list(customerAuthToken=None, pageToken=None, maxResults=None, customerNamePrefix=None, customerId=None)

Lists subscriptions of a reseller, optionally filtered by a customer name prefix.

list_next(previous_request, previous_response)

Retrieves the next page of results.

startPaidService(customerId, subscriptionId)

Starts paid service of a trial subscription

suspend(customerId, subscriptionId)

Suspends an active subscription

Method Details

activate(customerId, subscriptionId)
Activates a subscription previously suspended by the reseller

Args:
  customerId: string, Id of the Customer (required)
  subscriptionId: string, Id of the subscription, which is unique for a customer (required)

Returns:
  An object of the form:

    { # JSON template for a subscription.
      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
        "renewalType": "A String", # Subscription renewal type.
      },
      "skuId": "A String", # Name of the sku for which this subscription is purchased.
      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
      "trialSettings": { # Trial Settings of the subscription.
        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
        "isInTrial": True or False, # Whether the subscription is in trial.
      },
      "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
          # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
          # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
          # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
          # - TRIAL_ENDED — The customer's trial expired without a plan selected.
          # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
        "A String",
      ],
      "resourceUiUrl": "A String", # Ui url for subscription resource.
      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
        "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
      },
      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
      "transferInfo": { # Transfer related information for the subscription.
        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
        "minimumTransferableSeats": 42,
      },
      "status": "A String", # Status of the subscription.
      "plan": { # Plan details of the subscription
        "planName": "A String", # The plan name of this subscription's plan.
        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
        },
        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
      },
      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
      "subscriptionId": "A String", # The id of the subscription.
      "billingMethod": "A String", # Billing method of this subscription.
      "customerId": "A String", # The id of the customer to whom the subscription belongs.
    }
changePlan(customerId, subscriptionId, body)
Changes the plan of a subscription

Args:
  customerId: string, Id of the Customer (required)
  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # JSON template for the ChangePlan rpc request.
    "planName": "A String", # Name of the plan to change to.
    "kind": "subscriptions#changePlanRequest", # Identifies the resource as a subscription change plan request.
    "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
      "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
      "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
      "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
      "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
    },
    "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
  }


Returns:
  An object of the form:

    { # JSON template for a subscription.
      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
        "renewalType": "A String", # Subscription renewal type.
      },
      "skuId": "A String", # Name of the sku for which this subscription is purchased.
      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
      "trialSettings": { # Trial Settings of the subscription.
        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
        "isInTrial": True or False, # Whether the subscription is in trial.
      },
      "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
          # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
          # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
          # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
          # - TRIAL_ENDED — The customer's trial expired without a plan selected.
          # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
        "A String",
      ],
      "resourceUiUrl": "A String", # Ui url for subscription resource.
      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
        "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
      },
      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
      "transferInfo": { # Transfer related information for the subscription.
        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
        "minimumTransferableSeats": 42,
      },
      "status": "A String", # Status of the subscription.
      "plan": { # Plan details of the subscription
        "planName": "A String", # The plan name of this subscription's plan.
        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
        },
        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
      },
      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
      "subscriptionId": "A String", # The id of the subscription.
      "billingMethod": "A String", # Billing method of this subscription.
      "customerId": "A String", # The id of the customer to whom the subscription belongs.
    }
changeRenewalSettings(customerId, subscriptionId, body)
Changes the renewal settings of a subscription

Args:
  customerId: string, Id of the Customer (required)
  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # JSON template for a subscription renewal settings.
  "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
  "renewalType": "A String", # Subscription renewal type.
}


Returns:
  An object of the form:

    { # JSON template for a subscription.
      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
        "renewalType": "A String", # Subscription renewal type.
      },
      "skuId": "A String", # Name of the sku for which this subscription is purchased.
      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
      "trialSettings": { # Trial Settings of the subscription.
        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
        "isInTrial": True or False, # Whether the subscription is in trial.
      },
      "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
          # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
          # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
          # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
          # - TRIAL_ENDED — The customer's trial expired without a plan selected.
          # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
        "A String",
      ],
      "resourceUiUrl": "A String", # Ui url for subscription resource.
      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
        "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
      },
      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
      "transferInfo": { # Transfer related information for the subscription.
        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
        "minimumTransferableSeats": 42,
      },
      "status": "A String", # Status of the subscription.
      "plan": { # Plan details of the subscription
        "planName": "A String", # The plan name of this subscription's plan.
        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
        },
        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
      },
      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
      "subscriptionId": "A String", # The id of the subscription.
      "billingMethod": "A String", # Billing method of this subscription.
      "customerId": "A String", # The id of the customer to whom the subscription belongs.
    }
changeSeats(customerId, subscriptionId, body)
Changes the seats configuration of a subscription

Args:
  customerId: string, Id of the Customer (required)
  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # JSON template for subscription seats.
  "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
  "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
  "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
  "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
}


Returns:
  An object of the form:

    { # JSON template for a subscription.
      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
        "renewalType": "A String", # Subscription renewal type.
      },
      "skuId": "A String", # Name of the sku for which this subscription is purchased.
      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
      "trialSettings": { # Trial Settings of the subscription.
        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
        "isInTrial": True or False, # Whether the subscription is in trial.
      },
      "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
          # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
          # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
          # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
          # - TRIAL_ENDED — The customer's trial expired without a plan selected.
          # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
        "A String",
      ],
      "resourceUiUrl": "A String", # Ui url for subscription resource.
      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
        "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
      },
      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
      "transferInfo": { # Transfer related information for the subscription.
        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
        "minimumTransferableSeats": 42,
      },
      "status": "A String", # Status of the subscription.
      "plan": { # Plan details of the subscription
        "planName": "A String", # The plan name of this subscription's plan.
        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
        },
        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
      },
      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
      "subscriptionId": "A String", # The id of the subscription.
      "billingMethod": "A String", # Billing method of this subscription.
      "customerId": "A String", # The id of the customer to whom the subscription belongs.
    }
delete(customerId, subscriptionId, deletionType)
Cancels/Downgrades a subscription.

Args:
  customerId: string, Id of the Customer (required)
  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
  deletionType: string, Whether the subscription is to be fully cancelled or downgraded (required)
    Allowed values
      cancel - Cancels the subscription immediately
      downgrade - Downgrades a Google Apps for Business subscription to Google Apps
      suspend - Suspends the subscriptions for 4 days before cancelling it
      transfer_to_direct - Transfers a subscription directly to Google
get(customerId, subscriptionId)
Gets a subscription of the customer.

Args:
  customerId: string, Id of the Customer (required)
  subscriptionId: string, Id of the subscription, which is unique for a customer (required)

Returns:
  An object of the form:

    { # JSON template for a subscription.
      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
        "renewalType": "A String", # Subscription renewal type.
      },
      "skuId": "A String", # Name of the sku for which this subscription is purchased.
      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
      "trialSettings": { # Trial Settings of the subscription.
        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
        "isInTrial": True or False, # Whether the subscription is in trial.
      },
      "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
          # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
          # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
          # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
          # - TRIAL_ENDED — The customer's trial expired without a plan selected.
          # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
        "A String",
      ],
      "resourceUiUrl": "A String", # Ui url for subscription resource.
      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
        "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
      },
      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
      "transferInfo": { # Transfer related information for the subscription.
        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
        "minimumTransferableSeats": 42,
      },
      "status": "A String", # Status of the subscription.
      "plan": { # Plan details of the subscription
        "planName": "A String", # The plan name of this subscription's plan.
        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
        },
        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
      },
      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
      "subscriptionId": "A String", # The id of the subscription.
      "billingMethod": "A String", # Billing method of this subscription.
      "customerId": "A String", # The id of the customer to whom the subscription belongs.
    }
insert(customerId, body, customerAuthToken=None)
Creates/Transfers a subscription for the customer.

Args:
  customerId: string, Id of the Customer (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # JSON template for a subscription.
    "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
      "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
      "renewalType": "A String", # Subscription renewal type.
    },
    "skuId": "A String", # Name of the sku for which this subscription is purchased.
    "kind": "reseller#subscription", # Identifies the resource as a Subscription.
    "trialSettings": { # Trial Settings of the subscription.
      "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
      "isInTrial": True or False, # Whether the subscription is in trial.
    },
    "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
        # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
        # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
        # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
        # - TRIAL_ENDED — The customer's trial expired without a plan selected.
        # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
      "A String",
    ],
    "resourceUiUrl": "A String", # Ui url for subscription resource.
    "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
      "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
      "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
      "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
      "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
    },
    "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
    "transferInfo": { # Transfer related information for the subscription.
      "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
      "minimumTransferableSeats": 42,
    },
    "status": "A String", # Status of the subscription.
    "plan": { # Plan details of the subscription
      "planName": "A String", # The plan name of this subscription's plan.
      "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
        "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
        "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
      },
      "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
    },
    "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
    "subscriptionId": "A String", # The id of the subscription.
    "billingMethod": "A String", # Billing method of this subscription.
    "customerId": "A String", # The id of the customer to whom the subscription belongs.
  }

  customerAuthToken: string, An auth token needed for transferring a subscription. Can be generated at https://www.google.com/a/cpanel/customer-domain/TransferToken. Optional.

Returns:
  An object of the form:

    { # JSON template for a subscription.
      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
        "renewalType": "A String", # Subscription renewal type.
      },
      "skuId": "A String", # Name of the sku for which this subscription is purchased.
      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
      "trialSettings": { # Trial Settings of the subscription.
        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
        "isInTrial": True or False, # Whether the subscription is in trial.
      },
      "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
          # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
          # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
          # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
          # - TRIAL_ENDED — The customer's trial expired without a plan selected.
          # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
        "A String",
      ],
      "resourceUiUrl": "A String", # Ui url for subscription resource.
      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
        "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
      },
      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
      "transferInfo": { # Transfer related information for the subscription.
        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
        "minimumTransferableSeats": 42,
      },
      "status": "A String", # Status of the subscription.
      "plan": { # Plan details of the subscription
        "planName": "A String", # The plan name of this subscription's plan.
        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
        },
        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
      },
      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
      "subscriptionId": "A String", # The id of the subscription.
      "billingMethod": "A String", # Billing method of this subscription.
      "customerId": "A String", # The id of the customer to whom the subscription belongs.
    }
list(customerAuthToken=None, pageToken=None, maxResults=None, customerNamePrefix=None, customerId=None)
Lists subscriptions of a reseller, optionally filtered by a customer name prefix.

Args:
  customerAuthToken: string, An auth token needed if the customer is not a resold customer of this reseller. Can be generated at https://www.google.com/a/cpanel/customer-domain/TransferToken.Optional.
  pageToken: string, Token to specify next page in the list
  maxResults: integer, Maximum number of results to return
  customerNamePrefix: string, Prefix of the customer's domain name by which the subscriptions should be filtered. Optional
  customerId: string, Id of the Customer

Returns:
  An object of the form:

    { # JSON template for a subscription list.
    "nextPageToken": "A String", # The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
    "kind": "reseller#subscriptions", # Identifies the resource as a collection of subscriptions.
    "subscriptions": [ # The subscriptions in this page of results.
      { # JSON template for a subscription.
          "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
            "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
            "renewalType": "A String", # Subscription renewal type.
          },
          "skuId": "A String", # Name of the sku for which this subscription is purchased.
          "kind": "reseller#subscription", # Identifies the resource as a Subscription.
          "trialSettings": { # Trial Settings of the subscription.
            "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
            "isInTrial": True or False, # Whether the subscription is in trial.
          },
          "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
              # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
              # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
              # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
              # - TRIAL_ENDED — The customer's trial expired without a plan selected.
              # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
            "A String",
          ],
          "resourceUiUrl": "A String", # Ui url for subscription resource.
          "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
            "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
            "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
            "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
            "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
          },
          "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
          "transferInfo": { # Transfer related information for the subscription.
            "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
            "minimumTransferableSeats": 42,
          },
          "status": "A String", # Status of the subscription.
          "plan": { # Plan details of the subscription
            "planName": "A String", # The plan name of this subscription's plan.
            "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
              "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
              "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
            },
            "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
          },
          "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
          "subscriptionId": "A String", # The id of the subscription.
          "billingMethod": "A String", # Billing method of this subscription.
          "customerId": "A String", # The id of the customer to whom the subscription belongs.
        },
    ],
  }
list_next(previous_request, previous_response)
Retrieves the next page of results.

Args:
  previous_request: The request for the previous page. (required)
  previous_response: The response from the request for the previous page. (required)

Returns:
  A request object that you can call 'execute()' on to request the next
  page. Returns None if there are no more items in the collection.
    
startPaidService(customerId, subscriptionId)
Starts paid service of a trial subscription

Args:
  customerId: string, Id of the Customer (required)
  subscriptionId: string, Id of the subscription, which is unique for a customer (required)

Returns:
  An object of the form:

    { # JSON template for a subscription.
      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
        "renewalType": "A String", # Subscription renewal type.
      },
      "skuId": "A String", # Name of the sku for which this subscription is purchased.
      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
      "trialSettings": { # Trial Settings of the subscription.
        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
        "isInTrial": True or False, # Whether the subscription is in trial.
      },
      "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
          # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
          # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
          # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
          # - TRIAL_ENDED — The customer's trial expired without a plan selected.
          # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
        "A String",
      ],
      "resourceUiUrl": "A String", # Ui url for subscription resource.
      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
        "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
      },
      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
      "transferInfo": { # Transfer related information for the subscription.
        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
        "minimumTransferableSeats": 42,
      },
      "status": "A String", # Status of the subscription.
      "plan": { # Plan details of the subscription
        "planName": "A String", # The plan name of this subscription's plan.
        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
        },
        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
      },
      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
      "subscriptionId": "A String", # The id of the subscription.
      "billingMethod": "A String", # Billing method of this subscription.
      "customerId": "A String", # The id of the customer to whom the subscription belongs.
    }
suspend(customerId, subscriptionId)
Suspends an active subscription

Args:
  customerId: string, Id of the Customer (required)
  subscriptionId: string, Id of the subscription, which is unique for a customer (required)

Returns:
  An object of the form:

    { # JSON template for a subscription.
      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
        "renewalType": "A String", # Subscription renewal type.
      },
      "skuId": "A String", # Name of the sku for which this subscription is purchased.
      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
      "trialSettings": { # Trial Settings of the subscription.
        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
        "isInTrial": True or False, # Whether the subscription is in trial.
      },
      "suspensionReasons": [ # field listing all current reasons the subscription is suspended. It is possible for a subscription to have multiple suspension reasons. A subscription's status is SUSPENDED until all pending suspensions are removed. Possible options include:
          # - PENDING_TOS_ACCEPTANCE — The customer has not logged in and accepted the Google Apps Resold Terms of Services.
          # - RENEWAL_WITH_TYPE_CANCEL — The customer's commitment ended and their service was cancelled at the end of their term.
          # - RESELLER_INITIATED — A manual suspension invoked by a Reseller.
          # - TRIAL_ENDED — The customer's trial expired without a plan selected.
          # - OTHER — The customer is suspended for an internal Google reason (e.g. abuse or otherwise).
        "A String",
      ],
      "resourceUiUrl": "A String", # Ui url for subscription resource.
      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
        "licensedNumberOfSeats": 42, # Read-only field containing the current number of licensed seats for FLEXIBLE Google-Apps subscriptions and secondary subscriptions such as Google-Vault and Drive-storage.
      },
      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
      "transferInfo": { # Transfer related information for the subscription.
        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
        "minimumTransferableSeats": 42,
      },
      "status": "A String", # Status of the subscription.
      "plan": { # Plan details of the subscription
        "planName": "A String", # The plan name of this subscription's plan.
        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
        },
        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
      },
      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
      "subscriptionId": "A String", # The id of the subscription.
      "billingMethod": "A String", # Billing method of this subscription.
      "customerId": "A String", # The id of the customer to whom the subscription belongs.
    }