Skip to content

Commit 354f6d2

Browse files
stainless-app[bot]stainless-bot
authored andcommitted
feat(iam): fix model mappings (#2154)
1 parent 66d6d48 commit 354f6d2

File tree

17 files changed

+144
-743
lines changed

17 files changed

+144
-743
lines changed

api.md

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,14 @@ from cloudflare.types import (
1010
ErrorData,
1111
Identifier,
1212
LoadBalancerPreview,
13+
Member,
1314
PaginationInfo,
1415
Permission,
1516
PermissionGrant,
1617
RatePlan,
1718
ResponseInfo,
1819
Result,
20+
Role,
1921
SortDirection,
2022
Subscription,
2123
SubscriptionComponent,
@@ -44,36 +46,23 @@ Methods:
4446
Types:
4547

4648
```python
47-
from cloudflare.types.accounts import (
48-
Status,
49-
MemberCreateResponse,
50-
MemberUpdateResponse,
51-
MemberListResponse,
52-
MemberDeleteResponse,
53-
MemberGetResponse,
54-
)
49+
from cloudflare.types.accounts import Status, MemberDeleteResponse
5550
```
5651

5752
Methods:
5853

59-
- <code title="post /accounts/{account_id}/members">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">create</a>(\*, account_id, \*\*<a href="src/cloudflare/types/accounts/member_create_params.py">params</a>) -> <a href="./src/cloudflare/types/accounts/member_create_response.py">Optional</a></code>
60-
- <code title="put /accounts/{account_id}/members/{member_id}">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">update</a>(member_id, \*, account_id, \*\*<a href="src/cloudflare/types/accounts/member_update_params.py">params</a>) -> <a href="./src/cloudflare/types/accounts/member_update_response.py">Optional</a></code>
61-
- <code title="get /accounts/{account_id}/members">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">list</a>(\*, account_id, \*\*<a href="src/cloudflare/types/accounts/member_list_params.py">params</a>) -> <a href="./src/cloudflare/types/accounts/member_list_response.py">SyncV4PagePaginationArray[MemberListResponse]</a></code>
54+
- <code title="post /accounts/{account_id}/members">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">create</a>(\*, account_id, \*\*<a href="src/cloudflare/types/accounts/member_create_params.py">params</a>) -> <a href="./src/cloudflare/types/shared/member.py">Optional</a></code>
55+
- <code title="put /accounts/{account_id}/members/{member_id}">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">update</a>(member_id, \*, account_id, \*\*<a href="src/cloudflare/types/accounts/member_update_params.py">params</a>) -> <a href="./src/cloudflare/types/shared/member.py">Optional</a></code>
56+
- <code title="get /accounts/{account_id}/members">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">list</a>(\*, account_id, \*\*<a href="src/cloudflare/types/accounts/member_list_params.py">params</a>) -> <a href="./src/cloudflare/types/shared/member.py">SyncV4PagePaginationArray[Member]</a></code>
6257
- <code title="delete /accounts/{account_id}/members/{member_id}">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">delete</a>(member_id, \*, account_id) -> <a href="./src/cloudflare/types/accounts/member_delete_response.py">Optional</a></code>
63-
- <code title="get /accounts/{account_id}/members/{member_id}">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">get</a>(member_id, \*, account_id) -> <a href="./src/cloudflare/types/accounts/member_get_response.py">Optional</a></code>
58+
- <code title="get /accounts/{account_id}/members/{member_id}">client.accounts.members.<a href="./src/cloudflare/resources/accounts/members.py">get</a>(member_id, \*, account_id) -> <a href="./src/cloudflare/types/shared/member.py">Optional</a></code>
6459

6560
## Roles
6661

67-
Types:
68-
69-
```python
70-
from cloudflare.types.accounts import RoleListResponse, RoleGetResponse
71-
```
72-
7362
Methods:
7463

75-
- <code title="get /accounts/{account_id}/roles">client.accounts.roles.<a href="./src/cloudflare/resources/accounts/roles.py">list</a>(\*, account_id) -> <a href="./src/cloudflare/types/accounts/role_list_response.py">SyncSinglePage[RoleListResponse]</a></code>
76-
- <code title="get /accounts/{account_id}/roles/{role_id}">client.accounts.roles.<a href="./src/cloudflare/resources/accounts/roles.py">get</a>(role_id, \*, account_id) -> <a href="./src/cloudflare/types/accounts/role_get_response.py">Optional</a></code>
64+
- <code title="get /accounts/{account_id}/roles">client.accounts.roles.<a href="./src/cloudflare/resources/accounts/roles.py">list</a>(\*, account_id) -> <a href="./src/cloudflare/types/shared/role.py">SyncSinglePage[Role]</a></code>
65+
- <code title="get /accounts/{account_id}/roles/{role_id}">client.accounts.roles.<a href="./src/cloudflare/resources/accounts/roles.py">get</a>(role_id, \*, account_id) -> <a href="./src/cloudflare/types/shared/role.py">Optional</a></code>
7766

7867
## Subscriptions
7968

src/cloudflare/resources/accounts/members.py

Lines changed: 38 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,9 @@
2525
from ...pagination import SyncV4PagePaginationArray, AsyncV4PagePaginationArray
2626
from ..._base_client import AsyncPaginator, make_request_options
2727
from ...types.accounts import member_list_params, member_create_params, member_update_params
28-
from ...types.accounts.member_get_response import MemberGetResponse
29-
from ...types.accounts.member_list_response import MemberListResponse
30-
from ...types.accounts.member_create_response import MemberCreateResponse
28+
from ...types.shared.member import Member
29+
from ...types.shared_params.role import Role
3130
from ...types.accounts.member_delete_response import MemberDeleteResponse
32-
from ...types.accounts.member_update_response import MemberUpdateResponse
3331

3432
__all__ = ["MembersResource", "AsyncMembersResource"]
3533

@@ -68,7 +66,7 @@ def create(
6866
extra_query: Query | None = None,
6967
extra_body: Body | None = None,
7068
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
71-
) -> Optional[MemberCreateResponse]:
69+
) -> Optional[Member]:
7270
"""
7371
Add a user to the list of members for this account.
7472
@@ -103,7 +101,7 @@ def create(
103101
extra_query: Query | None = None,
104102
extra_body: Body | None = None,
105103
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
106-
) -> Optional[MemberCreateResponse]:
104+
) -> Optional[Member]:
107105
"""
108106
Add a user to the list of members for this account.
109107
@@ -139,7 +137,7 @@ def create(
139137
extra_query: Query | None = None,
140138
extra_body: Body | None = None,
141139
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
142-
) -> Optional[MemberCreateResponse]:
140+
) -> Optional[Member]:
143141
if not account_id:
144142
raise ValueError(f"Expected a non-empty value for `account_id` but received {account_id!r}")
145143
return self._post(
@@ -158,9 +156,9 @@ def create(
158156
extra_query=extra_query,
159157
extra_body=extra_body,
160158
timeout=timeout,
161-
post_parser=ResultWrapper[Optional[MemberCreateResponse]]._unwrapper,
159+
post_parser=ResultWrapper[Optional[Member]]._unwrapper,
162160
),
163-
cast_to=cast(Type[Optional[MemberCreateResponse]], ResultWrapper[MemberCreateResponse]),
161+
cast_to=cast(Type[Optional[Member]], ResultWrapper[Member]),
164162
)
165163

