Skip to content

Commit 4b822a0

Browse files
feat(api): api update (#636)
1 parent 9accf06 commit 4b822a0

13 files changed

+29
-49
lines changed

.stats.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 41
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/finch%2Ffinch-df94542d153a8558bbe63b273e8d6ae79f46b8d81df1ebeeacd07fee6f9ee22a.yml
3-
openapi_spec_hash: aeb92e382ee0a9b86e2ba39e54cdfe9a
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/finch%2Ffinch-972e563922dedeeb94dca9a3ca8bac536488fcee56b55fcf09e6af044d3740e3.yml
3+
openapi_spec_hash: 08b86ecbec3323717d48e4aaee48ed54
44
config_hash: 8303e755d3e16cf28542d5f0aec83851

api.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -158,8 +158,8 @@ Types:
158158
from finch.types.hris.benefits import (
159159
EnrolledIndividual,
160160
IndividualBenefit,
161-
UnenrolledIndividual,
162161
IndividualEnrolledIDsResponse,
162+
IndividualUnenrollManyResponse,
163163
)
164164
```
165165

@@ -168,7 +168,7 @@ Methods:
168168
- <code title="post /employer/benefits/{benefit_id}/individuals">client.hris.benefits.individuals.<a href="./src/finch/resources/hris/benefits/individuals.py">enroll_many</a>(benefit_id, \*\*<a href="src/finch/types/hris/benefits/individual_enroll_many_params.py">params</a>) -> <a href="./src/finch/types/hris/benefits/enrolled_individual.py">SyncSinglePage[EnrolledIndividual]</a></code>
169169
- <code title="get /employer/benefits/{benefit_id}/enrolled">client.hris.benefits.individuals.<a href="./src/finch/resources/hris/benefits/individuals.py">enrolled_ids</a>(benefit_id) -> <a href="./src/finch/types/hris/benefits/individual_enrolled_ids_response.py">IndividualEnrolledIDsResponse</a></code>
170170
- <code title="get /employer/benefits/{benefit_id}/individuals">client.hris.benefits.individuals.<a href="./src/finch/resources/hris/benefits/individuals.py">retrieve_many_benefits</a>(benefit_id, \*\*<a href="src/finch/types/hris/benefits/individual_retrieve_many_benefits_params.py">params</a>) -> <a href="./src/finch/types/hris/benefits/individual_benefit.py">SyncSinglePage[IndividualBenefit]</a></code>
171-
- <code title="delete /employer/benefits/{benefit_id}/individuals">client.hris.benefits.individuals.<a href="./src/finch/resources/hris/benefits/individuals.py">unenroll_many</a>(benefit_id, \*\*<a href="src/finch/types/hris/benefits/individual_unenroll_many_params.py">params</a>) -> <a href="./src/finch/types/hris/benefits/unenrolled_individual.py">SyncSinglePage[UnenrolledIndividual]</a></code>
171+
- <code title="delete /employer/benefits/{benefit_id}/individuals">client.hris.benefits.individuals.<a href="./src/finch/resources/hris/benefits/individuals.py">unenroll_many</a>(benefit_id, \*\*<a href="src/finch/types/hris/benefits/individual_unenroll_many_params.py">params</a>) -> <a href="./src/finch/types/hris/benefits/individual_unenroll_many_response.py">SyncSinglePage[object]</a></code>
172172

173173
# Providers
174174

src/finch/resources/hris/benefits/benefits.py

+4
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,8 @@ def create(
8383
limiting this to <30 characters due to limitations in specific providers (e.g.
8484
Justworks).
8585
86+
frequency: The frequency of the benefit deduction/contribution.
87+
8688
type: Type of benefit.
8789
8890
extra_headers: Send extra headers
@@ -267,6 +269,8 @@ async def create(
267269
limiting this to <30 characters due to limitations in specific providers (e.g.
268270
Justworks).
269271
272+
frequency: The frequency of the benefit deduction/contribution.
273+
270274
type: Type of benefit.
271275
272276
extra_headers: Send extra headers

src/finch/resources/hris/benefits/individuals.py

+6-7
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
)
2222
from ....types.hris.benefits.individual_benefit import IndividualBenefit
2323
from ....types.hris.benefits.enrolled_individual import EnrolledIndividual
24-
from ....types.hris.benefits.unenrolled_individual import UnenrolledIndividual
2524
from ....types.hris.benefits.individual_enrolled_ids_response import IndividualEnrolledIDsResponse
2625

2726
__all__ = ["Individuals", "AsyncIndividuals"]
@@ -179,7 +178,7 @@ def unenroll_many(
179178
extra_query: Query | None = None,
180179
extra_body: Body | None = None,
181180
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
182-
) -> SyncSinglePage[UnenrolledIndividual]:
181+
) -> SyncSinglePage[object]:
183182
"""
184183
Unenroll individuals from a deduction or contribution
185184
@@ -198,14 +197,14 @@ def unenroll_many(
198197
raise ValueError(f"Expected a non-empty value for `benefit_id` but received {benefit_id!r}")
199198
return self._get_api_list(
200199
f"/employer/benefits/{benefit_id}/individuals",
201-
page=SyncSinglePage[UnenrolledIndividual],
200+
page=SyncSinglePage[object],
202201
body=maybe_transform(
203202
{"individual_ids": individual_ids}, individual_unenroll_many_params.IndividualUnenrollManyParams
204203
),
205204
options=make_request_options(
206205
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
207206
),
208-
model=UnenrolledIndividual,
207+
model=object,
209208
method="delete",
210209
)
211210

@@ -362,7 +361,7 @@ def unenroll_many(
362361
extra_query: Query | None = None,
363362
extra_body: Body | None = None,
364363
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
365-
) -> AsyncPaginator[UnenrolledIndividual, AsyncSinglePage[UnenrolledIndividual]]:
364+
) -> AsyncPaginator[object, AsyncSinglePage[object]]:
366365
"""
367366
Unenroll individuals from a deduction or contribution
368367
@@ -381,14 +380,14 @@ def unenroll_many(
381380
raise ValueError(f"Expected a non-empty value for `benefit_id` but received {benefit_id!r}")
382381
return self._get_api_list(
383382
f"/employer/benefits/{benefit_id}/individuals",
384-
page=AsyncSinglePage[UnenrolledIndividual],
383+
page=AsyncSinglePage[object],
385384
body=maybe_transform(
386385
{"individual_ids": individual_ids}, individual_unenroll_many_params.IndividualUnenrollManyParams
387386
),
388387
options=make_request_options(
389388
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
390389
),
391-
model=UnenrolledIndividual,
390+
model=object,
392391
method="delete",
393392
)
394393

src/finch/types/hris/benefit_create_params.py

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ class BenefitCreateParams(TypedDict, total=False):
2020
"""
2121

2222
frequency: Optional[BenefitFrequency]
23+
"""The frequency of the benefit deduction/contribution."""
2324

2425
type: Optional[BenefitType]
2526
"""Type of benefit."""

src/finch/types/hris/benefits/__init__.py

-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
from .individual_benefit import IndividualBenefit as IndividualBenefit
66
from .enrolled_individual import EnrolledIndividual as EnrolledIndividual
7-
from .unenrolled_individual import UnenrolledIndividual as UnenrolledIndividual
87
from .individual_enroll_many_params import IndividualEnrollManyParams as IndividualEnrollManyParams
98
from .individual_unenroll_many_params import IndividualUnenrollManyParams as IndividualUnenrollManyParams
109
from .individual_enrolled_ids_response import IndividualEnrolledIDsResponse as IndividualEnrolledIDsResponse

src/finch/types/hris/benefits/enrolled_individual.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
class Body(BaseModel):
1212
finch_code: Optional[str] = None
13-
"""A descriptive identifier for the response"""
13+
"""A descriptive identifier for the response."""
1414

1515
message: Optional[str] = None
1616
"""Short description in English that provides more information about the response."""

src/finch/types/hris/benefits/individual_enrolled_ids_response.py

+1
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,6 @@
99

1010
class IndividualEnrolledIDsResponse(BaseModel):
1111
benefit_id: str
12+
"""The id of the benefit."""
1213

1314
individual_ids: List[str]

src/finch/types/hris/benefits/unenrolled_individual.py

-27
This file was deleted.

src/finch/types/hris/company_benefit.py

+2
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,12 @@
1111

1212
class CompanyBenefit(BaseModel):
1313
benefit_id: str
14+
"""The id of the benefit."""
1415

1516
description: Optional[str] = None
1617

1718
frequency: Optional[BenefitFrequency] = None
19+
"""The frequency of the benefit deduction/contribution."""
1820

1921
type: Optional[BenefitType] = None
2022
"""Type of benefit."""

src/finch/types/hris/create_company_benefits_response.py

+1
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@
88

99
class CreateCompanyBenefitsResponse(BaseModel):
1010
benefit_id: str
11+
"""The id of the benefit."""

src/finch/types/hris/update_company_benefit_response.py

+1
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@
88

99
class UpdateCompanyBenefitResponse(BaseModel):
1010
benefit_id: str
11+
"""The id of the benefit."""

tests/api_resources/hris/benefits/test_individuals.py

+8-9
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
from finch.types.hris.benefits import (
1515
IndividualBenefit,
1616
EnrolledIndividual,
17-
UnenrolledIndividual,
1817
IndividualEnrolledIDsResponse,
1918
)
2019

@@ -177,15 +176,15 @@ def test_method_unenroll_many(self, client: Finch) -> None:
177176
individual = client.hris.benefits.individuals.unenroll_many(
178177
benefit_id="benefit_id",
179178
)
180-
assert_matches_type(SyncSinglePage[UnenrolledIndividual], individual, path=["response"])
179+
assert_matches_type(SyncSinglePage[object], individual, path=["response"])
181180

182181
@parametrize
183182
def test_method_unenroll_many_with_all_params(self, client: Finch) -> None:
184183
individual = client.hris.benefits.individuals.unenroll_many(
185184
benefit_id="benefit_id",
186185
individual_ids=["string"],
187186
)
188-
assert_matches_type(SyncSinglePage[UnenrolledIndividual], individual, path=["response"])
187+
assert_matches_type(SyncSinglePage[object], individual, path=["response"])
189188

190189
@parametrize
191190
def test_raw_response_unenroll_many(self, client: Finch) -> None:
@@ -196,7 +195,7 @@ def test_raw_response_unenroll_many(self, client: Finch) -> None:
196195
assert response.is_closed is True
197196
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
198197
individual = response.parse()
199-
assert_matches_type(SyncSinglePage[UnenrolledIndividual], individual, path=["response"])
198+
assert_matches_type(SyncSinglePage[object], individual, path=["response"])
200199

201200
@parametrize
202201
def test_streaming_response_unenroll_many(self, client: Finch) -> None:
@@ -207,7 +206,7 @@ def test_streaming_response_unenroll_many(self, client: Finch) -> None:
207206
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
208207

209208
individual = response.parse()
210-
assert_matches_type(SyncSinglePage[UnenrolledIndividual], individual, path=["response"])
209+
assert_matches_type(SyncSinglePage[object], individual, path=["response"])
211210

212211
assert cast(Any, response.is_closed) is True
213212

@@ -375,15 +374,15 @@ async def test_method_unenroll_many(self, async_client: AsyncFinch) -> None:
375374
individual = await async_client.hris.benefits.individuals.unenroll_many(
376375
benefit_id="benefit_id",
377376
)
378-
assert_matches_type(AsyncSinglePage[UnenrolledIndividual], individual, path=["response"])
377+
assert_matches_type(AsyncSinglePage[object], individual, path=["response"])
379378

380379
@parametrize
381380
async def test_method_unenroll_many_with_all_params(self, async_client: AsyncFinch) -> None:
382381
individual = await async_client.hris.benefits.individuals.unenroll_many(
383382
benefit_id="benefit_id",
384383
individual_ids=["string"],
385384
)
386-
assert_matches_type(AsyncSinglePage[UnenrolledIndividual], individual, path=["response"])
385+
assert_matches_type(AsyncSinglePage[object], individual, path=["response"])
387386

388387
@parametrize
389388
async def test_raw_response_unenroll_many(self, async_client: AsyncFinch) -> None:
@@ -394,7 +393,7 @@ async def test_raw_response_unenroll_many(self, async_client: AsyncFinch) -> Non
394393
assert response.is_closed is True
395394
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
396395
individual = response.parse()
397-
assert_matches_type(AsyncSinglePage[UnenrolledIndividual], individual, path=["response"])
396+
assert_matches_type(AsyncSinglePage[object], individual, path=["response"])
398397

399398
@parametrize
400399
async def test_streaming_response_unenroll_many(self, async_client: AsyncFinch) -> None:
@@ -405,7 +404,7 @@ async def test_streaming_response_unenroll_many(self, async_client: AsyncFinch)
405404
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
406405

407406
individual = await response.parse()
408-
assert_matches_type(AsyncSinglePage[UnenrolledIndividual], individual, path=["response"])
407+
assert_matches_type(AsyncSinglePage[object], individual, path=["response"])
409408

410409
assert cast(Any, response.is_closed) is True
411410

0 commit comments

Comments
 (0)