8
8
9
9
from .... import _legacy_response
10
10
from ...._types import NOT_GIVEN , Body , Query , Headers , NotGiven
11
- from ...._utils import maybe_transform
11
+ from ...._utils import (
12
+ maybe_transform ,
13
+ async_maybe_transform ,
14
+ )
12
15
from ...._compat import cached_property
13
16
from ...._resource import SyncAPIResource , AsyncAPIResource
14
17
from ...._response import to_streamed_response_wrapper , async_to_streamed_response_wrapper
20
23
individual_retrieve_many_benefits_params ,
21
24
)
22
25
from ....types .hris .benefits .individual_benefit import IndividualBenefit
23
- from ....types .hris .benefits .enrolled_individual import EnrolledIndividual
24
- from ....types .hris .benefits .unenrolled_individual import UnenrolledIndividual
26
+ from ....types .hris .benefits .individual_enroll_many_response import IndividualEnrollManyResponse
25
27
from ....types .hris .benefits .individual_enrolled_ids_response import IndividualEnrolledIDsResponse
26
28
27
29
__all__ = ["Individuals" , "AsyncIndividuals" ]
@@ -58,7 +60,7 @@ def enroll_many(
58
60
extra_query : Query | None = None ,
59
61
extra_body : Body | None = None ,
60
62
timeout : float | httpx .Timeout | None | NotGiven = NOT_GIVEN ,
61
- ) -> SyncSinglePage [ EnrolledIndividual ] :
63
+ ) -> IndividualEnrollManyResponse :
62
64
"""Enroll an individual into a deduction or contribution.
63
65
64
66
This is an overwrite
@@ -79,15 +81,13 @@ def enroll_many(
79
81
"""
80
82
if not benefit_id :
81
83
raise ValueError (f"Expected a non-empty value for `benefit_id` but received { benefit_id !r} " )
82
- return self ._get_api_list (
84
+ return self ._post (
83
85
f"/employer/benefits/{ benefit_id } /individuals" ,
84
- page = SyncSinglePage [EnrolledIndividual ],
85
86
body = maybe_transform (individuals , Iterable [individual_enroll_many_params .Individual ]),
86
87
options = make_request_options (
87
88
extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
88
89
),
89
- model = EnrolledIndividual ,
90
- method = "post" ,
90
+ cast_to = IndividualEnrollManyResponse ,
91
91
)
92
92
93
93
def enrolled_ids (
@@ -179,7 +179,7 @@ def unenroll_many(
179
179
extra_query : Query | None = None ,
180
180
extra_body : Body | None = None ,
181
181
timeout : float | httpx .Timeout | None | NotGiven = NOT_GIVEN ,
182
- ) -> SyncSinglePage [UnenrolledIndividual ]:
182
+ ) -> SyncSinglePage [object ]:
183
183
"""
184
184
Unenroll individuals from a deduction or contribution
185
185
@@ -198,14 +198,14 @@ def unenroll_many(
198
198
raise ValueError (f"Expected a non-empty value for `benefit_id` but received { benefit_id !r} " )
199
199
return self ._get_api_list (
200
200
f"/employer/benefits/{ benefit_id } /individuals" ,
201
- page = SyncSinglePage [UnenrolledIndividual ],
201
+ page = SyncSinglePage [object ],
202
202
body = maybe_transform (
203
203
{"individual_ids" : individual_ids }, individual_unenroll_many_params .IndividualUnenrollManyParams
204
204
),
205
205
options = make_request_options (
206
206
extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
207
207
),
208
- model = UnenrolledIndividual ,
208
+ model = object ,
209
209
method = "delete" ,
210
210
)
211
211
@@ -230,7 +230,7 @@ def with_streaming_response(self) -> AsyncIndividualsWithStreamingResponse:
230
230
"""
231
231
return AsyncIndividualsWithStreamingResponse (self )
232
232
233
- def enroll_many (
233
+ async def enroll_many (
234
234
self ,
235
235
benefit_id : str ,
236
236
* ,
@@ -241,7 +241,7 @@ def enroll_many(
241
241
extra_query : Query | None = None ,
242
242
extra_body : Body | None = None ,
243
243
timeout : float | httpx .Timeout | None | NotGiven = NOT_GIVEN ,
244
- ) -> AsyncPaginator [ EnrolledIndividual , AsyncSinglePage [ EnrolledIndividual ]] :
244
+ ) -> IndividualEnrollManyResponse :
245
245
"""Enroll an individual into a deduction or contribution.
246
246
247
247
This is an overwrite
@@ -262,15 +262,13 @@ def enroll_many(
262
262
"""
263
263
if not benefit_id :
264
264
raise ValueError (f"Expected a non-empty value for `benefit_id` but received { benefit_id !r} " )
265
- return self ._get_api_list (
265
+ return await self ._post (
266
266
f"/employer/benefits/{ benefit_id } /individuals" ,
267
- page = AsyncSinglePage [EnrolledIndividual ],
268
- body = maybe_transform (individuals , Iterable [individual_enroll_many_params .Individual ]),
267
+ body = await async_maybe_transform (individuals , Iterable [individual_enroll_many_params .Individual ]),
269
268
options = make_request_options (
270
269
extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
271
270
),
272
- model = EnrolledIndividual ,
273
- method = "post" ,
271
+ cast_to = IndividualEnrollManyResponse ,
274
272
)
275
273
276
274
async def enrolled_ids (
@@ -362,7 +360,7 @@ def unenroll_many(
362
360
extra_query : Query | None = None ,
363
361
extra_body : Body | None = None ,
364
362
timeout : float | httpx .Timeout | None | NotGiven = NOT_GIVEN ,
365
- ) -> AsyncPaginator [UnenrolledIndividual , AsyncSinglePage [UnenrolledIndividual ]]:
363
+ ) -> AsyncPaginator [object , AsyncSinglePage [object ]]:
366
364
"""
367
365
Unenroll individuals from a deduction or contribution
368
366
@@ -381,14 +379,14 @@ def unenroll_many(
381
379
raise ValueError (f"Expected a non-empty value for `benefit_id` but received { benefit_id !r} " )
382
380
return self ._get_api_list (
383
381
f"/employer/benefits/{ benefit_id } /individuals" ,
384
- page = AsyncSinglePage [UnenrolledIndividual ],
382
+ page = AsyncSinglePage [object ],
385
383
body = maybe_transform (
386
384
{"individual_ids" : individual_ids }, individual_unenroll_many_params .IndividualUnenrollManyParams
387
385
),
388
386
options = make_request_options (
389
387
extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
390
388
),
391
- model = UnenrolledIndividual ,
389
+ model = object ,
392
390
method = "delete" ,
393
391
)
394
392
0 commit comments