166164
@overload
@@ -169,14 +167,14 @@ def update(
169167
member_id: str,
170168
*,
171169
account_id: str,
172-
roles: Iterable[member_update_params.IAMUpdateMemberWithRolesRole] | NotGiven = NOT_GIVEN,
170+
roles: Iterable[Role] | NotGiven = NOT_GIVEN,
173171
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
174172
# The extra values given here take precedence over values defined on the client or passed to this method.
175173
extra_headers: Headers | None = None,
176174
extra_query: Query | None = None,
177175
extra_body: Body | None = None,
178176
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
179-
) -> Optional[MemberUpdateResponse]:
177+
) -> Optional[Member]:
180178
"""
181179
Modify an account member.
182180
@@ -210,7 +208,7 @@ def update(
210208
extra_query: Query | None = None,
211209
extra_body: Body | None = None,
212210
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
213-
) -> Optional[MemberUpdateResponse]:
211+
) -> Optional[Member]:
214212
"""
215213
Modify an account member.
216214
@@ -237,15 +235,15 @@ def update(
237235
member_id: str,
238236
*,
239237
account_id: str,
240-
roles: Iterable[member_update_params.IAMUpdateMemberWithRolesRole] | NotGiven = NOT_GIVEN,
238+
roles: Iterable[Role] | NotGiven = NOT_GIVEN,
241239
policies: Iterable[member_update_params.IAMUpdateMemberWithPoliciesPolicy] | NotGiven = NOT_GIVEN,
242240
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
243241
# The extra values given here take precedence over values defined on the client or passed to this method.
244242
extra_headers: Headers | None = None,
245243
extra_query: Query | None = None,
246244
extra_body: Body | None = None,
247245
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
248-
) -> Optional[MemberUpdateResponse]:
246+
) -> Optional[Member]:
249247
if not account_id:
250248
raise ValueError(f"Expected a non-empty value for `account_id` but received {account_id!r}")
251249
if not member_id:
@@ -264,9 +262,9 @@ def update(
264262
extra_query=extra_query,
265263
extra_body=extra_body,
266264
timeout=timeout,
267-
post_parser=ResultWrapper[Optional[MemberUpdateResponse]]._unwrapper,
265+
post_parser=ResultWrapper[Optional[Member]]._unwrapper,
268266
),
269-
cast_to=cast(Type[Optional[MemberUpdateResponse]], ResultWrapper[MemberUpdateResponse]),
267+
cast_to=cast(Type[Optional[Member]], ResultWrapper[Member]),
270268
)
271269

