def get_threads(self, **params):
        all_args = [
            'subject', 'email', 'to', 'sender', 'from_', 'cc', 'bcc', 'folder',
            'indexed_before', 'indexed_after', 'active_before', 'active_after',
            'started_before', 'started_after', 'limit', 'offset'
        ]
        params = helpers.sanitize_params(params, all_args)

        # workaround to send param "from" even though it's a reserved keyword
        # in python
        if 'sender' in params:
            params['from'] = params['sender']
            del params['sender']

        if 'from_' in params:
            params['from'] = params['from_']
            del params['from_']

        thread_urls = self._request_uri('threads', params=params)
        objs = []

        # isolate just the gmail_thread_id so we can instantiate Thread objects
        for thread_url in thread_urls:
            url_components = thread_url.split('/')
            objs.append({'gmail_thread_id': url_components[-1]})

        return [Thread(self, obj) for obj in objs]
The suggested filename from the `Content-Disposition` header field
dataset/ETHPy150Open contextio/Python-ContextIO/contextio/lib/resources/account.py/Account.get_threads--crossover with--dataset/ETHPy150Open nigelsmall/httpstream/httpstream/http.py/Response.filename