1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186 |
- namespace sharing
- import async
- import common
- import files
- import team_common
- import users_common
- alias DropboxId = String(min_length=1)
- union AccessLevel
- "Defines the access levels for collaborators."
- owner
- "The collaborator is the owner of the shared folder. Owners can
- view and edit the shared folder as well as set the folder's
- policies using :route:`update_folder_policy`."
- editor
- "The collaborator can both view and edit the shared folder."
- viewer
- "The collaborator can only view the shared folder."
- viewer_no_comment
- "The collaborator can only view the shared folder and does
- not have any access to comments."
- struct FolderPolicy
- "A set of policies governing membership and privileges for a shared
- folder."
- member_policy MemberPolicy?
- "Who can be a member of this shared folder, as set on the folder itself.
- The effective policy may differ from this value if the team-wide policy
- is more restrictive. Present only if the folder is owned by a team."
- resolved_member_policy MemberPolicy?
- "Who can be a member of this shared folder, taking into account both the
- folder and the team-wide policy. This value may differ from that of
- member_policy if the team-wide policy is more restrictive than the folder
- policy. Present only if the folder is owned by a team."
- acl_update_policy AclUpdatePolicy
- "Who can add and remove members from this shared folder."
- shared_link_policy SharedLinkPolicy
- "Who links can be shared with."
- viewer_info_policy ViewerInfoPolicy?
- "Who can enable/disable viewer info for this shared folder."
- example default
- member_policy = anyone
- resolved_member_policy = team
- acl_update_policy = owner
- shared_link_policy = anyone
- union FolderAction
- "Actions that may be taken on shared folders."
- change_options
- "Change folder options, such as who can be invited to join the folder."
- disable_viewer_info
- "Disable viewer information for this folder."
- edit_contents
- "Change or edit contents of the folder."
- enable_viewer_info
- "Enable viewer information on the folder."
- invite_editor
- "Invite a user or group to join the folder with read and write permission."
- invite_viewer
- "Invite a user or group to join the folder with read permission."
- invite_viewer_no_comment
- "Invite a user or group to join the folder with read permission but no comment permissions."
- relinquish_membership
- "Relinquish one's own membership in the folder."
- unmount
- "Unmount the folder."
- unshare
- "Stop sharing this folder."
- leave_a_copy
- "Keep a copy of the contents upon leaving or being kicked from the folder."
- share_link
- "This action is deprecated. Use create_link instead."
- create_link
- "Create a shared link for folder."
- struct FolderPermission
- "Whether the user is allowed to take the action on the shared folder."
- action FolderAction
- "The action that the user may wish to take on the folder."
- allow Boolean
- "True if the user is allowed to take the action."
- reason PermissionDeniedReason?
- "The reason why the user is denied the permission. Not present if the action
- is allowed, or if no reason is available."
- example default
- action = edit_contents
- allow = false
- reason = user_not_same_team_as_owner
- union MemberPolicy
- "Policy governing who can be a member of a shared folder. Only applicable
- to folders owned by a user on a team."
- team
- "Only a teammate can become a member."
- anyone
- "Anyone can become a member."
- union MemberAction
- "Actions that may be taken on members of a shared folder."
- leave_a_copy
- "Allow the member to keep a copy of the folder when removing."
- make_editor
- "Make the member an editor of the folder."
- make_owner
- "Make the member an owner of the folder."
- make_viewer
- "Make the member a viewer of the folder."
- make_viewer_no_comment
- "Make the member a viewer of the folder without commenting permissions."
- remove
- "Remove the member from the folder."
- struct MemberPermission
- "Whether the user is allowed to take the action on the associated member."
- action MemberAction
- "The action that the user may wish to take on the member."
- allow Boolean
- "True if the user is allowed to take the action."
- reason PermissionDeniedReason?
- "The reason why the user is denied the permission. Not present if the action is allowed."
- example default
- action = make_owner
- allow = false
- reason = target_is_indirect_member
- union PermissionDeniedReason
- "Possible reasons the user is denied a permission."
- user_not_same_team_as_owner
- "User is not on the same team as the folder owner."
- user_not_allowed_by_owner
- "User is prohibited by the owner from taking the action."
- target_is_indirect_member
- "Target is indirectly a member of the folder, for example by being part of a group."
- target_is_owner
- "Target is the owner of the folder."
- target_is_self
- "Target is the user itself."
- target_not_active
- "Target is not an active member of the team."
- folder_is_limited_team_folder
- "Folder is team folder for a limited team."
- owner_not_on_team
- "The content owner needs to be on a Dropbox team to perform this action."
- permission_denied
- "The user does not have permission to perform this action on the link."
- restricted_by_team
- "The user's team policy prevents performing this action on the link."
- user_account_type
- "The user's account type does not support this action."
- user_not_on_team
- "The user needs to be on a Dropbox team to perform this action."
- folder_is_inside_shared_folder
- "Folder is inside of another shared folder."
- union AclUpdatePolicy
- "Who can change a shared folder's access control list (ACL). In other words, who can add,
- remove, or change the privileges of members."
- owner
- "Only the owner can update the ACL."
- editors
- "Any editor can update the ACL. This may be further restricted to
- editors on the same team."
- union SharedLinkPolicy
- "Who can view shared links in this folder."
- anyone
- "Links can be shared with anyone."
- team
- "Links can be shared with anyone on the same team as the owner."
- members
- "Links can only be shared among members of the shared folder."
- struct MembershipInfo
- "The information about a member of the shared content."
- access_type AccessLevel
- "The access type for this member."
- permissions List(MemberPermission)?
- "The permissions that requesting user has on this member. The set of
- permissions corresponds to the MemberActions in the request."
- initials String?
- "Suggested name initials for a member."
- is_inherited Boolean = false
- "True if the member has access from a parent folder."
- example default
- access_type = owner
- permissions = []
- initials = "JD"
- is_inherited = false
- struct UserInfo
- "Basic information about a user. Use :route:`users.get_account` and
- :route:`users.get_account_batch` to obtain more detailed information."
- account_id users_common.AccountId
- "The account ID of the user."
- same_team Boolean
- "If the user is in the same team as current user."
- team_member_id String?
- "The team member ID of the shared folder member. Only present if
- :field:`same_team` is true."
- example default
- account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"
- same_team = true
- team_member_id = "dbmid:abcd1234"
- struct UserMembershipInfo extends MembershipInfo
- "The information about a user member of the shared content."
- user UserInfo
- "The account information for the membership user."
- example default
- user = default
- access_type = owner
- permissions = []
- union InviteeInfo
- "Information about the recipient of a shared content invitation."
- email common.EmailAddress
- "E-mail address of invited user."
- example default
- email = "jessica@example.com"
- struct InviteeMembershipInfo extends MembershipInfo
- "Information about an invited member of a shared content."
- invitee InviteeInfo
- "Recipient of the invitation."
- user UserInfo?
- "The user this invitation is tied to, if available."
- example default
- invitee = default
- access_type = viewer
- permissions = []
- struct GroupInfo extends team_common.GroupSummary
- "The information about a group. Groups is a way to manage a list of users
- who need same access permission to the shared folder."
- group_type team_common.GroupType
- "The type of group."
- is_member Boolean
- "If the current user is a member of the group."
- is_owner Boolean
- "If the current user is an owner of the group."
- same_team Boolean
- "If the group is owned by the current user's team."
- example default
- group_name = "Test group"
- group_id = "g:e2db7665347abcd600000000001a2b3c"
- member_count = 10
- group_management_type = user_managed
- group_type = user_managed
- is_member = false
- is_owner = false
- same_team = true
- struct GroupMembershipInfo extends MembershipInfo
- "The information about a group member of the shared content."
- group GroupInfo
- "The information about the membership group."
- example default
- group = default
- access_type = editor
- permissions = []
- struct SharedFolderMetadataBase
- "Properties of the shared folder."
- access_type AccessLevel
- "The current user's access level for this shared folder."
- is_inside_team_folder Boolean
- "Whether this folder is inside of a team folder."
- is_team_folder Boolean
- "Whether this folder is a
- :link:`team folder https://www.dropbox.com/en/help/986`."
- owner_team users.Team?
- "The team that owns the folder. This field is not present if the folder
- is not owned by a team."
- parent_shared_folder_id common.SharedFolderId?
- "The ID of the parent shared folder. This field is present only if the
- folder is contained within another shared folder."
- path_lower String?
- "The lower-cased full path of this shared folder. Absent for unmounted folders."
- example default
- access_type = owner
- is_inside_team_folder = false
- is_team_folder = false
- owner_team = default
- # NOTE: If you modify this struct, also modify InternalSharedFolderMetadata,
- # which is used by mobile
- struct SharedFolderMetadata extends SharedFolderMetadataBase
- "The metadata which includes basic information about the shared folder."
- link_metadata SharedContentLinkMetadata?
- "The metadata of the shared content link to this shared folder. Absent if there is no
- link on the folder. This is for an unreleased feature so it may not be returned yet."
- name String
- "The name of the this shared folder."
- permissions List(FolderPermission)?
- "Actions the current user may perform on the folder and its contents.
- The set of permissions corresponds to the FolderActions in the request."
- policy FolderPolicy
- "Policies governing this shared folder."
- preview_url String
- "URL for displaying a web preview of the shared folder."
- shared_folder_id common.SharedFolderId
- "The ID of the shared folder."
- time_invited common.DropboxTimestamp
- "Timestamp indicating when the current user was invited to this shared folder."
- example default
- path_lower = "/dir"
- link_metadata = default
- name = "dir"
- shared_folder_id = "84528192421"
- permissions = []
- access_type = owner
- is_inside_team_folder = false
- is_team_folder = false
- policy = default
- time_invited = "2016-01-20T00:00:00Z"
- preview_url = "https://www.dropbox.com/scl/fo/fir9vjelf"
- union SharedFolderAccessError
- "There is an error accessing the shared folder."
- invalid_id
- "This shared folder ID is invalid."
- not_a_member
- "The user is not a member of the shared folder
- thus cannot access it."
- email_unverified
- "The current user's e-mail address is unverified."
- unmounted
- "The shared folder is unmounted."
- struct MemberAccessLevelResult
- "Contains information about a member's access level to content after an operation."
- access_level AccessLevel?
- "The member still has this level of access to the content through a parent folder."
- warning String?
- "A localized string with additional information about why the user
- has this access level to the content."
- access_details List(ParentFolderAccessInfo)?
- "The parent folders that a member has access to. The field is present if the user
- has access to the first parent folder where the member gains access."
- example default
- struct ParentFolderAccessInfo
- "Contains information about a parent folder that a member has access to."
- folder_name String
- "Display name for the folder."
- shared_folder_id common.SharedFolderId
- "The identifier of the parent shared folder."
- permissions List(MemberPermission)
- "The user's permissions for the parent shared folder."
- path String
- "The full path to the parent shared folder relative to the acting user's root."
- example default
- folder_name = "Shared Folder"
- shared_folder_id = "84528192421"
- permissions = []
- path = "/Shared Folder"
- # --
- route list_folders(ListFoldersArgs, ListFoldersResult, Void)
- "Return the list of all shared folders the current user has access to.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct ListFoldersArgs
- limit UInt32(min_value=1, max_value=1000) = 1000
- "The maximum number of results to return per request."
- actions List(FolderAction)?
- "A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the
- response's :field:`SharedFolderMetadata.permissions` field describing the actions the
- authenticated user can perform on the folder."
- example default
- limit = 100
- actions = []
- struct ListFoldersResult
- "Result for :route:`list_folders` or :route:`list_mountable_folders`, depending on which
- endpoint was requested.
- Unmounted shared folders can be identified by the absence of
- :field:`SharedFolderMetadata.path_lower`."
- entries List(SharedFolderMetadata)
- "List of all shared folders the authenticated user has access to."
- cursor String?
- "Present if there are additional shared folders that have not been returned yet. Pass the
- cursor into the corresponding continue endpoint (either :route:`list_folders/continue`
- or :route:`list_mountable_folders/continue`) to list additional folders."
- example default
- entries = [default]
- cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu"
- # --
- route list_folders/continue(ListFoldersContinueArg, ListFoldersResult, ListFoldersContinueError)
- "Once a cursor has been retrieved from :route:`list_folders`, use this to paginate through all
- shared folders. The cursor must come from a previous call to :route:`list_folders` or
- :route:`list_folders/continue`.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct ListFoldersContinueArg
- cursor String
- "The cursor returned by the previous API call specified in the endpoint description."
- example default
- cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu"
- union ListFoldersContinueError
- invalid_cursor
- ":field:`ListFoldersContinueArg.cursor` is invalid."
- # --
- route list_mountable_folders(ListFoldersArgs, ListFoldersResult, Void)
- "Return the list of all shared folders the current user can mount or unmount.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- # --
- route list_mountable_folders/continue(ListFoldersContinueArg, ListFoldersResult, ListFoldersContinueError)
- "Once a cursor has been retrieved from :route:`list_mountable_folders`, use this to paginate through all
- mountable shared folders. The cursor must come from a previous call to :route:`list_mountable_folders` or
- :route:`list_mountable_folders/continue`.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- # --
- route get_folder_metadata(GetMetadataArgs, SharedFolderMetadata, SharedFolderAccessError)
- "Returns shared folder metadata by its folder ID.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- api_group = "truelink-alpha"
- struct GetMetadataArgs
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- actions List(FolderAction)?
- "A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the
- response's :field:`SharedFolderMetadata.permissions` field describing the actions the
- authenticated user can perform on the folder."
- example default
- shared_folder_id = "84528192421"
- actions = []
- # --
- route list_folder_members(ListFolderMembersArgs, SharedFolderMembers, SharedFolderAccessError)
- "Returns shared folder membership by its folder ID.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct ListFolderMembersCursorArg
- actions List(MemberAction)?
- "This is a list indicating whether each returned member will include a boolean value
- :field:`MemberPermission.allow` that describes whether the current user can perform
- the MemberAction on the member."
- limit UInt32(min_value=1, max_value=1000) = 1000
- "The maximum number of results that include members, groups and invitees to return per request."
- example default
- actions = []
- limit = 10
- struct ListFolderMembersArgs extends ListFolderMembersCursorArg
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- example default
- shared_folder_id = "84528192421"
- actions = []
- limit = 10
- struct SharedFolderMembers
- "Shared folder user and group membership."
- users List(UserMembershipInfo)
- "The list of user members of the shared folder."
- groups List(GroupMembershipInfo)
- "The list of group members of the shared folder."
- invitees List(InviteeMembershipInfo)
- "The list of invitees to the shared folder."
- cursor String?
- "Present if there are additional shared folder members that have not been returned yet. Pass
- the cursor into :route:`list_folder_members/continue` to list additional members."
- example default
- users = [default]
- groups = [default]
- invitees = [default]
- cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu"
- # --
- route list_folder_members/continue(ListFolderMembersContinueArg, SharedFolderMembers, ListFolderMembersContinueError)
- "Once a cursor has been retrieved from :route:`list_folder_members`, use this to paginate
- through all shared folder members.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct ListFolderMembersContinueArg
- cursor String
- "The cursor returned by your last call to :route:`list_folder_members` or
- :route:`list_folder_members/continue`."
- example default
- cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu"
- union ListFolderMembersContinueError
- access_error SharedFolderAccessError
- invalid_cursor
- ":field:`ListFolderMembersContinueArg.cursor` is invalid."
- # --
- route share_folder(ShareFolderArg, ShareFolderLaunch, ShareFolderError )
- "Share a folder with collaborators.
- Most sharing will be completed synchronously. Large folders will be
- completed asynchronously. To make testing the async case repeatable, set
- `ShareFolderArg.force_async`.
- If a :field:`ShareFolderLaunch.async_job_id` is returned, you'll need to
- call :route:`check_share_job_status` until the action completes to get the
- metadata for the folder.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- api_group = "truelink-alpha"
- struct ShareFolderArg
- path files.WritePath
- "The path to the folder to share. If it does not exist, then a new one
- is created."
- member_policy MemberPolicy?
- "Who can be a member of this shared folder. Only applicable if the
- current user is on a team."
- acl_update_policy AclUpdatePolicy?
- "Who can add and remove members of this shared folder."
- shared_link_policy SharedLinkPolicy?
- "The policy to apply to shared links created for content inside this
- shared folder. The current user must be on a team to set this policy to
- :field:`SharedLinkPolicy.members`."
- force_async Boolean = false
- "Whether to force the share to happen asynchronously."
- actions List(FolderAction)?
- "A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the
- response's :field:`SharedFolderMetadata.permissions` field describing the actions the
- authenticated user can perform on the folder."
- link_settings LinkSettings?
- "Settings on the link for this folder."
- viewer_info_policy ViewerInfoPolicy?
- "Who can enable/disable viewer info for this shared folder."
- example default
- path = "/example/workspace"
- member_policy = team
- acl_update_policy = editors
- shared_link_policy = members
- union ShareFolderErrorBase
- email_unverified
- "The current user's e-mail address is unverified."
- bad_path SharePathError
- ":field:`ShareFolderArg.path` is invalid."
- team_policy_disallows_member_policy
- "Team policy is more restrictive than :field:`ShareFolderArg.member_policy`."
- disallowed_shared_link_policy
- "The current user's account is not allowed to select the specified
- :field:`ShareFolderArg.shared_link_policy`."
- union ShareFolderError extends ShareFolderErrorBase
- no_permission
- "The current user does not have permission to perform this action."
- union SharePathError
- is_file
- "A file is at the specified path."
- inside_shared_folder
- "We do not support sharing a folder inside a shared folder."
- contains_shared_folder
- "We do not support shared folders that contain shared folders."
- contains_app_folder
- "We do not support shared folders that contain app folders."
- contains_team_folder
- "We do not support shared folders that contain team folders."
- is_app_folder
- "We do not support sharing an app folder."
- inside_app_folder
- "We do not support sharing a folder inside an app folder."
- is_public_folder
- "A public folder can't be shared this way. Use a public link instead."
- inside_public_folder
- "A folder inside a public folder can't be shared this way. Use a public
- link instead."
- already_shared SharedFolderMetadata
- "Folder is already shared. Contains metadata about the existing shared folder."
- invalid_path
- "Path is not valid."
- is_osx_package
- "We do not support sharing a Mac OS X package."
- inside_osx_package
- "We do not support sharing a folder inside a Mac OS X package."
- # --
- union_closed ShareFolderJobStatus extends async.PollResultBase
- complete SharedFolderMetadata
- "The share job has finished. The value is the metadata for the folder."
- failed ShareFolderError
- example default
- complete = default
- union_closed ShareFolderLaunch extends async.LaunchResultBase
- complete SharedFolderMetadata
- example default
- complete = default
- route check_share_job_status(async.PollArg, ShareFolderJobStatus, async.PollError)
- "Returns the status of an asynchronous job for sharing a folder.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- union_closed JobStatus extends async.PollResultBase
- complete
- "The asynchronous job has finished."
- failed JobError
- "The asynchronous job returned an error."
- # --
- union SharedFolderMemberError
- invalid_dropbox_id
- "The target dropbox_id is invalid."
- not_a_member
- "The target dropbox_id is not a member of the shared folder."
- no_explicit_access MemberAccessLevelResult
- "The target member only has inherited access to the shared folder."
- union JobError
- "Error occurred while performing an asynchronous job from :route:`unshare_folder`
- or :route:`remove_folder_member`."
- unshare_folder_error UnshareFolderError
- "Error occurred while performing :route:`unshare_folder` action."
- remove_folder_member_error RemoveFolderMemberError
- "Error occurred while performing :route:`remove_folder_member` action."
- relinquish_folder_membership_error RelinquishFolderMembershipError
- "Error occurred while performing :route:`relinquish_folder_membership` action."
- route check_job_status(async.PollArg, JobStatus, async.PollError)
- "Returns the status of an asynchronous job.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- # --
- route unshare_folder(UnshareFolderArg, async.LaunchEmptyResult, UnshareFolderError)
- "Allows a shared folder owner to unshare the folder.
- You'll need to call :route:`check_job_status` to determine if the action has
- completed successfully.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- api_group = "truelink-alpha"
- struct UnshareFolderArg
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- leave_a_copy Boolean = false
- "If true, members of this shared folder will get a copy of this folder
- after it's unshared. Otherwise, it will be removed from their Dropbox.
- The current user, who is an owner, will always retain their copy."
- example default
- shared_folder_id = "84528192421"
- leave_a_copy = false
- union UnshareFolderError
- access_error SharedFolderAccessError
- team_folder
- "This action cannot be performed on a team shared folder."
- no_permission
- "The current user does not have permission to perform this action."
- too_many_files
- "This shared folder has too many files to be unshared."
- # --
- route transfer_folder(TransferFolderArg, Void, TransferFolderError)
- "Transfer ownership of a shared folder to a member of the shared folder.
- User must have :field:`AccessLevel.owner` access to the shared folder to perform a transfer.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct TransferFolderArg
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- to_dropbox_id DropboxId
- "A account or team member ID to transfer ownership to."
- example default
- shared_folder_id = "84528192421"
- to_dropbox_id = "dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q"
- union TransferFolderError
- access_error SharedFolderAccessError
- invalid_dropbox_id
- ":field:`TransferFolderArg.to_dropbox_id` is invalid."
- new_owner_not_a_member
- "The new designated owner is not currently a member of the shared folder."
- new_owner_unmounted
- "The new designated owner has not added the folder to their Dropbox."
- new_owner_email_unverified
- "The new designated owner's e-mail address is unverified."
- team_folder
- "This action cannot be performed on a team shared folder."
- no_permission
- "The current user does not have permission to perform this action."
- # --
- route update_folder_policy(UpdateFolderPolicyArg, SharedFolderMetadata, UpdateFolderPolicyError)
- "Update the sharing policies for a shared folder.
- User must have :field:`AccessLevel.owner` access to the shared folder to update its policies.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- api_group = "truelink-alpha"
- struct UpdateFolderPolicyArg
- "If any of the policies are unset, then they retain their current setting."
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- member_policy MemberPolicy?
- "Who can be a member of this shared folder. Only applicable if the
- current user is on a team."
- acl_update_policy AclUpdatePolicy?
- "Who can add and remove members of this shared folder."
- viewer_info_policy ViewerInfoPolicy?
- "Who can enable/disable viewer info for this shared folder."
- shared_link_policy SharedLinkPolicy?
- "The policy to apply to shared links created for content inside this
- shared folder. The current user must be on a team to set this policy to
- :field:`SharedLinkPolicy.members`."
- link_settings LinkSettings?
- "Settings on the link for this folder."
- actions List(FolderAction)?
- "A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the
- response's :field:`SharedFolderMetadata.permissions` field describing the actions the
- authenticated user can perform on the folder."
- example default
- shared_folder_id = "84528192421"
- member_policy = team
- acl_update_policy = owner
- shared_link_policy = members
- union UpdateFolderPolicyError
- access_error SharedFolderAccessError
- not_on_team
- ":field:`UpdateFolderPolicyArg.member_policy` was set even though user
- is not on a team."
- team_policy_disallows_member_policy
- "Team policy is more restrictive than :field:`ShareFolderArg.member_policy`."
- disallowed_shared_link_policy
- "The current account is not allowed to select the specified
- :field:`ShareFolderArg.shared_link_policy`."
- no_permission
- "The current user does not have permission to perform this action."
- team_folder
- "This action cannot be performed on a team shared folder."
- # --
- route add_folder_member(AddFolderMemberArg, Void, AddFolderMemberError)
- "Allows an owner or editor (if the ACL update policy allows) of a shared
- folder to add another member.
- For the new member to get access to all the functionality for this folder,
- you will need to call :route:`mount_folder` on their behalf.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct AddFolderMemberArg
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- members List(AddMember)
- "The intended list of members to add. Added members will receive
- invites to join the shared folder."
- quiet Boolean = false
- "Whether added members should be notified via email and device
- notifications of their invite."
- custom_message String(min_length=1)?
- "Optional message to display to added members in their invitation."
- example default
- members = [default, account]
- shared_folder_id = "84528192421"
- custom_message = "Documentation for launch day"
- struct AddMember
- "The member and type of access the member should have when added to a shared folder."
- member MemberSelector
- "The member to add to the shared folder."
- access_level AccessLevel = viewer
- "The access level to grant :field:`member` to the shared folder. :field:`AccessLevel.owner`
- is disallowed."
- example default
- member = default
- access_level = editor
- example account
- member = account
- access_level = viewer
- union MemberSelector
- "Includes different ways to identify a member of a shared folder."
- dropbox_id DropboxId
- "Dropbox account, team member, or group ID of member."
- email common.EmailAddress
- "E-mail address of member."
- example default
- email = "justin@example.com"
- example account
- dropbox_id = "dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q"
- example group
- dropbox_id = "g:98d36ed08e6290c2e9d536a392f974ee"
- union AddFolderMemberError
- access_error SharedFolderAccessError
- "Unable to access shared folder."
- email_unverified
- "The current user's e-mail address is unverified."
- bad_member AddMemberSelectorError
- ":field:`AddFolderMemberArg.members` contains a bad invitation recipient."
- cant_share_outside_team
- "Your team policy does not allow sharing outside of the team."
- too_many_members UInt64
- "The value is the member limit that was reached."
- too_many_pending_invites UInt64
- "The value is the pending invite limit that was reached."
- rate_limit
- "The current user has hit the limit of invites they can send per day. Try again in 24 hours."
- too_many_invitees
- "The current user is trying to share with too many people at once."
- insufficient_plan
- "The current user's account doesn't support this action. An example of
- this is when adding a read-only member. This action can only be
- performed by users that have upgraded to a Pro or Business plan."
- team_folder
- "This action cannot be performed on a team shared folder."
- no_permission
- "The current user does not have permission to perform this action."
- example default
- no_permission = null
- example member
- bad_member = default
- union AddMemberSelectorError
- automatic_group
- "Automatically created groups can only be added to team folders."
- invalid_dropbox_id DropboxId
- "The value is the ID that could not be identified."
- invalid_email common.EmailAddress
- "The value is the e-email address that is malformed."
- unverified_dropbox_id DropboxId
- "The value is the ID of the Dropbox user with an unverified e-mail
- address. Invite unverified users by e-mail address instead of by their
- Dropbox ID."
- group_deleted
- "At least one of the specified groups in :field:`AddFolderMemberArg.members`
- is deleted."
- group_not_on_team
- "Sharing to a group that is not on the current user's team."
- example default
- invalid_dropbox_id = "dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q"
- # --
- route remove_folder_member(RemoveFolderMemberArg, async.LaunchResultBase, RemoveFolderMemberError)
- "Allows an owner or editor (if the ACL update policy allows) of a shared
- folder to remove another member.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct RemoveFolderMemberArg
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- member MemberSelector
- "The member to remove from the folder."
- leave_a_copy Boolean
- "If true, the removed user will keep their copy of the folder after
- it's unshared, assuming it was mounted. Otherwise, it will be removed
- from their Dropbox. Also, this must be set to false when kicking a
- group."
- example default
- shared_folder_id = "84528192421"
- member = default
- leave_a_copy = false
- union RemoveFolderMemberError
- access_error SharedFolderAccessError
- member_error SharedFolderMemberError
- folder_owner
- "The target user is the owner of the shared folder. You can't remove
- this user until ownership has been transferred to another member."
- group_access
- "The target user has access to the shared folder via a group."
- team_folder
- "This action cannot be performed on a team shared folder."
- no_permission
- "The current user does not have permission to perform this action."
- union_closed RemoveMemberJobStatus extends async.PollResultBase
- complete MemberAccessLevelResult
- "Removing the folder member has finished. The value is information about
- whether the member has another form of access."
- failed RemoveFolderMemberError
- example default
- complete = default
- route check_remove_member_job_status(async.PollArg, RemoveMemberJobStatus, async.PollError)
- "Returns the status of an asynchronous job for sharing a folder.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- # --
- route update_folder_member(UpdateFolderMemberArg, MemberAccessLevelResult, UpdateFolderMemberError)
- "Allows an owner or editor of a shared folder to update another member's
- permissions.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct UpdateFolderMemberArg
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- member MemberSelector
- "The member of the shared folder to update. Only the
- :field:`MemberSelector.dropbox_id` may be set at this time."
- access_level AccessLevel
- "The new access level for :field:`member`. :field:`AccessLevel.owner`
- is disallowed."
- example default
- shared_folder_id = "84528192421"
- member = default
- access_level = editor
- union UpdateFolderMemberError
- access_error SharedFolderAccessError
- member_error SharedFolderMemberError
- no_explicit_access AddFolderMemberError
- "If updating the access type required the member to be added to the shared folder
- and there was an error when adding the member."
- insufficient_plan
- "The current user's account doesn't support this action. An example of
- this is when downgrading a member from editor to viewer. This action
- can only be performed by users that have upgraded to a Pro or Business
- plan."
- no_permission
- "The current user does not have permission to perform this action."
- # --
- route mount_folder(MountFolderArg, SharedFolderMetadata, MountFolderError)
- "The current user mounts the designated folder.
- Mount a shared folder for a user after they have been added as a member.
- Once mounted, the shared folder will appear in their Dropbox.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- # TODO(kelkabany): Consider exposing mount path as an argument. More error
- # cases will be possible.
- struct MountFolderArg
- shared_folder_id common.SharedFolderId
- "The ID of the shared folder to mount."
- example default
- shared_folder_id = "84528192421"
- struct InsufficientQuotaAmounts
- space_needed UInt64
- "The amount of space needed to add the item (the size of the item)."
- space_shortage UInt64
- "The amount of extra space needed to add the item."
- space_left UInt64
- "The amount of space left in the user's Dropbox, less than space_needed."
- union MountFolderError
- access_error SharedFolderAccessError
- inside_shared_folder
- "Mounting would cause a shared folder to be inside another, which is
- disallowed."
- insufficient_quota InsufficientQuotaAmounts
- "The current user does not have enough space to mount the shared
- folder."
- already_mounted
- "The shared folder is already mounted."
- no_permission
- "The current user does not have permission to perform this action."
- not_mountable
- "The shared folder is not mountable. One example where this can occur
- is when the shared folder belongs within a team folder in the user's
- Dropbox."
- # --
- route unmount_folder(UnmountFolderArg, Void, UnmountFolderError)
- "The current user unmounts the designated folder. They can re-mount the
- folder at a later time using :route:`mount_folder`.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct UnmountFolderArg
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- example default
- shared_folder_id = "84528192421"
- union UnmountFolderError
- access_error SharedFolderAccessError
- no_permission
- "The current user does not have permission to perform this action."
- not_unmountable
- "The shared folder can't be unmounted. One example where this can occur
- is when the shared folder's parent folder is also a shared folder that
- resides in the current user's Dropbox."
- # --
- route relinquish_folder_membership(RelinquishFolderMembershipArg, async.LaunchEmptyResult, RelinquishFolderMembershipError)
- "The current user relinquishes their membership in the designated shared
- folder and will no longer have access to the folder. A folder owner cannot
- relinquish membership in their own folder.
- This will run synchronously if leave_a_copy is false, and asynchronously
- if leave_a_copy is true.
- Apps must have full Dropbox access to use this endpoint."
- attrs
- owner = "sfi"
- struct RelinquishFolderMembershipArg
- shared_folder_id common.SharedFolderId
- "The ID for the shared folder."
- leave_a_copy Boolean = false
- "Keep a copy of the folder's contents upon relinquishing membership."
- example default
- shared_folder_id = "84528192421"
- leave_a_copy = false
- union RelinquishFolderMembershipError
- access_error SharedFolderAccessError
- folder_owner
- "The current user is the owner of the shared folder. Owners cannot relinquish membership to
- their own folders. Try unsharing or transferring ownership first."
- mounted
- "The shared folder is currently mounted. Unmount the shared folder before relinquishing
- membership."
- group_access
- "The current user has access to the shared folder via a group. You can't relinquish
- membership to folders shared via groups."
- team_folder
- "This action cannot be performed on a team shared folder."
- no_permission
- "The current user does not have permission to perform this action."
- no_explicit_access
- "The current user only has inherited access to the shared folder. You can't relinquish
- inherited membership to folders."
|