272270
def list(
@@ -284,7 +282,7 @@ def list(
284282
extra_query: Query | None = None,
285283
extra_body: Body | None = None,
286284
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
287-
) -> SyncV4PagePaginationArray[MemberListResponse]:
285+
) -> SyncV4PagePaginationArray[Member]:
288286
"""
289287
List all members of an account.
290288
@@ -313,7 +311,7 @@ def list(
313311
raise ValueError(f"Expected a non-empty value for `account_id` but received {account_id!r}")
314312
return self._get_api_list(
315313
f"/accounts/{account_id}/members",
316-
page=SyncV4PagePaginationArray[MemberListResponse],
314+
page=SyncV4PagePaginationArray[Member],
317315
options=make_request_options(
318316
extra_headers=extra_headers,
319317
extra_query=extra_query,
@@ -330,7 +328,7 @@ def list(
330328
member_list_params.MemberListParams,
331329
),
332330
),
333-
model=MemberListResponse,
331+
model=Member,
334332
)
335333

336334
def delete(
@@ -388,7 +386,7 @@ def get(
388386
extra_query: Query | None = None,
389387
extra_body: Body | None = None,
390388
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
391-
) -> Optional[MemberGetResponse]:
389+
) -> Optional[Member]:
392390
"""
393391
Get information about a specific member of an account.
394392
@@ -416,9 +414,9 @@ def get(
416414
extra_query=extra_query,
417415
extra_body=extra_body,
418416
timeout=timeout,
419-
post_parser=ResultWrapper[Optional[MemberGetResponse]]._unwrapper,
417+
post_parser=ResultWrapper[Optional[Member]]._unwrapper,
420418
),
421-
cast_to=cast(Type[Optional[MemberGetResponse]], ResultWrapper[MemberGetResponse]),
419+
cast_to=cast(Type[Optional[Member]], ResultWrapper[Member]),
422420
)
423421

424422

@@ -456,7 +454,7 @@ async def create(
456454
extra_query: Query | None = None,
457455
extra_body: Body | None = None,
458456
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
459-
) -> Optional[MemberCreateResponse]:
457+
) -> Optional[Member]:
460458
"""
461459
Add a user to the list of members for this account.
462460
@@ -491,7 +489,7 @@ async def create(
491489
extra_query: Query | None = None,
492490
extra_body: Body | None = None,
493491
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
494-
) -> Optional[MemberCreateResponse]:
492+
) -> Optional[Member]:
495493
"""
496494
Add a user to the list of members for this account.
497495
@@ -527,7 +525,7 @@ async def create(
527525
extra_query: Query | None = None,
528526
extra_body: Body | None = None,
529527
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
530-
) -> Optional[MemberCreateResponse]:
528+
) -> Optional[Member]:
531529
if not account_id:
532530
raise ValueError(f"Expected a non-empty value for `account_id` but received {account_id!r}")
533531
return await self._post(
@@ -546,9 +544,9 @@ async def create(
546544
extra_query=extra_query,
547545
extra_body=extra_body,
548546
timeout=timeout,
549-
post_parser=ResultWrapper[Optional[MemberCreateResponse]]._unwrapper,
547+
post_parser=ResultWrapper[Optional[Member]]._unwrapper,
550548
),
551-
cast_to=cast(Type[Optional[MemberCreateResponse]], ResultWrapper[MemberCreateResponse]),
549+
cast_to=cast(Type[Optional[Member]], ResultWrapper[Member]),
552550
)
553551

