def __init__(self,
                 client_id,
                 secret,
                 public_key,
                 environment,
                 suppress_warnings=False,
                 timeout=DEFAULT_TIMEOUT,
                 api_version=None):
        '''
        Initialize a client with credentials.

        :param  str     client_id:          Your Plaid client ID
        :arg    str     secret:             Your Plaid secret
        :arg    str     public_key:         Your Plaid public key
        :arg    str     environment:        One of ``sandbox``,
                                            ``development``, or ``production``.
        :arg    bool    suppress_warnings:  Suppress Plaid warnings.
        :arg    int     timeout:            Timeout for API requests.

        '''
        self.client_id = client_id
        self.secret = secret
        self.public_key = public_key
        self.environment = environment
        self.suppress_warnings = suppress_warnings
        self.timeout = timeout
        self.api_version = api_version

        if self.environment == 'development' and not self.suppress_warnings:
            warnings.warn('''
                Development is not intended for production usage.
                Swap out url for https://production.plaid.com
                via Client.config before switching to production
            ''')

        # Mirror the HTTP API hierarchy
        self.Accounts = Accounts(self)
        self.AssetReport = AssetReport(self)
        self.Auth = Auth(self)
        self.Categories = Categories(self)
        self.CreditDetails = CreditDetails(self)
        self.Identity = Identity(self)
        self.Income = Income(self)
        self.Institutions = Institutions(self)
        self.Item = Item(self)
        self.Processor = Processor(self)
        self.Sandbox = Sandbox(self)
        self.Transactions = Transactions(self)
def __init__ ( self , client_id , secret , public_key , environment , suppress_warnings = False , timeout = DEFAULT_TIMEOUT , api_version = None ) : self . client_id = client_id self . secret = secret self . public_key = public_key self . environment = environment self . suppress_warnings = suppress_warnings self . timeout = timeout self . api_version = api_version if self . environment == 'development' and not self . suppress_warnings : warnings . warn ( '''
                Development is not intended for production usage.
                Swap out url for https://production.plaid.com
                via Client.config before switching to production
            ''' ) self . Accounts = Accounts ( self ) self . AssetReport = AssetReport ( self ) self . Auth = Auth ( self ) self . Categories = Categories ( self ) self . CreditDetails = CreditDetails ( self ) self . Identity = Identity ( self ) self . Income = Income ( self ) self . Institutions = Institutions ( self ) self . Item = Item ( self ) self . Processor = Processor ( self ) self . Sandbox = Sandbox ( self ) self . Transactions = Transactions ( self )
Initialize a client with credentials.

        :param  str     client_id:          Your Plaid client ID
        :arg    str     secret:             Your Plaid secret
        :arg    str     public_key:         Your Plaid public key
        :arg    str     environment:        One of ``sandbox``,
                                            ``development``, or ``production``.
        :arg    bool    suppress_warnings:  Suppress Plaid warnings.
        :arg    int     timeout:            Timeout for API requests.