Skip to main content

dropbox_sdk/generated/sync_routes/
team.rs

1// DO NOT EDIT
2// This file was @generated by Stone
3
4#![allow(
5    clippy::too_many_arguments,
6    clippy::large_enum_variant,
7    clippy::result_large_err,
8    clippy::doc_markdown,
9    clippy::doc_lazy_continuation,
10)]
11
12#[allow(unused_imports)]
13pub use crate::generated::types::team::*;
14
15/// List all device sessions of a team's member.
16pub fn devices_list_member_devices(
17    client: &impl crate::client_trait::TeamAuthClient,
18    arg: &ListMemberDevicesArg,
19) -> Result<ListMemberDevicesResult, crate::Error<ListMemberDevicesError>> {
20    crate::client_helpers::unwrap_async(
21        crate::client_helpers::request(
22            client,
23            crate::client_trait_common::Endpoint::Api,
24            crate::client_trait_common::Style::Rpc,
25            "team/devices/list_member_devices",
26            arg,
27            None)
28    )
29}
30
31/// List all device sessions of a team. Permission : Team member file access.
32pub fn devices_list_members_devices(
33    client: &impl crate::client_trait::TeamAuthClient,
34    arg: &ListMembersDevicesArg,
35) -> Result<ListMembersDevicesResult, crate::Error<ListMembersDevicesError>> {
36    crate::client_helpers::unwrap_async(
37        crate::client_helpers::request(
38            client,
39            crate::client_trait_common::Endpoint::Api,
40            crate::client_trait_common::Style::Rpc,
41            "team/devices/list_members_devices",
42            arg,
43            None)
44    )
45}
46
47/// List all device sessions of a team. Permission : Team member file access.
48#[deprecated]
49pub fn devices_list_team_devices(
50    client: &impl crate::client_trait::TeamAuthClient,
51    arg: &ListTeamDevicesArg,
52) -> Result<ListTeamDevicesResult, crate::Error<ListTeamDevicesError>> {
53    crate::client_helpers::unwrap_async(
54        crate::client_helpers::request(
55            client,
56            crate::client_trait_common::Endpoint::Api,
57            crate::client_trait_common::Style::Rpc,
58            "team/devices/list_team_devices",
59            arg,
60            None)
61    )
62}
63
64/// Revoke a device session of a team's member.
65pub fn devices_revoke_device_session(
66    client: &impl crate::client_trait::TeamAuthClient,
67    arg: &RevokeDeviceSessionArg,
68) -> Result<(), crate::Error<RevokeDeviceSessionError>> {
69    crate::client_helpers::unwrap_async(
70        crate::client_helpers::request(
71            client,
72            crate::client_trait_common::Endpoint::Api,
73            crate::client_trait_common::Style::Rpc,
74            "team/devices/revoke_device_session",
75            arg,
76            None)
77    )
78}
79
80/// Revoke a list of device sessions of team members.
81pub fn devices_revoke_device_session_batch(
82    client: &impl crate::client_trait::TeamAuthClient,
83    arg: &RevokeDeviceSessionBatchArg,
84) -> Result<RevokeDeviceSessionBatchResult, crate::Error<RevokeDeviceSessionBatchError>> {
85    crate::client_helpers::unwrap_async(
86        crate::client_helpers::request(
87            client,
88            crate::client_trait_common::Endpoint::Api,
89            crate::client_trait_common::Style::Rpc,
90            "team/devices/revoke_device_session_batch",
91            arg,
92            None)
93    )
94}
95
96/// Get the values for one or more features. This route allows you to check your account's
97/// capability for what feature you can access or what value you have for certain features.
98/// Permission : Team information.
99pub fn features_get_values(
100    client: &impl crate::client_trait::TeamAuthClient,
101    arg: &FeaturesGetValuesBatchArg,
102) -> Result<FeaturesGetValuesBatchResult, crate::Error<FeaturesGetValuesBatchError>> {
103    crate::client_helpers::unwrap_async(
104        crate::client_helpers::request(
105            client,
106            crate::client_trait_common::Endpoint::Api,
107            crate::client_trait_common::Style::Rpc,
108            "team/features/get_values",
109            arg,
110            None)
111    )
112}
113
114/// Retrieves information about a team.
115pub fn get_info(
116    client: &impl crate::client_trait::TeamAuthClient,
117) -> Result<TeamGetInfoResult, crate::Error<crate::NoError>> {
118    crate::client_helpers::unwrap_async(
119        crate::client_helpers::request(
120            client,
121            crate::client_trait_common::Endpoint::Api,
122            crate::client_trait_common::Style::Rpc,
123            "team/get_info",
124            &(),
125            None)
126    )
127}
128
129/// Creates a new, empty group, with a requested name. Permission : Team member management.
130pub fn groups_create(
131    client: &impl crate::client_trait::TeamAuthClient,
132    arg: &GroupCreateArg,
133) -> Result<GroupFullInfo, crate::Error<GroupCreateError>> {
134    crate::client_helpers::unwrap_async(
135        crate::client_helpers::request(
136            client,
137            crate::client_trait_common::Endpoint::Api,
138            crate::client_trait_common::Style::Rpc,
139            "team/groups/create",
140            arg,
141            None)
142    )
143}
144
145/// Deletes a group. The group is deleted immediately. However the revoking of group-owned resources
146/// may take additional time. Use the
147/// [`groups_job_status_get()`](crate::team::groups_job_status_get) to determine whether this
148/// process has completed. Permission : Team member management.
149pub fn groups_delete(
150    client: &impl crate::client_trait::TeamAuthClient,
151    arg: &GroupSelector,
152) -> Result<crate::types::dbx_async::LaunchEmptyResult, crate::Error<GroupDeleteError>> {
153    crate::client_helpers::unwrap_async(
154        crate::client_helpers::request(
155            client,
156            crate::client_trait_common::Endpoint::Api,
157            crate::client_trait_common::Style::Rpc,
158            "team/groups/delete",
159            arg,
160            None)
161    )
162}
163
164/// Retrieves information about one or more groups. Note that the optional field
165/// [`GroupFullInfo::members`](GroupFullInfo) is not returned for system-managed groups. Permission
166/// : Team Information.
167pub fn groups_get_info(
168    client: &impl crate::client_trait::TeamAuthClient,
169    arg: &GroupsSelector,
170) -> Result<GroupsGetInfoResult, crate::Error<GroupsGetInfoError>> {
171    crate::client_helpers::unwrap_async(
172        crate::client_helpers::request(
173            client,
174            crate::client_trait_common::Endpoint::Api,
175            crate::client_trait_common::Style::Rpc,
176            "team/groups/get_info",
177            arg,
178            None)
179    )
180}
181
182/// Once an async_job_id is returned from [`groups_delete()`](crate::team::groups_delete),
183/// [`groups_members_add()`](crate::team::groups_members_add) , or
184/// [`groups_members_remove()`](crate::team::groups_members_remove) use this method to poll the
185/// status of granting/revoking group members' access to group-owned resources. Permission : Team
186/// member management.
187pub fn groups_job_status_get(
188    client: &impl crate::client_trait::TeamAuthClient,
189    arg: &crate::types::dbx_async::PollArg,
190) -> Result<crate::types::dbx_async::PollEmptyResult, crate::Error<GroupsPollError>> {
191    crate::client_helpers::unwrap_async(
192        crate::client_helpers::request(
193            client,
194            crate::client_trait_common::Endpoint::Api,
195            crate::client_trait_common::Style::Rpc,
196            "team/groups/job_status/get",
197            arg,
198            None)
199    )
200}
201
202/// Lists groups on a team. Permission : Team Information.
203pub fn groups_list(
204    client: &impl crate::client_trait::TeamAuthClient,
205    arg: &GroupsListArg,
206) -> Result<GroupsListResult, crate::Error<crate::NoError>> {
207    crate::client_helpers::unwrap_async(
208        crate::client_helpers::request(
209            client,
210            crate::client_trait_common::Endpoint::Api,
211            crate::client_trait_common::Style::Rpc,
212            "team/groups/list",
213            arg,
214            None)
215    )
216}
217
218/// Once a cursor has been retrieved from [`groups_list()`](crate::team::groups_list), use this to
219/// paginate through all groups. Permission : Team Information.
220pub fn groups_list_continue(
221    client: &impl crate::client_trait::TeamAuthClient,
222    arg: &GroupsListContinueArg,
223) -> Result<GroupsListResult, crate::Error<GroupsListContinueError>> {
224    crate::client_helpers::unwrap_async(
225        crate::client_helpers::request(
226            client,
227            crate::client_trait_common::Endpoint::Api,
228            crate::client_trait_common::Style::Rpc,
229            "team/groups/list/continue",
230            arg,
231            None)
232    )
233}
234
235/// Adds members to a group. The members are added immediately. However the granting of group-owned
236/// resources may take additional time. Use the
237/// [`groups_job_status_get()`](crate::team::groups_job_status_get) to determine whether this
238/// process has completed. Permission : Team member management.
239pub fn groups_members_add(
240    client: &impl crate::client_trait::TeamAuthClient,
241    arg: &GroupMembersAddArg,
242) -> Result<GroupMembersChangeResult, crate::Error<GroupMembersAddError>> {
243    crate::client_helpers::unwrap_async(
244        crate::client_helpers::request(
245            client,
246            crate::client_trait_common::Endpoint::Api,
247            crate::client_trait_common::Style::Rpc,
248            "team/groups/members/add",
249            arg,
250            None)
251    )
252}
253
254/// Lists members of a group. Permission : Team Information.
255pub fn groups_members_list(
256    client: &impl crate::client_trait::TeamAuthClient,
257    arg: &GroupsMembersListArg,
258) -> Result<GroupsMembersListResult, crate::Error<GroupSelectorError>> {
259    crate::client_helpers::unwrap_async(
260        crate::client_helpers::request(
261            client,
262            crate::client_trait_common::Endpoint::Api,
263            crate::client_trait_common::Style::Rpc,
264            "team/groups/members/list",
265            arg,
266            None)
267    )
268}
269
270/// Once a cursor has been retrieved from
271/// [`groups_members_list()`](crate::team::groups_members_list), use this to paginate through all
272/// members of the group. Permission : Team information.
273pub fn groups_members_list_continue(
274    client: &impl crate::client_trait::TeamAuthClient,
275    arg: &GroupsMembersListContinueArg,
276) -> Result<GroupsMembersListResult, crate::Error<GroupsMembersListContinueError>> {
277    crate::client_helpers::unwrap_async(
278        crate::client_helpers::request(
279            client,
280            crate::client_trait_common::Endpoint::Api,
281            crate::client_trait_common::Style::Rpc,
282            "team/groups/members/list/continue",
283            arg,
284            None)
285    )
286}
287
288/// Removes members from a group. The members are removed immediately. However the revoking of
289/// group-owned resources may take additional time. Use the
290/// [`groups_job_status_get()`](crate::team::groups_job_status_get) to determine whether this
291/// process has completed. This method permits removing the only owner of a group, even in cases
292/// where this is not possible via the web client. Permission : Team member management.
293pub fn groups_members_remove(
294    client: &impl crate::client_trait::TeamAuthClient,
295    arg: &GroupMembersRemoveArg,
296) -> Result<GroupMembersChangeResult, crate::Error<GroupMembersRemoveError>> {
297    crate::client_helpers::unwrap_async(
298        crate::client_helpers::request(
299            client,
300            crate::client_trait_common::Endpoint::Api,
301            crate::client_trait_common::Style::Rpc,
302            "team/groups/members/remove",
303            arg,
304            None)
305    )
306}
307
308/// Sets a member's access type in a group. Permission : Team member management.
309pub fn groups_members_set_access_type(
310    client: &impl crate::client_trait::TeamAuthClient,
311    arg: &GroupMembersSetAccessTypeArg,
312) -> Result<GroupsGetInfoResult, crate::Error<GroupMemberSetAccessTypeError>> {
313    crate::client_helpers::unwrap_async(
314        crate::client_helpers::request(
315            client,
316            crate::client_trait_common::Endpoint::Api,
317            crate::client_trait_common::Style::Rpc,
318            "team/groups/members/set_access_type",
319            arg,
320            None)
321    )
322}
323
324/// Updates a group's name and/or external ID. Permission : Team member management.
325pub fn groups_update(
326    client: &impl crate::client_trait::TeamAuthClient,
327    arg: &GroupUpdateArgs,
328) -> Result<GroupFullInfo, crate::Error<GroupUpdateError>> {
329    crate::client_helpers::unwrap_async(
330        crate::client_helpers::request(
331            client,
332            crate::client_trait_common::Endpoint::Api,
333            crate::client_trait_common::Style::Rpc,
334            "team/groups/update",
335            arg,
336            None)
337    )
338}
339
340/// Creates new legal hold policy. Note: Legal Holds is a paid add-on. Not all teams have the
341/// feature. Permission : Team member file access.
342pub fn legal_holds_create_policy(
343    client: &impl crate::client_trait::TeamAuthClient,
344    arg: &LegalHoldsPolicyCreateArg,
345) -> Result<LegalHoldsPolicyCreateResult, crate::Error<LegalHoldsPolicyCreateError>> {
346    crate::client_helpers::unwrap_async(
347        crate::client_helpers::request(
348            client,
349            crate::client_trait_common::Endpoint::Api,
350            crate::client_trait_common::Style::Rpc,
351            "team/legal_holds/create_policy",
352            arg,
353            None)
354    )
355}
356
357/// Gets a legal hold by Id. Note: Legal Holds is a paid add-on. Not all teams have the feature.
358/// Permission : Team member file access.
359pub fn legal_holds_get_policy(
360    client: &impl crate::client_trait::TeamAuthClient,
361    arg: &LegalHoldsGetPolicyArg,
362) -> Result<LegalHoldsGetPolicyResult, crate::Error<LegalHoldsGetPolicyError>> {
363    crate::client_helpers::unwrap_async(
364        crate::client_helpers::request(
365            client,
366            crate::client_trait_common::Endpoint::Api,
367            crate::client_trait_common::Style::Rpc,
368            "team/legal_holds/get_policy",
369            arg,
370            None)
371    )
372}
373
374/// List the file metadata that's under the hold. Note: Legal Holds is a paid add-on. Not all teams
375/// have the feature. Permission : Team member file access.
376pub fn legal_holds_list_held_revisions(
377    client: &impl crate::client_trait::TeamAuthClient,
378    arg: &LegalHoldsListHeldRevisionsArg,
379) -> Result<LegalHoldsListHeldRevisionResult, crate::Error<LegalHoldsListHeldRevisionsError>> {
380    crate::client_helpers::unwrap_async(
381        crate::client_helpers::request(
382            client,
383            crate::client_trait_common::Endpoint::Api,
384            crate::client_trait_common::Style::Rpc,
385            "team/legal_holds/list_held_revisions",
386            arg,
387            None)
388    )
389}
390
391/// Continue listing the file metadata that's under the hold. Note: Legal Holds is a paid add-on.
392/// Not all teams have the feature. Permission : Team member file access.
393pub fn legal_holds_list_held_revisions_continue(
394    client: &impl crate::client_trait::TeamAuthClient,
395    arg: &LegalHoldsListHeldRevisionsContinueArg,
396) -> Result<LegalHoldsListHeldRevisionResult, crate::Error<LegalHoldsListHeldRevisionsError>> {
397    crate::client_helpers::unwrap_async(
398        crate::client_helpers::request(
399            client,
400            crate::client_trait_common::Endpoint::Api,
401            crate::client_trait_common::Style::Rpc,
402            "team/legal_holds/list_held_revisions_continue",
403            arg,
404            None)
405    )
406}
407
408/// Lists legal holds on a team. Note: Legal Holds is a paid add-on. Not all teams have the feature.
409/// Permission : Team member file access.
410pub fn legal_holds_list_policies(
411    client: &impl crate::client_trait::TeamAuthClient,
412    arg: &LegalHoldsListPoliciesArg,
413) -> Result<LegalHoldsListPoliciesResult, crate::Error<LegalHoldsListPoliciesError>> {
414    crate::client_helpers::unwrap_async(
415        crate::client_helpers::request(
416            client,
417            crate::client_trait_common::Endpoint::Api,
418            crate::client_trait_common::Style::Rpc,
419            "team/legal_holds/list_policies",
420            arg,
421            None)
422    )
423}
424
425/// Releases a legal hold by Id. Note: Legal Holds is a paid add-on. Not all teams have the feature.
426/// Permission : Team member file access.
427pub fn legal_holds_release_policy(
428    client: &impl crate::client_trait::TeamAuthClient,
429    arg: &LegalHoldsPolicyReleaseArg,
430) -> Result<(), crate::Error<LegalHoldsPolicyReleaseError>> {
431    crate::client_helpers::unwrap_async(
432        crate::client_helpers::request(
433            client,
434            crate::client_trait_common::Endpoint::Api,
435            crate::client_trait_common::Style::Rpc,
436            "team/legal_holds/release_policy",
437            arg,
438            None)
439    )
440}
441
442/// Updates a legal hold. Note: Legal Holds is a paid add-on. Not all teams have the feature.
443/// Permission : Team member file access.
444pub fn legal_holds_update_policy(
445    client: &impl crate::client_trait::TeamAuthClient,
446    arg: &LegalHoldsPolicyUpdateArg,
447) -> Result<LegalHoldsPolicyUpdateResult, crate::Error<LegalHoldsPolicyUpdateError>> {
448    crate::client_helpers::unwrap_async(
449        crate::client_helpers::request(
450            client,
451            crate::client_trait_common::Endpoint::Api,
452            crate::client_trait_common::Style::Rpc,
453            "team/legal_holds/update_policy",
454            arg,
455            None)
456    )
457}
458
459/// List all linked applications of the team member. Note, this endpoint does not list any
460/// team-linked applications.
461pub fn linked_apps_list_member_linked_apps(
462    client: &impl crate::client_trait::TeamAuthClient,
463    arg: &ListMemberAppsArg,
464) -> Result<ListMemberAppsResult, crate::Error<ListMemberAppsError>> {
465    crate::client_helpers::unwrap_async(
466        crate::client_helpers::request(
467            client,
468            crate::client_trait_common::Endpoint::Api,
469            crate::client_trait_common::Style::Rpc,
470            "team/linked_apps/list_member_linked_apps",
471            arg,
472            None)
473    )
474}
475
476/// List all applications linked to the team members' accounts. Note, this endpoint does not list
477/// any team-linked applications.
478pub fn linked_apps_list_members_linked_apps(
479    client: &impl crate::client_trait::TeamAuthClient,
480    arg: &ListMembersAppsArg,
481) -> Result<ListMembersAppsResult, crate::Error<ListMembersAppsError>> {
482    crate::client_helpers::unwrap_async(
483        crate::client_helpers::request(
484            client,
485            crate::client_trait_common::Endpoint::Api,
486            crate::client_trait_common::Style::Rpc,
487            "team/linked_apps/list_members_linked_apps",
488            arg,
489            None)
490    )
491}
492
493/// List all applications linked to the team members' accounts. Note, this endpoint doesn't list any
494/// team-linked applications.
495#[deprecated]
496pub fn linked_apps_list_team_linked_apps(
497    client: &impl crate::client_trait::TeamAuthClient,
498    arg: &ListTeamAppsArg,
499) -> Result<ListTeamAppsResult, crate::Error<ListTeamAppsError>> {
500    crate::client_helpers::unwrap_async(
501        crate::client_helpers::request(
502            client,
503            crate::client_trait_common::Endpoint::Api,
504            crate::client_trait_common::Style::Rpc,
505            "team/linked_apps/list_team_linked_apps",
506            arg,
507            None)
508    )
509}
510
511/// Revoke a linked application of the team member.
512pub fn linked_apps_revoke_linked_app(
513    client: &impl crate::client_trait::TeamAuthClient,
514    arg: &RevokeLinkedApiAppArg,
515) -> Result<(), crate::Error<RevokeLinkedAppError>> {
516    crate::client_helpers::unwrap_async(
517        crate::client_helpers::request(
518            client,
519            crate::client_trait_common::Endpoint::Api,
520            crate::client_trait_common::Style::Rpc,
521            "team/linked_apps/revoke_linked_app",
522            arg,
523            None)
524    )
525}
526
527/// Revoke a list of linked applications of the team members.
528pub fn linked_apps_revoke_linked_app_batch(
529    client: &impl crate::client_trait::TeamAuthClient,
530    arg: &RevokeLinkedApiAppBatchArg,
531) -> Result<RevokeLinkedAppBatchResult, crate::Error<RevokeLinkedAppBatchError>> {
532    crate::client_helpers::unwrap_async(
533        crate::client_helpers::request(
534            client,
535            crate::client_trait_common::Endpoint::Api,
536            crate::client_trait_common::Style::Rpc,
537            "team/linked_apps/revoke_linked_app_batch",
538            arg,
539            None)
540    )
541}
542
543/// Add users to member space limits excluded users list.
544pub fn member_space_limits_excluded_users_add(
545    client: &impl crate::client_trait::TeamAuthClient,
546    arg: &ExcludedUsersUpdateArg,
547) -> Result<ExcludedUsersUpdateResult, crate::Error<ExcludedUsersUpdateError>> {
548    crate::client_helpers::unwrap_async(
549        crate::client_helpers::request(
550            client,
551            crate::client_trait_common::Endpoint::Api,
552            crate::client_trait_common::Style::Rpc,
553            "team/member_space_limits/excluded_users/add",
554            arg,
555            None)
556    )
557}
558
559/// List member space limits excluded users.
560pub fn member_space_limits_excluded_users_list(
561    client: &impl crate::client_trait::TeamAuthClient,
562    arg: &ExcludedUsersListArg,
563) -> Result<ExcludedUsersListResult, crate::Error<ExcludedUsersListError>> {
564    crate::client_helpers::unwrap_async(
565        crate::client_helpers::request(
566            client,
567            crate::client_trait_common::Endpoint::Api,
568            crate::client_trait_common::Style::Rpc,
569            "team/member_space_limits/excluded_users/list",
570            arg,
571            None)
572    )
573}
574
575/// Continue listing member space limits excluded users.
576pub fn member_space_limits_excluded_users_list_continue(
577    client: &impl crate::client_trait::TeamAuthClient,
578    arg: &ExcludedUsersListContinueArg,
579) -> Result<ExcludedUsersListResult, crate::Error<ExcludedUsersListContinueError>> {
580    crate::client_helpers::unwrap_async(
581        crate::client_helpers::request(
582            client,
583            crate::client_trait_common::Endpoint::Api,
584            crate::client_trait_common::Style::Rpc,
585            "team/member_space_limits/excluded_users/list/continue",
586            arg,
587            None)
588    )
589}
590
591/// Remove users from member space limits excluded users list.
592pub fn member_space_limits_excluded_users_remove(
593    client: &impl crate::client_trait::TeamAuthClient,
594    arg: &ExcludedUsersUpdateArg,
595) -> Result<ExcludedUsersUpdateResult, crate::Error<ExcludedUsersUpdateError>> {
596    crate::client_helpers::unwrap_async(
597        crate::client_helpers::request(
598            client,
599            crate::client_trait_common::Endpoint::Api,
600            crate::client_trait_common::Style::Rpc,
601            "team/member_space_limits/excluded_users/remove",
602            arg,
603            None)
604    )
605}
606
607/// Get users custom quota. A maximum of 1000 members can be specified in a single call. Note: to
608/// apply a custom space limit, a team admin needs to set a member space limit for the team first.
609/// (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space).
610pub fn member_space_limits_get_custom_quota(
611    client: &impl crate::client_trait::TeamAuthClient,
612    arg: &CustomQuotaUsersArg,
613) -> Result<Vec<CustomQuotaResult>, crate::Error<CustomQuotaError>> {
614    crate::client_helpers::unwrap_async(
615        crate::client_helpers::request(
616            client,
617            crate::client_trait_common::Endpoint::Api,
618            crate::client_trait_common::Style::Rpc,
619            "team/member_space_limits/get_custom_quota",
620            arg,
621            None)
622    )
623}
624
625/// Remove users custom quota. A maximum of 1000 members can be specified in a single call. Note: to
626/// apply a custom space limit, a team admin needs to set a member space limit for the team first.
627/// (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space).
628pub fn member_space_limits_remove_custom_quota(
629    client: &impl crate::client_trait::TeamAuthClient,
630    arg: &CustomQuotaUsersArg,
631) -> Result<Vec<RemoveCustomQuotaResult>, crate::Error<CustomQuotaError>> {
632    crate::client_helpers::unwrap_async(
633        crate::client_helpers::request(
634            client,
635            crate::client_trait_common::Endpoint::Api,
636            crate::client_trait_common::Style::Rpc,
637            "team/member_space_limits/remove_custom_quota",
638            arg,
639            None)
640    )
641}
642
643/// Set users custom quota. Custom quota has to be at least 2GB. A maximum of 1000 members can be
644/// specified in a single call. Note: to apply a custom space limit, a team admin needs to set a
645/// member space limit for the team first. (the team admin can check the settings here:
646/// https://www.dropbox.com/team/admin/settings/space).
647pub fn member_space_limits_set_custom_quota(
648    client: &impl crate::client_trait::TeamAuthClient,
649    arg: &SetCustomQuotaArg,
650) -> Result<Vec<CustomQuotaResult>, crate::Error<SetCustomQuotaError>> {
651    crate::client_helpers::unwrap_async(
652        crate::client_helpers::request(
653            client,
654            crate::client_trait_common::Endpoint::Api,
655            crate::client_trait_common::Style::Rpc,
656            "team/member_space_limits/set_custom_quota",
657            arg,
658            None)
659    )
660}
661
662/// Adds members to a team. Permission : Team member management A maximum of 20 members can be
663/// specified in a single call. If no Dropbox account exists with the email address specified, a new
664/// Dropbox account will be created with the given email address, and that account will be invited
665/// to the team. If a personal Dropbox account exists with the email address specified in the call,
666/// this call will create a placeholder Dropbox account for the user on the team and send an email
667/// inviting the user to migrate their existing personal account onto the team. Team member
668/// management apps are required to set an initial given_name and surname for a user to use in the
669/// team invitation and for 'Perform as team member' actions taken on the user before they become
670/// 'active'.
671pub fn members_add(
672    client: &impl crate::client_trait::TeamAuthClient,
673    arg: &MembersAddArg,
674) -> Result<MembersAddLaunch, crate::Error<crate::NoError>> {
675    crate::client_helpers::unwrap_async(
676        crate::client_helpers::request(
677            client,
678            crate::client_trait_common::Endpoint::Api,
679            crate::client_trait_common::Style::Rpc,
680            "team/members/add",
681            arg,
682            None)
683    )
684}
685
686/// Adds members to a team. Permission : Team member management A maximum of 20 members can be
687/// specified in a single call. If no Dropbox account exists with the email address specified, a new
688/// Dropbox account will be created with the given email address, and that account will be invited
689/// to the team. If a personal Dropbox account exists with the email address specified in the call,
690/// this call will create a placeholder Dropbox account for the user on the team and send an email
691/// inviting the user to migrate their existing personal account onto the team.
692pub fn members_add_v2(
693    client: &impl crate::client_trait::TeamAuthClient,
694    arg: &MembersAddV2Arg,
695) -> Result<MembersAddLaunchV2Result, crate::Error<crate::NoError>> {
696    crate::client_helpers::unwrap_async(
697        crate::client_helpers::request(
698            client,
699            crate::client_trait_common::Endpoint::Api,
700            crate::client_trait_common::Style::Rpc,
701            "team/members/add_v2",
702            arg,
703            None)
704    )
705}
706
707/// Once an async_job_id is returned from [`members_add()`](crate::team::members_add) , use this to
708/// poll the status of the asynchronous request. Permission : Team member management.
709pub fn members_add_job_status_get(
710    client: &impl crate::client_trait::TeamAuthClient,
711    arg: &crate::types::dbx_async::PollArg,
712) -> Result<MembersAddJobStatus, crate::Error<crate::types::dbx_async::PollError>> {
713    crate::client_helpers::unwrap_async(
714        crate::client_helpers::request(
715            client,
716            crate::client_trait_common::Endpoint::Api,
717            crate::client_trait_common::Style::Rpc,
718            "team/members/add/job_status/get",
719            arg,
720            None)
721    )
722}
723
724/// Once an async_job_id is returned from [`members_add_v2()`](crate::team::members_add_v2) , use
725/// this to poll the status of the asynchronous request. Permission : Team member management.
726pub fn members_add_job_status_get_v2(
727    client: &impl crate::client_trait::TeamAuthClient,
728    arg: &crate::types::dbx_async::PollArg,
729) -> Result<MembersAddJobStatusV2Result, crate::Error<crate::types::dbx_async::PollError>> {
730    crate::client_helpers::unwrap_async(
731        crate::client_helpers::request(
732            client,
733            crate::client_trait_common::Endpoint::Api,
734            crate::client_trait_common::Style::Rpc,
735            "team/members/add/job_status/get_v2",
736            arg,
737            None)
738    )
739}
740
741/// Launch a bulk suspend job. The server enforces a maximum of 500 members.
742pub fn members_bulk_suspend(
743    client: &impl crate::client_trait::TeamAuthClient,
744    arg: &BulkSuspendArg,
745) -> Result<crate::types::dbx_async::LaunchResultBase, crate::Error<BulkSuspendError>> {
746    crate::client_helpers::unwrap_async(
747        crate::client_helpers::request(
748            client,
749            crate::client_trait_common::Endpoint::Api,
750            crate::client_trait_common::Style::Rpc,
751            "team/members/bulk_suspend",
752            arg,
753            None)
754    )
755}
756
757/// Poll a previously launched bulk suspend job.
758pub fn members_bulk_suspend_job_status_check(
759    client: &impl crate::client_trait::TeamAuthClient,
760    arg: &crate::types::dbx_async::PollArg,
761) -> Result<BulkSuspendJobStatus, crate::Error<crate::types::dbx_async::PollError>> {
762    crate::client_helpers::unwrap_async(
763        crate::client_helpers::request(
764            client,
765            crate::client_trait_common::Endpoint::Api,
766            crate::client_trait_common::Style::Rpc,
767            "team/members/bulk_suspend/job_status/check",
768            arg,
769            None)
770    )
771}
772
773/// Permanently delete the files of a user who has been removed from the team. After permanent
774/// deletion, those files will not be available to be transferred to another team member. Permission
775/// : Team member management Exactly one of team_member_id, email, or external_id must be provided
776/// to identify the user account.
777pub fn members_delete_former_member_files(
778    client: &impl crate::client_trait::TeamAuthClient,
779    arg: &MembersFormerMemberArg,
780) -> Result<(), crate::Error<MembersDeleteFormerMemberFilesError>> {
781    crate::client_helpers::unwrap_async(
782        crate::client_helpers::request(
783            client,
784            crate::client_trait_common::Endpoint::Api,
785            crate::client_trait_common::Style::Rpc,
786            "team/members/delete_former_member_files",
787            arg,
788            None)
789    )
790}
791
792/// Deletes a team member's profile photo. Permission : Team member management.
793pub fn members_delete_profile_photo(
794    client: &impl crate::client_trait::TeamAuthClient,
795    arg: &MembersDeleteProfilePhotoArg,
796) -> Result<TeamMemberInfo, crate::Error<MembersDeleteProfilePhotoError>> {
797    crate::client_helpers::unwrap_async(
798        crate::client_helpers::request(
799            client,
800            crate::client_trait_common::Endpoint::Api,
801            crate::client_trait_common::Style::Rpc,
802            "team/members/delete_profile_photo",
803            arg,
804            None)
805    )
806}
807
808/// Deletes a team member's profile photo. Permission : Team member management.
809pub fn members_delete_profile_photo_v2(
810    client: &impl crate::client_trait::TeamAuthClient,
811    arg: &MembersDeleteProfilePhotoArg,
812) -> Result<TeamMemberInfoV2Result, crate::Error<MembersDeleteProfilePhotoError>> {
813    crate::client_helpers::unwrap_async(
814        crate::client_helpers::request(
815            client,
816            crate::client_trait_common::Endpoint::Api,
817            crate::client_trait_common::Style::Rpc,
818            "team/members/delete_profile_photo_v2",
819            arg,
820            None)
821    )
822}
823
824/// Get available TeamMemberRoles for the connected team. To be used with
825/// [`members_set_admin_permissions_v2()`](crate::team::members_set_admin_permissions_v2).
826/// Permission : Team member management.
827pub fn members_get_available_team_member_roles(
828    client: &impl crate::client_trait::TeamAuthClient,
829) -> Result<MembersGetAvailableTeamMemberRolesResult, crate::Error<crate::NoError>> {
830    crate::client_helpers::unwrap_async(
831        crate::client_helpers::request(
832            client,
833            crate::client_trait_common::Endpoint::Api,
834            crate::client_trait_common::Style::Rpc,
835            "team/members/get_available_team_member_roles",
836            &(),
837            None)
838    )
839}
840
841/// Returns information about multiple team members. Permission : Team information This endpoint
842/// will return [`MembersGetInfoItem::IdNotFound`], for IDs (or emails) that cannot be matched to a
843/// valid team member.
844pub fn members_get_info(
845    client: &impl crate::client_trait::TeamAuthClient,
846    arg: &MembersGetInfoArgs,
847) -> Result<MembersGetInfoResult, crate::Error<MembersGetInfoError>> {
848    crate::client_helpers::unwrap_async(
849        crate::client_helpers::request(
850            client,
851            crate::client_trait_common::Endpoint::Api,
852            crate::client_trait_common::Style::Rpc,
853            "team/members/get_info",
854            arg,
855            None)
856    )
857}
858
859/// Returns information about multiple team members. Permission : Team information This endpoint
860/// will return [`MembersGetInfoItem::IdNotFound`], for IDs (or emails) that cannot be matched to a
861/// valid team member.
862pub fn members_get_info_v2(
863    client: &impl crate::client_trait::TeamAuthClient,
864    arg: &MembersGetInfoV2Arg,
865) -> Result<MembersGetInfoV2Result, crate::Error<MembersGetInfoError>> {
866    crate::client_helpers::unwrap_async(
867        crate::client_helpers::request(
868            client,
869            crate::client_trait_common::Endpoint::Api,
870            crate::client_trait_common::Style::Rpc,
871            "team/members/get_info_v2",
872            arg,
873            None)
874    )
875}
876
877/// Lists members of a team. Permission : Team information.
878pub fn members_list(
879    client: &impl crate::client_trait::TeamAuthClient,
880    arg: &MembersListArg,
881) -> Result<MembersListResult, crate::Error<MembersListError>> {
882    crate::client_helpers::unwrap_async(
883        crate::client_helpers::request(
884            client,
885            crate::client_trait_common::Endpoint::Api,
886            crate::client_trait_common::Style::Rpc,
887            "team/members/list",
888            arg,
889            None)
890    )
891}
892
893/// Lists members of a team. Permission : Team information.
894pub fn members_list_v2(
895    client: &impl crate::client_trait::TeamAuthClient,
896    arg: &MembersListArg,
897) -> Result<MembersListV2Result, crate::Error<MembersListError>> {
898    crate::client_helpers::unwrap_async(
899        crate::client_helpers::request(
900            client,
901            crate::client_trait_common::Endpoint::Api,
902            crate::client_trait_common::Style::Rpc,
903            "team/members/list_v2",
904            arg,
905            None)
906    )
907}
908
909/// Once a cursor has been retrieved from [`members_list()`](crate::team::members_list), use this to
910/// paginate through all team members. Permission : Team information.
911pub fn members_list_continue(
912    client: &impl crate::client_trait::TeamAuthClient,
913    arg: &MembersListContinueArg,
914) -> Result<MembersListResult, crate::Error<MembersListContinueError>> {
915    crate::client_helpers::unwrap_async(
916        crate::client_helpers::request(
917            client,
918            crate::client_trait_common::Endpoint::Api,
919            crate::client_trait_common::Style::Rpc,
920            "team/members/list/continue",
921            arg,
922            None)
923    )
924}
925
926/// Once a cursor has been retrieved from [`members_list_v2()`](crate::team::members_list_v2), use
927/// this to paginate through all team members. Permission : Team information.
928pub fn members_list_continue_v2(
929    client: &impl crate::client_trait::TeamAuthClient,
930    arg: &MembersListContinueArg,
931) -> Result<MembersListV2Result, crate::Error<MembersListContinueError>> {
932    crate::client_helpers::unwrap_async(
933        crate::client_helpers::request(
934            client,
935            crate::client_trait_common::Endpoint::Api,
936            crate::client_trait_common::Style::Rpc,
937            "team/members/list/continue_v2",
938            arg,
939            None)
940    )
941}
942
943/// Moves removed member's files to a different member. This endpoint initiates an asynchronous job.
944/// To obtain the final result of the job, the client should periodically poll
945/// [`members_move_former_member_files_job_status_check()`](crate::team::members_move_former_member_files_job_status_check).
946/// Permission : Team member management.
947pub fn members_move_former_member_files(
948    client: &impl crate::client_trait::TeamAuthClient,
949    arg: &MembersDataTransferArg,
950) -> Result<crate::types::dbx_async::LaunchEmptyResult, crate::Error<MembersTransferFormerMembersFilesError>> {
951    crate::client_helpers::unwrap_async(
952        crate::client_helpers::request(
953            client,
954            crate::client_trait_common::Endpoint::Api,
955            crate::client_trait_common::Style::Rpc,
956            "team/members/move_former_member_files",
957            arg,
958            None)
959    )
960}
961
962/// Once an async_job_id is returned from
963/// [`members_move_former_member_files()`](crate::team::members_move_former_member_files) , use this
964/// to poll the status of the asynchronous request. Permission : Team member management.
965pub fn members_move_former_member_files_job_status_check(
966    client: &impl crate::client_trait::TeamAuthClient,
967    arg: &crate::types::dbx_async::PollArg,
968) -> Result<crate::types::dbx_async::PollEmptyResult, crate::Error<crate::types::dbx_async::PollError>> {
969    crate::client_helpers::unwrap_async(
970        crate::client_helpers::request(
971            client,
972            crate::client_trait_common::Endpoint::Api,
973            crate::client_trait_common::Style::Rpc,
974            "team/members/move_former_member_files/job_status/check",
975            arg,
976            None)
977    )
978}
979
980/// Recover a deleted member. Permission : Team member management Exactly one of team_member_id,
981/// email, or external_id must be provided to identify the user account.
982pub fn members_recover(
983    client: &impl crate::client_trait::TeamAuthClient,
984    arg: &MembersRecoverArg,
985) -> Result<(), crate::Error<MembersRecoverError>> {
986    crate::client_helpers::unwrap_async(
987        crate::client_helpers::request(
988            client,
989            crate::client_trait_common::Endpoint::Api,
990            crate::client_trait_common::Style::Rpc,
991            "team/members/recover",
992            arg,
993            None)
994    )
995}
996
997/// Removes a member from a team. Permission : Team member management Exactly one of team_member_id,
998/// email, or external_id must be provided to identify the user account. Accounts can be recovered
999/// via [`members_recover()`](crate::team::members_recover) for a 7 day period or until the account
1000/// has been permanently deleted or transferred to another account (whichever comes first). Calling
1001/// [`members_add()`](crate::team::members_add) while a user is still recoverable on your team will
1002/// return with [`MemberAddResult::UserAlreadyOnTeam`]. Accounts can have their files transferred
1003/// via the admin console for a limited time, based on the version history length associated with
1004/// the team (180 days for most teams). Accounts can have their stacks transferred through the admin
1005/// console. This only transfers stacks that they have created. This endpoint may initiate an
1006/// asynchronous job. To obtain the final result of the job, the client should periodically poll
1007/// [`members_remove_job_status_get()`](crate::team::members_remove_job_status_get).
1008pub fn members_remove(
1009    client: &impl crate::client_trait::TeamAuthClient,
1010    arg: &MembersRemoveArg,
1011) -> Result<crate::types::dbx_async::LaunchEmptyResult, crate::Error<MembersRemoveError>> {
1012    crate::client_helpers::unwrap_async(
1013        crate::client_helpers::request(
1014            client,
1015            crate::client_trait_common::Endpoint::Api,
1016            crate::client_trait_common::Style::Rpc,
1017            "team/members/remove",
1018            arg,
1019            None)
1020    )
1021}
1022
1023/// Once an async_job_id is returned from [`members_remove()`](crate::team::members_remove) , use
1024/// this to poll the status of the asynchronous request. Permission : Team member management.
1025pub fn members_remove_job_status_get(
1026    client: &impl crate::client_trait::TeamAuthClient,
1027    arg: &crate::types::dbx_async::PollArg,
1028) -> Result<crate::types::dbx_async::PollEmptyResult, crate::Error<crate::types::dbx_async::PollError>> {
1029    crate::client_helpers::unwrap_async(
1030        crate::client_helpers::request(
1031            client,
1032            crate::client_trait_common::Endpoint::Api,
1033            crate::client_trait_common::Style::Rpc,
1034            "team/members/remove/job_status/get",
1035            arg,
1036            None)
1037    )
1038}
1039
1040/// Add secondary emails to users. Permission : Team member management. Emails that are on verified
1041/// domains will be verified automatically. For each email address not on a verified domain a
1042/// verification email will be sent.
1043pub fn members_secondary_emails_add(
1044    client: &impl crate::client_trait::TeamAuthClient,
1045    arg: &AddSecondaryEmailsArg,
1046) -> Result<AddSecondaryEmailsResult, crate::Error<AddSecondaryEmailsError>> {
1047    crate::client_helpers::unwrap_async(
1048        crate::client_helpers::request(
1049            client,
1050            crate::client_trait_common::Endpoint::Api,
1051            crate::client_trait_common::Style::Rpc,
1052            "team/members/secondary_emails/add",
1053            arg,
1054            None)
1055    )
1056}
1057
1058/// Delete secondary emails from users Permission : Team member management. Users will be notified
1059/// of deletions of verified secondary emails at both the secondary email and their primary email.
1060pub fn members_secondary_emails_delete(
1061    client: &impl crate::client_trait::TeamAuthClient,
1062    arg: &DeleteSecondaryEmailsArg,
1063) -> Result<DeleteSecondaryEmailsResult, crate::Error<crate::NoError>> {
1064    crate::client_helpers::unwrap_async(
1065        crate::client_helpers::request(
1066            client,
1067            crate::client_trait_common::Endpoint::Api,
1068            crate::client_trait_common::Style::Rpc,
1069            "team/members/secondary_emails/delete",
1070            arg,
1071            None)
1072    )
1073}
1074
1075/// Resend secondary email verification emails. Permission : Team member management.
1076pub fn members_secondary_emails_resend_verification_emails(
1077    client: &impl crate::client_trait::TeamAuthClient,
1078    arg: &ResendVerificationEmailArg,
1079) -> Result<ResendVerificationEmailResult, crate::Error<crate::NoError>> {
1080    crate::client_helpers::unwrap_async(
1081        crate::client_helpers::request(
1082            client,
1083            crate::client_trait_common::Endpoint::Api,
1084            crate::client_trait_common::Style::Rpc,
1085            "team/members/secondary_emails/resend_verification_emails",
1086            arg,
1087            None)
1088    )
1089}
1090
1091/// Sends welcome email to pending team member. Permission : Team member management Exactly one of
1092/// team_member_id, email, or external_id must be provided to identify the user account. No-op if
1093/// team member is not pending.
1094pub fn members_send_welcome_email(
1095    client: &impl crate::client_trait::TeamAuthClient,
1096    arg: &UserSelectorArg,
1097) -> Result<(), crate::Error<MembersSendWelcomeError>> {
1098    crate::client_helpers::unwrap_async(
1099        crate::client_helpers::request(
1100            client,
1101            crate::client_trait_common::Endpoint::Api,
1102            crate::client_trait_common::Style::Rpc,
1103            "team/members/send_welcome_email",
1104            arg,
1105            None)
1106    )
1107}
1108
1109/// Updates a team member's permissions. Permission : Team member management.
1110pub fn members_set_admin_permissions(
1111    client: &impl crate::client_trait::TeamAuthClient,
1112    arg: &MembersSetPermissionsArg,
1113) -> Result<MembersSetPermissionsResult, crate::Error<MembersSetPermissionsError>> {
1114    crate::client_helpers::unwrap_async(
1115        crate::client_helpers::request(
1116            client,
1117            crate::client_trait_common::Endpoint::Api,
1118            crate::client_trait_common::Style::Rpc,
1119            "team/members/set_admin_permissions",
1120            arg,
1121            None)
1122    )
1123}
1124
1125/// Updates a team member's permissions. Permission : Team member management.
1126pub fn members_set_admin_permissions_v2(
1127    client: &impl crate::client_trait::TeamAuthClient,
1128    arg: &MembersSetPermissions2Arg,
1129) -> Result<MembersSetPermissions2Result, crate::Error<MembersSetPermissions2Error>> {
1130    crate::client_helpers::unwrap_async(
1131        crate::client_helpers::request(
1132            client,
1133            crate::client_trait_common::Endpoint::Api,
1134            crate::client_trait_common::Style::Rpc,
1135            "team/members/set_admin_permissions_v2",
1136            arg,
1137            None)
1138    )
1139}
1140
1141/// Updates a team member's profile. Permission : Team member management.
1142pub fn members_set_profile(
1143    client: &impl crate::client_trait::TeamAuthClient,
1144    arg: &MembersSetProfileArg,
1145) -> Result<TeamMemberInfo, crate::Error<MembersSetProfileError>> {
1146    crate::client_helpers::unwrap_async(
1147        crate::client_helpers::request(
1148            client,
1149            crate::client_trait_common::Endpoint::Api,
1150            crate::client_trait_common::Style::Rpc,
1151            "team/members/set_profile",
1152            arg,
1153            None)
1154    )
1155}
1156
1157/// Updates a team member's profile. Permission : Team member management.
1158pub fn members_set_profile_v2(
1159    client: &impl crate::client_trait::TeamAuthClient,
1160    arg: &MembersSetProfileArg,
1161) -> Result<TeamMemberInfoV2Result, crate::Error<MembersSetProfileError>> {
1162    crate::client_helpers::unwrap_async(
1163        crate::client_helpers::request(
1164            client,
1165            crate::client_trait_common::Endpoint::Api,
1166            crate::client_trait_common::Style::Rpc,
1167            "team/members/set_profile_v2",
1168            arg,
1169            None)
1170    )
1171}
1172
1173/// Updates a team member's profile photo. Permission : Team member management.
1174pub fn members_set_profile_photo(
1175    client: &impl crate::client_trait::TeamAuthClient,
1176    arg: &MembersSetProfilePhotoArg,
1177) -> Result<TeamMemberInfo, crate::Error<MembersSetProfilePhotoError>> {
1178    crate::client_helpers::unwrap_async(
1179        crate::client_helpers::request(
1180            client,
1181            crate::client_trait_common::Endpoint::Api,
1182            crate::client_trait_common::Style::Rpc,
1183            "team/members/set_profile_photo",
1184            arg,
1185            None)
1186    )
1187}
1188
1189/// Updates a team member's profile photo. Permission : Team member management.
1190pub fn members_set_profile_photo_v2(
1191    client: &impl crate::client_trait::TeamAuthClient,
1192    arg: &MembersSetProfilePhotoArg,
1193) -> Result<TeamMemberInfoV2Result, crate::Error<MembersSetProfilePhotoError>> {
1194    crate::client_helpers::unwrap_async(
1195        crate::client_helpers::request(
1196            client,
1197            crate::client_trait_common::Endpoint::Api,
1198            crate::client_trait_common::Style::Rpc,
1199            "team/members/set_profile_photo_v2",
1200            arg,
1201            None)
1202    )
1203}
1204
1205/// Suspend a member from a team. Permission : Team member management Exactly one of team_member_id,
1206/// email, or external_id must be provided to identify the user account.
1207pub fn members_suspend(
1208    client: &impl crate::client_trait::TeamAuthClient,
1209    arg: &MembersDeactivateArg,
1210) -> Result<(), crate::Error<MembersSuspendError>> {
1211    crate::client_helpers::unwrap_async(
1212        crate::client_helpers::request(
1213            client,
1214            crate::client_trait_common::Endpoint::Api,
1215            crate::client_trait_common::Style::Rpc,
1216            "team/members/suspend",
1217            arg,
1218            None)
1219    )
1220}
1221
1222/// Unsuspend a member from a team. Permission : Team member management Exactly one of
1223/// team_member_id, email, or external_id must be provided to identify the user account.
1224pub fn members_unsuspend(
1225    client: &impl crate::client_trait::TeamAuthClient,
1226    arg: &MembersUnsuspendArg,
1227) -> Result<(), crate::Error<MembersUnsuspendError>> {
1228    crate::client_helpers::unwrap_async(
1229        crate::client_helpers::request(
1230            client,
1231            crate::client_trait_common::Endpoint::Api,
1232            crate::client_trait_common::Style::Rpc,
1233            "team/members/unsuspend",
1234            arg,
1235            None)
1236    )
1237}
1238
1239/// Returns a list of all team-accessible namespaces. This list includes team folders, shared
1240/// folders containing team members, team members' home namespaces, and team members' app folders.
1241/// Home namespaces and app folders are always owned by this team or members of the team, but shared
1242/// folders may be owned by other users or other teams. Duplicates may occur in the list.
1243pub fn namespaces_list(
1244    client: &impl crate::client_trait::TeamAuthClient,
1245    arg: &TeamNamespacesListArg,
1246) -> Result<TeamNamespacesListResult, crate::Error<TeamNamespacesListError>> {
1247    crate::client_helpers::unwrap_async(
1248        crate::client_helpers::request(
1249            client,
1250            crate::client_trait_common::Endpoint::Api,
1251            crate::client_trait_common::Style::Rpc,
1252            "team/namespaces/list",
1253            arg,
1254            None)
1255    )
1256}
1257
1258/// Once a cursor has been retrieved from [`namespaces_list()`](crate::team::namespaces_list), use
1259/// this to paginate through all team-accessible namespaces. Duplicates may occur in the list.
1260pub fn namespaces_list_continue(
1261    client: &impl crate::client_trait::TeamAuthClient,
1262    arg: &TeamNamespacesListContinueArg,
1263) -> Result<TeamNamespacesListResult, crate::Error<TeamNamespacesListContinueError>> {
1264    crate::client_helpers::unwrap_async(
1265        crate::client_helpers::request(
1266            client,
1267            crate::client_trait_common::Endpoint::Api,
1268            crate::client_trait_common::Style::Rpc,
1269            "team/namespaces/list/continue",
1270            arg,
1271            None)
1272    )
1273}
1274
1275/// Permission : Team member file access.
1276#[deprecated]
1277pub fn properties_template_add(
1278    client: &impl crate::client_trait::TeamAuthClient,
1279    arg: &crate::types::file_properties::AddTemplateArg,
1280) -> Result<crate::types::file_properties::AddTemplateResult, crate::Error<crate::types::file_properties::ModifyTemplateError>> {
1281    crate::client_helpers::unwrap_async(
1282        crate::client_helpers::request(
1283            client,
1284            crate::client_trait_common::Endpoint::Api,
1285            crate::client_trait_common::Style::Rpc,
1286            "team/properties/template/add",
1287            arg,
1288            None)
1289    )
1290}
1291
1292/// Permission : Team member file access. The scope for the route is files.team_metadata.write.
1293#[deprecated]
1294pub fn properties_template_get(
1295    client: &impl crate::client_trait::TeamAuthClient,
1296    arg: &crate::types::file_properties::GetTemplateArg,
1297) -> Result<crate::types::file_properties::GetTemplateResult, crate::Error<crate::types::file_properties::TemplateError>> {
1298    crate::client_helpers::unwrap_async(
1299        crate::client_helpers::request(
1300            client,
1301            crate::client_trait_common::Endpoint::Api,
1302            crate::client_trait_common::Style::Rpc,
1303            "team/properties/template/get",
1304            arg,
1305            None)
1306    )
1307}
1308
1309/// Retrieves reporting data about a team's user activity. Deprecated: Will be removed on July 1st
1310/// 2021.
1311#[deprecated]
1312pub fn reports_get_activity(
1313    client: &impl crate::client_trait::TeamAuthClient,
1314    arg: &DateRange,
1315) -> Result<GetActivityReport, crate::Error<DateRangeError>> {
1316    crate::client_helpers::unwrap_async(
1317        crate::client_helpers::request(
1318            client,
1319            crate::client_trait_common::Endpoint::Api,
1320            crate::client_trait_common::Style::Rpc,
1321            "team/reports/get_activity",
1322            arg,
1323            None)
1324    )
1325}
1326
1327/// Retrieves reporting data about a team's linked devices. Deprecated: Will be removed on July 1st
1328/// 2021.
1329#[deprecated]
1330pub fn reports_get_devices(
1331    client: &impl crate::client_trait::TeamAuthClient,
1332    arg: &DateRange,
1333) -> Result<GetDevicesReport, crate::Error<DateRangeError>> {
1334    crate::client_helpers::unwrap_async(
1335        crate::client_helpers::request(
1336            client,
1337            crate::client_trait_common::Endpoint::Api,
1338            crate::client_trait_common::Style::Rpc,
1339            "team/reports/get_devices",
1340            arg,
1341            None)
1342    )
1343}
1344
1345/// Retrieves reporting data about a team's membership. Deprecated: Will be removed on July 1st
1346/// 2021.
1347#[deprecated]
1348pub fn reports_get_membership(
1349    client: &impl crate::client_trait::TeamAuthClient,
1350    arg: &DateRange,
1351) -> Result<GetMembershipReport, crate::Error<DateRangeError>> {
1352    crate::client_helpers::unwrap_async(
1353        crate::client_helpers::request(
1354            client,
1355            crate::client_trait_common::Endpoint::Api,
1356            crate::client_trait_common::Style::Rpc,
1357            "team/reports/get_membership",
1358            arg,
1359            None)
1360    )
1361}
1362
1363/// Retrieves reporting data about a team's storage usage. Deprecated: Will be removed on July 1st
1364/// 2021.
1365#[deprecated]
1366pub fn reports_get_storage(
1367    client: &impl crate::client_trait::TeamAuthClient,
1368    arg: &DateRange,
1369) -> Result<GetStorageReport, crate::Error<DateRangeError>> {
1370    crate::client_helpers::unwrap_async(
1371        crate::client_helpers::request(
1372            client,
1373            crate::client_trait_common::Endpoint::Api,
1374            crate::client_trait_common::Style::Rpc,
1375            "team/reports/get_storage",
1376            arg,
1377            None)
1378    )
1379}
1380
1381/// Endpoint adds Approve List entries. Changes are effective immediately. Changes are committed in
1382/// transaction. In case of single validation error - all entries are rejected. Valid domains
1383/// (RFC-1034/5) and emails (RFC-5322/822) are accepted. Added entries cannot overflow limit of
1384/// 10000 entries per team. Maximum 100 entries per call is allowed.
1385///
1386/// # Stability
1387/// *PREVIEW*: This function may change or disappear without notice.
1388#[cfg(feature = "unstable")]
1389#[cfg_attr(docsrs, doc(cfg(feature = "unstable")))]
1390pub fn sharing_allowlist_add(
1391    client: &impl crate::client_trait::TeamAuthClient,
1392    arg: &SharingAllowlistAddArgs,
1393) -> Result<SharingAllowlistAddResponse, crate::Error<SharingAllowlistAddError>> {
1394    crate::client_helpers::unwrap_async(
1395        crate::client_helpers::request(
1396            client,
1397            crate::client_trait_common::Endpoint::Api,
1398            crate::client_trait_common::Style::Rpc,
1399            "team/sharing_allowlist/add",
1400            arg,
1401            None)
1402    )
1403}
1404
1405/// Lists Approve List entries for given team, from newest to oldest, returning up to `limit`
1406/// entries at a time. If there are more than `limit` entries associated with the current team, more
1407/// can be fetched by passing the returned `cursor` to
1408/// [`sharing_allowlist_list_continue()`](crate::team::sharing_allowlist_list_continue).
1409///
1410/// # Stability
1411/// *PREVIEW*: This function may change or disappear without notice.
1412#[cfg(feature = "unstable")]
1413#[cfg_attr(docsrs, doc(cfg(feature = "unstable")))]
1414pub fn sharing_allowlist_list(
1415    client: &impl crate::client_trait::TeamAuthClient,
1416    arg: &SharingAllowlistListArg,
1417) -> Result<SharingAllowlistListResponse, crate::Error<SharingAllowlistListError>> {
1418    crate::client_helpers::unwrap_async(
1419        crate::client_helpers::request(
1420            client,
1421            crate::client_trait_common::Endpoint::Api,
1422            crate::client_trait_common::Style::Rpc,
1423            "team/sharing_allowlist/list",
1424            arg,
1425            None)
1426    )
1427}
1428
1429/// Lists entries associated with given team, starting from a the cursor. See
1430/// [`sharing_allowlist_list()`](crate::team::sharing_allowlist_list).
1431///
1432/// # Stability
1433/// *PREVIEW*: This function may change or disappear without notice.
1434#[cfg(feature = "unstable")]
1435#[cfg_attr(docsrs, doc(cfg(feature = "unstable")))]
1436pub fn sharing_allowlist_list_continue(
1437    client: &impl crate::client_trait::TeamAuthClient,
1438    arg: &SharingAllowlistListContinueArg,
1439) -> Result<SharingAllowlistListResponse, crate::Error<SharingAllowlistListContinueError>> {
1440    crate::client_helpers::unwrap_async(
1441        crate::client_helpers::request(
1442            client,
1443            crate::client_trait_common::Endpoint::Api,
1444            crate::client_trait_common::Style::Rpc,
1445            "team/sharing_allowlist/list/continue",
1446            arg,
1447            None)
1448    )
1449}
1450
1451/// Endpoint removes Approve List entries. Changes are effective immediately. Changes are committed
1452/// in transaction. In case of single validation error - all entries are rejected. Valid domains
1453/// (RFC-1034/5) and emails (RFC-5322/822) are accepted. Entries being removed have to be present on
1454/// the list. Maximum 1000 entries per call is allowed.
1455///
1456/// # Stability
1457/// *PREVIEW*: This function may change or disappear without notice.
1458#[cfg(feature = "unstable")]
1459#[cfg_attr(docsrs, doc(cfg(feature = "unstable")))]
1460pub fn sharing_allowlist_remove(
1461    client: &impl crate::client_trait::TeamAuthClient,
1462    arg: &SharingAllowlistRemoveArgs,
1463) -> Result<SharingAllowlistRemoveResponse, crate::Error<SharingAllowlistRemoveError>> {
1464    crate::client_helpers::unwrap_async(
1465        crate::client_helpers::request(
1466            client,
1467            crate::client_trait_common::Endpoint::Api,
1468            crate::client_trait_common::Style::Rpc,
1469            "team/sharing_allowlist/remove",
1470            arg,
1471            None)
1472    )
1473}
1474
1475/// Sets an archived team folder's status to active. Permission : Team member file access.
1476pub fn team_folder_activate(
1477    client: &impl crate::client_trait::TeamAuthClient,
1478    arg: &TeamFolderIdArg,
1479) -> Result<TeamFolderMetadata, crate::Error<TeamFolderActivateError>> {
1480    crate::client_helpers::unwrap_async(
1481        crate::client_helpers::request(
1482            client,
1483            crate::client_trait_common::Endpoint::Api,
1484            crate::client_trait_common::Style::Rpc,
1485            "team/team_folder/activate",
1486            arg,
1487            None)
1488    )
1489}
1490
1491/// Sets an active team folder's status to archived and removes all folder and file members. This
1492/// endpoint cannot be used for teams that have a shared team space. This route will either finish
1493/// synchronously, or return a job ID and do the async archive job in background. Please use
1494/// team_folder/archive/check to check the job status. Permission : Team member file access.
1495pub fn team_folder_archive(
1496    client: &impl crate::client_trait::TeamAuthClient,
1497    arg: &TeamFolderArchiveArg,
1498) -> Result<TeamFolderArchiveLaunch, crate::Error<TeamFolderArchiveError>> {
1499    crate::client_helpers::unwrap_async(
1500        crate::client_helpers::request(
1501            client,
1502            crate::client_trait_common::Endpoint::Api,
1503            crate::client_trait_common::Style::Rpc,
1504            "team/team_folder/archive",
1505            arg,
1506            None)
1507    )
1508}
1509
1510/// Returns the status of an asynchronous job for archiving a team folder. The job may show '.tag'
1511/// as complete, but the team folder could still be in the process of archiving (indicated by
1512/// [`TeamFolderMetadata::status`](TeamFolderMetadata) with 'archive_in_progress'). To confirm that
1513/// the team folder is fully archived, check the field
1514/// [`TeamFolderMetadata::status`](TeamFolderMetadata) in the response for the value 'archived'.
1515/// Permission : Team member file access.
1516pub fn team_folder_archive_check(
1517    client: &impl crate::client_trait::TeamAuthClient,
1518    arg: &crate::types::dbx_async::PollArg,
1519) -> Result<TeamFolderArchiveJobStatus, crate::Error<crate::types::dbx_async::PollError>> {
1520    crate::client_helpers::unwrap_async(
1521        crate::client_helpers::request(
1522            client,
1523            crate::client_trait_common::Endpoint::Api,
1524            crate::client_trait_common::Style::Rpc,
1525            "team/team_folder/archive/check",
1526            arg,
1527            None)
1528    )
1529}
1530
1531/// Creates a new, active, team folder with no members. This endpoint can only be used for teams
1532/// that do not already have a shared team space. Permission : Team member file access.
1533pub fn team_folder_create(
1534    client: &impl crate::client_trait::TeamAuthClient,
1535    arg: &TeamFolderCreateArg,
1536) -> Result<TeamFolderMetadata, crate::Error<TeamFolderCreateError>> {
1537    crate::client_helpers::unwrap_async(
1538        crate::client_helpers::request(
1539            client,
1540            crate::client_trait_common::Endpoint::Api,
1541            crate::client_trait_common::Style::Rpc,
1542            "team/team_folder/create",
1543            arg,
1544            None)
1545    )
1546}
1547
1548/// Retrieves metadata for team folders. Permission : Team member file access.
1549pub fn team_folder_get_info(
1550    client: &impl crate::client_trait::TeamAuthClient,
1551    arg: &TeamFolderIdListArg,
1552) -> Result<Vec<TeamFolderGetInfoItem>, crate::Error<crate::NoError>> {
1553    crate::client_helpers::unwrap_async(
1554        crate::client_helpers::request(
1555            client,
1556            crate::client_trait_common::Endpoint::Api,
1557            crate::client_trait_common::Style::Rpc,
1558            "team/team_folder/get_info",
1559            arg,
1560            None)
1561    )
1562}
1563
1564/// Lists all team folders. Permission : Team member file access.
1565pub fn team_folder_list(
1566    client: &impl crate::client_trait::TeamAuthClient,
1567    arg: &TeamFolderListArg,
1568) -> Result<TeamFolderListResult, crate::Error<TeamFolderListError>> {
1569    crate::client_helpers::unwrap_async(
1570        crate::client_helpers::request(
1571            client,
1572            crate::client_trait_common::Endpoint::Api,
1573            crate::client_trait_common::Style::Rpc,
1574            "team/team_folder/list",
1575            arg,
1576            None)
1577    )
1578}
1579
1580/// Once a cursor has been retrieved from [`team_folder_list()`](crate::team::team_folder_list), use
1581/// this to paginate through all team folders. Permission : Team member file access.
1582pub fn team_folder_list_continue(
1583    client: &impl crate::client_trait::TeamAuthClient,
1584    arg: &TeamFolderListContinueArg,
1585) -> Result<TeamFolderListResult, crate::Error<TeamFolderListContinueError>> {
1586    crate::client_helpers::unwrap_async(
1587        crate::client_helpers::request(
1588            client,
1589            crate::client_trait_common::Endpoint::Api,
1590            crate::client_trait_common::Style::Rpc,
1591            "team/team_folder/list/continue",
1592            arg,
1593            None)
1594    )
1595}
1596
1597/// Permanently deletes an archived team folder. This endpoint cannot be used for teams that have a
1598/// shared team space. Permission : Team member file access.
1599pub fn team_folder_permanently_delete(
1600    client: &impl crate::client_trait::TeamAuthClient,
1601    arg: &TeamFolderIdArg,
1602) -> Result<(), crate::Error<TeamFolderPermanentlyDeleteError>> {
1603    crate::client_helpers::unwrap_async(
1604        crate::client_helpers::request(
1605            client,
1606            crate::client_trait_common::Endpoint::Api,
1607            crate::client_trait_common::Style::Rpc,
1608            "team/team_folder/permanently_delete",
1609            arg,
1610            None)
1611    )
1612}
1613
1614/// Changes an active team folder's name. Permission : Team member file access.
1615pub fn team_folder_rename(
1616    client: &impl crate::client_trait::TeamAuthClient,
1617    arg: &TeamFolderRenameArg,
1618) -> Result<TeamFolderMetadata, crate::Error<TeamFolderRenameError>> {
1619    crate::client_helpers::unwrap_async(
1620        crate::client_helpers::request(
1621            client,
1622            crate::client_trait_common::Endpoint::Api,
1623            crate::client_trait_common::Style::Rpc,
1624            "team/team_folder/rename",
1625            arg,
1626            None)
1627    )
1628}
1629
1630/// Sets an inactive team folder's status to active. Permission: Team member file access.
1631///
1632/// # Stability
1633/// *PREVIEW*: This function may change or disappear without notice.
1634#[cfg(feature = "unstable")]
1635#[cfg_attr(docsrs, doc(cfg(feature = "unstable")))]
1636pub fn team_folder_restore(
1637    client: &impl crate::client_trait::TeamAuthClient,
1638    arg: &TeamFolderIdArg,
1639) -> Result<TeamFolderMetadata, crate::Error<TeamFolderRestoreError>> {
1640    crate::client_helpers::unwrap_async(
1641        crate::client_helpers::request(
1642            client,
1643            crate::client_trait_common::Endpoint::Api,
1644            crate::client_trait_common::Style::Rpc,
1645            "team/team_folder/restore",
1646            arg,
1647            None)
1648    )
1649}
1650
1651/// Updates the sync settings on a team folder or its contents.  Use of this endpoint requires that
1652/// the team has team selective sync enabled.
1653pub fn team_folder_update_sync_settings(
1654    client: &impl crate::client_trait::TeamAuthClient,
1655    arg: &TeamFolderUpdateSyncSettingsArg,
1656) -> Result<TeamFolderMetadata, crate::Error<TeamFolderUpdateSyncSettingsError>> {
1657    crate::client_helpers::unwrap_async(
1658        crate::client_helpers::request(
1659            client,
1660            crate::client_trait_common::Endpoint::Api,
1661            crate::client_trait_common::Style::Rpc,
1662            "team/team_folder/update_sync_settings",
1663            arg,
1664            None)
1665    )
1666}
1667
1668/// Returns the member profile of the admin who generated the team access token used to make the
1669/// call.
1670pub fn token_get_authenticated_admin(
1671    client: &impl crate::client_trait::TeamAuthClient,
1672) -> Result<TokenGetAuthenticatedAdminResult, crate::Error<TokenGetAuthenticatedAdminError>> {
1673    crate::client_helpers::unwrap_async(
1674        crate::client_helpers::request(
1675            client,
1676            crate::client_trait_common::Endpoint::Api,
1677            crate::client_trait_common::Style::Rpc,
1678            "team/token/get_authenticated_admin",
1679            &(),
1680            None)
1681    )
1682}
1683