554552
@overload
@@ -557,14 +555,14 @@ async def update(
557555
member_id: str,
558556
*,
559557
account_id: str,
560-
roles: Iterable[member_update_params.IAMUpdateMemberWithRolesRole] | NotGiven = NOT_GIVEN,
558+
roles: Iterable[Role] | NotGiven = NOT_GIVEN,
561559
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
562560
# The extra values given here take precedence over values defined on the client or passed to this method.
563561
extra_headers: Headers | None = None,
564562
extra_query: Query | None = None,
565563
extra_body: Body | None = None,
566564
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
567-
) -> Optional[MemberUpdateResponse]:
565+
) -> Optional[Member]:
568566
"""
569567
Modify an account member.
570568
@@ -598,7 +596,7 @@ async def update(
598596
extra_query: Query | None = None,
599597
extra_body: Body | None = None,
600598
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
601-
) -> Optional[MemberUpdateResponse]:
599+
) -> Optional[Member]:
602600
"""
603601
Modify an account member.
604602
@@ -625,15 +623,15 @@ async def update(
625623
member_id: str,
626624
*,
627625
account_id: str,
628-
roles: Iterable[member_update_params.IAMUpdateMemberWithRolesRole] | NotGiven = NOT_GIVEN,
626+
roles: Iterable[Role] | NotGiven = NOT_GIVEN,
629627
policies: Iterable[member_update_params.IAMUpdateMemberWithPoliciesPolicy] | NotGiven = NOT_GIVEN,
630628
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
631629
# The extra values given here take precedence over values defined on the client or passed to this method.
632630
extra_headers: Headers | None = None,
633631
extra_query: Query | None = None,
634632
extra_body: Body | None = None,
635633
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
636-
) -> Optional[MemberUpdateResponse]:
634+
) -> Optional[Member]:
637635
if not account_id:
638636
raise ValueError(f"Expected a non-empty value for `account_id` but received {account_id!r}")
639637
if not member_id:
@@ -652,9 +650,9 @@ async def update(
652650
extra_query=extra_query,
653651
extra_body=extra_body,
654652
timeout=timeout,
655-
post_parser=ResultWrapper[Optional[MemberUpdateResponse]]._unwrapper,
653+
post_parser=ResultWrapper[Optional[Member]]._unwrapper,
656654
),
657-
cast_to=cast(Type[Optional[MemberUpdateResponse]], ResultWrapper[MemberUpdateResponse]),
655+
cast_to=cast(Type[Optional[Member]], ResultWrapper[Member]),
658656
)
659657

660658
def list(
@@ -672,7 +670,7 @@ def list(
672670
extra_query: Query | None = None,
673671
extra_body: Body | None = None,
674672
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
675-
) -> AsyncPaginator[MemberListResponse, AsyncV4PagePaginationArray[MemberListResponse]]:
673+
) -> AsyncPaginator[Member, AsyncV4PagePaginationArray[Member]]:
676674
"""
677675
List all members of an account.
678676
@@ -701,7 +699,7 @@ def list(
701699
raise ValueError(f"Expected a non-empty value for `account_id` but received {account_id!r}")
702700
return self._get_api_list(
703701
f"/accounts/{account_id}/members",
704-
page=AsyncV4PagePaginationArray[MemberListResponse],
702+
page=AsyncV4PagePaginationArray[Member],
705703
options=make_request_options(
706704
extra_headers=extra_headers,
707705
extra_query=extra_query,
@@ -718,7 +716,7 @@ def list(
718716
member_list_params.MemberListParams,
719717
),
720718
),
721-
model=MemberListResponse,
719+
model=Member,
722720
)
723721

724722
async def delete(
@@ -776,7 +774,7 @@ async def get(
776774
extra_query: Query | None = None,
777775
extra_body: Body | None = None,
778776
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
779-
) -> Optional[MemberGetResponse]:
777+
) -> Optional[Member]:
780778
"""
781779
Get information about a specific member of an account.
782780
@@ -804,9 +802,9 @@ async def get(
804802
extra_query=extra_query,
805803
extra_body=extra_body,
806804
timeout=timeout,
807-
post_parser=ResultWrapper[Optional[MemberGetResponse]]._unwrapper,
805+
post_parser=ResultWrapper[Optional[Member]]._unwrapper,
808806
),
809-
cast_to=cast(Type[Optional[MemberGetResponse]], ResultWrapper[MemberGetResponse]),
807+
cast_to=cast(Type[Optional[Member]], ResultWrapper[Member]),
810808
)
811809

812810

0 commit comments

Comments
 (0)