@@ -73,15 +73,15 @@ def from_ids(self, observation_ids: MultiInt, **params) -> Paginator[Observation
7373 observation_ids: One or more observation IDs
7474 """
7575
76- def get_observations_by_id (_observation_ids : MultiInt , ** params ):
76+ def _request_observations_by_id (_observation_ids : MultiInt , ** params ):
7777 return self .client .session .request (
7878 'GET' , f'{ API_V1 } /observations' , ids = _observation_ids , ** params
7979 ).json ()
8080
81- params = self .client .add_defaults (get_observations_by_id , params )
81+ params = self .client .add_defaults (_request_observations_by_id , params )
8282
8383 return IDPaginator (
84- get_observations_by_id ,
84+ _request_observations_by_id ,
8585 Observation ,
8686 ids = ensure_list (observation_ids ),
8787 ids_per_request = MAX_IDS_PER_REQUEST ,
@@ -131,14 +131,17 @@ def search(self, **params) -> Paginator[Observation]:
131131
132132 """
133133
134- def get_observations (** params ):
134+ # Inline request function needed to pass to ObservationPaginator (IDRangePaginator),
135+ # which requires a callable that accepts pagination kwargs directly. The v1 function
136+ # handles its own pagination and cannot be used here.
137+ def _request_observations (** params ):
135138 return self .client .session .get (f'{ API_V1 } /observations' , ** params ).json ()
136139
137140 params = validate_multiple_choice_param (params , 'order_by' , V1_OBS_ORDER_BY_PROPERTIES )
138- params = self .client .add_defaults (get_observations , params )
141+ params = self .client .add_defaults (_request_observations , params )
139142
140143 return ObservationPaginator (
141- get_observations ,
144+ _request_observations ,
142145 Observation ,
143146 loop = self .client .loop ,
144147 annotation_callback = self .client .annotations .lookup ,
@@ -210,6 +213,7 @@ def histogram(self, **params) -> Histogram:
210213 :lines: 3-
211214
212215 """
216+ params = self .client .add_defaults (self .client .session .get , params )
213217 response = self .client .session .get (f'{ API_V1 } /observations/histogram' , ** params ).json ()
214218 return Histogram .from_json (response ['results' ])
215219
@@ -401,8 +405,7 @@ def update(self, **params) -> Observation:
401405 >>> description='updated description!',
402406 >>> )
403407 """
404- params = self .client .add_defaults (update_observation , params , auth = True )
405- response = update_observation (** params )
408+ response = self .client .request (update_observation , auth = True , ** params )
406409 return Observation .from_json (response )
407410
408411 def upload (
0 commit comments