def list_groups(self, **kwargs): url = 'groups?' page = 1 if not 'page' in kwargs else kwargs['page'] per_page = 100 if not 'per_page' in kwargs else kwargs['per_page'] groups = [] while True: try: this_page = self._api._get( url + 'page=%d&per_page=%d' % (page, per_page), kwargs)['groups'] except FreshserviceRateLimited as err: ratelimit_timer_val = ratelimit_timer_re.match( err.args[0]).group(1) print( f'list_groups() got to page {page}, hit rate limit, waiting {ratelimit_timer_val} seconds...' ) time.sleep(int(ratelimit_timer_val) + 1) continue groups += this_page if len(this_page) < per_page or 'page' in kwargs: break page += 1 return [Group(**g) for g in groups]
def list_groups(self, **kwargs): url = "groups?" page = kwargs.get("page", 1) per_page = kwargs.get("per_page", 100) groups = [] while True: this_page = self._api._get(url + "page=%d&per_page=%d" % (page, per_page), kwargs) groups += this_page if len(this_page) < per_page or "page" in kwargs: break page += 1 return [Group(**g) for g in groups]
def list_groups(self, **kwargs): url = 'groups?' page = 1 if not 'page' in kwargs else kwargs['page'] per_page = 100 if not 'per_page' in kwargs else kwargs['per_page'] groups = [] while True: this_page = self._api._get(url + 'page=%d&per_page=%d' % (page, per_page), kwargs) groups += this_page if len(this_page) < per_page or 'page' in kwargs: break page += 1 return [Group(**g) for g in groups]
def get_group(self, group_id): url = "groups/%s" % group_id return Group(**self._api._get(url))
def list_groups(self): url = 'groups' groups = [] for g in self._api._get(url): groups.append(Group(**g)) return groups