code: def count(self, filter=None, order_by=None, group_by=[], page=None, page_size=None, query_parameters=None, async=False, callback=None):
          
          request = NURESTRequest(method=HTTP_METHOD_HEAD, url=self._prepare_url(), params=query_parameters)
  
          self._prepare_headers(request=request, filter=filter, order_by=order_by, group_by=group_by, page=page, page_size=page_size)
  
          if async:
              return self.parent_object.send_request(request=request, async=async, local_callback=self._did_count, remote_callback=callback)
  
          else:
              connection = self.parent_object.send_request(request=request)
              return self._did_count(connection)
docs: Get the total count of objects that can be fetched according to filter
  
              This method can be asynchronous and trigger the callback method
              when result is ready.
  
              Args:
                  filter (string): string that represents a predicate fitler (eg. name == 'x')
                  order_by (string): string that represents an order by clause
                  group_by (string): list of names for grouping
                  page (int): number of the page to load
                  page_size (int): number of results per page
                  callback (function): Method that will be triggered asynchronously
  
              Returns:
                  Returns a transaction ID when asynchronous call is made.
                  Otherwise it will return a tuple of information containing
                  (fetcher, served object, count of fetched objects)