code: def _build_query_params(self, headers_only=False, page_size=None):
          
          params = {"name": self._project_path, "filter_": self.filter}
  
          params["interval"] = types.TimeInterval()
          params["interval"].end_time.FromDatetime(self._end_time)
          if self._start_time:
              params["interval"].start_time.FromDatetime(self._start_time)
  
          if (
              self._per_series_aligner
              or self._alignment_period_seconds
              or self._cross_series_reducer
              or self._group_by_fields
          ):
              params["aggregation"] = types.Aggregation(
                  per_series_aligner=self._per_series_aligner,
                  cross_series_reducer=self._cross_series_reducer,
                  group_by_fields=self._group_by_fields,
                  alignment_period={"seconds": self._alignment_period_seconds},
              )
  
          if headers_only:
              params["view"] = enums.ListTimeSeriesRequest.TimeSeriesView.HEADERS
          else:
              params["view"] = enums.ListTimeSeriesRequest.TimeSeriesView.FULL
  
          if page_size is not None:
              params["page_size"] = page_size
  
          return params
docs: Return key-value pairs for the list_time_series API call.
  
          :type headers_only: bool
          :param headers_only:
               Whether to omit the point data from the
               :class:`~google.cloud.monitoring_v3.types.TimeSeries` objects.
  
          :type page_size: int
          :param page_size:
              (Optional) The maximum number of points in each page of results
              from this request. Non-positive values are ignored. Defaults
              to a sensible value set by the API.