Source code for vivialconnect.resources.account

"""
.. module:: account
   :synopsis: Account module.
"""

import six

from vivialconnect.resources.resource import Resource
from vivialconnect.resources.countable import Countable
from vivialconnect.common.util import Util


[docs]class Account(Resource, Countable): """The Account resource is used for managing accounts in the API. Account properties ============= =========== Field Description ============= =========== id Unique identifier of the account object. date_created Creation date (UTC) of the account in ISO 8601 format. date_modified Last modification date (UTC) of the account in ISO 8601 format. account_id Unique identifier of the parent account. (Null if the account is primary.) company_name Primary account name as it is displayed to users (for example, the name of your company). ============= =========== Example request to retrieve a billing status for account id 12345:: from vivialconnect import Resource, Account Resource.api_key = "" Resource.api_secret = "" Resource.api_account_id = "12345" def billing_status(account_id=None): status = Account.billing_status(account_id=account_id) print(status) billing_status(12345) """ API_ACCOUNT_PREFIX = "" @classmethod
[docs] def billing_status(cls, account_id=None): """Get current account status for free trial. :param account_id: An account id. :type account_id: ``int``. :returns: A free trial status. """ if account_id: if not isinstance(account_id, six.string_types): account_id = str(account_id) else: account_id = Resource.api_account_id return cls.request.get("/accounts/%s/status.json" % (account_id))