diff --git a/account.stone b/account.stone index 609d100..532be4b 100644 --- a/account.stone +++ b/account.stone @@ -1,10 +1,19 @@ namespace account +import account_id import common -# -# Route set_profile_photo -# +route get_photo (AccountPhotoGetArg, AccountPhotoGetResult, AccountPhotoGetError) + "This lovely endpoint gets the account photo of a given user." + + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "account_info.read" + select_admin_mode = "whole_team" + style = "download" + union PhotoSourceArg base64_data String @@ -13,6 +22,17 @@ union PhotoSourceArg example default base64_data = "SW1hZ2UgZGF0YSBpbiBiYXNlNjQtZW5jb2RlZCBieXRlcy4gTm90IGEgdmFsaWQgZXhhbXBsZS4=" +union SetProfilePhotoError + file_type_error + "File cannot be set as profile photo." + file_size_error + "File cannot exceed 10 MB." + dimension_error + "Image must be larger than 128 x 128." + thumbnail_error + "Image could not be thumbnailed." + transient_error + "Temporary infrastructure failure, please retry." struct SetProfilePhotoArg photo PhotoSourceArg @@ -21,7 +41,6 @@ struct SetProfilePhotoArg example default photo = default - struct SetProfilePhotoResult profile_photo_url String "URL for the photo representing the user, if one is set." @@ -29,21 +48,47 @@ struct SetProfilePhotoResult example default profile_photo_url = "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102&size=128x128" +struct AccountPhotoGetArg + dbx_account_id String + "Encoded ID of the user. Must start either with 'dbid:' or 'dbaphid:'." + size String + "A string representing the size of the photo." + circle_crop Boolean + "True if the photo should be cropped and false otherwise." + expect_account_photo Boolean + "True if we expect account photo to exist." -union SetProfilePhotoError - file_type_error - "File cannot be set as profile photo." - file_size_error - "File cannot exceed 10 MB." - dimension_error - "Image must be larger than 128 x 128." - thumbnail_error - "Image could not be thumbnailed." - transient_error - "Temporary infrastructure failure, please retry." + example default + dbx_account_id = "dbid:s0meEnc0ded1d" + size = "16x16" + circle_crop = false + expect_account_photo = true + +union ThumbnailError + permanent_failure + "Indicates permanent infrastructural failure." + temporary_failure + "Indicates temporary infrastructural failure." + +union AccountPhotoGetError + thumbnail_error ThumbnailError + "Indicates infrastructural failure." + account_photo_missing + "Account photo is missing (but we did not expect it to exist)." + expected_account_photo_missing + "Account photo was expected to exist, but it's missing." -route set_profile_photo(SetProfilePhotoArg, SetProfilePhotoResult, SetProfilePhotoError) +struct AccountPhotoGetResult + content_type String + "The data returned by get_photo." + + example default + content_type = "image/jpeg" + +route set_profile_photo (SetProfilePhotoArg, SetProfilePhotoResult, SetProfilePhotoError) "Sets a user's profile photo." attrs + auth = "user" scope = "account_info.write" + diff --git a/account_id.stone b/account_id.stone new file mode 100644 index 0000000..d6a3c24 --- /dev/null +++ b/account_id.stone @@ -0,0 +1,6 @@ +namespace account_id + +annotation_type ContainsDbidAnnotation + "Annotation type should be applied to Response object fields which contain account id" + + authorize_caller Boolean = true diff --git a/async.stone b/async.stone index 2917acf..44b6a64 100644 --- a/async.stone +++ b/async.stone @@ -1,31 +1,15 @@ namespace async -# -# Types for writing asynchronous API methods. -# -# There are two calls for each asynchronous method: -# 1. A "Launch" method that (optionally) launches the asynchronous job -# 2. A "Polling" method that polls for the status of the job that was launched by the first call. -# -# The following definitions are prefixed by "Launch" or "Poll", according to their intended use. - +import common alias AsyncJobId = String(min_length=1) - -# -# Launch -# - union_closed LaunchResultBase "Result returned by methods that launch an asynchronous job. - A method who may either launch an asynchronous job, or complete the request synchronously, can use this union by extending it, and adding a 'complete' field with the type of the synchronous response. - See :type:`LaunchEmptyResult` for an example." - async_job_id AsyncJobId "This response indicates that the processing is asynchronous. The string is an id that can be used to obtain the status of the asynchronous job." @@ -36,23 +20,17 @@ union_closed LaunchResultBase union_closed LaunchEmptyResult extends LaunchResultBase "Result returned by methods that may either launch an asynchronous job or complete synchronously. Upon synchronous completion of the job, no additional information is returned." - complete "The job finished synchronously and successfully." example complete complete = null - + example async_job_id async_job_id = "34g93hh34h04y384084" -# -# Poll -# - struct PollArg "Arguments for methods that poll the status of an asynchronous job." - async_job_id AsyncJobId "Id of the asynchronous job. This is the value of a response returned from the method that launched the job." @@ -60,39 +38,32 @@ struct PollArg example default async_job_id = "34g93hh34h04y384084" -# TODO(kelkabany): Remove `error_msg` since others might want to return it -# differently. union_closed PollResultBase "Result returned by methods that poll for the status of an asynchronous job. Unions that extend this union should add a 'complete' field with a type of the information returned upon job completion. - - See :type:`PollEmptyResult` for an example." - + See :type:`PollEmptyResult` for an example" in_progress "The asynchronous job is still in progress." - union_closed PollEmptyResult extends PollResultBase "Result returned by methods that poll for the status of an asynchronous job. Upon completion of the job, no additional information is returned." - complete "The asynchronous job has completed successfully." example complete complete = null - + example in_progress in_progress = null - union PollError "Error returned by methods for polling the status of asynchronous job." - invalid_async_job_id "The job ID is invalid." internal_error "Something went wrong with the job on Dropbox's end. You'll need to verify that the action you were taking succeeded, and if not, try again. This should happen very rarely." + diff --git a/auth.stone b/auth.stone index a30bcd3..a1e4e41 100644 --- a/auth.stone +++ b/auth.stone @@ -2,13 +2,8 @@ namespace auth import common -struct TokenScopeError - required_scope String - "The required scope to access the route." - union AuthError "Errors occurred during authentication." - invalid_access_token "The access token is invalid." invalid_select_user @@ -24,39 +19,60 @@ union AuthError route_access_denied "The route is not available to public." -route token/revoke(Void, Void, Void) - "Disables the access token used to authenticate the call. - If there is a corresponding refresh token for the access token, - this disables that refresh token, as well as any other access tokens for that refresh token." - - attrs - allow_app_folder_app = true - union RateLimitReason too_many_requests "You are making too many requests in the past few minutes." too_many_write_operations "There are currently too many write operations happening in the user's Dropbox." +union TokenFromOAuth1Error + invalid_oauth1_token_info + "Part or all of the OAuth 1.0 access token info is invalid." + app_id_mismatch + "The authorized app does not match the app associated with the supplied access token." + +union AccessError + "Error occurred because the account doesn't have permission to access the resource." + invalid_account_type InvalidAccountTypeError + "Current account type cannot access the resource." + paper_access_denied PaperAccessError + "Current account cannot access Paper." + team_access_denied + "Team doesn't have permission to access." + no_permission NoPermissionError + "Caller does not have permission to access the resource." + +union PaperAccessError + paper_disabled + "Paper is disabled." + not_paper_user + "The provided user has not used Paper yet." + +union InvalidAccountTypeError + endpoint + "Current account type doesn't have permission to access this route endpoint." + feature + "Current account type doesn't have permission to access this feature." + +union NoPermissionError + unauthorized_account_id_usage UnauthorizedAccountIdUsageError + "Current caller does not have permission to access the account information for one or more of the specified account IDs." + +struct TokenScopeError + required_scope String + "The required scope to access the route." + struct RateLimitError "Error occurred because the app is being rate limited." - reason RateLimitReason "The reason why the app is being rate limited." - retry_after UInt64 = 1 "The number of seconds that the app should wait before making another request." -# -# OAuth 1.0 token conversion -# - struct TokenFromOAuth1Arg - oauth1_token String(min_length=1) "The supplied OAuth 1.0 access token." - oauth1_token_secret String(min_length=1) "The token secret associated with the supplied access token." @@ -65,42 +81,29 @@ struct TokenFromOAuth1Arg oauth1_token_secret = "qomoftv0472git7" struct TokenFromOAuth1Result - oauth2_token String(min_length=1) "The OAuth 2.0 token generated from the supplied OAuth 1.0 token." example default oauth2_token = "9mCrkS7BIdAAAAAAAAAAHHS0TsSnpYvKQVtKdBnN5IuzhYOGblSgTcHgBFKFMmFn" -union TokenFromOAuth1Error - invalid_oauth1_token_info - "Part or all of the OAuth 1.0 access token info is invalid." - app_id_mismatch - "The authorized app does not match the app associated with the supplied access token." +struct UnauthorizedAccountIdUsageError + unauthorized_account_ids List(String) + "The account IDs that the caller does not have permission to use." + +route token/revoke (Void, Void, Void) + "Disables the access token used to authenticate the call. + If there is a corresponding refresh token for the access token, + this disables that refresh token, as well as any other access tokens for that refresh token." -route token/from_oauth1(TokenFromOAuth1Arg, TokenFromOAuth1Result, TokenFromOAuth1Error) deprecated - "Creates an OAuth 2.0 access token from the supplied OAuth 1.0 access token." attrs - auth = "app" allow_app_folder_app = true + auth = "user" -union AccessError - "Error occurred because the account doesn't have permission to access the resource." - - invalid_account_type InvalidAccountTypeError - "Current account type cannot access the resource." - - paper_access_denied PaperAccessError - "Current account cannot access Paper." +route token/from_oauth1 (TokenFromOAuth1Arg, TokenFromOAuth1Result, TokenFromOAuth1Error) deprecated + "Creates an OAuth 2.0 access token from the supplied OAuth 1.0 access token." -union PaperAccessError - paper_disabled - "Paper is disabled." - not_paper_user - "The provided user has not used Paper yet." + attrs + allow_app_folder_app = true + auth = "app" -union InvalidAccountTypeError - endpoint - "Current account type doesn't have permission to access this route endpoint." - feature - "Current account type doesn't have permission to access this feature." diff --git a/check_api_v2_service.stone b/check.stone similarity index 59% rename from check_api_v2_service.stone rename to check.stone index d20f6d4..5006de2 100644 --- a/check_api_v2_service.stone +++ b/check.stone @@ -1,8 +1,31 @@ -# @generated by protoc-gen-stone. DO NOT EDIT. -# source: configs/proto/dropbox/proto/check/api_v2_service.proto namespace check -route user (EchoArg, EchoResult, Void) +import common + +union EchoError + "EchoError contains the error returned from the Dropbox servers." + user_requested + "The request was successful." + + +struct EchoArg + "Contains the arguments to be sent to the Dropbox servers." + query String(max_length=500) = "" + "The string that you'd like to be echoed back to you." + + example default + query = "foo" + +struct EchoResult + "EchoResult contains the result returned from the Dropbox servers." + result String = "" + "If everything worked correctly, this would be the same as query." + + example default + result = "foo" + + +route user (EchoArg, EchoResult, EchoError) "This endpoint performs User Authentication, validating the supplied access token, and returns the supplied string, to allow you to test your code and connection to the Dropbox API. It has no other effect. If you receive an HTTP 200 response with the supplied @@ -15,7 +38,7 @@ route user (EchoArg, EchoResult, Void) is_preview = true scope = "account_info.read" -route app (EchoArg, EchoResult, Void) +route app (EchoArg, EchoResult, EchoError) "This endpoint performs App Authentication, validating the supplied app key and secret, and returns the supplied string, to allow you to test your code and connection to the Dropbox API. It has no other effect. If you receive an HTTP 200 response with the supplied diff --git a/check_api_v2_types.stone b/check_api_v2_types.stone deleted file mode 100644 index 3911f84..0000000 --- a/check_api_v2_types.stone +++ /dev/null @@ -1,22 +0,0 @@ -# @generated by protoc-gen-stone. DO NOT EDIT. -# source: configs/proto/dropbox/proto/check/api_v2_types.proto -namespace check - -import common - -struct EchoArg - "Contains the arguments to be sent to the Dropbox servers." - query String(max_length=500) = "" - "The string that you'd like to be echoed back to you." - - example default - query = "foo" - -struct EchoResult - "EchoResult contains the result returned from the Dropbox servers." - result String = "" - "If everything worked correctly, this would be the same as query." - - example default - result = "foo" - diff --git a/common.stone b/common.stone index 3a55b98..131b5e5 100644 --- a/common.stone +++ b/common.stone @@ -10,25 +10,14 @@ alias DropboxTimestamp = Timestamp("%Y-%m-%dT%H:%M:%SZ") alias Date = Timestamp("%Y-%m-%d") -# Note - "\\." is needed in order to translate to "\." +alias EmailAddress = String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\\.[A-Za-z]{2,15}$") -# Note: If this pattern is changed, we also need to update _parse_json_arg_to_stone_data_type in dropbox/api/v2/substrate/wrapper.py -alias EmailAddress = String(pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\\.[A-Za-z]{2,15}$", max_length=255) +alias NamePart = String(max_length=50, min_length=1, pattern="[^\/:?*<>\"|]*") -# First name or Last name. NOTE: max_length should be synced with USER_NAME_MAX_LEN -alias NamePart = String(pattern="[^\/:?*<>\"|]*", min_length=1, max_length=100) +alias OptionalNamePart = String(max_length=50, pattern="[^\/:?*<>\"|]*") -# First name or Last name. NOTE: max_length should be synced with USER_NAME_MAX_LEN -# Accepting zeo length values which are usually used to clear the first or last name. -alias OptionalNamePart = String(pattern="[^\/:?*<>\"|]*", max_length=100) - -# We don't limit the length because it's always generated from the first & last names. alias DisplayName = String(pattern="[^\/:?*<>\"|]*") -# There are some existing accounts with special characters in their names. Though we don't allow such special characters -# being used through UI, it's still possible to use them right now through some endpoints. This alias should be used in -# the places where those legacy account names are expected, one of the example being the team audit logging. In other -# places we should use `DisplayName` instead to prevent more usage of these special characters. alias DisplayNameLegacy = String alias NamespaceId = String(pattern="[-_0-9a-zA-Z:]+") @@ -37,61 +26,61 @@ alias SharedFolderId = NamespaceId alias SessionId = String +alias LanguageCode = String(min_length=2) + +union PathRoot + home + "Paths are relative to the authenticating user's home namespace, + whether or not that user belongs to a team." + root NamespaceId + "Paths are relative to the authenticating user's root namespace + (This results in :field:`PathRootError.invalid_root` if the + user's root namespace has changed.)." + namespace_id NamespaceId + "Paths are relative to given namespace id (This results in + :field:`PathRootError.no_permission` if you don't have access + to this namespace.)." + struct RootInfo "Information about current user's root." - union team TeamRootInfo user UserRootInfo - root_namespace_id NamespaceId "The namespace ID for user's root namespace. It will be the namespace ID - of the shared team root if the user is member of a team with a separate team root. - Otherwise it will be same as :field:`RootInfo.home_namespace_id`." - + of the shared team root if the user is member of a team with a separate team root, + or the user root if user is member of a team with separate distinct roots for users. + Otherwise it will be the same as :field:`RootInfo.home_namespace_id`." home_namespace_id NamespaceId "The namespace ID for user's home namespace." example default user = default +struct DropboxDuration + seconds Int64 + nanos Int32 + struct TeamRootInfo extends RootInfo "Root info when user is member of a team with a separate root namespace ID." - home_path String "The path for user's home directory under the shared team root." struct UserRootInfo extends RootInfo "Root info when user is not member of a team or the user is a member of a team and the team does not have a separate root namespace." + home_path String? + "The path for user's home directory under the distinct user root." example default home_namespace_id = "3235641" root_namespace_id = "3235641" -union PathRoot - home - "Paths are relative to the authenticating user's home namespace, - whether or not that user belongs to a team." - - root NamespaceId - "Paths are relative to the authenticating user's root namespace - (This results in :field:`PathRootError.invalid_root` if the - user's root namespace has changed.)." - - namespace_id NamespaceId - "Paths are relative to given namespace id (This results in - :field:`PathRootError.no_permission` if you don't have access - to this namespace.)." - - union PathRootError invalid_root RootInfo "The root namespace id in Dropbox-API-Path-Root header is not valid. The value of this error is the user's latest root info." no_permission "You don't have permission to access the namespace id in Dropbox-API-Path-Root - header." + header." -alias LanguageCode = String(min_length=2) - "A ISO639-1 code." diff --git a/contacts.stone b/contacts.stone index 2c3c905..1bf165b 100644 --- a/contacts.stone +++ b/contacts.stone @@ -2,13 +2,11 @@ namespace contacts import common -route delete_manual_contacts(Void, Void, Void) - "Removes all manually added contacts. - You'll still keep contacts who are on your team or who you imported. - New contacts will be added when you share." - - attrs - scope = "contacts.write" +union DeleteManualContactsError + contacts_not_found List(common.EmailAddress) + "Can't delete contacts from this list. + Make sure the list only has manually added contacts. + The deletion was cancelled." struct DeleteManualContactsArg email_addresses List(common.EmailAddress) @@ -17,14 +15,19 @@ struct DeleteManualContactsArg example default email_addresses = ["contactemailaddress1@domain.com", "contactemailaddress2@domain.com"] -union DeleteManualContactsError - contacts_not_found List(common.EmailAddress) - "Can't delete contacts from this list. - Make sure the list only has manually added contacts. - The deletion was cancelled." +route delete_manual_contacts (Void, Void, Void) + "Removes all manually added contacts. + You'll still keep contacts who are on your team or who you imported. + New contacts will be added when you share." -route delete_manual_contacts_batch(DeleteManualContactsArg, Void, DeleteManualContactsError) + attrs + auth = "user" + scope = "contacts.write" + +route delete_manual_contacts_batch (DeleteManualContactsArg, Void, DeleteManualContactsError) "Removes manually added contacts from the given list." attrs + auth = "user" scope = "contacts.write" + diff --git a/file_properties.stone b/file_properties.stone index 7ffde9a..9dd6e32 100644 --- a/file_properties.stone +++ b/file_properties.stone @@ -1,7 +1,6 @@ namespace file_properties "This namespace contains helpers for property and template metadata endpoints. - These endpoints enable you to tag arbitrary key/value data to Dropbox files. @@ -39,103 +38,39 @@ namespace file_properties " -alias TemplateId = String(min_length=1,pattern="(/|ptid:).*") -alias PathOrId = String(pattern="/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/.*)?)") -alias Id = String(min_length=1) -alias PropertiesSearchCursor = String(min_length=1) - -# -# Core data types -# - -struct PropertyField - "Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox - files as a :type:`PropertyGroup`." - - name String - "Key of the property field associated with a file and template. - Keys can be up to 256 bytes." - value String - "Value of the property field associated with a file and template. - Values can be up to 1024 bytes." - - example default - name = "Security Policy" - value = "Confidential" - -struct PropertyGroup - "A subset of the property fields described by the corresponding :type:`PropertyGroupTemplate`. - Properties are always added to a Dropbox file as a :type:`PropertyGroup`. - The possible key names and value types in this group are defined by the - corresponding :type:`PropertyGroupTemplate`." - - template_id TemplateId - "A unique identifier for the associated template." - fields List(PropertyField) - "The actual properties associated with the template. There can be up to 32 - property types per template." - - example default - template_id = "ptid:1a5n2i6d3OYEAAAAAAAAAYa" - fields = [default] +import common -struct PropertyFieldTemplate - "Defines how a single property field may be structured. Used exclusively by :type:`PropertyGroupTemplate`." +alias Id = String(min_length=1) - name String - "Key of the property field being described. Property field keys can be up to 256 bytes." - description String - "Description of the property field. Property field descriptions can be up to 1024 bytes." - type PropertyType - "Data type of the value of this property field. This type - will be enforced upon property creation and modifications." - union - "Data type of the given property field added." +alias PathOrId = String(pattern="/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/.*)?)") - string - "The associated property field will be of type string. Unicode is supported." +alias PropertiesSearchCursor = String(min_length=1) - example default - string = null +alias TemplateId = String(min_length=1, pattern="(/|ptid:).*") - example default - name = "Security Policy" - description = "This is the security policy of the file or folder described. - Policies can be Confidential, Public or Internal." - type = default +union AddPropertiesError extends InvalidPropertyGroupError + property_group_already_exists + "A property group associated with this template and file already exists." -struct PropertyGroupTemplate - "Defines how a property group may be structured." +union InvalidPropertyGroupError extends PropertiesError + property_field_too_large + "One or more of the supplied property field values is too large." + does_not_fit_template + "One or more of the supplied property fields does not conform to the template specifications." + duplicate_property_groups + "There are 2 or more property groups referring to the same templates in the input." - name String - "Display name for the template. Template names can - be up to 256 bytes." - description String - "Description for the template. Template descriptions - can be up to 1024 bytes." - fields List(PropertyFieldTemplate) - "Definitions of the property fields associated with this template. - There can be up to 32 properties in a single template." +union LogicalOperator + "Logical operator to join search queries together." + or_operator + "Append a query with an \"or\" operator." example default - name = "Security" - description = "These properties describe how confidential this file or folder is." - fields = [default] - -# -# Property routes -# - -struct AddPropertiesArg - path PathOrId - "A unique identifier for the file or folder." - property_groups List(PropertyGroup) - "The property groups which are to be added to a Dropbox file. No two groups in the input should - refer to the same template." + or_operator = null - example default - path = "/my_awesome/word.docx" - property_groups = [default] +union LookUpPropertiesError + property_group_not_found + "No property group was found." union LookupError malformed_path String @@ -148,128 +83,86 @@ union LookupError restricted_content "The file cannot be transferred because the content is restricted. For example, we might restrict a file due to legal requirements." -union LookUpPropertiesError - property_group_not_found - "No property group was found." - -union TemplateError - template_not_found TemplateId - "Template does not exist for the given identifier." - restricted_content - "You do not have permission to modify this template." +union ModifyTemplateError extends TemplateError + conflicting_property_names + "A property field key with that name already exists in the template." + too_many_properties + "There are too many properties in the changed template. + The maximum number of properties per template is 32." + too_many_templates + "There are too many templates for the team." + template_attribute_too_large + "The template name, description or one or more of the property field keys is too large." union PropertiesError extends TemplateError path LookupError unsupported_folder "This folder cannot be tagged. Tagging folders is not supported for team-owned templates." -union InvalidPropertyGroupError extends PropertiesError - property_field_too_large - "One or more of the supplied property field values is too large." - does_not_fit_template - "One or more of the supplied property fields does not conform to the template specifications." - duplicate_property_groups - "There are 2 or more property groups referring to the same templates in the input. " +union PropertiesSearchContinueError + reset + "Indicates that the cursor has been invalidated. Call + :route:`properties/search` to obtain a new cursor." -union AddPropertiesError extends InvalidPropertyGroupError - property_group_already_exists - "A property group associated with this template and file already exists." +union PropertiesSearchError + property_group_lookup LookUpPropertiesError -route properties/add(AddPropertiesArg, Void, AddPropertiesError) - "Add property groups to a Dropbox file. See :route:`templates/add_for_user` or - :route:`templates/add_for_team` to create new templates." +union PropertiesSearchMode + field_name String + "Search for a value associated with this field name." - attrs - scope = "files.metadata.write" + example default + field_name = "Security" -struct OverwritePropertyGroupArg - path PathOrId - "A unique identifier for the file or folder." - property_groups List(PropertyGroup, min_items=1) - "The property groups \"snapshot\" updates to force apply. No two groups in the input should - refer to the same template." +union RemovePropertiesError extends PropertiesError + property_group_lookup LookUpPropertiesError - example default - path = "/my_awesome/word.docx" - property_groups = [default] +union TemplateError + template_not_found TemplateId + "Template does not exist for the given identifier." + restricted_content + "You do not have permission to modify this template." -route properties/overwrite(OverwritePropertyGroupArg, Void, InvalidPropertyGroupError) - "Overwrite property groups associated with a file. This endpoint should be used - instead of :route:`properties/update` when property groups are being updated via a - \"snapshot\" instead of via a \"delta\". In other words, this endpoint will delete all - omitted fields from a property group, whereas :route:`properties/update` will only - delete fields that are explicitly marked for deletion." +union TemplateFilter extends TemplateFilterBase + filter_none + "No templates will be filtered from the result (all templates will be returned)." - attrs - scope = "files.metadata.write" + example default + filter_none = null -struct PropertyGroupUpdate - template_id TemplateId - "A unique identifier for a property template." - add_or_update_fields List(PropertyField)? - "Property fields to update. If the property field already exists, it is updated. - If the property field doesn't exist, the property group is added." - remove_fields List(String)? - "Property fields to remove (by name), provided they exist." +union TemplateFilterBase + filter_some List(TemplateId, min_items=1) + "Only templates with an ID in the supplied list will be returned (a subset of + templates will be returned)." example default - template_id = "ptid:1a5n2i6d3OYEAAAAAAAAAYa" - add_or_update_fields = [default] - remove_fields = [] + filter_some = ["ptid:1a5n2i6d3OYEAAAAAAAAAYa"] -struct UpdatePropertiesArg - path PathOrId - "A unique identifier for the file or folder." - update_property_groups List(PropertyGroupUpdate) - "The property groups \"delta\" updates to apply." +union TemplateOwnerType + user + "Template will be associated with a user." + team + "Template will be associated with a team." example default - path = "/my_awesome/word.docx" - update_property_groups = [default] + user = null union UpdatePropertiesError extends InvalidPropertyGroupError property_group_lookup LookUpPropertiesError -route properties/update(UpdatePropertiesArg, Void, UpdatePropertiesError) - "Add, update or remove properties associated with the supplied file and templates. - This endpoint should be used instead of :route:`properties/overwrite` when property groups - are being updated via a \"delta\" instead of via a \"snapshot\" . In other words, this endpoint - will not delete any omitted fields from a property group, whereas :route:`properties/overwrite` - will delete any fields that are omitted from a property group." - - attrs - scope = "files.metadata.write" - -struct RemovePropertiesArg +struct AddPropertiesArg path PathOrId "A unique identifier for the file or folder." - property_template_ids List(TemplateId) - "A list of identifiers for a template created by :route:`templates/add_for_user` or - :route:`templates/add_for_team`." + property_groups List(PropertyGroup) + "The property groups which are to be added to a Dropbox file. No two groups in the input should + refer to the same template." example default path = "/my_awesome/word.docx" - property_template_ids = ["ptid:1a5n2i6d3OYEAAAAAAAAAYa"] - -union RemovePropertiesError extends PropertiesError - property_group_lookup LookUpPropertiesError - -route properties/remove(RemovePropertiesArg, Void, RemovePropertiesError) - "Permanently removes the specified property group from the file. To remove specific property field key - value pairs, see :route:`properties/update`. - To update a template, see - :route:`templates/update_for_user` or :route:`templates/update_for_team`. - To remove a template, see - :route:`templates/remove_for_user` or :route:`templates/remove_for_team`." - - attrs - scope = "files.metadata.write" - -# -# Property Group Template Routes -# + property_groups = [default] struct AddTemplateArg extends PropertyGroupTemplate + example default name = "Security" description = "These properties describe how confidential this file or folder is." @@ -283,33 +176,6 @@ struct AddTemplateResult example default template_id = "ptid:1a5n2i6d3OYEAAAAAAAAAYa" -union ModifyTemplateError extends TemplateError - conflicting_property_names - "A property field key with that name already exists in the template." - too_many_properties - "There are too many properties in the changed template. - The maximum number of properties per template is 32." - too_many_templates - "There are too many templates for the team." - template_attribute_too_large - "The template name, description or one or more of the property field keys is too large." - -route templates/add_for_user(AddTemplateArg, AddTemplateResult, ModifyTemplateError) - "Add a template associated with a user. See :route:`properties/add` to add properties to a file. This - endpoint can't be called on a team member or admin's behalf." - - attrs - scope = "files.metadata.write" - -route templates/add_for_team(AddTemplateArg, AddTemplateResult, ModifyTemplateError) - "Add a template associated with a team. See :route:`properties/add` to add properties to a file or folder. - - Note: this endpoint will create team-owned templates." - - attrs - auth="team" - scope = "files.team_metadata.write" - struct GetTemplateArg template_id TemplateId "An identifier for template added by route See :route:`templates/add_for_user` or @@ -325,18 +191,188 @@ struct GetTemplateResult extends PropertyGroupTemplate description = "These properties describe how confidential this file or folder is." fields = [default] -route templates/get_for_user(GetTemplateArg, GetTemplateResult, TemplateError) - "Get the schema for a specified template. This endpoint can't be called on a team member or admin's behalf." - - attrs - scope = "files.metadata.read" +struct ListTemplateResult + template_ids List(TemplateId) + "List of identifiers for templates added by See :route:`templates/add_for_user` or + :route:`templates/add_for_team`." -route templates/get_for_team(GetTemplateArg, GetTemplateResult, TemplateError) - "Get the schema for a specified template." + example default + template_ids = ["ptid:1a5n2i6d3OYEAAAAAAAAAYa"] - attrs - auth="team" - scope = "files.team_metadata.write" +struct OverwritePropertyGroupArg + path PathOrId + "A unique identifier for the file or folder." + property_groups List(PropertyGroup, min_items=1) + "The property groups \"snapshot\" updates to force apply. No two groups in the input should + refer to the same template." + + example default + path = "/my_awesome/word.docx" + property_groups = [default] + +struct PropertiesSearchArg + queries List(PropertiesSearchQuery, min_items=1) + "Queries to search." + template_filter TemplateFilter = filter_none + "Filter results to contain only properties associated with these template IDs." + + example default + queries = [default] + template_filter = default + +struct PropertiesSearchContinueArg + cursor PropertiesSearchCursor + "The cursor returned by your last call to :route:`properties/search` or + :route:`properties/search/continue`." + + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +struct PropertiesSearchMatch + id Id + "The ID for the matched file or folder." + path String + "The path for the matched file or folder." + is_deleted Boolean + "Whether the file or folder is deleted." + property_groups List(PropertyGroup) + "List of custom property groups associated with the file." + + example default + id = "id:a4ayc_80_OEAAAAAAAAAXz" + path = "/my_awesome/word.docx" + is_deleted = false + property_groups = [default] + +struct PropertiesSearchQuery + query String + "The property field value for which to search across templates." + mode PropertiesSearchMode + "The mode with which to perform the search." + logical_operator LogicalOperator = or_operator + "The logical operator with which to append the query." + + example default + query = "Confidential" + mode = default + logical_operator = default + +struct PropertiesSearchResult + matches List(PropertiesSearchMatch) + "A list (possibly empty) of matches for the query." + cursor PropertiesSearchCursor? + "Pass the cursor into :route:`properties/search/continue` to continue to receive + search results. Cursor will be null when there are no more results." + + example default + matches = [default] + +struct PropertyField + "Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox + files as a :type:`PropertyGroup`." + name String + "Key of the property field associated with a file and template. + Keys can be up to 256 bytes." + value String + "Value of the property field associated with a file and template. + Values can be up to 1024 bytes." + + example default + name = "Security Policy" + value = "Confidential" + +struct PropertyFieldTemplate + "Defines how a single property field may be structured. Used exclusively by :type:`PropertyGroupTemplate`." + name String + "Key of the property field being described. Property field keys can be up to 256 bytes." + description String + "Description of the property field. Property field descriptions can be up to 1024 bytes." + type PropertyType + union + "Data type of the given property field added." + string + "The associated property field will be of type string. Unicode is supported." + + example default + name = "Security Policy" + description = "This is the security policy of the file or folder described. Policies can be Confidential, Public or Internal." + type = string + +struct PropertyGroup + "A subset of the property fields described by the corresponding :type:`PropertyGroupTemplate`. + Properties are always added to a Dropbox file as a :type:`PropertyGroup`. + The possible key names and value types in this group are defined by the + corresponding :type:`PropertyGroupTemplate`." + template_id TemplateId + "A unique identifier for the associated template." + fields List(PropertyField) + "The actual properties associated with the template. There can be up to 32 + property types per template." + + example default + template_id = "ptid:1a5n2i6d3OYEAAAAAAAAAYa" + fields = [default] + +struct PropertyGroupTemplate + "Defines how a property group may be structured." + name String + "Display name for the template. Template names can + be up to 256 bytes." + description String + "Description for the template. Template descriptions + can be up to 1024 bytes." + fields List(PropertyFieldTemplate) + "Definitions of the property fields associated with this template. + There can be up to 32 properties in a single template." + + example default + name = "Security" + description = "These properties describe how confidential this file or folder is." + fields = [default] + +struct PropertyGroupUpdate + "Property routes" + template_id TemplateId + "A unique identifier for a property template." + add_or_update_fields List(PropertyField)? + "Property fields to update. If the property field already exists, it is updated. + If the property field doesn't exist, it will be created as long as the property group already exists." + remove_fields List(String)? + "Property fields to remove (by name), provided they exist." + + example default + template_id = "ptid:1a5n2i6d3OYEAAAAAAAAAYa" + add_or_update_fields = [default] + remove_fields = [] + +struct RemovePropertiesArg + path PathOrId + "A unique identifier for the file or folder." + property_template_ids List(TemplateId) + "A list of identifiers for a template created by :route:`templates/add_for_user` or + :route:`templates/add_for_team`." + + example default + path = "/my_awesome/word.docx" + property_template_ids = ["ptid:1a5n2i6d3OYEAAAAAAAAAYa"] + +struct RemoveTemplateArg + template_id TemplateId + "An identifier for a template created by :route:`templates/add_for_user` or + :route:`templates/add_for_team`." + + example default + template_id = "ptid:1a5n2i6d3OYEAAAAAAAAAYa" + +struct UpdatePropertiesArg + path PathOrId + "A unique identifier for the file or folder." + update_property_groups List(PropertyGroupUpdate) + "The property groups \"delta\" updates to apply." + + example default + path = "/my_awesome/word.docx" + update_property_groups = [default] struct UpdateTemplateArg template_id TemplateId @@ -366,185 +402,142 @@ struct UpdateTemplateResult example default template_id = "ptid:1a5n2i6d3OYEAAAAAAAAAYa" -route templates/update_for_user(UpdateTemplateArg, UpdateTemplateResult, ModifyTemplateError) - "Update a template associated with a user. This route can update the template name, - the template description and add optional properties to templates. This endpoint can't - be called on a team member or admin's behalf." +route properties/add (AddPropertiesArg, Void, AddPropertiesError) + "Add property groups to a Dropbox file. See :route:`templates/add_for_user` or + :route:`templates/add_for_team` to create new templates." attrs + auth = "user" scope = "files.metadata.write" -route templates/update_for_team(UpdateTemplateArg, UpdateTemplateResult, ModifyTemplateError) - "Update a template associated with a team. This route can update the template name, - the template description and add optional properties to templates." +route properties/overwrite (OverwritePropertyGroupArg, Void, InvalidPropertyGroupError) + "Overwrite property groups associated with a file. This endpoint should be used + instead of :route:`properties/update` when property groups are being updated via a + \"snapshot\" instead of via a \"delta\". In other words, this endpoint will delete all + omitted fields from a property group, whereas :route:`properties/update` will only + delete fields that are explicitly marked for deletion." attrs - auth="team" - scope = "files.team_metadata.write" + auth = "user" + scope = "files.metadata.write" -struct ListTemplateResult - template_ids List(TemplateId) - "List of identifiers for templates added by See :route:`templates/add_for_user` or - :route:`templates/add_for_team`." +route properties/remove (RemovePropertiesArg, Void, RemovePropertiesError) + "Permanently removes the specified property group from the file. To remove specific property field key + value pairs, see :route:`properties/update`. + To update a template, see + :route:`templates/update_for_user` or :route:`templates/update_for_team`. + To remove a template, see + :route:`templates/remove_for_user` or :route:`templates/remove_for_team`." - example default - template_ids = ["ptid:1a5n2i6d3OYEAAAAAAAAAYa"] + attrs + auth = "user" + scope = "files.metadata.write" -route templates/list_for_user(Void, ListTemplateResult, TemplateError) - "Get the template identifiers for a team. To get the schema of - each template use :route:`templates/get_for_user`. This endpoint can't be - called on a team member or admin's behalf." +route properties/search (PropertiesSearchArg, PropertiesSearchResult, PropertiesSearchError) + "Search across property templates for particular property field values." attrs + auth = "user" scope = "files.metadata.read" -route templates/list_for_team(Void, ListTemplateResult, TemplateError) - "Get the template identifiers for a team. To get the schema of - each template use :route:`templates/get_for_team`." +route properties/search/continue (PropertiesSearchContinueArg, PropertiesSearchResult, PropertiesSearchContinueError) + "Once a cursor has been retrieved from :route:`properties/search`, use this to paginate through all + search results." attrs - auth="team" - scope = "files.team_metadata.write" - -struct RemoveTemplateArg - template_id TemplateId - "An identifier for a template created by :route:`templates/add_for_user` or - :route:`templates/add_for_team`." - - example default - template_id = "ptid:1a5n2i6d3OYEAAAAAAAAAYa" + auth = "user" + scope = "files.metadata.read" -route templates/remove_for_user(RemoveTemplateArg, Void, TemplateError) - "Permanently removes the specified template created from :route:`templates/add_for_user`. - All properties associated with the template will also be removed. This action - cannot be undone." +route properties/update (UpdatePropertiesArg, Void, UpdatePropertiesError) + "Add, update or remove properties associated with the supplied file and templates. + This endpoint should be used instead of :route:`properties/overwrite` when property groups + are being updated via a \"delta\" instead of via a \"snapshot\" . In other words, this endpoint + will not delete any omitted fields from a property group, whereas :route:`properties/overwrite` + will delete any fields that are omitted from a property group." attrs + auth = "user" scope = "files.metadata.write" -route templates/remove_for_team(RemoveTemplateArg, Void, TemplateError) - "Permanently removes the specified template created from :route:`templates/add_for_user`. - All properties associated with the template will also be removed. This action - cannot be undone." +route templates/add_for_team (AddTemplateArg, AddTemplateResult, ModifyTemplateError) + "Add a template associated with a team. See :route:`properties/add` to add properties to a file or folder. + Note: this endpoint will create team-owned templates." attrs - auth="team" + auth = "team" scope = "files.team_metadata.write" -union TemplateOwnerType - user - "Template will be associated with a user." - team - "Template will be associated with a team." - - example default - user = null - -union LogicalOperator - "Logical operator to join search queries together." - - or_operator - "Append a query with an \"or\" operator." - - example default - or_operator = null - -union PropertiesSearchMode - field_name String - "Search for a value associated with this field name." - - example default - field_name = "Security" - -struct PropertiesSearchQuery - query String - "The property field value for which to search across templates." - mode PropertiesSearchMode - "The mode with which to perform the search." - logical_operator LogicalOperator = or_operator - "The logical operator with which to append the query." - - example default - query = "Confidential" - mode = default - logical_operator = default +route templates/add_for_user (AddTemplateArg, AddTemplateResult, ModifyTemplateError) + "Add a template associated with a user. See :route:`properties/add` to add properties to a file. This + endpoint can't be called on a team member or admin's behalf." -union TemplateFilterBase - filter_some List(TemplateId, min_items=1) - "Only templates with an ID in the supplied list will be returned (a subset of - templates will be returned)." + attrs + auth = "user" + scope = "files.metadata.write" - example default - filter_some = ["ptid:1a5n2i6d3OYEAAAAAAAAAYa"] +route templates/get_for_team (GetTemplateArg, GetTemplateResult, TemplateError) + "Get the schema for a specified template." -union TemplateFilter extends TemplateFilterBase - filter_none - "No templates will be filtered from the result (all templates will be returned)." + attrs + auth = "team" + scope = "files.team_metadata.write" - example default - filter_none = null +route templates/get_for_user (GetTemplateArg, GetTemplateResult, TemplateError) + "Get the schema for a specified template. This endpoint can't be called on a team member or admin's behalf." -struct PropertiesSearchArg - queries List(PropertiesSearchQuery, min_items=1) - "Queries to search." - template_filter TemplateFilter = filter_none - "Filter results to contain only properties associated with these template IDs." + attrs + auth = "user" + scope = "files.metadata.read" - example default - queries = [default] - template_filter = default +route templates/list_for_team (Void, ListTemplateResult, TemplateError) + "Get the template identifiers for a team. To get the schema of + each template use :route:`templates/get_for_team`." -struct PropertiesSearchMatch - id Id - "The ID for the matched file or folder." - path String - "The path for the matched file or folder." - is_deleted Boolean - "Whether the file or folder is deleted." - property_groups List(PropertyGroup) - "List of custom property groups associated with the file." + attrs + auth = "team" + scope = "files.team_metadata.write" - example default - id = "id:a4ayc_80_OEAAAAAAAAAXz" - path = "/my_awesome/word.docx" - is_deleted = false - property_groups = [default] +route templates/list_for_user (Void, ListTemplateResult, TemplateError) + "Get the template identifiers for a team. To get the schema of + each template use :route:`templates/get_for_user`. This endpoint can't be + called on a team member or admin's behalf." -struct PropertiesSearchResult - matches List(PropertiesSearchMatch) - "A list (possibly empty) of matches for the query." - cursor PropertiesSearchCursor? - "Pass the cursor into :route:`properties/search/continue` to continue to receive - search results. Cursor will be null when there are no more results." + attrs + auth = "user" + scope = "files.metadata.read" - example default - matches = [default] +route templates/remove_for_team (RemoveTemplateArg, Void, TemplateError) + "Permanently removes the specified template created from :route:`templates/add_for_user`. + All properties associated with the template will also be removed. This action + cannot be undone." -union PropertiesSearchError - property_group_lookup LookUpPropertiesError + attrs + auth = "team" + scope = "files.team_metadata.write" -route properties/search(PropertiesSearchArg, PropertiesSearchResult, PropertiesSearchError) - "Search across property templates for particular property field values." +route templates/remove_for_user (RemoveTemplateArg, Void, TemplateError) + "Permanently removes the specified template created from :route:`templates/add_for_user`. + All properties associated with the template will also be removed. This action + cannot be undone." attrs - scope = "files.metadata.read" - -struct PropertiesSearchContinueArg - cursor PropertiesSearchCursor - "The cursor returned by your last call to :route:`properties/search` or - :route:`properties/search/continue`." + auth = "user" + scope = "files.metadata.write" - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" +route templates/update_for_team (UpdateTemplateArg, UpdateTemplateResult, ModifyTemplateError) + "Update a template associated with a team. This route can update the template name, + the template description and add optional properties to templates." -union PropertiesSearchContinueError - reset - "Indicates that the cursor has been invalidated. Call - :route:`properties/search` to obtain a new cursor." + attrs + auth = "team" + scope = "files.team_metadata.write" -route properties/search/continue (PropertiesSearchContinueArg, PropertiesSearchResult, PropertiesSearchContinueError) - "Once a cursor has been retrieved from :route:`properties/search`, use this to paginate through all - search results." +route templates/update_for_user (UpdateTemplateArg, UpdateTemplateResult, ModifyTemplateError) + "Update a template associated with a user. This route can update the template name, + the template description and add optional properties to templates. This endpoint can't + be called on a team member or admin's behalf." attrs - scope = "files.metadata.read" + auth = "user" + scope = "files.metadata.write" + diff --git a/file_requests.stone b/file_requests.stone index 8dae211..84e3af2 100644 --- a/file_requests.stone +++ b/file_requests.stone @@ -1,15 +1,12 @@ namespace file_requests "This namespace contains endpoints and data types for file request operations." - -alias FileRequestId = String(pattern="[-_0-9a-zA-Z]+", min_length=1) - import common import files -# -# Common file requests objects -# +alias FileRequestId = String(min_length=1, pattern="[-_0-9a-zA-Z]+") + +alias FileRequestValidationError = String? union GracePeriod one_day @@ -21,17 +18,110 @@ union GracePeriod example default seven_days = null -struct FileRequestDeadline +union GeneralFileRequestsError + "There is an error accessing the file requests functionality." + disabled_for_team + "This user's Dropbox Business team doesn't allow file requests." + +union FileRequestError extends GeneralFileRequestsError + "There is an error with the file request." + not_found + "This file request ID was not found." + not_a_folder + "The specified path is not a folder." + app_lacks_access + "This file request is not accessible to this app. Apps with the app + folder permission can only access file requests in their app folder." + no_permission + "This user doesn't have permission to access or modify this file + request." + email_unverified + "This user's email address is not verified. File requests are only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + validation_error + "There was an error validating the request. For example, the title was + invalid, or there were disallowed characters in the destination path." + no_write_permission + "This user doesn't have permission to edit files in a destination folder" + +union ListFileRequestsContinueError extends GeneralFileRequestsError + "There was an error retrieving the file requests." + invalid_cursor + "The cursor is invalid." + +union ListFileRequestsError extends GeneralFileRequestsError + "There was an error retrieving the file requests." + +union GetFileRequestError extends FileRequestError + "There was an error retrieving the specified file request." + +union CreateFileRequestError extends FileRequestError + "There was an error creating the file request." + invalid_location + "File requests are not available on the specified folder." + rate_limit + "The user has reached the rate limit for creating file requests. The + limit is currently 4000 file requests total." + +union UpdateFileRequestError extends FileRequestError + "There is an error updating the file request." + +union CountFileRequestsError extends GeneralFileRequestsError + "There was an error counting the file requests." + +union DeleteFileRequestError extends FileRequestError + "There was an error deleting these file requests." + file_request_open + "One or more file requests currently open." + +union DeleteAllClosedFileRequestsError extends FileRequestError + "There was an error deleting all closed file requests." + +union UpdateFileRequestDeadline + no_update + "Do not change the file request's deadline." + update FileRequestDeadline? + "If :val:`null`, the file request's deadline is cleared." + + example set_deadline + update = deadline_with_grace_period + +struct UpdateFileRequestArgs + "Arguments for :route:`update`." + id FileRequestId + "The ID of the file request to update." + title String(min_length=1)? + "The new title of the file request. Must not be empty." + destination files.Path? + "The new path of the folder in the Dropbox where uploaded files will be + sent. For apps with the app folder permission, this will be relative to + the app folder." + deadline UpdateFileRequestDeadline = no_update + "The new deadline for the file request. Deadlines can only be set by + Professional and Business accounts." + open Boolean? + "Whether to set this file request as open or closed." + description String? + "The description of the file request." + + example default + id = "oaCAVmEyrqYnkZX9955Y" + title = "Homework submission" + destination = "/File Requests/Homework" + deadline = set_deadline + open = true +struct FileRequestDeadline deadline common.DropboxTimestamp "The deadline for this file request." allow_late_uploads GracePeriod? "If set, allow uploads after the deadline has passed. These - uploads will be marked overdue." + uploads will be marked overdue." example deadline deadline = "2020-10-12T17:00:00Z" - + example deadline_with_grace_period deadline = "2020-10-12T17:00:00Z" allow_late_uploads = seven_days @@ -39,7 +129,6 @@ struct FileRequestDeadline struct FileRequest "A :link:`file request https://www.dropbox.com/help/9090` for receiving files into the user's Dropbox account." - id FileRequestId "The ID of the file request." url String(min_length=1) @@ -63,6 +152,8 @@ struct FileRequest "The number of files this file request has received." description String? "A description of the file request." + video_project_id String? + "If this request was created from video project, its id." example default id = "oaCAVmEyrqYnkZX9955Y" @@ -74,7 +165,7 @@ struct FileRequest is_open = true file_count = 3 description = "Please submit your homework here." - + example with_deadline id = "BAJ7IrRGicQKGToykQdB" url = "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB" @@ -84,7 +175,7 @@ struct FileRequest deadline = deadline is_open = true file_count = 105 - + example with_no_deadline id = "rxwMPvK3ATTa0VxOJu5T" url = "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T" @@ -95,51 +186,8 @@ struct FileRequest is_open = true file_count = 37 -alias FileRequestValidationError = String? - -union GeneralFileRequestsError - "There is an error accessing the file requests functionality." - - disabled_for_team - "This user's Dropbox Business team doesn't allow file requests." - -union FileRequestError extends GeneralFileRequestsError - "There is an error with the file request." - - not_found - "This file request ID was not found." - not_a_folder - "The specified path is not a folder." - app_lacks_access - "This file request is not accessible to this app. Apps with the app - folder permission can only access file requests in their app folder." - no_permission - "This user doesn't have permission to access or modify this file - request." - email_unverified - "This user's email address is not verified. File requests are only - available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - validation_error - "There was an error validating the request. For example, the title was - invalid, or there were disallowed characters in the destination path." - -# -# Getting file requests -# - -route list:2(ListFileRequestsArg, ListFileRequestsV2Result, ListFileRequestsError) - "Returns a list of file requests owned by this user. For apps with the app - folder permission, this will only return file requests with destinations in - the app folder." - - attrs - allow_app_folder_app = true - scope = "file_requests.read" - struct ListFileRequestsArg "Arguments for :route:`list:2`." - limit UInt64 = 1000 "The maximum number of file requests that should be returned per request." @@ -148,14 +196,11 @@ struct ListFileRequestsArg struct ListFileRequestsV2Result "Result for :route:`list:2` and :route:`list/continue`." - file_requests List(FileRequest) "The file requests owned by this user. Apps with the app folder permission will only see file requests in their app folder." - cursor String "Pass the cursor into :route:`list/continue` to obtain additional file requests." - has_more Boolean "Is true if there are additional file requests that have not been returned yet. An additional call to :route:list/continue` can retrieve them." @@ -165,14 +210,6 @@ struct ListFileRequestsV2Result cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" has_more = true -route list/continue(ListFileRequestsContinueArg, ListFileRequestsV2Result, ListFileRequestsContinueError) - "Once a cursor has been retrieved from :route:`list:2`, use this to paginate through all - file requests. The cursor must come from a previous call to :route:`list:2` or - :route:`list/continue`." - attrs - allow_app_folder_app = true - scope = "file_requests.read" - struct ListFileRequestsContinueArg cursor String "The cursor returned by the previous API call specified in the endpoint description." @@ -180,25 +217,8 @@ struct ListFileRequestsContinueArg example default cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" -union ListFileRequestsContinueError extends GeneralFileRequestsError - "There was an error retrieving the file requests." - - invalid_cursor - "The cursor is invalid." - - -route list(Void, ListFileRequestsResult, ListFileRequestsError) - "Returns a list of file requests owned by this user. For apps with the app - folder permission, this will only return file requests with destinations in - the app folder." - - attrs - allow_app_folder_app = true - scope = "file_requests.read" - struct ListFileRequestsResult "Result for :route:`list`." - file_requests List(FileRequest) "The file requests owned by this user. Apps with the app folder permission will only see file requests in their app folder." @@ -206,48 +226,16 @@ struct ListFileRequestsResult example default file_requests = [default, with_deadline, with_no_deadline] -union ListFileRequestsError extends GeneralFileRequestsError - "There was an error retrieving the file requests." - - -# -# Getting individual file requests -# - -route get(GetFileRequestArgs, FileRequest, GetFileRequestError) - "Returns the specified file request." - - attrs - allow_app_folder_app = true - scope = "file_requests.read" - struct GetFileRequestArgs "Arguments for :route:`get`." - id FileRequestId "The ID of the file request to retrieve." example default id = "oaCAVmEyrqYnkZX9955Y" -union GetFileRequestError extends FileRequestError - "There was an error retrieving the specified file request." - - -# -# Creating new file requests -# - -route create(CreateFileRequestArgs, FileRequest, CreateFileRequestError) - "Creates a file request for this user." - - attrs - allow_app_folder_app = true - scope = "file_requests.write" - struct CreateFileRequestArgs "Arguments for :route:`create`." - title String(min_length=1) "The title of the file request. Must not be empty." destination files.Path @@ -263,147 +251,122 @@ struct CreateFileRequestArgs later." description String? "A description of the file request." + video_project_id String? + "If this request was created from video project, its id." example default title = "Homework submission" destination = "/File Requests/Homework" deadline = deadline_with_grace_period -union CreateFileRequestError extends FileRequestError - "There was an error creating the file request." +struct CountFileRequestsResult + "Result for :route:`count`." + file_request_count UInt64 + "The number file requests owner by this user." - invalid_location - "File requests are not available on the specified folder." - rate_limit - "The user has reached the rate limit for creating file requests. The - limit is currently 4000 file requests total." + example default + file_request_count = 15 -# -# Updating existing file requests -# +struct DeleteFileRequestArgs + "Arguments for :route:`delete`." + ids List(FileRequestId) + "List IDs of the file requests to delete." -route update(UpdateFileRequestArgs, FileRequest, UpdateFileRequestError) - "Update a file request." + example default + ids = ["oaCAVmEyrqYnkZX9955Y", "BaZmehYoXMPtaRmfTbSG"] - attrs - allow_app_folder_app = true - scope = "file_requests.write" +struct DeleteFileRequestsResult + "Result for :route:`delete`." + file_requests List(FileRequest) + "The file requests deleted by the request." -struct UpdateFileRequestArgs - "Arguments for :route:`update`." + example default + file_requests = [default, with_deadline, with_no_deadline] - id FileRequestId - "The ID of the file request to update." - title String(min_length=1)? - "The new title of the file request. Must not be empty." - destination files.Path? - "The new path of the folder in the Dropbox where uploaded files will be - sent. For apps with the app folder permission, this will be relative to - the app folder." - deadline UpdateFileRequestDeadline = no_update - "The new deadline for the file request. Deadlines can only be set by - Professional and Business accounts." - union - no_update - "Do not change the file request's deadline." - update FileRequestDeadline? - "If :val:`null`, the file request's deadline is cleared." - - example set_deadline - update = deadline_with_grace_period - open Boolean? - "Whether to set this file request as open or closed." - description String? - "The description of the file request." +struct DeleteAllClosedFileRequestsResult + "Result for :route:`delete_all_closed`." + file_requests List(FileRequest) + "The file requests deleted for this user." example default - id = "oaCAVmEyrqYnkZX9955Y" - title = "Homework submission" - destination = "/File Requests/Homework" - deadline = set_deadline - open = true + file_requests = [default, with_deadline, with_no_deadline] -union UpdateFileRequestError extends FileRequestError - "There is an error updating the file request." +route list:2 (ListFileRequestsArg, ListFileRequestsV2Result, ListFileRequestsError) + "Returns a list of file requests owned by this user. For apps with the app + folder permission, this will only return file requests with destinations in + the app folder." -# -# Count file requests -# + attrs + allow_app_folder_app = true + auth = "user" + scope = "file_requests.read" -route count(Void, CountFileRequestsResult, CountFileRequestsError) - "Returns the total number of file requests owned by this user. Includes both open and - closed file requests." +route list/continue (ListFileRequestsContinueArg, ListFileRequestsV2Result, ListFileRequestsContinueError) + "Once a cursor has been retrieved from :route:`list:2`, use this to paginate through all + file requests. The cursor must come from a previous call to :route:`list:2` or + :route:`list/continue`." attrs allow_app_folder_app = true + auth = "user" scope = "file_requests.read" -struct CountFileRequestsResult - "Result for :route:`count`." - - file_request_count UInt64 - "The number file requests owner by this user." +route list (Void, ListFileRequestsResult, ListFileRequestsError) + "Returns a list of file requests owned by this user. For apps with the app + folder permission, this will only return file requests with destinations in + the app folder." - example default - file_request_count = 15 + attrs + allow_app_folder_app = true + auth = "user" + scope = "file_requests.read" -union CountFileRequestsError extends GeneralFileRequestsError - "There was an error counting the file requests." +route get (GetFileRequestArgs, FileRequest, GetFileRequestError) + "Returns the specified file request." -# -# Deleting existing file requests -# + attrs + allow_app_folder_app = true + auth = "user" + scope = "file_requests.read" -route delete(DeleteFileRequestArgs, DeleteFileRequestsResult, DeleteFileRequestError) - "Delete a batch of closed file requests." +route create (CreateFileRequestArgs, FileRequest, CreateFileRequestError) + "Creates a file request for this user." attrs allow_app_folder_app = true + auth = "user" scope = "file_requests.write" -struct DeleteFileRequestArgs - "Arguments for :route:`delete`." - - ids List(FileRequestId) - "List IDs of the file requests to delete." - - example default - ids = ["oaCAVmEyrqYnkZX9955Y", "BaZmehYoXMPtaRmfTbSG"] - -struct DeleteFileRequestsResult - "Result for :route:`delete`." +route update (UpdateFileRequestArgs, FileRequest, UpdateFileRequestError) + "Update a file request." - file_requests List(FileRequest) - "The file requests deleted by the request." + attrs + allow_app_folder_app = true + auth = "user" + scope = "file_requests.write" - example default - file_requests = [default, with_deadline, with_no_deadline] +route count (Void, CountFileRequestsResult, CountFileRequestsError) + "Returns the total number of file requests owned by this user. Includes both open and + closed file requests." -union DeleteFileRequestError extends FileRequestError - "There was an error deleting these file requests." + attrs + allow_app_folder_app = true + auth = "user" + scope = "file_requests.read" - file_request_open - "One or more file requests currently open." +route delete (DeleteFileRequestArgs, DeleteFileRequestsResult, DeleteFileRequestError) + "Delete a batch of closed file requests." -# -# Deleting all closed file requests -# + attrs + allow_app_folder_app = true + auth = "user" + scope = "file_requests.write" -route delete_all_closed(Void, DeleteAllClosedFileRequestsResult, DeleteAllClosedFileRequestsError) +route delete_all_closed (Void, DeleteAllClosedFileRequestsResult, DeleteAllClosedFileRequestsError) "Delete all closed file requests owned by this user." attrs allow_app_folder_app = true + auth = "user" scope = "file_requests.write" -struct DeleteAllClosedFileRequestsResult - "Result for :route:`delete_all_closed`." - - file_requests List(FileRequest) - "The file requests deleted for this user." - - example default - file_requests = [default, with_deadline, with_no_deadline] - -union DeleteAllClosedFileRequestsError extends FileRequestError - "There was an error deleting all closed file requests." diff --git a/file_tagging.stone b/file_tagging.stone deleted file mode 100644 index 4d3842e..0000000 --- a/file_tagging.stone +++ /dev/null @@ -1,115 +0,0 @@ -namespace files - -import common -import async - -alias TagText = String(min_length=1, max_length=32, pattern="[\\w]+") - -union Tag - "Tag that can be added in multiple ways." - - user_generated_tag UserGeneratedTag - "Tag generated by the user." - - example default - user_generated_tag = default - - -struct UserGeneratedTag - tag_text TagText - - example default - tag_text = "my_tag" - - -union BaseTagError - path LookupError - - -##################################### -# Add Tag to an item -##################################### -struct AddTagArg - path Path - "Path to the item to be tagged." - - tag_text TagText - "The value of the tag to add. Will be automatically converted to lowercase letters." - - example default - path = "/Prime_Numbers.txt" - tag_text = "my_tag" - -union AddTagError extends BaseTagError - too_many_tags - "The item already has the maximum supported number of tags." - -route tags/add(AddTagArg, Void, AddTagError) - "Add a tag to an item. A tag is a string. The strings are automatically converted to lowercase letters. No more than 20 tags can be added to a given item." - - attrs - auth = "user" - is_preview = true - scope = "files.metadata.write" - - -##################################### -# Remove Tag from a item -##################################### - -struct RemoveTagArg - path Path - "Path to the item to tag." - - tag_text TagText - "The tag to remove. Will be automatically converted to lowercase letters." - - example default - path = "/Prime_Numbers.txt" - tag_text = "my_tag" - -union RemoveTagError extends BaseTagError - tag_not_present - "That tag doesn't exist at this path." - -route tags/remove(RemoveTagArg, Void, RemoveTagError) - "Remove a tag from an item." - - attrs - auth = "user" - is_preview = true - scope = "files.metadata.write" - -############################################### -# Get tags by item -############################################### -struct GetTagsArg - paths List(Path) - "Path to the items." - - example default - paths = ["/Prime_Numbers.txt"] - -struct PathToTags - path Path - "Path of the item." - tags List(Tag) - "Tags assigned to this item." - example default - path = "/Prime_Numbers.txt" - tags = [default] - -struct GetTagsResult - paths_to_tags List(PathToTags) - "List of paths and their corresponding tags." - - example default - paths_to_tags = [default] - -route tags/get(GetTagsArg, GetTagsResult, BaseTagError) - "Get list of tags assigned to items." - - attrs - auth = "user" - is_preview = true - scope = "files.metadata.read" diff --git a/files.stone b/files.stone index b8348d2..3cc0f19 100644 --- a/files.stone +++ b/files.stone @@ -2,580 +2,575 @@ namespace files "This namespace contains endpoints and data types for basic file operations." import async -import auth import common import file_properties import users_common -alias Id = String(min_length=1) +route search (SearchArg, SearchResult, SearchError) deprecated by search:2 + "Searches for files and folders. -alias FileId = String(pattern="id:.+", min_length=4) + Note: Recent changes will be reflected in search results within a few seconds + and older revisions of existing files may still match your query for up to a few days." -alias ListFolderCursor = String(min_length=1) + attrs + allow_app_folder_app = true + scope = "files.metadata.read" -alias Path = String(pattern="/(.|[\\r\\n])*") +route search:2 (SearchV2Arg, SearchV2Result, SearchError) + "Searches for files and folders. -alias PathOrId = String(pattern="/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/.*)?)") + Note: :route:`search:2` along with :route:`search/continue:2` can only be used to + retrieve a maximum of 10,000 matches. -alias PathROrId = String(pattern="(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/.*)?)") + Recent changes may not immediately be reflected in search results due to a short delay in indexing. + Duplicate results may be returned across pages. Some results may not be returned." -alias PathR = String(pattern="(/(.|[\\r\\n])*)?|(ns:[0-9]+(/.*)?)") # A path that can be the root path (""). + attrs + allow_app_folder_app = true + scope = "files.metadata.read" -alias ReadPath = String(pattern="(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)") +route search/continue:2 (SearchV2ContinueArg, SearchV2Result, SearchError) + "Fetches the next page of search results returned from :route:`search:2`. -alias Rev = String(min_length=9, pattern="[0-9a-f]+") # TODO: Change pattern to "rev:[0-9a-f]{9,}" + Note: :route:`search:2` along with :route:`search/continue:2` can only be used to + retrieve a maximum of 10,000 matches. -alias Sha256HexHash = String(min_length=64, max_length=64) + Recent changes may not immediately be reflected in search results due to a short delay in indexing. + Duplicate results may be returned across pages. Some results may not be returned." -alias SharedLinkUrl = String + attrs + allow_app_folder_app = true + scope = "files.metadata.read" -alias WritePath = String(pattern="(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)") +union Tag + "Tag that can be added in multiple ways." + user_generated_tag UserGeneratedTag + "Tag generated by the user." -alias WritePathOrId = String(pattern="(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") + example default + user_generated_tag = default -# -# Metadata definitions and route -# +union BaseTagError + path LookupError -struct Metadata - "Metadata for a file or folder." +union AddTagError extends BaseTagError + too_many_tags + "The item already has the maximum supported number of tags." - union_closed - file FileMetadata - folder FolderMetadata - deleted DeletedMetadata # Used by list_folder* and search +union RemoveTagError extends BaseTagError + tag_not_present + "That tag doesn't exist at this path." - name String - "The last component of the path (including extension). - This never contains a slash." +struct UserGeneratedTag + tag_text TagText - path_lower String? - "The lowercased full path in the user's Dropbox. This always starts with a slash. - This field will be null if the file or folder is not mounted." + example default + tag_text = "my_tag" - path_display String? - "The cased path to be used for display purposes only. In rare instances the casing will not - correctly match the user's filesystem, but this behavior will match the path provided in - the Core API v1, and at least the last path component will have the correct casing. Changes - to only the casing of paths won't be returned by :route:`list_folder/continue`. This field - will be null if the file or folder is not mounted." +struct AddTagArg + path Path + "Path to the item to be tagged." + tag_text TagText + "The value of the tag to add. Will be automatically converted to lowercase letters." - parent_shared_folder_id common.SharedFolderId? - "Please use :field:`FileSharingInfo.parent_shared_folder_id` - or :field:`FolderSharingInfo.parent_shared_folder_id` instead." + example default + path = "/Prime_Numbers.txt" + tag_text = "my_tag" - preview_url String? - "The preview URL of the file." +struct RemoveTagArg + path Path + "Path to the item to tag." + tag_text TagText + "The tag to remove. Will be automatically converted to lowercase letters." example default - file = default - - example folder_metadata - folder = default + path = "/Prime_Numbers.txt" + tag_text = "my_tag" - example search_metadata - file = search_file_metadata +struct GetTagsArg + paths List(Path) + "Path to the items." -union MetadataV2 - "Metadata for a file, folder or other resource types." + example default + paths = ["/Prime_Numbers.txt"] - metadata Metadata - # new types can be added here in the future +struct PathToTags + path Path + "Path of the item." + tags List(Tag) + "Tags assigned to this item." example default - metadata = search_metadata - -struct HighlightSpan + path = "/Prime_Numbers.txt" + tags = [default] - highlight_str String - "String to be determined whether it should be highlighted or not." - is_highlighted Boolean - "The string should be highlighted or not." +struct GetTagsResult + paths_to_tags List(PathToTags) + "List of paths and their corresponding tags." example default - highlight_str = "test" - is_highlighted = false + paths_to_tags = [default] -struct SharingInfo - "Sharing info for a file or folder." +route tags/add (AddTagArg, Void, AddTagError) + "Add a tag to an item. A tag is a string. The strings are automatically converted to lowercase letters. No more than 20 tags can be added to a given item." - read_only Boolean - "True if the file or folder is inside a read-only shared folder." + attrs + auth = "user" + is_preview = true + scope = "files.metadata.write" - example default - read_only = false +route tags/remove (RemoveTagArg, Void, RemoveTagError) + "Remove a tag from an item." -struct FileSharingInfo extends SharingInfo - "Sharing info for a file which is contained by a shared folder." + attrs + auth = "user" + is_preview = true + scope = "files.metadata.write" - parent_shared_folder_id common.SharedFolderId - "ID of shared folder that holds this file." +route tags/get (GetTagsArg, GetTagsResult, BaseTagError) + "Get list of tags assigned to items." - modified_by users_common.AccountId? - "The last user who modified the file. This field will be null if - the user's account has been deleted." + attrs + auth = "user" + is_preview = true + scope = "files.metadata.read" - example default - read_only = true - parent_shared_folder_id = "84528192421" - modified_by = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" -struct ExportInfo - "Export information for a file." +alias TagText = String(max_length=32, min_length=1, pattern="[\\w]+") - export_as String? - "Format to which the file can be exported to." - export_options List(String)? - "Additional formats to which the file can be exported. These values can be - specified as the export_format in /files/export." +route upload_session/start_batch (UploadSessionStartBatchArg, UploadSessionStartBatchResult, Void) + "Start a batch of upload sessions. See :route:`upload_session/start`. Calls to this endpoint will count + as data transport calls for any Dropbox Business teams with a limit on the number of data + transport calls allowed per month. For more information, see the Data transport limit page + https://www.dropbox.com/developers/reference/data-transport-limit." - example default - export_as = "xlsx" + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct FolderSharingInfo extends SharingInfo - "Sharing info for a folder which is contained in a shared folder or is a - shared folder mount point." - parent_shared_folder_id common.SharedFolderId? - "Set if the folder is contained by a shared folder." +route create_folder (CreateFolderArg, FolderMetadata, CreateFolderError) deprecated + "Create a folder at a given path." - shared_folder_id common.SharedFolderId? - "If this folder is a shared folder mount point, the ID of the shared - folder mounted at this location." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - traverse_only Boolean = false - "Specifies that the folder can only be traversed and the user can only see - a limited subset of the contents of this folder because they don't have - read access to this folder. They do, however, have access to some sub folder." +route create_folder:2 (CreateFolderArg, CreateFolderResult, CreateFolderError) + "Create a folder at a given path." - no_access Boolean = false - "Specifies that the folder cannot be accessed by the user." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - example default - "Folder inside a shared folder." - read_only = false - parent_shared_folder_id = "84528192421" +route delete (DeleteArg, Metadata, DeleteError) deprecated + "Delete the file or folder at a given path. If the path is a folder, all its contents will be + deleted too. A successful response indicates that the file or folder was deleted. The returned + metadata will be the corresponding FileMetadata or FolderMetadata for the item at time of + deletion, and not a DeletedMetadata object." - example shared_folder - "Read-only shared folder mount point." - read_only = true - shared_folder_id = "84528192421" + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct Dimensions - "Dimensions for a photo or video." +route delete:2 (DeleteArg, DeleteResult, DeleteError) + "Delete the file or folder at a given path. If the path is a folder, all its contents will be + deleted too. A successful response indicates that the file or folder was deleted. The returned + metadata will be the corresponding FileMetadata or FolderMetadata for the item at time of + deletion, and not a DeletedMetadata object." - height UInt64 - "Height of the photo/video." - width UInt64 - "Width of the photo/video." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - example default - height = 768 - width = 1024 +route move (RelocationArg, Metadata, RelocationError) deprecated + "Move a file or folder to a different location in the user's Dropbox. If the source path is + a folder all its contents will be moved." -struct GpsCoordinates - "GPS coordinates for a photo or video." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - latitude Float64 - "Latitude of the GPS coordinates." - longitude Float64 - "Longitude of the GPS coordinates." +route move:2 (RelocationArg, RelocationResult, RelocationError) + "Move a file or folder to a different location in the user's Dropbox. If the source path is + a folder all its contents will be moved. Note that we do not currently support case-only + renaming." - example default - latitude = 37.7833 - longitude = 122.4167 + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct MediaMetadata - "Metadata for a photo or video." - union_closed - photo PhotoMetadata - video VideoMetadata +route export (ExportArg, ExportResult, ExportError) + "Export a file from a user's Dropbox. This route only supports exporting files that cannot be + downloaded directly and whose ExportResult.file_metadata has ExportInfo.export_as populated." - dimensions Dimensions? - "Dimension of the photo/video." - location GpsCoordinates? - "The GPS coordinate of the photo/video." - time_taken common.DropboxTimestamp? - "The timestamp when the photo/video is taken." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + is_preview = true + scope = "files.content.read" + select_admin_mode = "whole_team" + style = "download" -struct PhotoMetadata extends MediaMetadata - "Metadata for a photo." - example default - dimensions = default - location = default - time_taken = "2015-05-12T15:50:38Z" +route paper/create (PaperCreateArg, PaperCreateResult, PaperCreateError) + "Creates a new Paper doc with the provided content." -struct VideoMetadata extends MediaMetadata - "Metadata for a video." + attrs + auth = "user" + is_preview = true + scope = "files.content.write" + style = "upload" - duration UInt64? - "The duration of the video in milliseconds." +route paper/update (PaperUpdateArg, PaperUpdateResult, PaperUpdateError) + "Updates an existing Paper doc with the provided content." - example default - dimensions = default - location = default - time_taken = "2015-05-12T15:50:38Z" - duration = 1000 + attrs + auth = "user" + is_preview = true + scope = "files.content.write" + style = "upload" -union_closed MediaInfo - pending - "Indicate the photo/video is still under processing and metadata is - not available yet." - metadata MediaMetadata - "The metadata for the photo/video." -struct SymlinkInfo - target String - "The target this symlink points to." +route download (DownloadArg, FileMetadata, DownloadError) + "Download a file from a user's Dropbox." -struct FileLockMetadata + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.read" + select_admin_mode = "whole_team" + style = "download" - is_lockholder Boolean? - "True if caller holds the file lock." - lockholder_name String? - "The display name of the lock holder." +route copy_reference/get (GetCopyReferenceArg, GetCopyReferenceResult, GetCopyReferenceError) + "Get a copy reference to a file or folder. This reference string can be used to save that + file or folder to another user's Dropbox by passing it to :route:`copy_reference/save`." - lockholder_account_id users_common.AccountId? - "The account ID of the lock holder if known." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" - created common.DropboxTimestamp? - "The timestamp of the lock was created." - - example default - is_lockholder = true - lockholder_name = "Imaginary User" - created = "2015-05-12T15:50:38Z" +route copy_reference/save (SaveCopyReferenceArg, SaveCopyReferenceResult, SaveCopyReferenceError) + "Save a copy reference returned by :route:`copy_reference/get` to the user's Dropbox." -struct FileMetadata extends Metadata + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" - id Id - "A unique identifier for the file." - client_modified common.DropboxTimestamp - "For files, this is the modification time set by the desktop client - when the file was added to Dropbox. Since this time is not verified - (the Dropbox server stores whatever the desktop client sends up), this - should only be used for display purposes (such as sorting) and not, - for example, to determine if a file has changed or not." +route download_zip (DownloadZipArg, DownloadZipResult, DownloadZipError) + "Download a folder from the user's Dropbox, as a zip file. The folder must be less than 20 GB + in size and any single file within must be less than 4 GB in size. The resulting zip must have + fewer than 10,000 total file and folder entries, including the top level folder. The input + cannot be a single file. Note: this endpoint does not support HTTP range requests." - server_modified common.DropboxTimestamp - "The last time the file was modified on Dropbox." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.read" + style = "download" - rev Rev - "A unique identifier for the current revision of a file. This field is - the same rev as elsewhere in the API and can be used to detect changes - and avoid conflicts." - size UInt64 - "The file size in bytes." +route get_preview (PreviewArg, FileMetadata, PreviewError) + "Get a preview for a file. Currently, PDF previews are generated for files with the following + extensions: .ai, .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, + .ppt, .pptm, .pptx, .rtf. HTML previews are generated for .csv, .ods, .xls, .xlsm, .gsheet, + .xlsx. Other formats will return an unsupported extension error." - media_info MediaInfo? - "Additional information if the file is a photo or video. This field will not be set on entries returned by :route:`list_folder`, :route:`list_folder/continue`, or :route:`get_thumbnail_batch`, starting December 2, 2019." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.read" + select_admin_mode = "whole_team" + style = "download" - symlink_info SymlinkInfo? - "Set if this file is a symlink." +route get_thumbnail (ThumbnailArg, FileMetadata, ThumbnailError) + "Get a thumbnail for an image. This method currently supports files with the following file + extensions: jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than + 20MB in size won't be converted to a thumbnail." - sharing_info FileSharingInfo? - "Set if this file is contained in a shared folder." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.read" + select_admin_mode = "whole_team" + style = "download" - is_downloadable Boolean = true - "If true, file can be downloaded directly; else the file must be exported." +route get_thumbnail_batch (GetThumbnailBatchArg, GetThumbnailBatchResult, GetThumbnailBatchError) + "Get thumbnails for a list of images. We allow up to 25 thumbnails in a single batch. This + method currently supports files with the following file extensions: jpg, jpeg, png, tiff, tif, + gif, webp, ppm and bmp. Photos that are larger than 20MB in size won't be converted to a + thumbnail." - export_info ExportInfo? - "Information about format this file can be exported to. This filed must be set if :field:`is_downloadable` - is set to false." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.read" + select_admin_mode = "whole_team" - property_groups List(file_properties.PropertyGroup)? - "Additional information if the file has custom properties with the - property template specified." +route get_thumbnail:2 (ThumbnailV2Arg, PreviewResult, ThumbnailV2Error) + "Get a thumbnail for an image. This method currently supports files with the following file + extensions: jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than + 20MB in size won't be converted to a thumbnail." - has_explicit_shared_members Boolean? - "This flag will only be present if include_has_explicit_shared_members - is true in :route:`list_folder` or :route:`get_metadata`. If this - flag is present, it will be true if this file has any explicit shared - members. This is different from sharing_info in that this could be true - in the case where a file has explicit members but is not contained within - a shared folder." + attrs + allow_app_folder_app = true + auth = "app, user" + host = "content" + scope = "files.content.read" + select_admin_mode = "whole_team" + style = "download" - content_hash Sha256HexHash? - "A hash of the file content. This field can be used to verify data integrity. For more - information see our :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." - file_lock_info FileLockMetadata? - "If present, the metadata associated with the file's current lock." +route create_folder_batch (CreateFolderBatchArg, CreateFolderBatchLaunch, Void) + "Create multiple folders at once. This route is asynchronous for large batches, which returns + a job ID immediately and runs the create folder batch asynchronously. Otherwise, creates + the folders and returns the result synchronously for smaller inputs. You can force asynchronous + behaviour by using the CreateFolderBatchArg.force_async flag. Use + :route:`create_folder_batch/check` to check the job status." - example default - id = "id:a4ayc_80_OEAAAAAAAAAXw" - name = "Prime_Numbers.txt" - path_lower = "/homework/math/prime_numbers.txt" - path_display = "/Homework/math/Prime_Numbers.txt" - sharing_info = default - client_modified = "2015-05-12T15:50:38Z" - server_modified = "2015-05-12T15:50:38Z" - rev = "a1c10ce0dd78" - size = 7212 - is_downloadable = true - property_groups = [default] - has_explicit_shared_members = false - content_hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - file_lock_info = default + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - example search_file_metadata - id = "id:a4ayc_80_OEAAAAAAAAAXw" - name = "Prime_Numbers.txt" - path_lower = "/homework/math/prime_numbers.txt" - path_display = "/Homework/math/Prime_Numbers.txt" - sharing_info = default - client_modified = "2015-05-12T15:50:38Z" - server_modified = "2015-05-12T15:50:38Z" - rev = "a1c10ce0dd78" - size = 7212 - is_downloadable = true - has_explicit_shared_members = false - content_hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" +route create_folder_batch/check (async.PollArg, CreateFolderBatchJobStatus, async.PollError) + "Returns the status of an asynchronous job for :route:`create_folder_batch`. If success, it + returns list of result for each entry." -struct FolderMetadata extends Metadata - id Id - "A unique identifier for the folder." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - shared_folder_id common.SharedFolderId? - "Please use :field:`sharing_info` instead." +route delete_batch (DeleteBatchArg, DeleteBatchLaunch, Void) + "Delete multiple files/folders at once. This route is asynchronous, which returns a job ID + immediately and runs the delete batch asynchronously. Use :route:`delete_batch/check` to + check the job status." - sharing_info FolderSharingInfo? - "Set if the folder is contained in a shared folder or is a shared folder mount point." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - property_groups List(file_properties.PropertyGroup)? - "Additional information if the file has custom properties with the - property template specified. Note that only properties associated with - user-owned templates, not team-owned templates, can be attached to folders." +route delete_batch/check (async.PollArg, DeleteBatchJobStatus, async.PollError) + "Returns the status of an asynchronous job for :route:`delete_batch`. If success, it returns + list of result for each entry." - example default - id = "id:a4ayc_80_OEAAAAAAAAAXz" - path_lower = "/homework/math" - path_display = "/Homework/math" - name = "math" - sharing_info = default - property_groups = [default] + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct DeletedMetadata extends Metadata - "Indicates that there used to be a file or folder at this path, but it no longer exists." - # TODO: Do we care about whether it's a deleted file or folder? - # TODO: Add the mtime when it's been deleted? And the rev??? +route permanently_delete (DeleteArg, Void, DeleteError) + "Permanently delete the file or folder at a given path (see + https://www.dropbox.com/en/help/40). If the given file or folder is not yet deleted, this + route will first delete it. It is possible for this route to successfully delete, then fail + to permanently delete. Note: This endpoint is only available for Dropbox Business apps." - example default - path_lower = "/homework/math/pi.txt" - path_display = "/Homework/math/pi.txt" - name = "pi.txt" + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.permanent_delete" + select_admin_mode = "team_admin" -union_closed GetMetadataError - path LookupError +route copy (RelocationArg, Metadata, RelocationError) deprecated + "Copy a file or folder to a different location in the user's Dropbox. + If the source path is a folder all its contents will be copied." -struct GetMetadataArg - path ReadPath - "The path of a file or folder on Dropbox." - include_media_info Boolean = false - "If true, :field:`FileMetadata.media_info` is set for photo and video." - include_deleted Boolean = false - "If true, :type:`DeletedMetadata` will be returned for deleted file or - folder, otherwise :field:`LookupError.not_found` will be returned." - include_has_explicit_shared_members Boolean = false - "If true, the results will include a flag for each file indicating whether or not - that file has any explicit members." - include_property_groups file_properties.TemplateFilterBase? - "If set to a valid list of template IDs, :field:`FileMetadata.property_groups` - is set if there exists property data associated with the file and each of the - listed templates." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - example default - path = "/Homework/math" +route copy:2 (RelocationArg, RelocationResult, RelocationError) + "Copy a file or folder to a different location in the user's Dropbox. + If the source path is a folder all its contents will be copied." - example id - path = "id:a4ayc_80_OEAAAAAAAAAYa" + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - example rev - path = "rev:a1c10ce0dd78" +route copy_batch (RelocationBatchArg, RelocationBatchLaunch, Void) deprecated + "Copy multiple files or folders to different locations at once in the user's Dropbox. + This route will return job ID immediately and do the async copy job in background. + Please use :route:`copy_batch/check` to check the job status." -route get_metadata (GetMetadataArg, Metadata, GetMetadataError) - "Returns the metadata for a file or folder. + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - Note: Metadata for the root folder is unsupported." +route copy_batch:2 (CopyBatchArg, RelocationBatchV2Launch, Void) + "Copy multiple files or folders to different locations at once in the user's Dropbox. + This route will replace :route:`copy_batch`. The main difference is this route will return + status for each entry, while :route:`copy_batch` raises failure if any entry fails. This + route will either finish synchronously, or return a job ID and do the async copy job in + background. Please use :route:`copy_batch/check:2` to check the job status." attrs allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "files.metadata.read" -# -# General fileops -# + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct FileOpsResult - example default +route copy_batch/check (async.PollArg, RelocationBatchJobStatus, async.PollError) deprecated + "Returns the status of an asynchronous job for :route:`copy_batch:1`. If success, it returns + list of results for each entry." -# -# List folder routes -# + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct ListFolderLongpollArg - cursor ListFolderCursor - "A cursor as returned by :route:`list_folder` or :route:`list_folder/continue`. Cursors - retrieved by setting :field:`ListFolderArg.include_media_info` to :val:`true` are - not supported." +route copy_batch/check:2 (async.PollArg, RelocationBatchV2JobStatus, async.PollError) + "Returns the status of an asynchronous job for :route:`copy_batch:2`. It returns list of + results for each entry." - timeout UInt64(min_value=30, max_value=480) = 30 - "A timeout in seconds. The request will block for at most this length - of time, plus up to 90 seconds of random jitter added to avoid the - thundering herd problem. Care should be taken when using this - parameter, as some network infrastructure does not support long - timeouts." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" +route move_batch (RelocationBatchArg, RelocationBatchLaunch, Void) deprecated + "Move multiple files or folders to different locations at once in the user's Dropbox. + This route will return job ID immediately and do the async moving job in background. + Please use :route:`move_batch/check` to check the job status." -struct ListFolderLongpollResult - changes Boolean - "Indicates whether new changes are available. If true, call - :route:`list_folder/continue` to retrieve the changes." - backoff UInt64? - "If present, backoff for at least this many seconds before calling - :route:`list_folder/longpoll` again." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - example default - changes = true +route move_batch:2 (MoveBatchArg, RelocationBatchV2Launch, Void) + "Move multiple files or folders to different locations at once in the user's Dropbox. + Note that we do not currently support case-only renaming. This route will replace + :route:`move_batch`. The main difference is this route will return status for each entry, + while :route:`move_batch` raises failure if any entry fails. This route will either finish + synchronously, or return a job ID and do the async move job in background. Please use + :route:`move_batch/check:2` to check the job status." -union ListFolderLongpollError - reset - "Indicates that the cursor has been invalidated. Call - :route:`list_folder` to obtain a new cursor." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -route list_folder/longpoll (ListFolderLongpollArg, ListFolderLongpollResult, ListFolderLongpollError) - "A longpoll endpoint to wait for changes on an account. In conjunction with - :route:`list_folder/continue`, this call gives you a low-latency way to - monitor an account for file changes. The connection will block until there - are changes available or a timeout occurs. This endpoint is useful mostly - for client-side apps. If you're looking for server-side notifications, - check out our - :link:`webhooks documentation https://www.dropbox.com/developers/reference/webhooks`." +route move_batch/check (async.PollArg, RelocationBatchJobStatus, async.PollError) deprecated + "Returns the status of an asynchronous job for :route:`move_batch:1`. If success, it returns + list of results for each entry." attrs - host = "notify" - auth = "noauth" allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "files.metadata.read" - -struct SharedLink - url SharedLinkUrl - "Shared link url." - password String? - "Password for the shared link." - - example default - url = "https://www.dropbox.com/s/2sn712vy1ovegw8?dl=0" - password = "password" + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct ListFolderArg - path PathROrId - "A unique identifier for the file." - recursive Boolean = false - "If true, the list folder operation will be applied recursively to all subfolders - and the response will contain contents of all subfolders." - include_media_info Boolean = false - "If true, :field:`FileMetadata.media_info` is set for photo and video. This parameter will no longer have an effect starting December 2, 2019." - include_deleted Boolean = false - "If true, the results will include entries for files and folders that used to exist but were deleted." - include_has_explicit_shared_members Boolean = false - "If true, the results will include a flag for each file indicating whether or not - that file has any explicit members." - include_mounted_folders Boolean = true - "If true, the results will include entries under mounted folders which includes app folder, - shared folder and team folder." - limit UInt32(min_value=1, max_value=2000)? - "The maximum number of results to return per request. Note: This is an approximate number - and there can be slightly more entries returned in some cases." - shared_link SharedLink? - "A shared link to list the contents of. If the link is password-protected, the password - must be provided. If this field is present, :field:`ListFolderArg.path` will be relative - to root of the shared link. Only non-recursive mode is supported for shared link." - include_property_groups file_properties.TemplateFilterBase? - "If set to a valid list of template IDs, :field:`FileMetadata.property_groups` - is set if there exists property data associated with the file and each of the - listed templates." - include_non_downloadable_files Boolean = true - "If true, include files that are not downloadable, i.e. Google Docs." +route move_batch/check:2 (async.PollArg, RelocationBatchV2JobStatus, async.PollError) + "Returns the status of an asynchronous job for :route:`move_batch:2`. It returns list of + results for each entry." - example default - path = "/Homework/math" - recursive = false + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct ListFolderResult - entries List(Metadata) - "The files and (direct) subfolders in the folder." - cursor ListFolderCursor - "Pass the cursor into :route:`list_folder/continue` to see what's - changed in the folder since your previous query." - has_more Boolean - "If true, then there are more entries available. Pass the - cursor to :route:`list_folder/continue` to retrieve the rest." - example default - entries = [default, folder_metadata] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = false +route list_revisions (ListRevisionsArg, ListRevisionsResult, ListRevisionsError) + "Returns revisions for files based on a file path or a file id. The file path or file id is + identified from the latest file entry at the given file path or id. This end point allows + your app to query either by file path or file id by setting the mode parameter appropriately. + In the ListRevisionsMode.path (default) mode, all revisions at the same file path as the + latest file entry are returned. If revisions with the same file id are desired, then mode + must be set to ListRevisionsMode.id. The ListRevisionsMode.id mode is useful to retrieve + revisions for a given file across moves or renames." -union ListFolderError - path LookupError - template_error file_properties.TemplateError + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.metadata.read" + select_admin_mode = "whole_team" -route list_folder (ListFolderArg, ListFolderResult, ListFolderError) - "Starts returning the contents of a folder. If the result's :field:`ListFolderResult.has_more` - field is :val:`true`, call :route:`list_folder/continue` with the returned - :field:`ListFolderResult.cursor` to retrieve more entries. +route restore (RestoreArg, FileMetadata, RestoreError) + "Restore a specific revision of a file to the given path." - If you're using :field:`ListFolderArg.recursive` set to :val:`true` to keep a local cache of - the contents of a Dropbox account, iterate through each entry in order and process them as - follows to keep your local state in sync: + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" - For each :type:`FileMetadata`, store the new entry at the given path in your local state. If the - required parent folders don't exist yet, create them. If there's already something else at the - given path, replace it and remove all its children. - For each :type:`FolderMetadata`, store the new entry at the given path in your local state. If - the required parent folders don't exist yet, create them. If there's already something else at - the given path, replace it but leave the children as they are. Check the new entry's - :field:`FolderSharingInfo.read_only` and set all its children's read-only statuses to match. +route get_metadata (GetMetadataArg, Metadata, GetMetadataError) + "Returns the metadata for a file or folder. + Note: Metadata for the root folder is unsupported." - For each :type:`DeletedMetadata`, if your local state has something at the given path, remove it - and all its children. If there's nothing at the given path, ignore this entry. + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.metadata.read" + select_admin_mode = "whole_team" - Note: :type:`auth.RateLimitError` may be returned if multiple :route:`list_folder` or - :route:`list_folder/continue` calls with same parameters are made simultaneously by same - API app for same user. If your app implements retry logic, please hold off the retry until - the previous request finishes." +route list_folder (ListFolderArg, ListFolderResult, ListFolderError) + "Starts returning the contents of a folder. If the result's :field:`ListFolderResult.has_more` + field is true, call :route:`list_folder/continue` with the returned ListFolderResult.cursor to + retrieve more entries. If you're using ListFolderArg.recursive set to true to keep a local + cache of the contents of a Dropbox account, iterate through each entry in order and process + them as follows to keep your local state in sync: For each FileMetadata, store the new entry + at the given path in your local state. If the required parent folders don't exist yet, create + them. If there's already something else at the given path, replace it and remove all its + children. For each FolderMetadata, store the new entry at the given path in your local state. + If the required parent folders don't exist yet, create them. If there's already something else + at the given path, replace it but leave the children as they are. Check the new entry's + FolderSharingInfo.read_only and set all its children's read-only statuses to match. For each + DeletedMetadata, if your local state has something at the given path, remove it and all its + children. If there's nothing at the given path, ignore this entry. Note: auth.RateLimitError + may be returned if multiple :route:`list_folder` or :route:`list_folder/continue` calls with same parameters + are made simultaneously by same API app for same user. If your app implements retry logic, + please hold off the retry until the previous request finishes." attrs allow_app_folder_app = true auth = "app, user" - select_admin_mode = "whole_team" scope = "files.metadata.read" - - -struct ListFolderContinueArg - cursor ListFolderCursor - "The cursor returned by your last call to :route:`list_folder` or - :route:`list_folder/continue`." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - -union ListFolderContinueError - path LookupError - reset - "Indicates that the cursor has been invalidated. Call - :route:`list_folder` to obtain a new cursor." + select_admin_mode = "whole_team" route list_folder/continue (ListFolderContinueArg, ListFolderResult, ListFolderContinueError) "Once a cursor has been retrieved from :route:`list_folder`, use this to paginate through all @@ -585,223 +580,457 @@ route list_folder/continue (ListFolderContinueArg, ListFolderResult, ListFolderC attrs allow_app_folder_app = true auth = "app, user" - select_admin_mode = "whole_team" scope = "files.metadata.read" - -struct ListFolderGetLatestCursorResult - cursor ListFolderCursor - "Pass the cursor into :route:`list_folder/continue` to see what's - changed in the folder since your previous query." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + select_admin_mode = "whole_team" route list_folder/get_latest_cursor (ListFolderArg, ListFolderGetLatestCursorResult, ListFolderError) "A way to quickly get a cursor for the folder's state. Unlike :route:`list_folder`, - :route:`list_folder/get_latest_cursor` doesn't return any entries. This endpoint is for app - which only needs to know about new files and modifications and doesn't need to know about - files that already exist in Dropbox." + :route:`list_folder/get_latest_cursor` doesn't return any entries. This endpoint is for app which + only needs to know about new files and modifications and doesn't need to know about files + that already exist in Dropbox." attrs allow_app_folder_app = true - select_admin_mode = "whole_team" + auth = "user" scope = "files.metadata.read" -# -# Download -# + select_admin_mode = "whole_team" -union DownloadError - path LookupError - # For example, attempting to download a Cloud Doc - unsupported_file - "This file type cannot be downloaded directly; use :route:`export` instead." +route list_folder/longpoll (ListFolderLongpollArg, ListFolderLongpollResult, ListFolderLongpollError) + "A longpoll endpoint to wait for changes on an account. In conjunction with :route:`list_folder/continue`, + this call gives you a low-latency way to monitor an account for file changes. The connection + will block until there are changes available or a timeout occurs. This endpoint is useful + mostly for client-side apps." -struct DownloadArg + attrs + allow_app_folder_app = true + auth = "noauth" + host = "notify" + scope = "files.metadata.read" + select_admin_mode = "whole_team" - path ReadPath - "The path of the file to download." +route alpha/get_metadata (AlphaGetMetadataArg, Metadata, AlphaGetMetadataError) deprecated + "Returns the metadata for a file or folder. This is an alpha endpoint compatible + with the properties API. Note: Metadata for the root folder is unsupported." - rev Rev? - "Please specify revision in :field:`path` instead." + attrs + allow_app_folder_app = true + auth = "user" + is_preview = true + scope = "files.metadata.read" - example default - path = "/Homework/math/Prime_Numbers.txt" - example id - path = "id:a4ayc_80_OEAAAAAAAAAYa" +route upload_session/finish_batch (UploadSessionFinishBatchArg, UploadSessionFinishBatchLaunch, Void) deprecated + "This route helps you commit many files at once into a user's Dropbox. Use :route:`upload_session/start` + and :route:`upload_session/append:2` to upload file contents. We recommend uploading many files in + parallel to increase throughput. Once the file contents have been uploaded, rather than + calling :route:`upload_session/finish`, use this route to finish all your upload sessions in a single + request. :field:`UploadSessionStartArg.close` or :field:`UploadSessionAppendArg.close` needs to be true for + the last :route:`upload_session/start` or :route:`upload_session/append:2` call. The maximum size of a file + one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes. This route will + return a job_id immediately and do the async commit job in background. Use + :route:`upload_session/finish_batch/check` to check the job status. For the same account, this route + should be executed serially. That means you should not start the next job before current job + finishes. We allow up to 1000 entries in a single request. Calls to this endpoint will count + as data transport calls for any Dropbox Business teams with a limit on the number of data + transport calls allowed per month. For more information, see the Data transport limit page + https://www.dropbox.com/developers/reference/data-transport-limit." - example rev - path = "rev:a1c10ce0dd78" + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -route download (DownloadArg, FileMetadata, DownloadError) - "Download a file from a user's Dropbox." +route upload_session/finish_batch:2 (UploadSessionFinishBatchArg, UploadSessionFinishBatchResult, Void) + "This route helps you commit many files at once into a user's Dropbox. Use :route:`upload_session/start` + and :route:`upload_session/append:2` to upload file contents. We recommend uploading many files in + parallel to increase throughput. Once the file contents have been uploaded, rather than + calling :route:`upload_session/finish`, use this route to finish all your upload sessions in a single + request. :field:`UploadSessionStartArg.close` or :field:`UploadSessionAppendArg.close` needs to be true for + the last :route:`upload_session/start` or :route:`upload_session/append:2` call of each upload session. The + maximum size of a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) + bytes. We allow up to 1000 entries in a single request. Calls to this endpoint will count + as data transport calls for any Dropbox Business teams with a limit on the number of data + transport calls allowed per month. For more information, see the Data transport limit page + https://www.dropbox.com/developers/reference/data-transport-limit." attrs - host = "content" - style = "download" allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "files.content.read" + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -# -# Download zip -# +route upload_session/finish_batch/check (async.PollArg, UploadSessionFinishBatchJobStatus, async.PollError) + "Returns the status of an asynchronous job for :route:`upload_session/finish_batch`. If success, it + returns list of result for each entry." -union DownloadZipError - path LookupError - too_large - "The folder or a file is too large to download." - too_many_files - "The folder has too many files to download." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + select_admin_mode = "team_admin" -struct DownloadZipArg - path ReadPath - "The path of the folder to download." - example default - path = "/Homework/math" +route get_temporary_link (GetTemporaryLinkArg, GetTemporaryLinkResult, GetTemporaryLinkError) + "Get a temporary link to stream content of a file. This link will expire in four hours and + afterwards you will get 410 Gone. This URL should not be used to display content directly + in the browser. The Content-Type of the link is determined automatically by the file's mime type." - example id - path = "id:a4ayc_80_OEAAAAAAAAAYa" + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.read" - example rev - path = "rev:a1c10ce0dd78" -struct DownloadZipResult - metadata FolderMetadata +route properties/add (file_properties.AddPropertiesArg, Void, file_properties.AddPropertiesError) deprecated + "Add property groups to a Dropbox file. See templates/add_for_user or + templates/add_for_team to create new templates." - example default - metadata = default + attrs + auth = "user" + scope = "files.metadata.write" -route download_zip (DownloadZipArg, DownloadZipResult, DownloadZipError) - "Download a folder from the user's Dropbox, as a zip file. The folder must be less than 20 GB - in size and any single file within must be less than 4 GB in size. The resulting zip must have - fewer than 10,000 total file and folder entries, including the top level folder. The input - cannot be a single file. +route properties/update (file_properties.UpdatePropertiesArg, Void, file_properties.UpdatePropertiesError) deprecated + "Add, update or remove properties associated with the supplied file and templates. + This endpoint should be used instead of properties/overwrite when property groups + are being updated via a \"delta\" instead of overwriting all properties of a file." - Note: this endpoint does not support HTTP range requests." + attrs + auth = "user" + scope = "files.metadata.write" + +route properties/overwrite (file_properties.OverwritePropertyGroupArg, Void, file_properties.InvalidPropertyGroupError) deprecated + "Overwrite property groups associated with a file. This endpoint should be used + instead of properties/update when property groups are being overwritten rather + than updated via a \"delta\"." attrs - host = "content" - style = "download" - allow_app_folder_app = true - scope = "files.content.read" + auth = "user" + scope = "files.metadata.write" -# -# Export -# -union ExportError - path LookupError - non_exportable - "This file type cannot be exported. Use :route:`download` instead." - invalid_export_format - "The specified export format is not a valid option for this file type." - retry_error - "The exportable content is not yet available. Please retry later." +route save_url (SaveUrlArg, SaveUrlResult, SaveUrlError) + "Save the data from a specified URL into a file in user's Dropbox. + Note that the transfer from the URL must complete within 15 minutes, or the + operation will time out and the job will fail." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" -struct ExportArg +route save_url/check_job_status (async.PollArg, SaveUrlJobStatus, async.PollError) + "Check the status of a :route:`save_url` job." - path ReadPath - "The path of the file to be exported." + attrs + allow_app_folder_app = true + auth = "user" + scope = "files.content.write" - export_format String? - "The file format to which the file should be exported. - This must be one of the formats listed in the file's - export_options returned by :route:`get_metadata`. - If none is specified, the default format (specified - in export_as in file metadata) will be used." - example default - path = "/Homework/math/Prime_Numbers.gsheet" +route upload (UploadArg, FileMetadata, UploadError) + "Create a new file with the contents provided in the request. Do not use this to upload a + file larger than 150 MiB. Instead, create an upload session with :route:`upload_session/start`. + Calls to this endpoint will count as data transport calls for any Dropbox Business teams + with a limit on the number of data transport calls allowed per month. For more information, + see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit." - example id - path = "id:a4ayc_80_OEAAAAAAAAAYa" + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.write" + select_admin_mode = "team_admin" + style = "upload" +route upload_session/start (UploadSessionStartArg, UploadSessionStartResult, UploadSessionStartError) + "Upload sessions allow you to upload a single file in one or more requests, for example where + the size of the file is greater than 150 MiB. This call starts a new upload session with the + given data. You can then use :route:`upload_session/append:2` or :route:`upload_session/append_batch` to add + more data, then :route:`upload_session/finish` or :route:`upload_session/finish_batch:2` to save all the data to + a file in Dropbox. A single request should not upload more than 150 MiB. The maximum size of + a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes. + An upload session can be used for a maximum of 7 days. Attempting to use a + :field:`UploadSessionStartResult.session_id` with :route:`upload_session/append:2` or other upload session + routes more than 7 days after its creation will return :field:`UploadSessionLookupError.not_found`. + Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a + limit on the number of data transport calls allowed per month. For more information, see the + Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + By default, upload sessions require you to send content of the file in sequential order via + consecutive :route:`upload_session/start`, :route:`upload_session/append:2`, and :route:`upload_session/finish` calls + (or their batch variants). For better performance, you can optionally set + :field:`UploadSessionStartArg.session_type` to :field:`UploadSessionType.concurrent` to start a concurrent + upload session. Concurrent upload sessions may upload file data in concurrent + :route:`upload_session/append:2` requests, with a few caveats. After all of the requests are complete, + finish the session with :route:`upload_session/finish` as normal. You can not send data in a + :route:`upload_session/start` or :route:`upload_session/finish` call, only with :route:`upload_session/append:2` or + :route:`upload_session/append_batch`. Also, the length of the uploaded data in a call to + :route:`upload_session/append:2` or :route:`upload_session/append_batch` must be a multiple of 2^22 (4,194,304) + bytes, except for the final append request with :field:`UploadSessionAppendArg.close` or + :field:`UploadSessionAppendBatchArgEntry.close` set to true that may contain any remaining data." -struct ExportMetadata - name String - "The last component of the path (including extension). - This never contains a slash." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.write" + select_admin_mode = "team_admin" + style = "upload" - size UInt64 - "The file size in bytes." +route upload_session/append (UploadSessionCursor, Void, UploadSessionAppendError) deprecated + "Append more data to an upload session. A single request should not upload more than 150 MiB. + The maximum size of a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes. + Calls to this endpoint will count as data transport calls for any Dropbox Business teams with a + limit on the number of data transport calls allowed per month. For more information, see the + Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit." - export_hash Sha256HexHash? - "A hash based on the exported file content. This field can be used to verify data integrity. Similar to content hash. - For more information see our :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.write" + select_admin_mode = "team_admin" + style = "upload" - paper_revision Int64? - "If the file is a Paper doc, this gives the latest doc revision which can be used in :route:`paper/update`." +route upload_session/append:2 (UploadSessionAppendArg, Void, UploadSessionAppendError) + "Append more data to an upload session. When the parameter close is set, this call will close + the session. A single request should not upload more than 150 MiB. The maximum size of a file + one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this + endpoint will count as data transport calls for any Dropbox Business teams with a limit on the + number of data transport calls allowed per month. For more information, see the Data transport + limit page https://www.dropbox.com/developers/reference/data-transport-limit." - example default - name = "Prime_Numbers.xlsx" - size = 7189 - export_hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.write" + select_admin_mode = "team_admin" + style = "upload" +route upload_session/append_batch (UploadSessionAppendBatchArg, UploadSessionAppendBatchResult, UploadSessionAppendBatchError) + "Append more data to multiple upload sessions. Each piece of file content to append to each + upload session should be concatenated in the request body, in the order delineated by + :field:`UploadSessionAppendBatchArg.entries` and their individual lengths indicated by + :field:`UploadSessionAppendBatchArgEntry.length`. A single request should not upload more than 150 MiB. + The maximum size of a file one can upload to an upload session is + 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport + calls for any Dropbox Business teams with a limit on the number of data transport calls allowed + per month. For more information, see the Data transport limit page + https://www.dropbox.com/developers/reference/data-transport-limit." -struct ExportResult - export_metadata ExportMetadata - "Metadata for the exported version of the file." - file_metadata FileMetadata - "Metadata for the original file." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.write" + select_admin_mode = "team_admin" + style = "upload" - example default - export_metadata = default - file_metadata = default +route upload_session/finish (UploadSessionFinishArg, FileMetadata, UploadSessionFinishError) + "Finish an upload session and save the uploaded data to the given file path. A single request + should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data + transport calls for any Dropbox Business teams with a limit on the number of data transport + calls allowed per month. For more information, see the Data transport limit page + https://www.dropbox.com/developers/reference/data-transport-limit." + attrs + allow_app_folder_app = true + auth = "user" + host = "content" + scope = "files.content.write" + select_admin_mode = "team_admin" + style = "upload" -route export (ExportArg, ExportResult, ExportError) - "Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly - and whose :field:`ExportResult.file_metadata` has :field:`ExportInfo.export_as` populated." +route alpha/upload (UploadArg, FileMetadata, UploadError) deprecated + "Create a new file with the contents provided in the request. Note that the behavior of this + alpha endpoint is unstable and subject to change. Do not use this to upload a file larger + than 150 MiB. Instead, create an upload session with :route:`upload_session/start`." attrs - is_preview = true + allow_app_folder_app = true + auth = "user" host = "content" - style = "download" + is_preview = true + scope = "files.content.write" + style = "upload" + + +route get_temporary_upload_link (GetTemporaryUploadLinkArg, GetTemporaryUploadLinkResult, Void) + "Get a one-time use temporary upload link to upload a file to a Dropbox location. This + endpoint acts as a delayed upload(). The returned temporary upload link may be used to make + a POST request with the data to be uploaded. The upload will then be perfomed with the + CommitInfo previously provided to getTemporaryUploadLink() but evaluated only upon consumption. + Hence, errors stemming from invalid CommitInfo with respect to the state of the user's Dropbox + will only be communicated at consumption time. Additionally, these errors are surfaced as + generic HTTP 409 Conflict responses, potentially hiding issue details. The maximum temporary + upload link duration is 4 hours. Upon consumption or expiration, a new link will have to be + generated. Multiple links may exist for a specific upload path at any given time. The POST + request on the temporary upload link must have its Content-Type set to + \"application/octet-stream\". Example temporary upload link consumption request: curl -X POST + https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND --header + \"Content-Type: application/octet-stream\" --data-binary @local_file.txt A successful temporary + upload link consumption request returns the content hash of the uploaded data in JSON format. + Example successful temporary upload link consumption response: {\"content-hash\": + \"599d71033d700ac892a0e48fa61b125d2f5994\"} An unsuccessful temporary upload link consumption + request returns any of the following status codes: HTTP 400 Bad Request: Content-Type is not + one of application/octet-stream and text/plain or request is invalid. HTTP 409 Conflict: The + temporary upload link does not exist or is currently unavailable, the upload failed, or + another error happened. HTTP 410 Gone: The temporary upload link is expired or consumed. + Example unsuccessful temporary upload link consumption response: Temporary upload link has + been recently consumed." + + attrs allow_app_folder_app = true + auth = "user" + scope = "files.content.write" + + +route lock_file_batch (LockFileBatchArg, LockFileBatchResult, LockFileError) + "Lock the files at the given paths. A locked file will be writable only by the lock holder. + A successful response indicates that the file has been locked. Returns a list of the locked + file paths and their metadata after this operation." + + attrs + auth = "user" + scope = "files.content.write" + +route unlock_file_batch (UnlockFileBatchArg, LockFileBatchResult, LockFileError) + "Unlock the files at the given paths. A locked file can only be unlocked by the lock holder + or, if a business account, a team admin. A successful response indicates that the file has + been unlocked. Returns a list of the unlocked file paths and their metadata after this + operation." + + attrs + auth = "user" + scope = "files.content.write" select_admin_mode = "whole_team" + +route get_file_lock_batch (LockFileBatchArg, LockFileBatchResult, LockFileError) + "Return the lock metadata for the given list of paths." + + attrs + auth = "user" scope = "files.content.read" -# -# Upload Routes -# +alias CopyBatchArg = RelocationBatchArgBase -# Errors +alias FileId = String(min_length=4, pattern="id:.+") -struct UploadWriteFailed - reason WriteError - "The reason why the file couldn't be saved." - upload_session_id String - "The upload session ID; data has already been uploaded to the corresponding upload - session and this ID may be used to retry the commit with :route:`upload_session/finish`." +alias Id = String(min_length=1) -union UploadError - path UploadWriteFailed - "Unable to save the uploaded contents to a file." - properties_error file_properties.InvalidPropertyGroupError - "The supplied property group is invalid. The file has uploaded without property groups." - payload_too_large - "The request payload must be at most 150 MB." - content_hash_mismatch - "The content received by the Dropbox server in this call does not match the provided content hash." +alias ListFolderCursor = String(min_length=1) + +alias MalformedPathError = String? + +alias PathOrId = String(pattern="/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/(.|[\\r\\n])*)?)") + +alias PathR = String(pattern="(/(.|[\\r\\n])*)?|(ns:[0-9]+(/(.|[\\r\\n])*)?)") + +alias PathROrId = String(pattern="(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/(.|[\\r\\n])*)?)") + +alias ReadPath = String(pattern="(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)") + +alias Rev = String(min_length=9, pattern="[0-9a-f]+") + +alias SearchV2Cursor = String(min_length=1) + +alias Sha256HexHash = String(max_length=64, min_length=64) + +alias SharedLinkUrl = String + +alias WritePath = String(pattern="(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)") + +alias WritePathOrId = String(pattern="(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)") + +union LookupError + malformed_path MalformedPathError + "The given path does not satisfy the required path format. Please refer to the :link:`Path formats documentation https://www.dropbox.com/developers/documentation/http/documentation#path-formats` for more information." + not_found + "There is nothing at the given path." + not_file + "We were expecting a file, but the given path refers to something that isn't a file." + not_folder + "We were expecting a folder, but the given path refers to something that isn't a folder." + restricted_content + "The file cannot be transferred because the content is restricted. For example, we might restrict a file due to legal requirements." + unsupported_content_type + "This operation is not supported for this content type." + locked + "The given path is locked." + +union WriteConflictError + file + "There's a file in the way." + folder + "There's a folder in the way." + file_ancestor + "There's a file at an ancestor path, so we couldn't create the required parent folders." + +union WriteError + malformed_path MalformedPathError + "The given path does not satisfy the required path format. Please refer to the :link:`Path formats documentation https://www.dropbox.com/developers/documentation/http/documentation#path-formats` for more information." + conflict WriteConflictError + "Couldn't write to the target path because there was something in the way." + no_write_permission + "The user doesn't have permissions to write to the target location." + insufficient_space + "The user doesn't have enough available space (bytes) to write more data." + disallowed_name + "Dropbox will not save the file or folder because of its name." + team_folder + "This endpoint cannot move or delete team folders." + operation_suppressed + "This file operation is not allowed at this path." + too_many_write_operations + "There are too many write operations in user's Dropbox. Please retry + this request." + access_restricted + "The user doesn't have permission to perform the action due to restrictions set by a team administrator" + +union DeleteError + path_lookup LookupError + path_write WriteError + too_many_write_operations + "There are too many write operations in user's Dropbox. Please retry + this request." + too_many_files + "There are too many files in one request. Please retry with fewer files." + +union_closed ThumbnailError + path LookupError + "An error occurs when downloading metadata for the image." + unsupported_extension + "The file extension doesn't allow conversion to a thumbnail." + unsupported_image + "The image cannot be converted to a thumbnail." + encrypted_content + "Encrypted content cannot be converted to a thumbnail." + conversion_error + "An error occurs during thumbnail conversion." + +union ThumbnailV2Error + path LookupError + "An error occurred when downloading metadata for the image." + unsupported_extension + "The file extension doesn't allow conversion to a thumbnail." + unsupported_image + "The image cannot be converted to a thumbnail." + encrypted_content + "Encrypted content cannot be converted to a thumbnail." + conversion_error + "An error occurred during thumbnail conversion." + access_denied + "Access to this shared link is forbidden." + not_found + "The shared link does not exist." struct UploadSessionOffsetError correct_offset UInt64 "The offset up to which data has been collected." -union UploadSessionStartError - concurrent_session_data_not_allowed - "Uploading data not allowed when starting concurrent upload session." - concurrent_session_close_not_allowed - "Can not start a closed concurrent upload session." - payload_too_large - "The request payload must be at most 150 MB." - content_hash_mismatch - "The content received by the Dropbox server in this call does not match the provided content hash." - union UploadSessionLookupError not_found "The upload session ID was not found or has expired. Upload sessions are @@ -817,18 +1046,14 @@ union UploadSessionLookupError not_closed "The session must be closed before calling upload_session/finish_batch." too_large - "You can not append to the upload session because the size of a file should not reach the - max file size limit (i.e. 350GB)." + "You can not append to the upload session because the size of a file should not exceed the + max file size limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes)." concurrent_session_invalid_offset - "For concurrent upload sessions, offset needs to be multiple of 4194304 bytes." + "For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes." concurrent_session_invalid_data_size - "For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded." + "For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded." payload_too_large - "The request payload must be at most 150 MB." - -union UploadSessionAppendError extends UploadSessionLookupError - content_hash_mismatch - "The content received by the Dropbox server in this call does not match the provided content hash." + "The request payload must be at most 150 MiB." union UploadSessionFinishError lookup_failed UploadSessionLookupError @@ -852,203 +1077,145 @@ union UploadSessionFinishError concurrent_session_missing_data "Not all pieces of data were uploaded before trying to finish the session." payload_too_large - "The request payload must be at most 150 MB." + "The request payload must be at most 150 MiB." content_hash_mismatch "The content received by the Dropbox server in this call does not match the provided content hash." + encryption_not_supported + "The file is required to be encrypted, which is not supported in our public API." -# Req/Resp - -union UploadSessionType - sequential - "Pieces of data are uploaded sequentially one after another. This is the default - behavior." - concurrent - "Pieces of data can be uploaded in concurrent RPCs in any order." - -struct UploadSessionStartArg - close Boolean = false - "If true, the current session will be closed, at which point you won't - be able to call :route:`upload_session/append:2` anymore with the - current session." +union_closed ThumbnailFormat + jpeg + png + webp - session_type UploadSessionType? - "Type of upload session you want to start. If not specified, default is - :field:`UploadSessionType.sequential`." +union_closed ThumbnailMode + strict + "Scale down the image to fit within the given size." + bestfit + "Scale down the image to fit within the given size or its transpose." + fitone_bestfit + "Scale down the image to completely cover the given size or its transpose." + original + "Don't resize the image at all." - content_hash Sha256HexHash? - "A hash of the file content uploaded in this call. If provided and the uploaded content - does not match this hash, an error will be returned. For more information see our - :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." +union_closed ThumbnailQuality + quality_80 + "default thumbnail quality." + quality_90 + "high thumbnail quality." - example with_close - close = false +union_closed ThumbnailSize + w32h32 + "32 by 32 px." + w64h64 + "64 by 64 px." + w128h128 + "128 by 128 px." + w256h256 + "256 by 256 px." + w480h320 + "480 by 320 px." + w640h480 + "640 by 480 px." + w960h640 + "960 by 640 px." + w1024h768 + "1024 by 768 px." + w2048h1536 + "2048 by 1536 px." + w3200h2400 + "3200 by 2400 px." -struct UploadSessionStartResult - session_id String - "A unique identifier for the upload session. Pass this to - :route:`upload_session/append:2` and - :route:`upload_session/finish`." +union_closed SearchMatchType + "Indicates what type of match was found for a given item." + filename + "This item was matched on its file or folder name." + content + "This item was matched based on its file contents." + both + "This item was matched based on both its contents and its file name." example default - session_id = "1234faaf0678bcde" - -route upload_session/start_batch (UploadSessionStartBatchArg, UploadSessionStartBatchResult, Void) - "This route starts batch of upload_sessions. Please refer to `upload_session/start` usage. + content = null - Calls to this endpoint will count as data transport calls for any Dropbox - Business teams with a limit on the number of data transport calls allowed - per month. For more information, see the :link:`Data transport limit page - https://www.dropbox.com/developers/reference/data-transport-limit`." +union SyncSetting + default + "On first sync to members' computers, the specified folder will follow + its parent folder's setting or otherwise follow default sync behavior." + not_synced + "On first sync to members' computers, the specified folder will be set + to not sync with selective sync." + not_synced_inactive + "The specified folder's not_synced setting is inactive due to its + location or other configuration changes. It will follow its parent + folder's setting." - attrs - style = "rpc" - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -struct UploadSessionStartBatchArg - session_type UploadSessionType? - "Type of upload session you want to start. If not specified, default is - :field:`UploadSessionType.sequential`." - - num_sessions UInt64(min_value=1, max_value=1000) - "The number of upload sessions to start." +union SyncSettingArg + default + "On first sync to members' computers, the specified folder will follow its + parent folder's setting or otherwise follow default sync behavior." + not_synced + "On first sync to members' computers, the specified folder will be set + to not sync with selective sync." example default - num_sessions = 1 + not_synced = null -struct UploadSessionStartBatchResult - session_ids List(String) - "A List of unique identifiers for the upload session. Pass each session_id to - :route:`upload_session/append:2` and - :route:`upload_session/finish`." +struct SharedLinkFileInfo + url String + "The shared link corresponding to either a file or shared link to a folder. If it is for a folder shared link, + we use the path param to determine for which file in the folder the view is for." + path String? + "The path corresponding to a file in a shared link to a folder. Required for shared links to folders." + password String? + "Password for the shared link. Required for password-protected shared links to files + unless it can be read from a cookie." example default - session_ids = ["1234faaf0678bcde"] - -route upload_session/start (UploadSessionStartArg, UploadSessionStartResult, UploadSessionStartError) - "Upload sessions allow you to upload a single file in one or more - requests, for example where the size of the file is greater than 150 - MB. This call starts a new upload session with the given data. You - can then use :route:`upload_session/append:2` to add more data and - :route:`upload_session/finish` to save all the data to a file in - Dropbox. - - A single request should not upload more than 150 MB. The maximum size of - a file one can upload to an upload session is 350 GB. - - An upload session can be used for a maximum of 7 days. Attempting - to use an :field:`UploadSessionStartResult.session_id` with - :route:`upload_session/append:2` or :route:`upload_session/finish` more - than 7 days after its creation will return a - :field:`UploadSessionLookupError.not_found`. - - Calls to this endpoint will count as data transport calls for any Dropbox - Business teams with a limit on the number of data transport calls allowed - per month. For more information, see the :link:`Data transport limit page - https://www.dropbox.com/developers/reference/data-transport-limit`. - - By default, upload sessions require you to send content of the file in sequential order via - consecutive :route:`upload_session/start`, :route:`upload_session/append:2`, - :route:`upload_session/finish` calls. For better performance, you can instead optionally use - a :field:`UploadSessionType.concurrent` upload session. To start a new concurrent session, - set :field:`UploadSessionStartArg.session_type` to :field:`UploadSessionType.concurrent`. - After that, you can send file data in concurrent :route:`upload_session/append:2` requests. - Finally finish the session with :route:`upload_session/finish`. - - There are couple of constraints with concurrent sessions to make them work. You can not send - data with :route:`upload_session/start` or :route:`upload_session/finish` call, only with - :route:`upload_session/append:2` call. Also data uploaded in :route:`upload_session/append:2` - call must be multiple of 4194304 bytes (except for last :route:`upload_session/append:2` with - :field:`UploadSessionStartArg.close` to :val:`true`, that may contain any remaining data)." - - attrs - host = "content" - style = "upload" - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" + url = "https://dropbox.com/s/hash/filename.png" -struct UploadSessionAppendArg - cursor UploadSessionCursor - "Contains the upload session ID and the offset." - close Boolean = false - "If true, the current session will be closed, at which point - you won't be able to call :route:`upload_session/append:2` - anymore with the current session." - content_hash Sha256HexHash? - "A hash of the file content uploaded in this call. If provided and the uploaded content - does not match this hash, an error will be returned. For more information see our - :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." +struct SharedLink + url SharedLinkUrl + "Shared link url." + password String? + "Password for the shared link." example default - cursor = default - -route upload_session/append:2 (UploadSessionAppendArg, Void, UploadSessionAppendError) - "Append more data to an upload session. - - When the parameter close is set, this call will close the session. - - A single request should not upload more than 150 MB. The maximum size of - a file one can upload to an upload session is 350 GB. - - Calls to this endpoint will count as data transport calls for any Dropbox - Business teams with a limit on the number of data transport calls allowed - per month. For more information, see the :link:`Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit`." - - attrs - host = "content" - style = "upload" - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" + url = "https://www.dropbox.com/s/2sn712vy1ovegw8?dl=0" + password = "password" -struct UploadSessionCursor - session_id String - "The upload session ID (returned by :route:`upload_session/start`)." - offset UInt64 - "Offset in bytes at which data should be appended. We use this to make - sure upload data isn't lost or duplicated in the event of a network error." +union PathOrLink + path ReadPath + link SharedLinkFileInfo example default - session_id = "1234faaf0678bcde" - offset = 0 - - example another - session_id = "8dd9d57374911153" - offset = 1073741824 + path = "/a.docx" -route upload_session/append (UploadSessionCursor, Void, UploadSessionAppendError) deprecated by upload_session/append:2 - "Append more data to an upload session. +struct DeleteBatchResultData + metadata Metadata + "Metadata of the deleted object." - A single request should not upload more than 150 MB. The maximum size of - a file one can upload to an upload session is 350 GB. + example default + metadata = default - Calls to this endpoint will count as data transport calls for any Dropbox - Business teams with a limit on the number of data transport calls allowed - per month. For more information, see the :link:`Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit`." +union_closed DeleteBatchResultEntry + success DeleteBatchResultData + failure DeleteError - attrs - host = "content" - style = "upload" - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" + example default + success = default union_closed WriteMode "Your intent when writing a file to some path. This is used to determine what constitutes a conflict and what the autorename strategy is. - In some situations, the conflict behavior is identical: (a) If the target path doesn't refer to anything, the file is always written; no conflict. (b) If the target path refers to a folder, it's always a conflict. (c) If the target path refers to a file with identical contents, nothing gets written; no conflict. - The conflict checking differs in the case where there's a file at the target path with contents different from the contents you're trying to write." - add "Do not overwrite an existing file if there is a conflict. The autorename strategy is to append a number to the file name. For example, @@ -1068,15 +1235,13 @@ union_closed WriteMode example default add = null - + example overwriting overwrite = null - + example with_revision update = "a1c10ce0dd78" -# NOTE: If you update this, also update dropbox.api.upload_session_utils.COMMIT_INFO_FIELDS -# or else tests will fail struct CommitInfo path WritePathOrId "Path in the user's Dropbox to save the file." @@ -1109,17 +1274,32 @@ struct CommitInfo example default path = "/Homework/math/Matrices.txt" autorename = true - + example another path = "/Homework/math/Vectors.txt" autorename = true - + example update path = "/Homework/math/Matrices.txt" mode = with_revision autorename = false property_groups = [default] +struct UploadSessionCursor + session_id String + "The upload session ID (returned by :route:`upload_session/start`)." + offset UInt64 + "Offset in bytes at which data should be appended. We use this to make + sure upload data isn't lost or duplicated in the event of a network error." + + example default + session_id = "pid_upload_session:h-NtwvAdw3XDqqHmb0J2t0XfIaSnQw2Eor59pfZI9D_ZGNJ4Ew" + offset = 0 + + example another + session_id = "pid_upload_session:6MvrpirpGzvgtxdyRkiYzL4bpnd_xOuqWBBCdYBUiM7uQe2fPw" + offset = 1073741824 + struct UploadSessionFinishArg cursor UploadSessionCursor "Contains the upload session ID and the offset." @@ -1133,1502 +1313,1185 @@ struct UploadSessionFinishArg example default cursor = default commit = default - + example another cursor = another commit = another - + example update cursor = default commit = update -route upload_session/finish (UploadSessionFinishArg, FileMetadata, UploadSessionFinishError) - "Finish an upload session and save the uploaded data to the given file - path. +struct RelocationPath + from_path WritePathOrId + "Path in the user's Dropbox to be copied or moved." + to_path WritePathOrId + "Path in the user's Dropbox that is the destination." - A single request should not upload more than 150 MB. The maximum size of - a file one can upload to an upload session is 350 GB. + example default + from_path = "/Homework/math" + to_path = "/Homework/algebra" - Calls to this endpoint will count as data transport calls for any Dropbox - Business teams with a limit on the number of data transport calls allowed - per month. For more information, see the :link:`Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit`." +struct RelocationBatchArgBase + entries List(RelocationPath, max_items=1000, min_items=1) + "List of entries to be moved or copied. Each entry is :type:`RelocationPath`." + autorename Boolean = false + "If there's a conflict with any file, have the Dropbox server try to + autorename that file to avoid the conflict." - attrs - host = "content" - style = "upload" - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope= "files.content.write" + example default + entries = [default] -struct UploadArg extends CommitInfo - content_hash Sha256HexHash? - "A hash of the file content uploaded in this call. If provided and the uploaded content - does not match this hash, an error will be returned. For more information see our - :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." +union FileLockContent + unlocked + "Empty type to indicate no lock." + single_user SingleUserLock + "A lock held by a single user." example default - path = "/Homework/math/Matrices.txt" - content_hash = null - -route upload (UploadArg, FileMetadata, UploadError) - "Create a new file with the contents provided in the request. + single_user = default - Do not use this to upload a file larger than 150 MB. Instead, create an - upload session with :route:`upload_session/start`. +struct SingleUserLock + created common.DropboxTimestamp + "The time the lock was created." + lock_holder_account_id users_common.AccountId + "The account ID of the lock holder if known." + lock_holder_team_id String? + "The id of the team of the account holder if it exists." - Calls to this endpoint will count as data transport calls for any Dropbox - Business teams with a limit on the number of data transport calls allowed - per month. For more information, see the :link:`Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit`." + example default + created = "2015-05-12T15:50:38Z" + lock_holder_account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" + lock_holder_team_id = "dbtid:1234abcd" - attrs - host = "content" - style = "upload" - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +struct FileLock + content FileLockContent + "The lock description." -# -# Batch Upload -# + example default + content = default -struct UploadSessionFinishBatchArg - entries List(UploadSessionFinishArg, max_items=1000) - "Commit information for each file in the batch." +struct FileLockMetadata + is_lockholder Boolean? + "True if caller holds the file lock." + lockholder_name String? + "The display name of the lock holder." + lockholder_account_id users_common.AccountId? + "The account ID of the lock holder if known." + created common.DropboxTimestamp? + "The timestamp of the lock was created." example default - entries = [default] + is_lockholder = true + lockholder_name = "Imaginary User" + created = "2015-05-12T15:50:38Z" - example multiple - entries = [default, another] +struct LockConflictError + lock FileLock + "The lock that caused the conflict." -struct UploadSessionFinishBatchResult - entries List(UploadSessionFinishBatchResultEntry) - "Each entry in :field:`UploadSessionFinishBatchArg.entries` will appear at the same position - inside :field:`UploadSessionFinishBatchResult.entries`." +union LockFileError + path_lookup LookupError + "Could not find the specified resource." + too_many_write_operations + "There are too many write operations in user's Dropbox. Please retry this request." + too_many_files + "There are too many files in one request. Please retry with fewer files." + no_write_permission + "The user does not have permissions to change the lock state or access the file." + cannot_be_locked + "Item is a type that cannot be locked." + file_not_shared + "Requested file is not currently shared." + lock_conflict LockConflictError + "The user action conflicts with an existing lock on the file." + internal_error + "Something went wrong with the job on Dropbox's end. You'll need to + verify that the action you were taking succeeded, and if not, try + again. This should happen very rarely." + +struct LockFileResult + metadata Metadata + "Metadata of the file." + lock FileLock + "The file lock state after the operation." example default - entries = [default] + metadata = default + lock = default -union_closed UploadSessionFinishBatchResultEntry - success FileMetadata - failure UploadSessionFinishError +struct SharingInfo + "Sharing info for a file or folder." + read_only Boolean + "True if the file or folder is inside a read-only shared folder." example default - success = default + read_only = false -union_closed UploadSessionFinishBatchJobStatus extends async.PollResultBase - complete UploadSessionFinishBatchResult - "The :route:`upload_session/finish_batch` has finished." +struct FileSharingInfo extends SharingInfo + "Sharing info for a file which is contained by a shared folder." + parent_shared_folder_id common.SharedFolderId + "ID of shared folder that holds this file." + modified_by users_common.AccountId? + "The last user who modified the file. This field will be null if + the user's account has been deleted." example default - complete = default - -union UploadSessionFinishBatchLaunch extends async.LaunchResultBase - "Result returned by :route:`upload_session/finish_batch` that may either launch an - asynchronous job or complete synchronously." - - complete UploadSessionFinishBatchResult - - example complete - complete = default - - example async_job_id - async_job_id = "34g93hh34h04y384084" - -route upload_session/finish_batch (UploadSessionFinishBatchArg, UploadSessionFinishBatchLaunch, Void) deprecated by upload_session/finish_batch:2 - "This route helps you commit many files at once into a user's Dropbox. Use - :route:`upload_session/start` and :route:`upload_session/append:2` to - upload file contents. We recommend uploading many files in parallel to increase - throughput. Once the file contents have been uploaded, rather than calling - :route:`upload_session/finish`, use this route to finish all your upload sessions - in a single request. - - :field:`UploadSessionStartArg.close` or :field:`UploadSessionAppendArg.close` - needs to be true for the last - :route:`upload_session/start` or :route:`upload_session/append:2` call. The maximum - size of a file one can upload to an upload session is 350 GB. - - This route will return a job_id immediately and do the async commit job in background. - Use :route:`upload_session/finish_batch/check` to check the job status. - - For the same account, this route should be executed serially. That means you should not start - the next job before current job finishes. We allow up to 1000 entries in a single request. - - Calls to this endpoint will count as data transport calls for any Dropbox - Business teams with a limit on the number of data transport calls allowed - per month. For more information, see the :link:`Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit`." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -route upload_session/finish_batch:2 (UploadSessionFinishBatchArg, UploadSessionFinishBatchResult, Void) - "This route helps you commit many files at once into a user's Dropbox. Use - :route:`upload_session/start` and :route:`upload_session/append:2` to - upload file contents. We recommend uploading many files in parallel to increase - throughput. Once the file contents have been uploaded, rather than calling - :route:`upload_session/finish`, use this route to finish all your upload sessions - in a single request. - - :field:`UploadSessionStartArg.close` or :field:`UploadSessionAppendArg.close` - needs to be true for the last - :route:`upload_session/start` or :route:`upload_session/append:2` call of each upload session. The maximum - size of a file one can upload to an upload session is 350 GB. - - We allow up to 1000 entries in a single request. - - Calls to this endpoint will count as data transport calls for any Dropbox - Business teams with a limit on the number of data transport calls allowed - per month. For more information, see the :link:`Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit`." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - - -route upload_session/finish_batch/check(async.PollArg, UploadSessionFinishBatchJobStatus, async.PollError) - "Returns the status of an asynchronous job for :route:`upload_session/finish_batch`. If - success, it returns list of result for each entry." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -# -# Search -# - -union_closed SearchMode - filename - "Search file and folder names." - filename_and_content - "Search file and folder names as well as file contents." - deleted_filename - "Search for deleted file and folder names." - - example default - filename_and_content = null - - example name_only - filename = null - - example deleted_names - deleted_filename = null - -struct SearchArg - path PathROrId - "The path in the user's Dropbox to search. Should probably be - a folder." - - query String(max_length=1000) - "The string to search for. Query string may be rewritten to improve relevance of results. - The string is split on spaces into multiple tokens. For file name searching, - the last token is used for prefix matching (i.e. \"bat c\" matches \"bat cave\" - but not \"batman car\")." - - start UInt64(max_value=9999) = 0 - "The starting index within the search results (used for paging)." - - max_results UInt64(min_value=1, max_value=1000) = 100 - "The maximum number of search results to return." - - mode SearchMode = filename - "The search mode (filename, filename_and_content, or deleted_filename). - Note that searching file content is only available for Dropbox Business - accounts." - - example default - path = "" - query = "prime numbers" - -union_closed SearchMatchType - "Indicates what type of match was found for a given item." - - filename - "This item was matched on its file or folder name." - content - "This item was matched based on its file contents." - both - "This item was matched based on both its contents and its file name." - - example default - content = null - -struct SearchMatch - match_type SearchMatchType - "The type of the match." - metadata Metadata - "The metadata for the matched file or folder." - - example default - match_type = default - metadata = default - -struct SearchResult - matches List(SearchMatch) - "A list (possibly empty) of matches for the query." - more Boolean - "Used for paging. If true, indicates there is another page of results - available that can be fetched by calling :route:`search` again." - start UInt64 - "Used for paging. Value to set the start argument to when calling - :route:`search` to fetch the next page of results." - - example default - matches = [default] - more = false - start = 1 - -union SearchError - path LookupError - invalid_argument String? - internal_error - "Something went wrong, please try again." - -route search (SearchArg, SearchResult, SearchError) deprecated by search:2 - "Searches for files and folders. - - Note: Recent changes will be reflected in search results within a few seconds - and older revisions of existing files may still match your query for up to a few days." - - attrs - allow_app_folder_app = true - scope = "files.metadata.read" -# -# Search:2 -# -route search:2 (SearchV2Arg, SearchV2Result, SearchError) - "Searches for files and folders. - - Note: :route:`search:2` along with :route:`search/continue:2` can only be used to - retrieve a maximum of 10,000 matches. - - Recent changes may not immediately be reflected in search results due to a short delay in indexing. - Duplicate results may be returned across pages. Some results may not be returned." - - attrs - allow_app_folder_app = true - scope = "files.metadata.read" - -struct SearchV2Arg - - query String(max_length=1000) - "The string to search for. May match across multiple fields based on the request arguments." - - options SearchOptions? - "Options for more targeted search results." - - match_field_options SearchMatchFieldOptions? - "Options for search results match fields." - - include_highlights Boolean? - "Deprecated and moved this option to SearchMatchFieldOptions." - - example default - query = "cat" - options = default - match_field_options = default - -struct SearchOptions - - path PathROrId? - "Scopes the search to a path in the user's Dropbox. Searches the entire Dropbox if not specified." - - max_results UInt64(min_value=1, max_value=1000) = 100 - "The maximum number of search results to return." - - order_by SearchOrderBy? - "Specified property of the order of search results. By default, results are sorted by relevance." - - file_status FileStatus = active - "Restricts search to the given file status." - - filename_only Boolean = false - "Restricts search to only match on filenames." - - file_extensions List(String)? - "Restricts search to only the extensions specified. Only supported for active file search." - - file_categories List(FileCategory)? - "Restricts search to only the file categories specified. Only supported for active file search." - - account_id users_common.AccountId? - "Restricts results to the given account id." - - example default - path = "/Folder" - max_results = 20 - -struct SearchMatchFieldOptions - - include_highlights Boolean = false - "Whether to include highlight span from file title." - example default - include_highlights = false - -union SearchOrderBy - relevance - last_modified_time - - example default - relevance = null - -# both -- maybe supported in the future -union FileStatus - active - deleted - - example default - active = null - -union FileCategory - - image - "jpg, png, gif, and more." - - document - "doc, docx, txt, and more." - - pdf - "pdf." - - spreadsheet - "xlsx, xls, csv, and more." - - presentation - "ppt, pptx, key, and more." - - audio - "mp3, wav, mid, and more." - - video - "mov, wmv, mp4, and more." - - folder - "dropbox folder." - - paper - "dropbox paper doc." - - others - "any file not in one of the categories above." - -route search/continue:2 (SearchV2ContinueArg, SearchV2Result, SearchError) - "Fetches the next page of search results returned from :route:`search:2`. - - Note: :route:`search:2` along with :route:`search/continue:2` can only be used to - retrieve a maximum of 10,000 matches. - - Recent changes may not immediately be reflected in search results due to a short delay in indexing. - Duplicate results may be returned across pages. Some results may not be returned." - - attrs - allow_app_folder_app = true - scope = "files.metadata.read" - -alias SearchV2Cursor = String(min_length=1) - -struct SearchV2ContinueArg - cursor SearchV2Cursor - "The cursor returned by your last call to :route:`search:2`. Used to fetch the next page of results." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - - -struct SearchV2Result - - matches List(SearchMatchV2) - "A list (possibly empty) of matches for the query." - - has_more Boolean - "Used for paging. If true, indicates there is another page of results - available that can be fetched by calling :route:`search/continue:2` with the cursor." - - cursor SearchV2Cursor? - "Pass the cursor into :route:`search/continue:2` to fetch the next page of results." - - example default - matches = [default] - has_more = false - cursor = null - -struct SearchMatchV2 - - metadata MetadataV2 - "The metadata for the matched file or folder." - - match_type SearchMatchTypeV2? - "The type of the match." - - highlight_spans List(HighlightSpan)? - "The list of HighlightSpan determines which parts of the file title should be highlighted." - - example default - metadata = default - highlight_spans = null - -union SearchMatchTypeV2 - "Indicates what type of match was found for a given item." - - filename - "This item was matched on its file or folder name." - file_content - "This item was matched based on its file contents." - filename_and_content - "This item was matched based on both its contents and its file name." - image_content - "This item was matched on image content." - -# -# Errors shared by various operations -# - -alias MalformedPathError = String? # TODO: Maybe a user_message-like thing? - -union LookupError - malformed_path MalformedPathError - "The given path does not satisfy the required path format. Please refer to the :link:`Path formats documentation https://www.dropbox.com/developers/documentation/http/documentation#path-formats` for more information." - not_found - "There is nothing at the given path." - not_file - "We were expecting a file, but the given path refers to something that isn't a file." - not_folder - "We were expecting a folder, but the given path refers to something that isn't a folder." - restricted_content - "The file cannot be transferred because the content is restricted. For example, we might restrict a file due to legal requirements." - unsupported_content_type - "This operation is not supported for this content type." - locked - "The given path is locked." - -union WriteError - malformed_path MalformedPathError - "The given path does not satisfy the required path format. Please refer to the :link:`Path formats documentation https://www.dropbox.com/developers/documentation/http/documentation#path-formats` for more information." - conflict WriteConflictError - "Couldn't write to the target path because there was something in the way." - no_write_permission - "The user doesn't have permissions to write to the target location." - insufficient_space - "The user doesn't have enough available space (bytes) to write more data." - disallowed_name - "Dropbox will not save the file or folder because of its name." - team_folder - "This endpoint cannot move or delete team folders." - operation_suppressed - "This file operation is not allowed at this path." - too_many_write_operations - "There are too many write operations in user's Dropbox. Please retry - this request." - -union WriteConflictError - file - "There's a file in the way." - folder - "There's a folder in the way." - file_ancestor - "There's a file at an ancestor path, so we couldn't create the required parent folders." - -# -# Create folder -# - -struct CreateFolderArg - path WritePath - "Path in the user's Dropbox to create." - autorename Boolean = false - "If there's a conflict, have the Dropbox server try to autorename - the folder to avoid the conflict." - - example default - path = "/Homework/math" - -struct CreateFolderResult extends FileOpsResult - metadata FolderMetadata - "Metadata of the created folder." - - example default - metadata = default - -union_closed CreateFolderError - path WriteError - -route create_folder:2 (CreateFolderArg, CreateFolderResult, CreateFolderError) - "Create a folder at a given path." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -route create_folder (CreateFolderArg, FolderMetadata, CreateFolderError) deprecated by create_folder:2 - "Create a folder at a given path." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -struct CreateFolderBatchArg - paths List(WritePath, max_items=10000) - "List of paths to be created in the user's Dropbox. Duplicate path - arguments in the batch are considered only once." - autorename Boolean = false - "If there's a conflict, have the Dropbox server try to autorename - the folder to avoid the conflict." - force_async Boolean = false - "Whether to force the create to happen asynchronously." - - example default - paths = ["/Homework/math"] - autorename = false - -struct CreateFolderEntryResult - metadata FolderMetadata - "Metadata of the created folder." - - example default - metadata = default - -union CreateFolderEntryError - path WriteError - -union_closed CreateFolderBatchResultEntry - success CreateFolderEntryResult - failure CreateFolderEntryError - - example default - success = default - -union CreateFolderBatchError - too_many_files - "The operation would involve too many files or folders." - -struct CreateFolderBatchResult extends FileOpsResult - entries List(CreateFolderBatchResultEntry) - "Each entry in :field:`CreateFolderBatchArg.paths` will appear at the same position - inside :field:`CreateFolderBatchResult.entries`." - - example default - entries = [default] - -union CreateFolderBatchJobStatus extends async.PollResultBase - complete CreateFolderBatchResult - "The batch create folder has finished." - failed CreateFolderBatchError - "The batch create folder has failed." - - example default - complete = default - -union CreateFolderBatchLaunch extends async.LaunchResultBase - "Result returned by :route:`create_folder_batch` that may either launch an - asynchronous job or complete synchronously." - - complete CreateFolderBatchResult - - example complete - complete = default - - example async_job_id - async_job_id = "34g93hh34h04y384084" - -route create_folder_batch (CreateFolderBatchArg, CreateFolderBatchLaunch, Void) - "Create multiple folders at once. - - This route is asynchronous for large batches, which returns a job ID immediately and runs - the create folder batch asynchronously. Otherwise, creates the folders and returns the result - synchronously for smaller inputs. You can force asynchronous behaviour by using the - :field:`CreateFolderBatchArg.force_async` flag. Use :route:`create_folder_batch/check` to check - the job status." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -route create_folder_batch/check (async.PollArg, CreateFolderBatchJobStatus, async.PollError) - "Returns the status of an asynchronous job for :route:`create_folder_batch`. If - success, it returns list of result for each entry." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -# -# Delete -# - -struct DeleteArg - path WritePathOrId - "Path in the user's Dropbox to delete." - parent_rev Rev? - "Perform delete if given \"rev\" matches the existing file's latest \"rev\". This field - does not support deleting a folder." - - example delete - path = "/Homework/math/Prime_Numbers.txt" - -union DeleteError - path_lookup LookupError - path_write WriteError - too_many_write_operations - "There are too many write operations in user's Dropbox. Please retry - this request." - too_many_files - "There are too many files in one request. Please retry with fewer files." - -struct DeleteBatchArg - entries List(DeleteArg, max_items=1000) - - example default - entries = [delete] - -struct DeleteBatchResultData - metadata Metadata - "Metadata of the deleted object." - - example default - metadata = default - -union_closed DeleteBatchResultEntry - success DeleteBatchResultData - failure DeleteError - - example default - success = default - -struct DeleteResult extends FileOpsResult - metadata Metadata - "Metadata of the deleted object." - - example default - metadata = default - -struct DeleteBatchResult extends FileOpsResult - entries List(DeleteBatchResultEntry) - "Each entry in :field:`DeleteBatchArg.entries` will appear at the same position inside - :field:`DeleteBatchResult.entries`." - - example default - entries = [default] - -union DeleteBatchError - - too_many_write_operations - "Use :field:`DeleteError.too_many_write_operations`. :route:`delete_batch` now - provides smaller granularity about which entry has failed because of this." + read_only = true + parent_shared_folder_id = "84528192421" + modified_by = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" -union DeleteBatchJobStatus extends async.PollResultBase - complete DeleteBatchResult - "The batch delete has finished." - failed DeleteBatchError - "The batch delete has failed." +struct FolderSharingInfo extends SharingInfo + "Sharing info for a folder which is contained in a shared folder or is a + shared folder mount point." + parent_shared_folder_id common.SharedFolderId? + "Set if the folder is contained by a shared folder." + shared_folder_id common.SharedFolderId? + "If this folder is a shared folder mount point, the ID of the shared + folder mounted at this location." + traverse_only Boolean = false + "Specifies that the folder can only be traversed and the user can only see + a limited subset of the contents of this folder because they don't have + read access to this folder. They do, however, have access to some sub folder." + no_access Boolean = false + "Specifies that the folder cannot be accessed by the user." example default - complete = default - -union DeleteBatchLaunch extends async.LaunchResultBase - "Result returned by :route:`delete_batch` that may either launch an asynchronous job or complete - synchronously." - - complete DeleteBatchResult - - example complete - complete = default - - example async_job_id - async_job_id = "34g93hh34h04y384084" - -route delete:2 (DeleteArg, DeleteResult, DeleteError) - "Delete the file or folder at a given path. - - If the path is a folder, all its contents will be deleted too. - - A successful response indicates that the file or folder was deleted. The returned metadata will - be the corresponding :type:`FileMetadata` or :type:`FolderMetadata` for the item at time of - deletion, and not a :type:`DeletedMetadata` object." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -route delete (DeleteArg, Metadata, DeleteError) deprecated by delete:2 - "Delete the file or folder at a given path. - - If the path is a folder, all its contents will be deleted too. - - A successful response indicates that the file or folder was deleted. The returned metadata will - be the corresponding :type:`FileMetadata` or :type:`FolderMetadata` for the item at time of - deletion, and not a :type:`DeletedMetadata` object." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -route delete_batch (DeleteBatchArg, DeleteBatchLaunch, Void) - "Delete multiple files/folders at once. - - This route is asynchronous, which returns a job ID immediately and runs - the delete batch asynchronously. Use :route:`delete_batch/check` to check - the job status." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -route delete_batch/check (async.PollArg, DeleteBatchJobStatus, async.PollError) - "Returns the status of an asynchronous job for :route:`delete_batch`. If - success, it returns list of result for each entry." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" - -route permanently_delete (DeleteArg, Void, DeleteError) - "Permanently delete the file or folder at a given path - (see https://www.dropbox.com/en/help/40). - - If the given file or folder is not yet deleted, this route will first delete it. - It is possible for this route to successfully delete, then fail to permanently - delete. - - Note: This endpoint is only available for Dropbox Business apps." - - attrs - select_admin_mode = "team_admin" - allow_app_folder_app = true - scope = "files.permanent_delete" - -# -# Args and error shared by copy and move -# + read_only = false + parent_shared_folder_id = "84528192421" + + example shared_folder + read_only = true + shared_folder_id = "84528192421" -# Arg, result and error for relocation and relocation batch. +struct SymlinkInfo + target String + "The target this symlink points to." -struct RelocationPath - from_path WritePathOrId - "Path in the user's Dropbox to be copied or moved." - to_path WritePathOrId - "Path in the user's Dropbox that is the destination." +struct ExportInfo + "Export information for a file." + export_as String? + "Format to which the file can be exported to." + export_options List(String)? + "Additional formats to which the file can be exported. These values can be + specified as the export_format in /files/export." example default - from_path = "/Homework/math" - to_path = "/Homework/algebra" + export_as = "xlsx" -struct RelocationArg extends RelocationPath - allow_shared_folder Boolean = false - "This flag has no effect." - autorename Boolean = false - "If there's a conflict, have the Dropbox server try to autorename - the file to avoid the conflict." - allow_ownership_transfer Boolean = false - "Allow moves by owner even if it would result in an ownership transfer - for the content being moved. This does not apply to copies." +struct Dimensions + "Dimensions for a photo or video." + height UInt64 + "Height of the photo/video." + width UInt64 + "Width of the photo/video." example default - from_path = "/Homework/math" - to_path = "/Homework/algebra" - -union RelocationError - from_lookup LookupError - from_write WriteError - to WriteError - - cant_copy_shared_folder - "Shared folders can't be copied." - cant_nest_shared_folder - "Your move operation would result in nested shared folders. This is not allowed." - cant_move_folder_into_itself - "You cannot move a folder into itself." - too_many_files - "The operation would involve more than 10,000 files and folders." - duplicated_or_nested_paths - "There are duplicated/nested paths among :field:`RelocationArg.from_path` - and :field:`RelocationArg.to_path`." - cant_transfer_ownership - "Your move operation would result in an ownership transfer. - You may reissue the request with - the field :field:`RelocationArg.allow_ownership_transfer` to true." - insufficient_quota - "The current user does not have enough space to move or copy the files." - internal_error - "Something went wrong with the job on Dropbox's end. You'll need to - verify that the action you were taking succeeded, and if not, try - again. This should happen very rarely." - cant_move_shared_folder - "Can't move the shared folder to the given destination." - cant_move_into_vault MoveIntoVaultError - "Some content cannot be moved into Vault under certain circumstances, see detailed error." - cant_move_into_family MoveIntoFamilyError - "Some content cannot be moved into the Family Room folder under certain circumstances, see detailed error." + height = 768 + width = 1024 -union MoveIntoVaultError - is_shared_folder - "Moving shared folder into Vault is not allowed." +struct GpsCoordinates + "GPS coordinates for a photo or video." + latitude Float64 + "Latitude of the GPS coordinates." + longitude Float64 + "Longitude of the GPS coordinates." -union MoveIntoFamilyError - is_shared_folder - "Moving shared folder into Family Room folder is not allowed." + example default + latitude = 37.7833 + longitude = 122.4167 -struct RelocationResult extends FileOpsResult - metadata Metadata - "Metadata of the relocated object." +struct MediaMetadata + "Metadata for a photo or video." + union_closed + photo PhotoMetadata + video VideoMetadata + dimensions Dimensions? + "Dimension of the photo/video." + location GpsCoordinates? + "The GPS coordinate of the photo/video." + time_taken common.DropboxTimestamp? + "The timestamp when the photo/video is taken." + +struct PhotoMetadata extends MediaMetadata + "Metadata for a photo." example default - metadata = default + dimensions = default + location = default + time_taken = "2015-05-12T15:50:38Z" -struct RelocationBatchArgBase - entries List(RelocationPath, min_items=1, max_items=1000) - "List of entries to be moved or copied. Each entry is :type:`RelocationPath`." - autorename Boolean = false - "If there's a conflict with any file, have the Dropbox server try to - autorename that file to avoid the conflict." +struct VideoMetadata extends MediaMetadata + "Metadata for a video." + duration UInt64? + "The duration of the video in milliseconds." example default - entries = [default] + dimensions = default + location = default + time_taken = "2015-05-12T15:50:38Z" + duration = 1000 -union_closed RelocationBatchV2Launch extends async.LaunchResultBase - "Result returned by :route:`copy_batch:2` or :route:`move_batch:2` that may either launch an - asynchronous job or complete synchronously." +union_closed MediaInfo + pending + "Indicate the photo/video is still under processing and metadata is + not available yet." + metadata MediaMetadata + "The metadata for the photo/video. Uses MediaMetadataAbstract to + preserve photo/video subtypes (e.g. VideoMetadata.duration)." - complete RelocationBatchV2Result +struct Metadata + "Metadata for a file or folder." + union_closed + file FileMetadata + folder FolderMetadata + deleted DeletedMetadata + name String + "The last component of the path (including extension). + This never contains a slash." + path_lower String? + "The lowercased full path in the user's Dropbox. This always starts with a slash. + This field will be null if the file or folder is not mounted." + path_display String? + "The cased path to be used for display purposes only. In rare instances the casing will not + correctly match the user's filesystem, but this behavior will match the path provided in + the Core API v1, and at least the last path component will have the correct casing. Changes + to only the casing of paths won't be returned by :route:`list_folder/continue`. This field + will be null if the file or folder is not mounted." + parent_shared_folder_id common.SharedFolderId? + "Please use :field:`FileSharingInfo.parent_shared_folder_id` + or :field:`FolderSharingInfo.parent_shared_folder_id` instead." + preview_url String? + "The preview URL of the file." - example complete - complete = default + example default + file = default + + example folder_metadata + folder = default + + example search_metadata + file = search_file_metadata - example async_job_id - async_job_id = "34g93hh34h04y384084" +struct FileMetadata extends Metadata + id Id + "A unique identifier for the file." + client_modified common.DropboxTimestamp + "For files, this is the modification time set by the desktop client + when the file was added to Dropbox. Since this time is not verified + (the Dropbox server stores whatever the desktop client sends up), this + should only be used for display purposes (such as sorting) and not, + for example, to determine if a file has changed or not." + server_modified common.DropboxTimestamp + "The last time the file was modified on Dropbox." + rev Rev + "A unique identifier for the current revision of a file. This field is + the same rev as elsewhere in the API and can be used to detect changes + and avoid conflicts." + size UInt64 + "The file size in bytes." + media_info MediaInfo? + "Additional information if the file is a photo or video. This field will not be set on entries returned by :route:`list_folder`, :route:`list_folder/continue`, or :route:`get_thumbnail_batch`, starting December 2, 2019." + symlink_info SymlinkInfo? + "Set if this file is a symlink." + sharing_info FileSharingInfo? + "Set if this file is contained in a shared folder." + is_downloadable Boolean = true + "If true, file can be downloaded directly; else the file must be exported." + export_info ExportInfo? + "Information about format this file can be exported to. This filed must be set if :field:`is_downloadable` + is set to false." + property_groups List(file_properties.PropertyGroup)? + "Additional information if the file has custom properties with the + property template specified." + has_explicit_shared_members Boolean? + "This flag will only be present if include_has_explicit_shared_members + is true in :route:`list_folder` or :route:`get_metadata`. If this + flag is present, it will be true if this file has any explicit shared + members. This is different from sharing_info in that this could be true + in the case where a file has explicit members but is not contained within + a shared folder." + content_hash Sha256HexHash? + "A hash of the file content. This field can be used to verify data integrity. For more + information see our :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." + file_lock_info FileLockMetadata? + "If present, the metadata associated with the file's current lock." -union_closed RelocationBatchV2JobStatus extends async.PollResultBase - "Result returned by :route:`copy_batch/check:2` or :route:`move_batch/check:2` that may either - be in progress or completed with result for each entry." + example default + id = "id:a4ayc_80_OEAAAAAAAAAXw" + name = "Prime_Numbers.txt" + path_lower = "/homework/math/prime_numbers.txt" + path_display = "/Homework/math/Prime_Numbers.txt" + sharing_info = default + client_modified = "2015-05-12T15:50:38Z" + server_modified = "2015-05-12T15:50:38Z" + rev = "a1c10ce0dd78" + size = 7212 + is_downloadable = true + property_groups = [default] + has_explicit_shared_members = false + content_hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + file_lock_info = default + + example search_file_metadata + id = "id:a4ayc_80_OEAAAAAAAAAXw" + name = "Prime_Numbers.txt" + path_lower = "/homework/math/prime_numbers.txt" + path_display = "/Homework/math/Prime_Numbers.txt" + sharing_info = default + client_modified = "2015-05-12T15:50:38Z" + server_modified = "2015-05-12T15:50:38Z" + rev = "a1c10ce0dd78" + size = 7212 + is_downloadable = true + has_explicit_shared_members = false + content_hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - complete RelocationBatchV2Result - "The copy or move batch job has finished." +struct FolderMetadata extends Metadata + id Id + "A unique identifier for the folder." + shared_folder_id common.SharedFolderId? + "Please use :field:`sharing_info` instead." + sharing_info FolderSharingInfo? + "Set if the folder is contained in a shared folder or is a shared folder mount point." + property_groups List(file_properties.PropertyGroup)? + "Additional information if the file has custom properties with the + property template specified. Note that only properties associated with + user-owned templates, not team-owned templates, can be attached to folders." example default - complete = default + id = "id:a4ayc_80_OEAAAAAAAAAXz" + path_lower = "/homework/math" + path_display = "/Homework/math" + name = "math" + sharing_info = default + property_groups = [default] -struct RelocationBatchV2Result extends FileOpsResult - entries List(RelocationBatchResultEntry) - "Each entry in CopyBatchArg.entries or :field:`MoveBatchArg.entries` will - appear at the same position inside :field:`RelocationBatchV2Result.entries`." +struct DeletedMetadata extends Metadata + "Indicates that there used to be a file or folder at this path, but it no longer exists." example default - entries = [success] + path_lower = "/homework/math/pi.txt" + path_display = "/Homework/math/pi.txt" + name = "pi.txt" -union RelocationBatchErrorEntry - relocation_error RelocationError - "User errors that retry won't help." - internal_error - "Something went wrong with the job on Dropbox's end. You'll need to - verify that the action you were taking succeeded, and if not, try - again. This should happen very rarely." - too_many_write_operations - "There are too many write operations in user's Dropbox. Please retry - this request." +struct PreviewArg + path ReadPath + "The path of the file to preview." + rev Rev? + "Please specify revision in :field:`path` instead." -union RelocationBatchResultEntry - success Metadata - failure RelocationBatchErrorEntry + example default + path = "/word.docx" + + example id + path = "id:a4ayc_80_OEAAAAAAAAAYa" + + example rev + path = "rev:a1c10ce0dd78" - example success - success = default -# Deprecated Arg, Result and error. +union_closed AlphaGetMetadataError extends GetMetadataError + properties_error file_properties.LookUpPropertiesError -struct RelocationBatchArg extends RelocationBatchArgBase - allow_shared_folder Boolean = false - "This flag has no effect." - allow_ownership_transfer Boolean = false - "Allow moves by owner even if it would result in an ownership transfer - for the content being moved. This does not apply to copies." +union CreateFolderBatchError + too_many_files + "The operation would involve too many files or folders." + +union CreateFolderBatchJobStatus extends async.PollResultBase + complete CreateFolderBatchResult + "The batch create folder has finished." + failed CreateFolderBatchError + "The batch create folder has failed." example default - entries = [default] + complete = default -struct RelocationBatchResultData - metadata Metadata - "Metadata of the relocated object." +union CreateFolderBatchLaunch extends async.LaunchResultBase + "Result returned by :route:`create_folder_batch` that may either launch an + asynchronous job or complete synchronously." + complete CreateFolderBatchResult + + example complete + complete = default + + example async_job_id + async_job_id = "34g93hh34h04y384084" + +union_closed CreateFolderBatchResultEntry + success CreateFolderEntryResult + failure CreateFolderEntryError example default - metadata = default + success = default + +union CreateFolderEntryError + path WriteError -struct RelocationBatchResult extends FileOpsResult - entries List(RelocationBatchResultData) +union_closed CreateFolderError + path WriteError - example default - entries = [default] +union DeleteBatchError + too_many_write_operations + "Use :field:`DeleteError.too_many_write_operations`. :route:`delete_batch` now + provides smaller granularity about which entry has failed because of this." -union_closed RelocationBatchJobStatus extends async.PollResultBase - complete RelocationBatchResult - "The copy or move batch job has finished." - failed RelocationBatchError - "The copy or move batch job has failed with exception." +union DeleteBatchJobStatus extends async.PollResultBase + complete DeleteBatchResult + "The batch delete has finished." + failed DeleteBatchError + "The batch delete has failed." example default complete = default -union RelocationBatchLaunch extends async.LaunchResultBase - - "Result returned by :route:`copy_batch` or :route:`move_batch` that may either launch an - asynchronous job or complete synchronously." - - complete RelocationBatchResult +union DeleteBatchLaunch extends async.LaunchResultBase + "Result returned by :route:`delete_batch` that may either launch an asynchronous job or complete + synchronously." + complete DeleteBatchResult example complete complete = default - + example async_job_id async_job_id = "34g93hh34h04y384084" -union RelocationBatchError extends RelocationError - too_many_write_operations - "There are too many write operations in user's Dropbox. Please retry - this request." - -# -# Copy -# - -alias CopyBatchArg = RelocationBatchArgBase - -route copy:2 (RelocationArg, RelocationResult, RelocationError) - "Copy a file or folder to a different location in the user's Dropbox. - - If the source path is a folder all its contents will be copied." +union DownloadError + path LookupError + unsupported_file + "This file type cannot be downloaded directly; use :route:`export` instead." - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union DownloadZipError + path LookupError + too_large + "The folder or a file is too large to download." + too_many_files + "The folder has too many files to download." -route copy (RelocationArg, Metadata, RelocationError) deprecated by copy:2 - "Copy a file or folder to a different location in the user's Dropbox. +union ExportError + path LookupError + non_exportable + "This file type cannot be exported. Use :route:`download` instead." + invalid_export_format + "The specified export format is not a valid option for this file type." + retry_error + "The exportable content is not yet available. Please retry later." - If the source path is a folder all its contents will be copied." +union FileCategory + image + "jpg, png, gif, and more." + document + "doc, docx, txt, and more." + pdf + "pdf." + spreadsheet + "xlsx, xls, csv, and more." + presentation + "ppt, pptx, key, and more." + audio + "mp3, wav, mid, and more." + video + "mov, wmv, mp4, and more." + folder + "dropbox folder." + paper + "dropbox paper doc." + others + "any file not in one of the categories above." - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union FileStatus + active + deleted -route copy_batch:2 (CopyBatchArg, RelocationBatchV2Launch, Void) - "Copy multiple files or folders to different locations at once in the - user's Dropbox. + example default + active = null - This route will replace :route:`copy_batch:1`. The main difference is this - route will return status for each entry, while :route:`copy_batch:1` raises - failure if any entry fails. +union GetCopyReferenceError + path LookupError - This route will either finish synchronously, or return a job ID and do the - async copy job in background. Please use :route:`copy_batch/check:2` to - check the job status." +union_closed GetMetadataError + path LookupError - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union GetTemporaryLinkError + path LookupError + email_not_verified + "This user's email address is not verified. This functionality is only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + unsupported_file + "Cannot get temporary link to this file type; use :route:`export` instead." + not_allowed + "The user is not allowed to request a temporary link to the specified file. + For example, this can occur if the file is restricted or if the user's links + are :link:`banned https://help.dropbox.com/files-folders/share/banned-links`." -route copy_batch/check:2 (async.PollArg, RelocationBatchV2JobStatus, async.PollError) - "Returns the status of an asynchronous job for :route:`copy_batch:2`. It returns - list of results for each entry." +union GetThumbnailBatchError + too_many_files + "The operation involves more than 25 files." - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union GetThumbnailBatchResultEntry + success GetThumbnailBatchResultData + failure ThumbnailError + "The result for this file if it was an error." -# deprecated copy routes + example default + success = default -route copy_batch (RelocationBatchArg, RelocationBatchLaunch, Void) deprecated by copy_batch:2 - "Copy multiple files or folders to different locations at once in the - user's Dropbox. +union ImportFormat + "The import format of the incoming Paper doc content." + html + "The provided data is interpreted as standard HTML." + markdown + "The provided data is interpreted as markdown." + plain_text + "The provided data is interpreted as plain text." - This route will return job ID immediately and do the async copy job in - background. Please use :route:`copy_batch/check:1` to check the job status." +union ListFolderContinueError + path LookupError + reset + "Indicates that the cursor has been invalidated. Call + :route:`list_folder` to obtain a new cursor." - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union ListFolderError + path LookupError + template_error file_properties.TemplateError -route copy_batch/check (async.PollArg, RelocationBatchJobStatus, async.PollError) deprecated by copy_batch/check:2 - "Returns the status of an asynchronous job for :route:`copy_batch:1`. If - success, it returns list of results for each entry." +union ListFolderLongpollError + reset + "Indicates that the cursor has been invalidated. Call + :route:`list_folder` to obtain a new cursor." - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union ListRevisionsError + path LookupError + invalid_before_rev + "The revision in before_rev is invalid." + before_rev_not_supported + "The before_rev argument is only supported in path mode." -# -# Move -# +union ListRevisionsMode + path + "Returns revisions with the same file path as identified by the latest file entry at the + given file path or id." + id + "Returns revisions with the same file id as identified by the latest file entry at the given + file path or id." -struct MoveBatchArg extends RelocationBatchArgBase - allow_ownership_transfer Boolean = false - "Allow moves by owner even if it would result in an ownership transfer - for the content being moved. This does not apply to copies." +union_closed LockFileResultEntry + success LockFileResult + failure LockFileError example default - entries = [default] - -route move:2 (RelocationArg, RelocationResult, RelocationError) - "Move a file or folder to a different location in the user's Dropbox. - - If the source path is a folder all its contents will be moved. + success = default - Note that we do not currently support case-only renaming." +union MetadataV2 + "Metadata for a file, folder or other resource types." + metadata Metadata - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" + example default + metadata = search_metadata -route move (RelocationArg, Metadata, RelocationError) deprecated by move:2 - "Move a file or folder to a different location in the user's Dropbox. +union MoveIntoFamilyError + is_shared_folder + "Moving shared folder into Family Room folder is not allowed." - If the source path is a folder all its contents will be moved." +union MoveIntoVaultError + is_shared_folder + "Moving shared folder into Vault is not allowed." - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union PaperContentError + insufficient_permissions + "Your account does not have permissions to edit Paper docs." + content_malformed + "The provided content was malformed and cannot be imported to Paper." + doc_length_exceeded + "The Paper doc would be too large, split the content into multiple docs." + image_size_exceeded + "The imported document contains an image that is too large. The current limit is 1MB. + This only applies to HTML with data URI." -route move_batch:2(MoveBatchArg, RelocationBatchV2Launch, Void) - "Move multiple files or folders to different locations at once in the - user's Dropbox. Note that we do not currently support case-only renaming. +union PaperCreateError extends PaperContentError + invalid_path + "The file could not be saved to the specified location." + email_unverified + "The user's email must be verified to create Paper docs." + invalid_file_extension + "The file path must end in .paper." + paper_disabled + "Paper is disabled for your team." - This route will replace :route:`move_batch:1`. The main difference is this - route will return status for each entry, while :route:`move_batch:1` raises - failure if any entry fails. +union PaperDocUpdatePolicy + update + "Sets the doc content to the provided content if the provided paper_revision matches the latest doc revision. + Otherwise, returns an error." + overwrite + "Sets the doc content to the provided content without checking paper_revision." + prepend + "Adds the provided content to the beginning of the doc without checking paper_revision." + append + "Adds the provided content to the end of the doc without checking paper_revision." - This route will either finish synchronously, or return a job ID and do the - async move job in background. Please use :route:`move_batch/check:2` to - check the job status." +union PaperUpdateError extends PaperContentError + path LookupError + revision_mismatch + "The provided revision does not match the document head." + doc_archived + "This operation is not allowed on archived Paper docs." + doc_deleted + "This operation is not allowed on deleted Paper docs." - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union_closed PreviewError + path LookupError + "An error occurs when downloading metadata for the file." + in_progress + "This preview generation is still in progress and the file is not ready + for preview yet." + unsupported_extension + "The file extension is not supported preview generation." + unsupported_content + "The file content is not supported for preview generation." -route move_batch/check:2(async.PollArg, RelocationBatchV2JobStatus, async.PollError) - "Returns the status of an asynchronous job for :route:`move_batch:2`. It - returns list of results for each entry." +union RelocationBatchError extends RelocationError + too_many_write_operations + "There are too many write operations in user's Dropbox. Please retry + this request." - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +union RelocationBatchErrorEntry + relocation_error RelocationError + "User errors that retry won't help." + internal_error + "Something went wrong with the job on Dropbox's end. You'll need to + verify that the action you were taking succeeded, and if not, try + again. This should happen very rarely." + too_many_write_operations + "There are too many write operations in user's Dropbox. Please retry + this request." -# deprecated move routes +union_closed RelocationBatchJobStatus extends async.PollResultBase + complete RelocationBatchResult + "The copy or move batch job has finished." + failed RelocationBatchError + "The copy or move batch job has failed with exception." -route move_batch (RelocationBatchArg, RelocationBatchLaunch, Void) deprecated by move_batch:2 - "Move multiple files or folders to different locations at once in the - user's Dropbox. + example default + complete = default - This route will return job ID immediately and do the async moving job in - background. Please use :route:`move_batch/check:1` to check the job status." +union RelocationBatchLaunch extends async.LaunchResultBase + "Result returned by :route:`copy_batch` or :route:`move_batch` that may either launch an + asynchronous job or complete synchronously." + complete RelocationBatchResult - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" + example complete + complete = default + + example async_job_id + async_job_id = "34g93hh34h04y384084" -route move_batch/check(async.PollArg, RelocationBatchJobStatus, async.PollError) deprecated by move_batch/check:2 - "Returns the status of an asynchronous job for :route:`move_batch:1`. If - success, it returns list of results for each entry." +union RelocationBatchResultEntry + success Metadata + failure RelocationBatchErrorEntry - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" + example success + success = default -# -# Thumbnail -# +union_closed RelocationBatchV2JobStatus extends async.PollResultBase + "Result returned by :route:`copy_batch/check:2` or :route:`move_batch/check:2` that may either + be in progress or completed with result for each entry." + complete RelocationBatchV2Result + "The copy or move batch job has finished." -union_closed ThumbnailSize - w32h32 - "32 by 32 px." - w64h64 - "64 by 64 px." - w128h128 - "128 by 128 px." - w256h256 - "256 by 256 px." - w480h320 - "480 by 320 px." - w640h480 - "640 by 480 px." - w960h640 - "960 by 640 px." - w1024h768 - "1024 by 768 px." - w2048h1536 - "2048 by 1536 px." + example default + complete = default -union_closed ThumbnailFormat - jpeg - png +union_closed RelocationBatchV2Launch extends async.LaunchResultBase + "Result returned by :route:`copy_batch:2` or :route:`move_batch:2` that may either launch an + asynchronous job or complete synchronously." + complete RelocationBatchV2Result -union_closed ThumbnailMode - strict - "Scale down the image to fit within the given size." - bestfit - "Scale down the image to fit within the given size or its transpose." - fitone_bestfit - "Scale down the image to completely cover the given size or its transpose." + example complete + complete = default + + example async_job_id + async_job_id = "34g93hh34h04y384084" -struct ThumbnailArg - path ReadPath - "The path to the image file you want to thumbnail." - format ThumbnailFormat = jpeg - "The format for the thumbnail image, jpeg (default) or png. For - images that are photos, jpeg should be preferred, while png is - better for screenshots and digital arts." - size ThumbnailSize = w64h64 - "The size for the thumbnail image." - mode ThumbnailMode = strict - "How to resize and crop the image to achieve the desired size." +union RelocationError + from_lookup LookupError + from_write WriteError + to WriteError + cant_copy_shared_folder + "Shared folders can't be copied." + cant_nest_shared_folder + "Your move operation would result in nested shared folders. This is not allowed." + cant_move_folder_into_itself + "You cannot move a folder into itself." + too_many_files + "The operation would involve more than 10,000 files and folders." + duplicated_or_nested_paths + "There are duplicated/nested paths among :field:`RelocationArg.from_path` + and :field:`RelocationArg.to_path`." + cant_transfer_ownership + "Your move operation would result in an ownership transfer. + You may reissue the request with + the field :field:`RelocationArg.allow_ownership_transfer` to true." + insufficient_quota + "The current user does not have enough space to move or copy the files." + internal_error + "Something went wrong with the job on Dropbox's end. You'll need to + verify that the action you were taking succeeded, and if not, try + again. This should happen very rarely." + cant_move_shared_folder + "Can't move the shared folder to the given destination." + cant_move_into_vault MoveIntoVaultError + "Some content cannot be moved into Vault under certain circumstances, see detailed error." + cant_move_into_family MoveIntoFamilyError + "Some content cannot be moved into the Family Room folder under certain circumstances, see detailed error." - example default - path = "/image.jpg" - format = jpeg +union RestoreError + path_lookup LookupError + "An error occurs when downloading metadata for the file." + path_write WriteError + "An error occurs when trying to restore the file to that path." + invalid_revision + "The revision is invalid. It may not exist or may point to a deleted file." + in_progress + "The restore is currently executing, but has not yet completed." - example id - path = "id:a4ayc_80_OEAAAAAAAAAYa" - format = jpeg +union SaveCopyReferenceError + path WriteError + invalid_copy_reference + "The copy reference is invalid." + no_permission + "You don't have permission to save the given copy reference. Please make sure this app + is same app which created the copy reference and the source user is still linked to + the app." + not_found + "The file referenced by the copy reference cannot be found." + too_many_files + "The operation would involve more than 10,000 files and folders." - example rev - path = "rev:a1c10ce0dd78" - format = jpeg +union SaveUrlError + path WriteError + download_failed + "Failed downloading the given URL. The URL may be + password-protected and the password provided was incorrect, + or the link may be disabled." + invalid_url + "The given URL is invalid." + not_found + "The file where the URL is saved to no longer exists." -struct GetThumbnailBatchArg - "Arguments for :route:`get_thumbnail_batch`." +union_closed SaveUrlJobStatus extends async.PollResultBase + complete FileMetadata + "Metadata of the file where the URL is saved to." + failed SaveUrlError - entries List(ThumbnailArg) - "List of files to get thumbnails." +union_closed SaveUrlResult extends async.LaunchResultBase + complete FileMetadata + "Metadata of the file where the URL is saved to." example default - entries = [default] + complete = default -struct GetThumbnailBatchResult - entries List(GetThumbnailBatchResultEntry) - "List of files and their thumbnails." +union SearchError + path LookupError + invalid_argument String? + internal_error + "Something went wrong, please try again." - example default - entries = [default] +union SearchMatchTypeV2 + "Indicates what type of match was found for a given item." + filename + "This item was matched on its file or folder name." + file_content + "This item was matched based on its file contents." + filename_and_content + "This item was matched based on both its contents and its file name." + image_content + "This item was matched on image content." + metadata + "This item was matched based on its metadata." -union GetThumbnailBatchResultEntry - success GetThumbnailBatchResultData - failure ThumbnailError - "The result for this file if it was an error." +union_closed SearchMode + filename + "Search file and folder names." + filename_and_content + "Search file and folder names as well as file contents." + deleted_filename + "Search for deleted file and folder names." example default - success = default + filename_and_content = null + + example name_only + filename = null + + example deleted_names + deleted_filename = null -struct GetThumbnailBatchResultData - metadata FileMetadata - thumbnail String - "A string containing the base64-encoded thumbnail data for this file." +union SearchOrderBy + relevance + last_modified_time example default - metadata = default - thumbnail = "iVBORw0KGgoAAAANSUhEUgAAAdcAAABrCAMAAAI=" - -union GetThumbnailBatchError - too_many_files - "The operation involves more than 25 files." + relevance = null -union_closed ThumbnailError +union SyncSettingsError path LookupError - "An error occurs when downloading metadata for the image." - unsupported_extension - "The file extension doesn't allow conversion to a thumbnail." - unsupported_image - "The image cannot be converted to a thumbnail." - conversion_error - "An error occurs during thumbnail conversion." - -route get_thumbnail(ThumbnailArg, FileMetadata, ThumbnailError) - "Get a thumbnail for an image. - - This method currently supports files with the following file extensions: - jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than 20MB - in size won't be converted to a thumbnail." + unsupported_combination + "Setting this combination of sync settings simultaneously is not supported." + unsupported_configuration + "The specified configuration is not supported." - attrs - host = "content" - style = "download" - allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "files.content.read" +union UploadError + path UploadWriteFailed + "Unable to save the uploaded contents to a file." + properties_error file_properties.InvalidPropertyGroupError + "The supplied property group is invalid. The file has uploaded without property groups." + payload_too_large + "The request payload must be at most 150 MiB." + content_hash_mismatch + "The content received by the Dropbox server in this call does not match the provided content hash." + encryption_not_supported + "The file is required to be encrypted, which is not supported in our public API." -route get_thumbnail_batch(GetThumbnailBatchArg, GetThumbnailBatchResult, GetThumbnailBatchError) - "Get thumbnails for a list of images. We allow up to 25 thumbnails in a single batch. +union UploadSessionAppendBatchEntryError + not_found + "The upload session ID was not found or has expired. Upload sessions are + valid for 7 days." + incorrect_offset UploadSessionOffsetError + "The specified offset was incorrect. See the value for the + correct offset. This error may occur when a previous request + was received and processed successfully but the client did not + receive the response, e.g. due to a network error." + closed + "You are attempting to append data to an upload session that + has already been closed (i.e. committed)." + too_large + "You can not append to the upload session because the size of a file should not exceed the + max file size limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes)." + concurrent_session_invalid_offset + "For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes." + concurrent_session_invalid_data_size + "For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded." - This method currently supports files with the following file extensions: - jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than 20MB - in size won't be converted to a thumbnail." +union UploadSessionAppendBatchError + payload_too_large + "The request payload must be at most 150 MiB." + content_hash_mismatch + "The content received by the Dropbox server in this call does not match the provided content hash." + length_mismatch + "The total length of the content received by the Dropbox server in this + call does not match the total of the provided lengths in the batch arguments." - attrs - host = "content" - allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "files.content.read" +union_closed UploadSessionAppendBatchResultEntry + success + failure UploadSessionAppendBatchEntryError -union ThumbnailV2Error - path LookupError - "An error occurred when downloading metadata for the image." - unsupported_extension - "The file extension doesn't allow conversion to a thumbnail." - unsupported_image - "The image cannot be converted to a thumbnail." - conversion_error - "An error occurred during thumbnail conversion." - access_denied - "Access to this shared link is forbidden." - not_found - "The shared link does not exist." + example default + success = null +union UploadSessionAppendError + not_found + "The upload session ID was not found or has expired. Upload sessions are + valid for 7 days." + incorrect_offset UploadSessionOffsetError + "The specified offset was incorrect. See the value for the + correct offset. This error may occur when a previous request + was received and processed successfully but the client did not + receive the response, e.g. due to a network error." + closed + "You are attempting to append data to an upload session that + has already been closed (i.e. committed)." + too_large + "You can not append to the upload session because the size of a file should not exceed the + max file size limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes)." + concurrent_session_invalid_offset + "For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes." + concurrent_session_invalid_data_size + "For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded." + payload_too_large + "The request payload must be at most 150 MiB." + content_hash_mismatch + "The content received by the Dropbox server in this call does not match the provided content hash." -struct MinimalFileLinkMetadata - url String - "URL of the shared link." +union_closed UploadSessionFinishBatchJobStatus extends async.PollResultBase + complete UploadSessionFinishBatchResult + "The :route:`upload_session/finish_batch` has finished." - id Id? - "Unique identifier for the linked file." + example default + complete = default - path String? - "Full path in the user's Dropbox. This always starts with a slash. - This field will only be present only if the linked file is in the authenticated user's Dropbox." +union UploadSessionFinishBatchLaunch extends async.LaunchResultBase + "Result returned by :route:`upload_session/finish_batch` that may either launch an + asynchronous job or complete synchronously." + complete UploadSessionFinishBatchResult - rev Rev - "A unique identifier for the current revision of a file. This field is - the same rev as elsewhere in the API and can be used to detect changes - and avoid conflicts." + example complete + complete = default + + example async_job_id + async_job_id = "34g93hh34h04y384084" +union_closed UploadSessionFinishBatchResultEntry + success FileMetadata + failure UploadSessionFinishError -struct PreviewResult - file_metadata FileMetadata? - "Metadata corresponding to the file received as an argument. Will be populated if the endpoint is called with - a path (ReadPath)." - link_metadata MinimalFileLinkMetadata? - "Minimal metadata corresponding to the file received as an argument. Will be populated if the endpoint is called - using a shared link (SharedLinkFileInfo)." example default - file_metadata = default + success = default + +union UploadSessionStartError + concurrent_session_data_not_allowed + "Uploading data not allowed when starting concurrent upload session." + concurrent_session_close_not_allowed + "Can not start a closed concurrent upload session." + payload_too_large + "The request payload must be at most 150 MiB." + content_hash_mismatch + "The content received by the Dropbox server in this call does not match the provided content hash." +union UploadSessionType + sequential + "Pieces of data are uploaded sequentially one after another. This is the default + behavior." + concurrent + "Pieces of data can be uploaded in concurrent RPCs in any order." -struct SharedLinkFileInfo - url String - "The shared link corresponding to either a file or shared link to a folder. If it is for a folder shared link, - we use the path param to determine for which file in the folder the view is for." - path String? - "The path corresponding to a file in a shared link to a folder. Required for shared links to folders." - password String? - "Password for the shared link. Required for password-protected shared links to files - unless it can be read from a cookie." +struct AlphaGetMetadataArg extends GetMetadataArg + include_property_templates List(file_properties.TemplateId)? + "If set to a valid list of template IDs, + :field:`FileMetadata.property_groups` is set for files with custom + properties." example default - url = "https://dropbox.com/s/hash/filename.png" - + path = "/Homework/math" + + example id + path = "id:a4ayc_80_OEAAAAAAAAAYa" + + example rev + path = "rev:a1c10ce0dd78" -union PathOrLink - path ReadPath - link SharedLinkFileInfo +struct ContentSyncSetting + id FileId + "Id of the item this setting is applied to." + sync_setting SyncSetting + "Setting for this item." example default - path = "/a.docx" - + id = "id:a4ayc_80_OEAAAAAAAAAXw" + sync_setting = default -struct ThumbnailV2Arg - resource PathOrLink - "Information specifying which file to preview. This could be a path to a file, a shared link pointing to a file, - or a shared link pointing to a folder, with a relative path." - format ThumbnailFormat = jpeg - "The format for the thumbnail image, jpeg (default) or png. For - images that are photos, jpeg should be preferred, while png is - better for screenshots and digital arts." - size ThumbnailSize = w64h64 - "The size for the thumbnail image." - mode ThumbnailMode = strict - "How to resize and crop the image to achieve the desired size." +struct ContentSyncSettingArg + id FileId + "Id of the item this setting is applied to." + sync_setting SyncSettingArg + "Setting for this item." example default - resource = default - format = jpeg - + id = "id:a4ayc_80_OEAAAAAAAAAXw" + sync_setting = default -route get_thumbnail:2(ThumbnailV2Arg, PreviewResult, ThumbnailV2Error) - "Get a thumbnail for an image. +struct CreateFolderArg + path WritePath + "Path in the user's Dropbox to create." + autorename Boolean = false + "If there's a conflict, have the Dropbox server try to autorename + the folder to avoid the conflict." - This method currently supports files with the following file extensions: - jpg, jpeg, png, tiff, tif, gif, webp, ppm and bmp. Photos that are larger than 20MB - in size won't be converted to a thumbnail." + example default + path = "/Homework/math" - attrs - host = "content" - style = "download" - allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "files.content.read" - auth = "app, user" -# -# Preview -# +struct CreateFolderBatchArg + paths List(WritePath, max_items=10000) + "List of paths to be created in the user's Dropbox. Duplicate path + arguments in the batch are considered only once." + autorename Boolean = false + "If there's a conflict, have the Dropbox server try to autorename + the folder to avoid the conflict." + force_async Boolean = false + "Whether to force the create to happen asynchronously." -struct PreviewArg - path ReadPath - "The path of the file to preview." + example default + paths = ["/Homework/math"] + autorename = false - rev Rev? - "Please specify revision in :field:`path` instead." +struct CreateFolderBatchResult extends FileOpsResult + entries List(CreateFolderBatchResultEntry) + "Each entry in :field:`CreateFolderBatchArg.paths` will appear at the same position + inside :field:`CreateFolderBatchResult.entries`." example default - path = "/word.docx" + entries = [default] - example id - path = "id:a4ayc_80_OEAAAAAAAAAYa" +struct CreateFolderEntryResult + metadata FolderMetadata + "Metadata of the created folder." - example rev - path = "rev:a1c10ce0dd78" + example default + metadata = default -union_closed PreviewError - path LookupError - "An error occurs when downloading metadata for the file." - in_progress - "This preview generation is still in progress and the file is not ready - for preview yet." - unsupported_extension - "The file extension is not supported preview generation." - unsupported_content - "The file content is not supported for preview generation." +struct CreateFolderResult extends FileOpsResult + metadata FolderMetadata + "Metadata of the created folder." -route get_preview(PreviewArg, FileMetadata, PreviewError) - "Get a preview for a file. + example default + metadata = default - Currently, PDF previews are generated for files with the following extensions: - .ai, .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. +struct DeleteArg + path WritePathOrId + "Path in the user's Dropbox to delete." + parent_rev Rev? + "Perform delete if given \"rev\" matches the existing file's latest \"rev\". This field + does not support deleting a folder." - HTML previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. + example delete + path = "/Homework/math/Prime_Numbers.txt" - Other formats will return an unsupported extension error." +struct DeleteBatchArg + entries List(DeleteArg, max_items=1000) - attrs - host = "content" - style = "download" - allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "files.content.read" + example default + entries = [delete] -# -# List revisions -# +struct DeleteBatchResult extends FileOpsResult + entries List(DeleteBatchResultEntry) + "Each entry in :field:`DeleteBatchArg.entries` will appear at the same position inside + :field:`DeleteBatchResult.entries`." -union ListRevisionsMode - path - "Returns revisions with the same file path as identified by the latest file entry at the - given file path or id." + example default + entries = [default] - id - "Returns revisions with the same file id as identified by the latest file entry at the given - file path or id." +struct DeleteResult extends FileOpsResult + metadata Metadata + "Metadata of the deleted object." -struct ListRevisionsArg - path PathOrId - "The path to the file you want to see the revisions of." + example default + metadata = default - mode ListRevisionsMode = path - "Determines the behavior of the API in listing the revisions for a given file path or id." +struct DownloadArg + path ReadPath + "The path of the file to download." + rev Rev? + "Please specify revision in :field:`path` instead." - limit UInt64(min_value=1, max_value=100) = 10 - "The maximum number of revision entries returned." + example default + path = "/Homework/math/Prime_Numbers.txt" + + example id + path = "id:a4ayc_80_OEAAAAAAAAAYa" + + example rev + path = "rev:a1c10ce0dd78" - # TODO: Add last_rev when we get pagination support from FJ Service. +struct DownloadZipArg + path ReadPath + "The path of the folder to download." example default - path = "/root/word.docx" - mode = path - limit = 10 + path = "/Homework/math" + + example id + path = "id:a4ayc_80_OEAAAAAAAAAYa" + + example rev + path = "rev:a1c10ce0dd78" -union ListRevisionsError - path LookupError +struct DownloadZipResult + metadata FolderMetadata -struct ListRevisionsResult - is_deleted Boolean - "If the file identified by the latest revision in the response is either deleted or moved." - server_deleted common.DropboxTimestamp? - "The time of deletion if the file was deleted." - entries List(FileMetadata) - "The revisions for the file. Only revisions that are not deleted will show up here." + example default + metadata = default + +struct ExportArg + path ReadPath + "The path of the file to be exported." + export_format String? + "The file format to which the file should be exported. + This must be one of the formats listed in the file's + export_options returned by :route:`get_metadata`. + If none is specified, the default format (specified + in export_as in file metadata) will be used." example default - is_deleted = false - entries = [default] + path = "/Homework/math/Prime_Numbers.gsheet" + + example id + path = "id:a4ayc_80_OEAAAAAAAAAYa" -route list_revisions(ListRevisionsArg, ListRevisionsResult, ListRevisionsError) - "Returns revisions for files based on a file path or a file id. The file path or file id is - identified from the latest file entry at the given file path or id. This end point allows your - app to query either by file path or file id by setting the mode parameter appropriately. +struct ExportMetadata + name String + "The last component of the path (including extension). + This never contains a slash." + size UInt64 + "The file size in bytes." + export_hash Sha256HexHash? + "A hash based on the exported file content. This field can be used to verify data integrity. Similar to content hash. + For more information see our :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." + paper_revision Int64? + "If the file is a Paper doc, this gives the latest doc revision which can be used in :route:`paper/update`." - In the :field:`ListRevisionsMode.path` (default) mode, all revisions at the same - file path as the latest file entry are - returned. If revisions with the same file id are desired, then mode must be set to - :field:`ListRevisionsMode.id`. The :field:`ListRevisionsMode.id` mode is useful to retrieve - revisions for a given file across moves or renames." + example default + name = "Prime_Numbers.xlsx" + size = 7189 + export_hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - attrs - allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "files.metadata.read" +struct ExportResult + export_metadata ExportMetadata + "Metadata for the exported version of the file." + file_metadata FileMetadata + "Metadata for the original file." + + example default + export_metadata = default + file_metadata = default -# -# Restore -# +struct FileOpsResult + "Result for File Operations" -struct RestoreArg - path WritePath - "The path to save the restored file." - rev Rev - "The revision to restore." +struct GetCopyReferenceArg + path ReadPath + "The path to the file or folder you want to get a copy reference to." example default - path = "/root/word.docx" - rev = "a1c10ce0dd78" + path = "/video.mp4" -union RestoreError - path_lookup LookupError - "An error occurs when downloading metadata for the file." - path_write WriteError - "An error occurs when trying to restore the file to that path." - invalid_revision - "The revision is invalid. It may not exist or may point to a deleted file." - in_progress - "The restore is currently executing, but has not yet completed." +struct GetCopyReferenceResult + metadata Metadata + "Metadata of the file or folder." + copy_reference String + "A copy reference to the file or folder." + expires common.DropboxTimestamp + "The expiration date of the copy reference. This value is currently set to be + far enough in the future so that expiration is effectively not an issue." -route restore(RestoreArg, FileMetadata, RestoreError) - "Restore a specific revision of a file to the given path." + example default + metadata = default + copy_reference = "z1X6ATl6aWtzOGq0c3g5Ng" + expires = "2045-05-12T15:50:38Z" - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "files.content.write" +struct GetMetadataArg + path ReadPath + "The path of a file or folder on Dropbox." + include_media_info Boolean = false + "If true, :field:`FileMetadata.media_info` is set for photo and video." + include_deleted Boolean = false + "If true, :type:`DeletedMetadata` will be returned for deleted file or + folder, otherwise :field:`LookupError.not_found` will be returned." + include_has_explicit_shared_members Boolean = false + "If true, the results will include a flag for each file indicating whether or not + that file has any explicit members." + include_property_groups file_properties.TemplateFilterBase? + "If set to a valid list of template IDs, :field:`FileMetadata.property_groups` + is set if there exists property data associated with the file and each of the + listed templates." -# -# Temporary link -# + example default + path = "/Homework/math" + + example id + path = "id:a4ayc_80_OEAAAAAAAAAYa" + + example rev + path = "rev:a1c10ce0dd78" struct GetTemporaryLinkArg path ReadPath @@ -2647,40 +2510,14 @@ struct GetTemporaryLinkResult metadata = default link = "https://ucabc123456.dl.dropboxusercontent.com/cd/0/get/abcdefghijklmonpqrstuvwxyz1234567890/file" -union GetTemporaryLinkError - path LookupError - email_not_verified - "This user's email address is not verified. This functionality is only - available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - unsupported_file - "Cannot get temporary link to this file type; use :route:`export` instead." - not_allowed - "The user is not allowed to request a temporary link to the specified file. - For example, this can occur if the file is restricted or if the user's links - are :link:`banned https://help.dropbox.com/files-folders/share/banned-links`." - -route get_temporary_link(GetTemporaryLinkArg, GetTemporaryLinkResult, GetTemporaryLinkError) - "Get a temporary link to stream content of a file. This link will expire in four hours and - afterwards you will get 410 Gone. This URL should not be used to display content directly - in the browser. The Content-Type of the link is determined automatically by the file's mime type." - - attrs - allow_app_folder_app = true - scope = "files.content.read" - -# -# Temporary upload link -# - struct GetTemporaryUploadLinkArg commit_info CommitInfo "Contains the path and other optional modifiers for the future upload commit. Equivalent to the parameters provided to :route:`upload`." - duration Float64(min_value=60, max_value=14400) = 14400 + duration Float64(max_value=14400, min_value=60) = 14400 "How long before this link expires, in seconds. - Attempting to start an upload with this link longer than this period - of time after link creation will result in an error." + Attempting to start an upload with this link longer than this period + of time after link creation will result in an error." example default commit_info = default @@ -2693,456 +2530,536 @@ struct GetTemporaryUploadLinkResult example default link = "https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND" -route get_temporary_upload_link(GetTemporaryUploadLinkArg, GetTemporaryUploadLinkResult, Void) - "Get a one-time use temporary upload link to upload a file to a Dropbox location. - - - This endpoint acts as a delayed :route:`upload`. The returned temporary upload link may be used - to make a POST request with the data to be uploaded. The upload will then be perfomed with the - :type:`CommitInfo` previously provided to :route:`get_temporary_upload_link` but evaluated only - upon consumption. Hence, errors stemming from invalid :type:`CommitInfo` with respect to the - state of the user's Dropbox will only be communicated at consumption time. Additionally, these - errors are surfaced as generic HTTP 409 Conflict responses, potentially hiding issue details. - The maximum temporary upload link duration is 4 hours. Upon consumption or expiration, - a new link will have to be generated. Multiple links may exist for a specific upload path - at any given time. - - - The POST request on the temporary upload link must have its Content-Type - set to \"application/octet-stream\". - - - Example temporary upload link consumption request: - - - curl -X POST https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND - - --header \"Content-Type: application/octet-stream\" - - --data-binary @local_file.txt - - - A successful temporary upload link consumption request returns the content hash - of the uploaded data in JSON format. - - - Example successful temporary upload link consumption response: - - {\"content-hash\": \"599d71033d700ac892a0e48fa61b125d2f5994\"} - - - An unsuccessful temporary upload link consumption request returns any of the following status - codes: - - - HTTP 400 Bad Request: Content-Type is not one of - application/octet-stream and text/plain or request is invalid. - - HTTP 409 Conflict: The temporary upload link does not exist or is currently unavailable, - the upload failed, or another error happened. - - HTTP 410 Gone: The temporary upload link is expired or consumed. - - - Example unsuccessful temporary upload link consumption response: - - Temporary upload link has been recently consumed. - " - - attrs - allow_app_folder_app = true - scope = "files.content.write" +struct GetThumbnailBatchArg + "Arguments for :route:`get_thumbnail_batch`." + entries List(ThumbnailArg) + "List of files to get thumbnails." -# -# Copy reference -# + example default + entries = [default] -struct GetCopyReferenceArg - path ReadPath - "The path to the file or folder you want to get a copy reference to." +struct GetThumbnailBatchResult + entries List(GetThumbnailBatchResultEntry) + "List of files and their thumbnails." example default - path = "/video.mp4" + entries = [default] -struct GetCopyReferenceResult - metadata Metadata - "Metadata of the file or folder." - copy_reference String - "A copy reference to the file or folder." - expires common.DropboxTimestamp - "The expiration date of the copy reference. This value is currently set to be - far enough in the future so that expiration is effectively not an issue." +struct GetThumbnailBatchResultData + metadata FileMetadata + thumbnail String + "A string containing the base64-encoded thumbnail data for this file." example default metadata = default - copy_reference = "z1X6ATl6aWtzOGq0c3g5Ng" - expires = "2045-05-12T15:50:38Z" - -union GetCopyReferenceError - path LookupError - -route copy_reference/get(GetCopyReferenceArg, GetCopyReferenceResult, GetCopyReferenceError) - "Get a copy reference to a file or folder. This reference string can be used to - save that file or folder to another user's Dropbox by passing it to - :route:`copy_reference/save`." - - attrs - allow_app_folder_app = true - scope = "files.content.write" + thumbnail = "iVBORw0KGgoAAAANSUhEUgAAAdcAAABrCAMAAAI=" -struct SaveCopyReferenceArg - copy_reference String - "A copy reference returned by :route:`copy_reference/get`." +struct ListFolderArg + path PathROrId + "A unique identifier for the file." + recursive Boolean = false + "If true, the list folder operation will be applied recursively to all subfolders and the response will contain + contents of all subfolders. In some cases, setting :field:`ListFolderArg.recursive` to :val:`true` may lead to + performance issues or errors, especially when traversing folder structures with a large number of items. + A workaround for such cases is to set :field:`ListFolderArg.recursive` to :val:`false` and traverse subfolders one at a time." + include_media_info Boolean = false + "If true, :field:`FileMetadata.media_info` is set for photo and video. This parameter will no longer have an effect starting December 2, 2019." + include_deleted Boolean = false + "If true, the results will include entries for files and folders that used to exist but were deleted." + include_has_explicit_shared_members Boolean = false + "If true, the results will include a flag for each file indicating whether or not + that file has any explicit members." + include_mounted_folders Boolean = true + "If true, the results will include entries under mounted folders which includes app folder, + shared folder and team folder." + limit UInt32(max_value=2000, min_value=1)? + "The maximum number of results to return per request. Note: This is an approximate number + and there can be slightly more entries returned in some cases." + shared_link SharedLink? + "A shared link to list the contents of. If the link is password-protected, the password + must be provided. If this field is present, :field:`ListFolderArg.path` will be relative + to root of the shared link. Only non-recursive mode is supported for shared link." + include_property_groups file_properties.TemplateFilterBase? + "If set to a valid list of template IDs, :field:`FileMetadata.property_groups` + is set if there exists property data associated with the file and each of the + listed templates." + include_non_downloadable_files Boolean = true + "If true, include files that are not downloadable, i.e. Google Docs." - path Path - "Path in the user's Dropbox that is the destination." + example default + path = "/Homework/math" + recursive = false + +struct ListFolderContinueArg + cursor ListFolderCursor + "The cursor returned by your last call to :route:`list_folder` or + :route:`list_folder/continue`." example default - copy_reference = "z1X6ATl6aWtzOGq0c3g5Ng" - path = "/video.mp4" + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" -struct SaveCopyReferenceResult - metadata Metadata - "The metadata of the saved file or folder in the user's Dropbox." +struct ListFolderGetLatestCursorResult + cursor ListFolderCursor + "Pass the cursor into :route:`list_folder/continue` to see what's + changed in the folder since your previous query." example default - metadata = default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" -union SaveCopyReferenceError - path WriteError - invalid_copy_reference - "The copy reference is invalid." - no_permission - "You don't have permission to save the given copy reference. Please make sure this app - is same app which created the copy reference and the source user is still linked to - the app." - not_found - "The file referenced by the copy reference cannot be found." - too_many_files - "The operation would involve more than 10,000 files and folders." +struct ListFolderLongpollArg + cursor ListFolderCursor + "A cursor as returned by :route:`list_folder` or :route:`list_folder/continue`. Cursors + retrieved by setting :field:`ListFolderArg.include_media_info` to :val:`true` are + not supported." + timeout UInt64(max_value=480, min_value=30) = 30 + "A timeout in seconds. The request will block for at most this length + of time, plus up to 90 seconds of random jitter added to avoid the + thundering herd problem. Care should be taken when using this + parameter, as some network infrastructure does not support long + timeouts." -route copy_reference/save(SaveCopyReferenceArg, SaveCopyReferenceResult, SaveCopyReferenceError) - "Save a copy reference returned by :route:`copy_reference/get` to the user's Dropbox." + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - attrs - allow_app_folder_app = true - scope = "files.content.write" +struct ListFolderLongpollResult + changes Boolean + "Indicates whether new changes are available. If true, call + :route:`list_folder/continue` to retrieve the changes." + backoff UInt64? + "If present, backoff for at least this many seconds before calling + :route:`list_folder/longpoll` again." -# -# Save URL -# + example default + changes = true -struct SaveUrlArg - path Path - "The path in Dropbox where the URL will be saved to." +struct ListFolderResult + entries List(Metadata) + "The files and (direct) subfolders in the folder." + cursor ListFolderCursor + "Pass the cursor into :route:`list_folder/continue` to see what's + changed in the folder since your previous query." + has_more Boolean + "If true, then there are more entries available. Pass the + cursor to :route:`list_folder/continue` to retrieve the rest." - url String - "The URL to be saved." + example default + entries = [default, folder_metadata] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = false + +struct ListRevisionsArg + path PathOrId + "The path to the file you want to see the revisions of." + mode ListRevisionsMode = path + "Determines the behavior of the API in listing the revisions for a given file path or id." + limit UInt64(max_value=100, min_value=1) = 10 + "The maximum number of revision entries returned." + before_rev Rev? + "If set, ListRevisions will only return revisions prior to before_rev. Can be set using the last revision + from a previous call to list_revisions to fetch the next page of revisions. Only supported in path mode." example default - path = "/a.txt" - url = "http://example.com/a.txt" + path = "/root/word.docx" + mode = path + limit = 10 -union_closed SaveUrlResult extends async.LaunchResultBase - complete FileMetadata - "Metadata of the file where the URL is saved to." +struct ListRevisionsResult + is_deleted Boolean + "If the file identified by the latest revision in the response is either deleted or moved. If before_rev is set, + this refers to the latest revision of the file older than before_rev." + server_deleted common.DropboxTimestamp? + "The time of deletion if the file was deleted." + entries List(FileMetadata) + "The revisions for the file. Only revisions that are not deleted will show up here." + has_more Boolean + "If true, then there are more entries available. Call list_revisions again with before_rev equal to the revision + of the last returned entry to retrieve the rest." example default - complete = default + is_deleted = false + entries = [default] + has_more = false -union SaveUrlError - path WriteError - download_failed - "Failed downloading the given URL. The URL may be - password-protected and the password provided was incorrect, - or the link may be disabled." - invalid_url - "The given URL is invalid." - not_found - "The file where the URL is saved to no longer exists." +struct LockFileArg + path WritePathOrId + "Path in the user's Dropbox to a file." -route save_url(SaveUrlArg, SaveUrlResult, SaveUrlError) - "Save the data from a specified URL into a file in user's Dropbox. + example lock + path = "/John Doe/sample/test.pdf" - Note that the transfer from the URL must complete within 15 minutes, or the - operation will time out and the job will fail. +struct LockFileBatchArg + entries List(LockFileArg) + "List of 'entries'. Each 'entry' contains a path of the file which will be + locked or queried. + Duplicate path arguments in the batch are considered only once." - If the given path already exists, the file will be renamed to avoid the - conflict (e.g. myfile (1).txt)." + example default + entries = [lock] - attrs - allow_app_folder_app = true - scope = "files.content.write" +struct LockFileBatchResult extends FileOpsResult + entries List(LockFileResultEntry) + "Each Entry in the 'entries' will have '.tag' with the operation status (e.g. success), + the metadata for the file and the lock state after the operation." -# -# Save URL Job -# + example default + entries = [default] -union_closed SaveUrlJobStatus extends async.PollResultBase - complete FileMetadata - "Metadata of the file where the URL is saved to." - failed SaveUrlError +struct MinimalFileLinkMetadata + url String + "URL of the shared link." + id Id? + "Unique identifier for the linked file." + path String? + "Full path in the user's Dropbox. This always starts with a slash. + This field will only be present only if the linked file is in the authenticated user's Dropbox." + rev Rev + "A unique identifier for the current revision of a file. This field is + the same rev as elsewhere in the API and can be used to detect changes + and avoid conflicts." -route save_url/check_job_status(async.PollArg, SaveUrlJobStatus, async.PollError) - "Check the status of a :route:`save_url` job." +struct MoveBatchArg extends RelocationBatchArgBase + allow_ownership_transfer Boolean = false + "Allow moves by owner even if it would result in an ownership transfer + for the content being moved. This does not apply to copies." - attrs - allow_app_folder_app = true - scope = "files.content.write" + example default + entries = [default] -# -# Patched File Properties endpoints -# +struct PaperCreateArg + path Path + "The fully qualified path to the location in the user's Dropbox where the Paper Doc should be created. + This should include the document's title and end with .paper." + import_format ImportFormat + "The format of the provided data." + example default + path = "/Paper Docs/New Doc.paper" + import_format = html -# -# Patched /get_metadata that can return properties -# +struct PaperCreateResult + url String + "URL to open the Paper Doc." + result_path String + "The fully qualified path the Paper Doc was actually created at." + file_id FileId + "The id to use in Dropbox APIs when referencing the Paper Doc." + paper_revision Int64 + "The current doc revision." -route alpha/get_metadata (AlphaGetMetadataArg, Metadata, AlphaGetMetadataError) deprecated by get_metadata - "Returns the metadata for a file or folder. This is an alpha endpoint - compatible with the properties API. + example default + url = "https://www.dropbox.com/scl/xxx.paper?dl=0" + result_path = "/Paper Docs/New Doc.paper" + file_id = "id:a4ayc_80_OEAAAAAAAAAXw" + paper_revision = 1 - Note: Metadata for the root folder is unsupported." +struct PaperUpdateArg + path WritePathOrId + "Path in the user's Dropbox to update. The path must correspond to a Paper doc or an error will be returned." + import_format ImportFormat + "The format of the provided data." + doc_update_policy PaperDocUpdatePolicy + "How the provided content should be applied to the doc." + paper_revision Int64? + "The latest doc revision. Required when doc_update_policy is update. + This value must match the current revision of the doc or error revision_mismatch will be returned." - attrs - is_preview=true - allow_app_folder_app = true - scope = "files.metadata.read" + example default + path = "/Paper Docs/My Doc.paper" + import_format = html + doc_update_policy = update + paper_revision = 123 -struct AlphaGetMetadataArg extends GetMetadataArg +struct PaperUpdateResult + paper_revision Int64 + "The current doc revision." - include_property_templates List(file_properties.TemplateId)? - "If set to a valid list of template IDs, - :field:`FileMetadata.property_groups` is set for files with custom - properties." + example default + paper_revision = 124 + +struct PreviewResult + file_metadata FileMetadata? + "Metadata corresponding to the file received as an argument. Will be populated if the endpoint is called with + a path (ReadPath)." + link_metadata MinimalFileLinkMetadata? + "Minimal metadata corresponding to the file received as an argument. Will be populated if the endpoint is called + using a shared link (SharedLinkFileInfo)." example default - path = "/Homework/math" + file_metadata = default - example id - path = "id:a4ayc_80_OEAAAAAAAAAYa" +struct RelocationArg extends RelocationPath + allow_shared_folder Boolean = false + "This flag has no effect." + autorename Boolean = false + "If there's a conflict, have the Dropbox server try to autorename + the file to avoid the conflict." + allow_ownership_transfer Boolean = false + "Allow moves by owner even if it would result in an ownership transfer + for the content being moved. This does not apply to copies." - example rev - path = "rev:a1c10ce0dd78" + example default + from_path = "/Homework/math" + to_path = "/Homework/algebra" -union_closed AlphaGetMetadataError extends GetMetadataError - properties_error file_properties.LookUpPropertiesError +struct RelocationBatchArg extends RelocationBatchArgBase + allow_shared_folder Boolean = false + "This flag has no effect." + allow_ownership_transfer Boolean = false + "Allow moves by owner even if it would result in an ownership transfer + for the content being moved. This does not apply to copies." -# -# Alpha /upload, originally for properties API. Can be used to pilot new functionality. -# + example default + entries = [default] -route alpha/upload (UploadArg, FileMetadata, UploadError) deprecated by upload - "Create a new file with the contents provided in the request. Note that the - behavior of this alpha endpoint is unstable and subject to change. +struct RelocationBatchResult extends FileOpsResult + entries List(RelocationBatchResultData) - Do not use this to upload a file larger than 150 MB. Instead, create an - upload session with :route:`upload_session/start`." + example default + entries = [default] - attrs - host="content" - style="upload" - is_preview=true - allow_app_folder_app = true - scope = "files.content.write" +struct RelocationBatchResultData + metadata Metadata + "Metadata of the relocated object." -# -# Deprecated File Properties routes -# + example default + metadata = default -route properties/add(file_properties.AddPropertiesArg, Void, file_properties.AddPropertiesError) deprecated - attrs - scope = "files.metadata.write" +struct RelocationBatchV2Result extends FileOpsResult + entries List(RelocationBatchResultEntry) + "Each entry in CopyBatchArg.entries or :field:`MoveBatchArg.entries` will + appear at the same position inside :field:`RelocationBatchV2Result.entries`." -route properties/overwrite(file_properties.OverwritePropertyGroupArg, Void, file_properties.InvalidPropertyGroupError) deprecated - attrs - scope = "files.metadata.write" + example default + entries = [success] -route properties/update(file_properties.UpdatePropertiesArg, Void, file_properties.UpdatePropertiesError) deprecated - attrs - scope = "files.metadata.write" +struct RelocationResult extends FileOpsResult + metadata Metadata + "Metadata of the relocated object." -route properties/remove(file_properties.RemovePropertiesArg, Void, file_properties.RemovePropertiesError) deprecated - attrs - scope = "files.metadata.write" + example default + metadata = default -route properties/template/get(file_properties.GetTemplateArg, file_properties.GetTemplateResult, file_properties.TemplateError) deprecated - attrs - scope = "files.metadata.read" +struct RestoreArg + path WritePath + "The path to save the restored file." + rev Rev + "The revision to restore." -route properties/template/list(Void, file_properties.ListTemplateResult, file_properties.TemplateError) deprecated - attrs - scope = "files.metadata.read" + example default + path = "/root/word.docx" + rev = "a1c10ce0dd78" -# -# Team selective sync additions -# -union SyncSettingArg - default - "On first sync to members' computers, the specified folder will follow its - parent folder's setting or otherwise follow default sync behavior." - not_synced - "On first sync to members' computers, the specified folder will be set - to not sync with selective sync." +struct SaveCopyReferenceArg + copy_reference String + "A copy reference returned by :route:`copy_reference/get`." + path Path + "Path in the user's Dropbox that is the destination." example default - not_synced = null + copy_reference = "z1X6ATl6aWtzOGq0c3g5Ng" + path = "/video.mp4" -union SyncSetting - default - "On first sync to members' computers, the specified folder will follow - its parent folder's setting or otherwise follow default sync behavior." - not_synced - "On first sync to members' computers, the specified folder will be set - to not sync with selective sync." - not_synced_inactive - "The specified folder's not_synced setting is inactive due to its - location or other configuration changes. It will follow its parent - folder's setting." +struct SaveCopyReferenceResult + metadata Metadata + "The metadata of the saved file or folder in the user's Dropbox." -struct ContentSyncSettingArg - id FileId - "Id of the item this setting is applied to." + example default + metadata = default - sync_setting SyncSettingArg - "Setting for this item." +struct SaveUrlArg + path Path + "The path in Dropbox where the URL will be saved to." + url String + "The URL to be saved." example default - id = "id:a4ayc_80_OEAAAAAAAAAXw" - sync_setting = default - -struct ContentSyncSetting - id FileId - "Id of the item this setting is applied to." + path = "/a.txt" + url = "http://example.com/a.txt" - sync_setting SyncSetting - "Setting for this item." +struct SearchArg + path PathROrId + "The path in the user's Dropbox to search. Should probably be + a folder." + query String(max_length=1000) + "The string to search for. Query string may be rewritten to improve relevance of results. + The string is split on spaces into multiple tokens. For file name searching, + the last token is used for prefix matching (i.e. \"bat c\" matches \"bat cave\" + but not \"batman car\")." + start UInt64(max_value=9999) = 0 + "The starting index within the search results (used for paging)." + max_results UInt64(max_value=1000, min_value=1) = 100 + "The maximum number of search results to return." + mode SearchMode = filename + "The search mode (filename, filename_and_content, or deleted_filename). + Note that searching file content is only available for Dropbox Business + accounts." example default - id = "id:a4ayc_80_OEAAAAAAAAAXw" - sync_setting = default - -union SyncSettingsError - path LookupError + path = "" + query = "prime numbers" - unsupported_combination - "Setting this combination of sync settings simultaneously is not supported." +struct SearchMatch + match_type SearchMatchType + "The type of the match." + metadata Metadata + "The metadata for the matched file or folder." - unsupported_configuration - "The specified configuration is not supported." + example default + match_type = default + metadata = default -# -# FILE LOCKING -# +struct SearchMatchFieldOptions + include_highlights Boolean = false + "Whether to include highlight span from file title." -# -# File Lock Definition -# + example default + include_highlights = false -struct SingleUserLock - created common.DropboxTimestamp - "The time the lock was created." - lock_holder_account_id users_common.AccountId - "The account ID of the lock holder if known." - lock_holder_team_id String? - "The id of the team of the account holder if it exists." +struct SearchMatchV2 + metadata MetadataV2 + "The metadata for the matched file or folder." + match_type SearchMatchTypeV2? + "The type of the match." + highlight_spans List(HighlightSpan)? + "The list of HighlightSpan determines which parts of the file title should be highlighted." example default - created = "2015-05-12T15:50:38Z" - lock_holder_account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" - lock_holder_team_id = "dbtid:1234abcd" + metadata = default + highlight_spans = null -union FileLockContent - unlocked - "Empty type to indicate no lock." - single_user SingleUserLock - "A lock held by a single user." +struct SearchOptions + path PathROrId? + "Scopes the search to a path in the user's Dropbox. Searches the entire Dropbox if not specified." + max_results UInt64(max_value=1000, min_value=1) = 100 + "The maximum number of search results to return." + order_by SearchOrderBy? + "Specified property of the order of search results. By default, results are sorted by relevance." + file_status FileStatus = active + "Restricts search to the given file status." + filename_only Boolean = false + "Restricts search to only match on filenames." + file_extensions List(String)? + "Restricts search to only the extensions specified. Only supported for active file search." + file_categories List(FileCategory)? + "Restricts search to only the file categories specified. Only supported for active file search." + account_id users_common.AccountId? + "Restricts results to the given account id." example default - single_user = default + path = "/Folder" + max_results = 20 -struct FileLock - content FileLockContent - "The lock description." +struct SearchResult + matches List(SearchMatch) + "A list (possibly empty) of matches for the query." + more Boolean + "Used for paging. If true, indicates there is another page of results + available that can be fetched by calling :route:`search` again." + start UInt64 + "Used for paging. Value to set the start argument to when calling + :route:`search` to fetch the next page of results." example default - content = default + matches = [default] + more = false + start = 1 -struct UnlockFileArg - path WritePathOrId - "Path in the user's Dropbox to a file." +struct SearchV2Arg + query String(max_length=1000) + "The string to search for. May match across multiple fields based on the request arguments." + options SearchOptions? + "Options for more targeted search results." + match_field_options SearchMatchFieldOptions? + "Options for search results match fields." + include_highlights Boolean? + "Deprecated and moved this option to SearchMatchFieldOptions." - example lock - path = "/John Doe/sample/test.pdf" + example default + query = "cat" + options = default + match_field_options = default -struct LockFileResult - metadata Metadata - "Metadata of the file." - lock FileLock - "The file lock state after the operation." +struct SearchV2ContinueArg + cursor SearchV2Cursor + "The cursor returned by your last call to :route:`search:2`. Used to fetch the next page of results." example default - metadata = default - lock = default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" -struct LockConflictError - lock FileLock - "The lock that caused the conflict." +struct SearchV2Result + matches List(SearchMatchV2) + "A list (possibly empty) of matches for the query." + has_more Boolean + "Used for paging. If true, indicates there is another page of results + available that can be fetched by calling :route:`search/continue:2` with the cursor." + cursor SearchV2Cursor? + "Pass the cursor into :route:`search/continue:2` to fetch the next page of results." -union LockFileError - path_lookup LookupError - "Could not find the specified resource." - too_many_write_operations - "There are too many write operations in user's Dropbox. Please retry this request." - too_many_files - "There are too many files in one request. Please retry with fewer files." - no_write_permission - "The user does not have permissions to change the lock state or access the file." - cannot_be_locked - "Item is a type that cannot be locked." - file_not_shared - "Requested file is not currently shared." - lock_conflict LockConflictError - "The user action conflicts with an existing lock on the file." - internal_error - "Something went wrong with the job on Dropbox's end. You'll need to - verify that the action you were taking succeeded, and if not, try - again. This should happen very rarely." -# unlock_token -# "An invalid unlock_token was passed. For example, a garbage token, or a token which as already been used." + example default + matches = [default] + has_more = false + cursor = null -union_closed LockFileResultEntry - success LockFileResult - failure LockFileError +struct ThumbnailArg + path ReadPath + "The path to the image file you want to thumbnail." + format ThumbnailFormat = jpeg + "The format for the thumbnail image, jpeg (default), png, or webp. For + images that are photos, jpeg should be preferred, while png is + better for screenshots and digital arts, and web for compression." + size ThumbnailSize = w64h64 + "The size for the thumbnail image." + mode ThumbnailMode = strict + "How to resize and crop the image to achieve the desired size." + quality ThumbnailQuality = quality_80 + "Quality of the thumbnail image." + exclude_media_info Boolean? + "Normally, :field:`FileMetadata.media_info` is set for photo and video. + When this flag is true, :field:`FileMetadata.media_info` is not populated. + This improves latency for use cases where `media_info` is not needed." example default - success = default + path = "/image.jpg" + format = jpeg + + example id + path = "id:a4ayc_80_OEAAAAAAAAAYa" + format = jpeg + + example rev + path = "rev:a1c10ce0dd78" + format = jpeg -struct LockFileBatchResult extends FileOpsResult - entries List(LockFileResultEntry) - "Each Entry in the 'entries' will have '.tag' with the operation status (e.g. success), - the metadata for the file and the lock state after the operation." +struct ThumbnailV2Arg + resource PathOrLink + "Information specifying which file to preview. This could be a path to a file, a shared link pointing to a file, + or a shared link pointing to a folder, with a relative path." + format ThumbnailFormat = jpeg + "The format for the thumbnail image, jpeg (default), png, or webp. For + images that are photos, jpeg should be preferred, while png is + better for screenshots and digital arts, and web for compression." + size ThumbnailSize = w64h64 + "The size for the thumbnail image." + mode ThumbnailMode = strict + "How to resize and crop the image to achieve the desired size." + quality ThumbnailQuality = quality_80 + "Quality of the thumbnail image." + exclude_media_info Boolean? + "Normally, :field:`FileMetadata.media_info` is set for photo and video. + When this flag is true, :field:`FileMetadata.media_info` is not populated. + This improves latency for use cases where `media_info` is not needed." example default - entries = [default] + resource = default + format = jpeg -struct LockFileArg +struct UnlockFileArg path WritePathOrId "Path in the user's Dropbox to a file." example lock path = "/John Doe/sample/test.pdf" -struct LockFileBatchArg - entries List(LockFileArg) - "List of 'entries'. Each 'entry' contains a path of the file which will be - locked or queried. - Duplicate path arguments in the batch are considered only once." - - example default - entries = [lock] - struct UnlockFileBatchArg entries List(UnlockFileArg) "List of 'entries'. Each 'entry' contains a path of the file which will be unlocked. @@ -3151,193 +3068,152 @@ struct UnlockFileBatchArg example default entries = [lock] -# -# Lock File -# - -route lock_file_batch (LockFileBatchArg, LockFileBatchResult, LockFileError) - " - Lock the files at the given paths. A locked file will be writable only by the lock holder. - A successful response indicates that the file has been locked. Returns a list of the - locked file paths and their metadata after this operation. - " - - attrs - scope = "files.content.write" - -# -# Unlock File -# - -route unlock_file_batch (UnlockFileBatchArg, LockFileBatchResult, LockFileError) - " - Unlock the files at the given paths. A locked file can only be unlocked by the lock holder - or, if a business account, a team admin. A successful response indicates that the file has - been unlocked. Returns a list of the unlocked file paths and their metadata after - this operation. - " - - attrs - select_admin_mode = "whole_team" - scope = "files.content.write" - -# -# Get Lock -# - -route get_file_lock_batch (LockFileBatchArg, LockFileBatchResult, LockFileError) - " - Return the lock metadata for the given list of paths. - " - - attrs - scope = "files.content.read" - -# -# END OF FILE LOCKING -# - - -# -# Paper routes -# - -union ImportFormat - "The import format of the incoming Paper doc content." - - html - "The provided data is interpreted as standard HTML." - markdown - "The provided data is interpreted as markdown." - plain_text - "The provided data is interpreted as plain text." - - -union PaperContentError - insufficient_permissions - "Your account does not have permissions to edit Paper docs." - content_malformed - "The provided content was malformed and cannot be imported to Paper." - doc_length_exceeded - "The Paper doc would be too large, split the content into multiple docs." - image_size_exceeded - "The imported document contains an image that is too large. The current limit is 1MB. - This only applies to HTML with data URI." - +struct UploadArg extends CommitInfo + content_hash Sha256HexHash? + "A hash of the file content uploaded in this call. If provided and the uploaded content + does not match this hash, an error will be returned. For more information see our + :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." -struct PaperCreateArg + example default + path = "/Homework/math/Matrices.txt" + content_hash = null - path Path - "The fully qualified path to the location in the user's Dropbox where the Paper Doc should be created. - This should include the document's title and end with .paper." - import_format ImportFormat - "The format of the provided data." +struct UploadSessionAppendArg + cursor UploadSessionCursor + "Contains the upload session ID and the offset." + close Boolean = false + "If true, the current session will be closed, at which point + you won't be able to call :route:`upload_session/append:2` + anymore with the current session." + content_hash Sha256HexHash? + "A hash of the file content uploaded in this call. If provided and the uploaded content + does not match this hash, an error will be returned. For more information see our + :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." example default - path = "/Paper Docs/New Doc.paper" - import_format = html + cursor = default +struct UploadSessionAppendBatchArg + entries List(UploadSessionAppendBatchArgEntry, max_items=1000) + "Append information for each file in the batch." + content_hash Sha256HexHash? + "A hash of the entire request body which is all the concatenated pieces + of file content that were uploaded in this call. If provided and the + uploaded content does not match this hash, an error will be returned. + For more information see our :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." -struct PaperCreateResult + example default + entries = [default] + + example multiple + entries = [default, another] - url String - "URL to open the Paper Doc." - result_path String - "The fully qualified path the Paper Doc was actually created at." - file_id FileId - "The id to use in Dropbox APIs when referencing the Paper Doc." - paper_revision Int64 - "The current doc revision." +struct UploadSessionAppendBatchArgEntry + cursor UploadSessionCursor + "Contains the upload session ID and the offset." + length UInt64 + "Length in bytes of the data that should be appended for this session. + Used to split the batched upload data for multiple upload sessions." + close Boolean = false + "If true, the current session will be closed, at which point + you won't be able to call :route:`upload_session/append_batch` + anymore with the current session." example default - url = "https://www.dropbox.com/scl/xxx.paper?dl=0" - result_path = "/Paper Docs/New Doc.paper" - file_id = "id:a4ayc_80_OEAAAAAAAAAXw" - paper_revision = 1 - + cursor = default + length = 12345 + + example another + cursor = another + length = 67890 -union PaperCreateError extends PaperContentError - invalid_path - "The file could not be saved to the specified location." - email_unverified - "The user's email must be verified to create Paper docs." - invalid_file_extension - "The file path must end in .paper." - paper_disabled - "Paper is disabled for your team." +struct UploadSessionAppendBatchResult + entries List(UploadSessionAppendBatchResultEntry) + "Each entry in :field:`UploadSessionAppendBatchArg.entries` will appear at the same position + inside :field:`UploadSessionAppendBatchResult.entries`." -union PaperDocUpdatePolicy - update - "Sets the doc content to the provided content if the provided paper_revision matches the latest doc revision. - Otherwise, returns an error." - overwrite - "Sets the doc content to the provided content without checking paper_revision." - prepend - "Adds the provided content to the beginning of the doc without checking paper_revision." - append - "Adds the provided content to the end of the doc without checking paper_revision." + example default + entries = [default] +struct UploadSessionFinishBatchArg + entries List(UploadSessionFinishArg, max_items=1000) + "Commit information for each file in the batch." -struct PaperUpdateArg + example default + entries = [default] + + example multiple + entries = [default, another] - path WritePathOrId - "Path in the user's Dropbox to update. The path must correspond to a Paper doc or an error will be returned." - import_format ImportFormat - "The format of the provided data." - doc_update_policy PaperDocUpdatePolicy - "How the provided content should be applied to the doc." - paper_revision Int64? - "The latest doc revision. Required when doc_update_policy is update. - This value must match the current revision of the doc or error revision_mismatch will be returned." +struct UploadSessionFinishBatchResult + entries List(UploadSessionFinishBatchResultEntry) + "Each entry in :field:`UploadSessionFinishBatchArg.entries` will appear at the same position + inside :field:`UploadSessionFinishBatchResult.entries`." example default - path = "/Paper Docs/My Doc.paper" - import_format = html - doc_update_policy = update - paper_revision = 123 + entries = [default] +struct UploadSessionStartArg + close Boolean = false + "If true, the current session will be closed, at which point you won't + be able to call :route:`upload_session/append:2` anymore with the + current session." + session_type UploadSessionType? + "Type of upload session you want to start. If not specified, default is + :field:`UploadSessionType.sequential`." + content_hash Sha256HexHash? + "A hash of the file content uploaded in this call. If provided and the uploaded content + does not match this hash, an error will be returned. For more information see our + :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." -struct PaperUpdateResult + example with_close + close = false - paper_revision Int64 - "The current doc revision." +struct UploadSessionStartBatchArg + session_type UploadSessionType? + "Type of upload session you want to start. If not specified, default is + :field:`UploadSessionType.sequential`." + num_sessions UInt64(max_value=1000, min_value=1) + "The number of upload sessions to start." example default - paper_revision = 124 + num_sessions = 1 +struct UploadSessionStartBatchResult + session_ids List(String) + "A List of unique identifiers for the upload session. Pass each session_id to + :route:`upload_session/append:2` and + :route:`upload_session/finish`." -union PaperUpdateError extends PaperContentError - path LookupError - revision_mismatch - "The provided revision does not match the document head." - doc_archived - "This operation is not allowed on archived Paper docs." - doc_deleted - "This operation is not allowed on deleted Paper docs." + example default + session_ids = ["pid_upload_session:h-NtwvAdw3XDqqHmb0J2t0XfIaSnQw2Eor59pfZI9D_ZGNJ4Ew"] +struct UploadSessionStartResult + session_id String + "A unique identifier for the upload session. Pass this to + :route:`upload_session/append:2` and + :route:`upload_session/finish`." -route paper/create (PaperCreateArg, PaperCreateResult, PaperCreateError) - " - Creates a new Paper doc with the provided content. - " + example default + session_id = "pid_upload_session:h-NtwvAdw3XDqqHmb0J2t0XfIaSnQw2Eor59pfZI9D_ZGNJ4Ew" - attrs - is_preview = true - style = "upload" - scope = "files.content.write" +struct UploadWriteFailed + reason WriteError + "The reason why the file couldn't be saved." + upload_session_id String + "The upload session ID; data has already been uploaded to the corresponding upload + session and this ID may be used to retry the commit with :route:`upload_session/finish`." -route paper/update (PaperUpdateArg, PaperUpdateResult, PaperUpdateError) - " - Updates an existing Paper doc with the provided content. - " +alias Path = String(pattern="/(.|[\\r\\n])*") - attrs - is_preview = true - style = "upload" - scope = "files.content.write" +struct HighlightSpan + highlight_str String + "String to be determined whether it should be highlighted or not." + is_highlighted Boolean + "The string should be highlighted or not." + example default + highlight_str = "test" + is_highlighted = false -# -# End of Paper routes -# diff --git a/openid_openid_types.stone b/openid.stone similarity index 64% rename from openid_openid_types.stone rename to openid.stone index d54a4a6..a50d981 100644 --- a/openid_openid_types.stone +++ b/openid.stone @@ -1,7 +1,6 @@ -# @generated by protoc-gen-stone. DO NOT EDIT. -# source: configs/proto/dropbox/proto/openid/openid_types.proto namespace openid +import account_id import common union OpenIdError @@ -30,3 +29,14 @@ struct UserInfoResult "An identifier for the user. This is the Dropbox account_id, a string value such as dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc." + +route userinfo (UserInfoArgs, UserInfoResult, UserInfoError) + "This route is used for refreshing the info that is found in the id_token during the OIDC flow. + This route doesn't require any arguments and will use the scopes approved for the given access token." + + attrs + allow_app_folder_app = true + auth = "user" + is_preview = true + scope = "openid" + diff --git a/openid_openid.stone b/openid_openid.stone deleted file mode 100644 index 497d607..0000000 --- a/openid_openid.stone +++ /dev/null @@ -1,14 +0,0 @@ -# @generated by protoc-gen-stone. DO NOT EDIT. -# source: configs/proto/dropbox/proto/openid/openid.proto -namespace openid - -route userinfo (UserInfoArgs, UserInfoResult, UserInfoError) - "This route is used for refreshing the info that is found in the id_token during the OIDC flow. - This route doesn't require any arguments and will use the scopes approved for the given access token." - - attrs - allow_app_folder_app = true - auth = "user" - is_preview = true - scope = "openid" - diff --git a/paper.stone b/paper.stone index a693579..89bcca0 100644 --- a/paper.stone +++ b/paper.stone @@ -4,10 +4,10 @@ namespace paper New Paper users will see docs they create in their filesystem as '.paper' files alongside their other Dropbox content. The /paper endpoints are being deprecated and you'll need to use /files and /sharing endpoints to interact with their Paper content. Read more in the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide`." import common +import files import sharing alias PaperDocId = String - "Paper doc ID." struct RefPaperDoc doc_id PaperDocId @@ -43,19 +43,22 @@ struct ListPaperDocsArgs "Allows user to specify how the Paper docs should be sorted." sort_order ListPaperDocsSortOrder = ascending "Allows user to specify the sort order of the result." - limit Int32(min_value=1, max_value=1000) = 1000 - "Size limit per batch. The maximum number of docs that - can be retrieved per batch is 1000. Higher value results in invalid arguments error." + limit Int32(max_value=1000, min_value=1) = 1000 + "Size limit per batch. The maximum number of docs that can be retrieved per batch is 1000. Higher value results in invalid arguments error." + stop_at_date common.DropboxTimestamp? + "Do not return results beyond this date. Behavior depends on sort order." + example default filter_by = docs_created sort_by = modified sort_order = descending limit = 100 + stop_at_date = "2024-10-11T12:34:55Z" struct ListPaperDocsContinueArgs cursor String - "The cursor obtained from :route:`docs/list` or :route:`docs/list/continue`. - Allows for pagination." + "The cursor obtained from :route:`docs/list` or :route:`docs/list/continue`. Allows for pagination." + example default cursor = "U60b6BxT43ySd5sAVQbbIvoteSnWLjUdLU7aR25hbt3ySd5sAVQbbIvoteSnWLjUd" @@ -63,39 +66,19 @@ struct Cursor value String "The actual cursor value." expiration common.DropboxTimestamp? - "Expiration time of :field:`value`. - - Some cursors might have expiration time assigned. This is a UTC value after which - the cursor is no longer valid and the API starts returning an error. - If cursor expires a new one needs to be obtained and pagination needs to be restarted. - Some cursors might be short-lived some cursors might be long-lived. + "Expiration time of :field:`value`. Some cursors might have expiration time assigned. This is a UTC value after which the cursor is no longer valid and the API starts returning an error. If cursor expires a new one needs to be obtained and pagination needs to be restarted. Some cursors might be short-lived some cursors might be long-lived. This really depends on the sorting type and order, e.g.: 1. on one hand, listing docs created by the user, sorted by the created time ascending will have undefinite expiration because the results cannot change while the iteration is happening. This cursor would be suitable for long term polling. 2. on the other hand, listing docs sorted by the last modified time will have a very short expiration as docs do get modified very often and the modified time can be changed while the iteration is happening thus altering the results." - This really depends on the sorting type and order, e.g.: - - 1. on one hand, listing docs created by the user, sorted by the created time - ascending will have undefinite expiration because the results cannot change while - the iteration is happening. This cursor would be suitable for long term polling. - - 2. on the other hand, listing docs sorted by the last modified time will have - a very short expiration as docs do get modified very often and the modified time - can be changed while the iteration is happening thus altering the results." example default value = "zHZvTPBnXilGgm1AmDgVyZ10zf7qb0qznd5sAVQbbIvoteSnWLjUdLU7aR25hb" expiration = "2016-08-07T14:56:15Z" struct ListPaperDocsResponse doc_ids List(PaperDocId) - "The list of Paper doc IDs that can be used to access the given Paper docs or - supplied to other API methods. - The list is sorted in the order specified by the initial call to :route:`docs/list`." + "The list of Paper doc IDs that can be used to access the given Paper docs or supplied to other API methods. The list is sorted in the order specified by the initial call to :route:`docs/list`." cursor Cursor - "Pass the cursor into :route:`docs/list/continue` to paginate through all files. - The cursor preserves all properties as specified in the original call - to :route:`docs/list`." + "Pass the cursor into :route:`docs/list/continue` to paginate through all files. The cursor preserves all properties as specified in the original call to :route:`docs/list`." has_more Boolean - "Will be set to True if a subsequent call with the provided cursor - to :route:`docs/list/continue` returns immediately with some results. If set to False - please allow some delay before making another call to :route:`docs/list/continue`." + "Will be set to True if a subsequent call with the provided cursor to :route:`docs/list/continue` returns immediately with some results. If set to False please allow some delay before making another call to :route:`docs/list/continue`." example default doc_ids = ["zO1E7coc54sE8IuMdUoxz", "mm1AmDgVyZ10zf7qb0qzn", "dByYHZvTPBnXilGgyc5mm"] @@ -104,34 +87,33 @@ struct ListPaperDocsResponse union ExportFormat "The desired export format of the Paper doc." - html "The HTML export format." markdown "The markdown export format." + json + "Doc metadata JSON export format." struct PaperDocExport extends RefPaperDoc export_format ExportFormat + include_comments Boolean = false + "When true, export includes comment threads (e.g. markdown footnotes). When false or omitted, body only. + Other formats may adopt this later; currently only markdown uses it. + Plain bool (not optional): protoc-gen-godbx does not support proto3 optional yet." example default export_format = markdown doc_id = "uaSvRuxvnkFa12PTkBv5q" struct PaperDocExportResult - owner String "The Paper doc owner's email address." - - title String "The Paper doc title." - revision Int64 "The Paper doc revision. Simply an ever increasing number." - mime_type String - "MIME type of the export. This corresponds to :type:`ExportFormat` specified - in the request." + "MIME type of the export. This corresponds to :type:`ExportFormat` specified in the request." example default owner = "james@example.com" @@ -141,7 +123,6 @@ struct PaperDocExportResult union_closed DocSubscriptionLevel "The subscription level of a Paper doc." - default "No change email messages unless you're the creator." ignore @@ -153,7 +134,6 @@ union_closed DocSubscriptionLevel union_closed FolderSubscriptionLevel "The subscription level of a Paper folder." - none "Not shown in activity, no email messages." activity_only @@ -164,9 +144,7 @@ union_closed FolderSubscriptionLevel "Shown in activity, weekly email messages." union_closed FolderSharingPolicyType - "The sharing policy of a Paper folder. - - The sharing policy of subfolders is inherited from the root folder." + "The sharing policy of a Paper folder. The sharing policy of subfolders is inherited from the root folder." team "Everyone in your team and anyone directly invited can access this folder." invite_only @@ -174,7 +152,6 @@ union_closed FolderSharingPolicyType union_closed SharingTeamPolicyType "The sharing policy type of the Paper doc." - people_with_link_can_edit "Users who have a link to this doc can edit it." people_with_link_can_view_and_comment @@ -188,7 +165,6 @@ union_closed SharingPublicPolicyType extends SharingTeamPolicyType struct SharingPolicy "Sharing policy of Paper doc." - public_sharing_policy SharingPublicPolicyType? "This value applies to the non-team members." team_sharing_policy SharingTeamPolicyType? @@ -200,10 +176,8 @@ struct SharingPolicy struct Folder "Data structure representing a Paper folder." - id String "Paper folder ID. This ID uniquely identifies the folder." - name String "Paper folder name." @@ -213,10 +187,8 @@ struct Folder struct FoldersContainingPaperDoc "Metadata about Paper folders containing the specififed Paper doc." - folder_sharing_policy_type FolderSharingPolicyType? "The sharing policy of the folder containing the Paper doc." - folders List(Folder)? "The folder path. If present the first folder is the root folder." @@ -234,8 +206,7 @@ struct PaperDocSharingPolicy extends RefPaperDoc struct RemovePaperDocUser extends RefPaperDoc member sharing.MemberSelector - "User which should be removed from the Paper doc. Specify only email address or - Dropbox account ID." + "User which should be removed from the Paper doc. Specify only email address or Dropbox account ID." example default doc_id = "uaSvRuxvnkFa12PTkBv5q" @@ -251,8 +222,7 @@ struct AddMember permission_level PaperDocPermissionLevel = edit "Permission for the user." member sharing.MemberSelector - "User which should be added to the Paper doc. Specify only email address or - Dropbox account ID." + "User which should be added to the Paper doc. Specify only email address or Dropbox account ID." example default member = default @@ -262,17 +232,13 @@ union UserOnPaperDocFilter visited "all users who have visited the Paper doc." shared - "All uses who are shared on the Paper doc. This includes all users who have visited - the Paper doc as well as those who have not." + "All uses who are shared on the Paper doc. This includes all users who have visited the Paper doc as well as those who have not." struct ListUsersOnPaperDocArgs extends RefPaperDoc - limit Int32(min_value=1, max_value=1000) = 1000 - "Size limit per batch. The maximum number of users that can be retrieved per batch - is 1000. Higher value results in invalid arguments error." - + limit Int32(max_value=1000, min_value=1) = 1000 + "Size limit per batch. The maximum number of users that can be retrieved per batch is 1000. Higher value results in invalid arguments error." filter_by UserOnPaperDocFilter = shared - "Specify this attribute if you want to obtain users that have already accessed - the Paper doc." + "Specify this attribute if you want to obtain users that have already accessed the Paper doc." example default doc_id = "uaSvRuxvnkFa12PTkBv5q" @@ -281,8 +247,7 @@ struct ListUsersOnPaperDocArgs extends RefPaperDoc struct ListUsersOnPaperDocContinueArgs extends RefPaperDoc cursor String - "The cursor obtained from :route:`docs/users/list` or - :route:`docs/users/list/continue`. Allows for pagination." + "The cursor obtained from :route:`docs/users/list` or :route:`docs/users/list/continue`. Allows for pagination." example default doc_id = "uaSvRuxvnkFa12PTkBv5q" @@ -291,7 +256,6 @@ struct ListUsersOnPaperDocContinueArgs extends RefPaperDoc struct InviteeInfoWithPermissionLevel invitee sharing.InviteeInfo "Email address invited to the Paper doc." - permission_level PaperDocPermissionLevel "Permission level for the invitee." @@ -299,11 +263,9 @@ struct InviteeInfoWithPermissionLevel invitee = default permission_level = edit - struct UserInfoWithPermissionLevel user sharing.UserInfo "User shared on the Paper doc." - permission_level PaperDocPermissionLevel "Permission level for the user." @@ -313,23 +275,15 @@ struct UserInfoWithPermissionLevel struct ListUsersOnPaperDocResponse invitees List(InviteeInfoWithPermissionLevel) - "List of email addresses with their respective permission levels - that are invited on the Paper doc." + "List of email addresses with their respective permission levels that are invited on the Paper doc." users List(UserInfoWithPermissionLevel) - "List of users with their respective permission levels - that are invited on the Paper folder." + "List of users with their respective permission levels that are invited on the Paper folder." doc_owner sharing.UserInfo "The Paper doc owner. This field is populated on every single response." cursor Cursor - "Pass the cursor into :route:`docs/users/list/continue` to paginate - through all users. - The cursor preserves all properties as specified in the original call - to :route:`docs/users/list`." + "Pass the cursor into :route:`docs/users/list/continue` to paginate through all users. The cursor preserves all properties as specified in the original call to :route:`docs/users/list`." has_more Boolean - "Will be set to True if a subsequent call with the provided cursor - to :route:`docs/users/list/continue` returns immediately with some results. - If set to False please allow some delay before making another call to - :route:`docs/users/list/continue`." + "Will be set to True if a subsequent call with the provided cursor to :route:`docs/users/list/continue` returns immediately with some results. If set to False please allow some delay before making another call to :route:`docs/users/list/continue`." example default users = [default] @@ -339,13 +293,10 @@ struct ListUsersOnPaperDocResponse has_more = false struct AddPaperDocUser extends RefPaperDoc - members List(AddMember, max_items = 20) - "User which should be added to the Paper doc. Specify only email address or - Dropbox account ID." - + members List(AddMember, max_items=20) + "User which should be added to the Paper doc. Specify only email address or Dropbox account ID." custom_message String? "A personal message that will be emailed to each successfully added member." - quiet Boolean = false "Clients should set this to true if no email message shall be sent to added users." @@ -389,8 +340,7 @@ union PaperApiCursorError wrong_user_in_cursor "The provided cursor contains invalid user." reset - "Indicates that the cursor has been invalidated. Call - the corresponding non-continue endpoint to obtain a new cursor." + "Indicates that the cursor has been invalidated. Call the corresponding non-continue endpoint to obtain a new cursor." union DocLookupError extends PaperApiBaseError doc_not_found @@ -410,15 +360,9 @@ struct ListUsersOnFolderResponse users List(sharing.UserInfo) "List of users that are invited on the Paper folder." cursor Cursor - "Pass the cursor into :route:`docs/folder_users/list/continue` to paginate - through all users. - The cursor preserves all properties as specified in the original call - to :route:`docs/folder_users/list`." + "Pass the cursor into :route:`docs/folder_users/list/continue` to paginate through all users. The cursor preserves all properties as specified in the original call to :route:`docs/folder_users/list`." has_more Boolean - "Will be set to True if a subsequent call with the provided cursor - to :route:`docs/folder_users/list/continue` returns immediately with some results. - If set to False please allow some delay before making another call to - :route:`docs/folder_users/list/continue`." + "Will be set to True if a subsequent call with the provided cursor to :route:`docs/folder_users/list/continue` returns immediately with some results. If set to False please allow some delay before making another call to :route:`docs/folder_users/list/continue`." example default users = [default] @@ -427,9 +371,8 @@ struct ListUsersOnFolderResponse has_more = false struct ListUsersOnFolderArgs extends RefPaperDoc - limit Int32(min_value=1, max_value=1000) = 1000 - "Size limit per batch. The maximum number of users that can be retrieved per batch - is 1000. Higher value results in invalid arguments error." + limit Int32(max_value=1000, min_value=1) = 1000 + "Size limit per batch. The maximum number of users that can be retrieved per batch is 1000. Higher value results in invalid arguments error." example default doc_id = "uaSvRuxvnkFa12PTkBv5q" @@ -437,8 +380,7 @@ struct ListUsersOnFolderArgs extends RefPaperDoc struct ListUsersOnFolderContinueArgs extends RefPaperDoc cursor String - "The cursor obtained from :route:`docs/folder_users/list` or - :route:`docs/folder_users/list/continue`. Allows for pagination." + "The cursor obtained from :route:`docs/folder_users/list` or :route:`docs/folder_users/list/continue`. Allows for pagination." example default doc_id = "uaSvRuxvnkFa12PTkBv5q" @@ -446,41 +388,31 @@ struct ListUsersOnFolderContinueArgs extends RefPaperDoc union ImportFormat "The import format of the incoming data." - html "The provided data is interpreted as standard HTML." markdown - "The provided data is interpreted as markdown. - - The first line of the provided document will be used as the doc title." + "The provided data is interpreted as markdown. The first line of the provided document will be used as the doc title." plain_text - "The provided data is interpreted as plain text. - - The first line of the provided document will be used as the doc title." + "The provided data is interpreted as plain text. The first line of the provided document will be used as the doc title." struct PaperDocCreateArgs parent_folder_id String? - "The Paper folder ID where the Paper document should be created. The API user has to have - write access to this folder or error is thrown." + "The Paper folder ID where the Paper document should be created. The API user has to have write access to this folder or error is thrown." import_format ImportFormat "The format of provided data." example default - "Create new Paper doc (unfiled)." import_format = markdown - + example createDocInFolder - "Create new Paper doc inside Paper folder." import_format = html parent_folder_id = "e.gGYT6HSafpMej9bUv306GarglI7GGeAM3yvfZvXHO9u4mV" struct PaperDocCreateUpdateResult doc_id String "Doc ID of the newly created doc." - revision Int64 "The Paper doc revision. Simply an ever increasing number." - title String "The Paper doc title." @@ -495,19 +427,15 @@ union PaperDocCreateError extends PaperApiBaseError folder_not_found "The specified Paper folder is cannot be found." doc_length_exceeded - "The newly created Paper doc would be too large. - Please split the content into multiple docs." + "The newly created Paper doc would be too large. Please split the content into multiple docs." image_size_exceeded - "The imported document contains an image that is too large. The current limit is 1MB. - This only applies to HTML with data URI." + "The imported document contains an image that is too large. The current limit is 1MB. This only applies to HTML with data URI." union PaperDocUpdatePolicy append "The content will be appended to the doc." prepend - "The content will be prepended to the doc. - - The doc title will not be affected." + "The content will be prepended to the doc. The doc title will not be affected." overwrite_all "The document will be overwitten at the head with the provided content." @@ -515,20 +443,17 @@ struct PaperDocUpdateArgs extends RefPaperDoc doc_update_policy PaperDocUpdatePolicy "The policy used for the current update call." revision Int64 - "The latest doc revision. This value must match the head revision or - an error code will be returned. This is to prevent colliding writes." + "The latest doc revision. This value must match the head revision or an error code will be returned. This is to prevent colliding writes." import_format ImportFormat "The format of provided data." example default - "Overwrite the doc content with provided content." doc_update_policy = overwrite_all import_format = html doc_id = "uaSvRuxvnkFa12PTkBv5q" revision = 12345 - + example prepend_example - "Prepend the content into the doc (the doc title will remain unchanged)." doc_update_policy = prepend import_format = plain_text doc_id = "uaSvRuxvnkFa12PTkBv5q" @@ -542,8 +467,7 @@ union PaperDocUpdateError extends DocLookupError doc_length_exceeded "The newly created Paper doc would be too large, split the content into multiple docs." image_size_exceeded - "The imported document contains an image that is too large. The current limit is 1MB. - This only applies to HTML with data URI." + "The imported document contains an image that is too large. The current limit is 1MB. This only applies to HTML with data URI." doc_archived "This operation is not allowed on archived Paper docs." doc_deleted @@ -553,30 +477,25 @@ struct PaperFolderCreateArg name String "The name of the new Paper folder." parent_folder_id String? - "The encrypted Paper folder Id where the new Paper folder should be created. The API user has to have - write access to this folder or error is thrown. If not supplied, the new folder will be created at top level." + "The encrypted Paper folder Id where the new Paper folder should be created. The API user has to have write access to this folder or error is thrown. If not supplied, the new folder will be created at top level." is_team_folder Boolean? - "Whether the folder to be created should be a team folder. This value will be ignored if parent_folder_id is supplied, - as the new folder will inherit the type (private or team folder) from its parent. We will by default create a top-level - private folder if both parent_folder_id and is_team_folder are not supplied." + "Whether the folder to be created should be a team folder. This value will be ignored if parent_folder_id is supplied, as the new folder will inherit the type (private or team folder) from its parent. We will by default create a top-level private folder if both parent_folder_id and is_team_folder are not supplied." + example default - "Create a top-level private folder." name = "my new folder" - + example createTopLevelTeamFolder - "Create a top-level team folder." name = "my new folder" is_team_folder = true - + example createSubFolder - "Create a new Paper folder inside an existing folder. The new folder will be a private or - team folder depending on its parent." name = "my new folder" parent_folder_id = "e.gGYT6HSafpMej9bUv306GarglI7GGeAM3yvfZvXHO9u4mV" struct PaperFolderCreateResult folder_id String "Folder ID of the newly created folder." + example default folder_id = "abcd" @@ -586,192 +505,176 @@ union PaperFolderCreateError extends PaperApiBaseError invalid_folder_id "The folder id cannot be decrypted to valid folder id." -route docs/folder_users/list (ListUsersOnFolderArgs, ListUsersOnFolderResponse, DocLookupError) deprecated - "Lists the users who are explicitly invited to the Paper folder in which the Paper doc - is contained. For private folders all users (including owner) shared on the folder - are listed and for team folders all non-team users shared on the folder are returned. +union PaperDocStatus + "The status of a Paper doc." + active + "The Paper doc is active." + deleted + "The Paper doc is deleted." + +struct GetDocMetadataArg + "Argument for retrieving Paper doc metadata. Accepts either a legacy Paper doc ID or a Cloud Doc file ID." + doc_id PaperDocId? + "Legacy Paper doc identifier." + file_id files.FileId? + "Dropbox file ID for Cloud Docs (post-PiFS migration)." + +struct PaperDocGetMetadataResult + "Metadata returned by docs/get_metadata." + doc_id PaperDocId + "The Paper doc ID." + owner String + "The Paper doc owner's email address." + title String + "The Paper doc title." + created_date common.DropboxTimestamp + "The Paper doc creation date." + status PaperDocStatus + "The Paper doc status." + revision Int64 + "The Paper doc revision. Simply an ever increasing number." + last_updated_date common.DropboxTimestamp + "The date when the Paper doc was last edited." + last_editor String + "The email address of the last editor of the Paper doc." - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. + example default + doc_id = "uaSvRuxvnkFa12PTkBv5q" + owner = "steph@example.com" + title = "Onbaording Doc" + created_date = "2016-01-20T00:00:00Z" + status = active + revision = 56556 + last_updated_date = "2017-01-02T00:00:00Z" + last_editor = "stephen@example.com" + + +route docs/folder_users/list (ListUsersOnFolderArgs, ListUsersOnFolderResponse, DocLookupError) deprecated + "Lists the users who are explicitly invited to the Paper folder in which the Paper doc is contained. For private folders all users (including owner) shared on the folder are listed and for team folders all non-team users shared on the folder are returned. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.read" route docs/folder_users/list/continue (ListUsersOnFolderContinueArgs, ListUsersOnFolderResponse, ListUsersCursorError) deprecated - "Once a cursor has been retrieved from :route:`docs/folder_users/list`, use this to - paginate through all users on the Paper folder. + "Once a cursor has been retrieved from :route:`docs/folder_users/list`, use this to paginate through all users on the Paper folder. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.read" route docs/sharing_policy/get (RefPaperDoc, SharingPolicy, DocLookupError) deprecated - "Gets the default sharing policy for the given Paper doc. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. + "Gets the default sharing policy for the given Paper doc. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.read" route docs/sharing_policy/set (PaperDocSharingPolicy, Void, DocLookupError) deprecated - "Sets the default sharing policy for the given Paper doc. The default 'team_sharing_policy' - can be changed only by teams, omit this field for personal accounts. - - The 'public_sharing_policy' policy can't be set to the value 'disabled' because this setting - can be changed only via the team admin console. + "Sets the default sharing policy for the given Paper doc. The default 'team_sharing_policy' can be changed only by teams, omit this field for personal accounts. The 'public_sharing_policy' policy can't be set to the value 'disabled' because this setting can be changed only via the team admin console. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.write" route docs/archive (RefPaperDoc, Void, DocLookupError) deprecated - "Marks the given Paper doc as archived. - - This action can be performed or undone by anyone with edit permissions to the doc. + "Marks the given Paper doc as archived. This action can be performed or undone by anyone with edit permissions to the doc. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. This endpoint will be retired in September 2020. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for more information." - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - This endpoint will be retired in September 2020. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for more information." attrs + auth = "user" scope = "files.content.write" route docs/permanently_delete (RefPaperDoc, Void, DocLookupError) deprecated - "Permanently deletes the given Paper doc. This operation is final as the doc - cannot be recovered. - - This action can be performed only by the doc owner. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. + "Permanently deletes the given Paper doc. This operation is final as the doc cannot be recovered. This action can be performed only by the doc owner. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "files.permanent_delete" route docs/download (PaperDocExport, PaperDocExportResult, DocLookupError) deprecated - "Exports and downloads Paper doc either as HTML or markdown. + "Exports and downloads Paper doc either as HTML or markdown. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs - style="download" + auth = "user" scope = "files.content.read" + style = "download" route docs/get_folder_info (RefPaperDoc, FoldersContainingPaperDoc, DocLookupError) deprecated - "Retrieves folder information for the given Paper doc. This includes: - - - folder sharing policy; permissions for subfolders are set by the top-level folder. + "Retrieves folder information for the given Paper doc. This includes: - folder sharing policy; permissions for subfolders are set by the top-level folder. - full 'filepath', i.e. the list of folders (both folderId and folderName) from the root folder to the folder directly containing the Paper doc. If the Paper doc is not in any folder (aka unfiled) the response will be empty. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - - full 'filepath', i.e. the list of folders (both folderId and folderName) from - the root folder to the folder directly containing the Paper doc. - - - If the Paper doc is not in any folder (aka unfiled) the response will be empty. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.read" route docs/users/add (AddPaperDocUser, List(AddPaperDocUserMemberResult), DocLookupError) deprecated - "Allows an owner or editor to add users to a Paper doc or change their permissions - using their email address or Dropbox account ID. - - The doc owner's permissions cannot be changed. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. + "Allows an owner or editor to add users to a Paper doc or change their permissions using their email address or Dropbox account ID. The doc owner's permissions cannot be changed. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.write" route docs/users/remove (RemovePaperDocUser, Void, DocLookupError) deprecated - "Allows an owner or editor to remove users from a Paper doc using their email address or - Dropbox account ID. + "Allows an owner or editor to remove users from a Paper doc using their email address or Dropbox account ID. The doc owner cannot be removed. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - The doc owner cannot be removed. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.write" route docs/users/list (ListUsersOnPaperDocArgs, ListUsersOnPaperDocResponse, DocLookupError) deprecated - "Lists all users who visited the Paper doc or users with explicit access. This call - excludes users who have been removed. The list is sorted by the date of the visit or - the share date. - - The list will include both users, the explicitly shared ones as well as those - who came in using the Paper url link. + "Lists all users who visited the Paper doc or users with explicit access. This call excludes users who have been removed. The list is sorted by the date of the visit or the share date. The list will include both users, the explicitly shared ones as well as those who came in using the Paper url link. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.read" route docs/users/list/continue (ListUsersOnPaperDocContinueArgs, ListUsersOnPaperDocResponse, ListUsersCursorError) deprecated - "Once a cursor has been retrieved from :route:`docs/users/list`, use this to - paginate through all users on the Paper doc. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. + "Once a cursor has been retrieved from :route:`docs/users/list`, use this to paginate through all users on the Paper doc. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "sharing.read" route docs/list (ListPaperDocsArgs, ListPaperDocsResponse, Void) deprecated - "Return the list of all Paper docs according to the argument specifications. To iterate - over through the full pagination, pass the cursor to :route:`docs/list/continue`. + "Return the list of all Paper docs according to the argument specifications. To iterate over through the full pagination, pass the cursor to :route:`docs/list/continue`. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "files.metadata.read" route docs/list/continue (ListPaperDocsContinueArgs, ListPaperDocsResponse, ListDocsCursorError) deprecated - "Once a cursor has been retrieved from :route:`docs/list`, use this to - paginate through all Paper doc. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. + "Once a cursor has been retrieved from :route:`docs/list`, use this to paginate through all Paper doc. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "files.metadata.read" route docs/create (PaperDocCreateArgs, PaperDocCreateUpdateResult, PaperDocCreateError) deprecated - "Creates a new Paper doc with the provided content. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. + "Creates a new Paper doc with the provided content. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. This endpoint will be retired in September 2020. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for more information." - This endpoint will be retired in September 2020. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for more information." attrs - style="upload" + auth = "user" scope = "files.content.write" + style = "upload" route docs/update (PaperDocUpdateArgs, PaperDocCreateUpdateResult, PaperDocUpdateError) deprecated - "Updates an existing Paper doc with the provided content. + "Updates an existing Paper doc with the provided content. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. This endpoint will be retired in September 2020. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for more information." - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. - - This endpoint will be retired in September 2020. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for more information." attrs - style="upload" + auth = "user" scope = "files.content.write" + style = "upload" route folders/create (PaperFolderCreateArg, PaperFolderCreateResult, PaperFolderCreateError) deprecated - "Create a new Paper folder with the provided info. - - Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. + "Create a new Paper folder with the provided info. Note that this endpoint will continue to work for content created by users on the older version of Paper. To check which version of Paper a user is on, use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new version of Paper. Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." - Refer to the :link:`Paper Migration Guide https://www.dropbox.com/lp/developers/reference/paper-migration-guide` for migration information." attrs + auth = "user" scope = "files.content.write" + +route docs/get_metadata (GetDocMetadataArg, PaperDocGetMetadataResult, DocLookupError) + "Returns metadata for a Paper doc or Cloud Doc." + + attrs + auth = "user" + scope = "files.metadata.read" + diff --git a/riviera.stone b/riviera.stone new file mode 100644 index 0000000..ea6d314 --- /dev/null +++ b/riviera.stone @@ -0,0 +1,127 @@ +namespace riviera + +import async +import common + +union ErrorCode + unknown_error + bad_request + "400" + api_error + "409" + access_error + "403" + ratelimit_error + "429" + unavailable + "503" + + +union TimestampLevel + unknown + sentence + word + + +struct MediaDurationError + limit Int32 = 0 + +union ContentApiV2Error + server_error String = "" + user_error String = "" + media_duration_error MediaDurationError + no_audio_error + link_download_disabled_error + shared_link_password_protected + limit_exceeded_error + +struct GetTranscriptAsyncError + error_code ErrorCode = unknown_error + error_details ContentApiV2Error? + +union FileIdOrUrl + file_id String = "" + url String = "" + path String = "" + +struct GetTranscriptArgs + "Arguments for the asynchronous `get_transcript_async` route. + Exactly one of `file_id`, `path`, or `url` must be supplied via + `file_id_or_url` to identify the audio or video asset to transcribe." + file_id_or_url FileIdOrUrl? + "Identifier of the media asset to transcribe. Callers must set exactly + one of the oneof variants: + - file_id: a Dropbox-issued file id (format: \"id:\") for a file the + authenticated user has access to. + - path: an absolute Dropbox path, e.g. \"/folder/recording.mp4\". + - url: either a Dropbox shared link (www.dropbox.com) or an external + HTTPS URL pointing to a supported audio/video file. + - Dropbox shared links are resolved internally using the caller's + authenticated identity and the link's visibility / download + settings. They therefore require an authenticated user context + (anonymous `url` requests against Dropbox links are rejected with + an `ACCESS_ERROR`). Links protected by a password are rejected + with `shared_link_password_protected`; links with downloads + disabled are rejected with `link_download_disabled_error`. + - External URLs are fetched over HTTPS through the backend's + egress proxy and must point at a supported audio/video file + extension. + The referenced asset must be an audio or video file in a supported + format; requests against files with no audio track return a + `no_audio_error`." + timestamp_level TimestampLevel = unknown + "Granularity of the time offsets returned for each transcript segment. + Defaults to `SENTENCE. + - SENTENCE: one segment per spoken sentence (recommended). + - WORD: one segment per word, useful for fine-grained alignment such + as captioning or highlight-as-you-listen experiences." + included_special_words String = "" + "Comma-delimited list of non-lexical filler words to preserve in the + transcript output, e.g. `\"uh, ah, uhm\"`. By default these fillers are + stripped. Unrecognized tokens are ignored. Leave empty to use the + default filtering behavior." + audio_language String = "" + "Optional BCP-47 language tag hinting the spoken language of the source + audio (e.g. \"en-US\", \"ja-JP\"). When empty, the service auto-detects the + language; supplying a hint improves accuracy and latency for short or + ambiguous clips. Unsupported languages fall back to auto-detection." + +struct ApiTranscriptSegment + "Transcript segment for APIv2" + text String = "" + start_time Float64 = 0 + end_time Float64 = 0 + +struct ApiStructuredTranscript + "Structured transcript for APIv2" + segments List(ApiTranscriptSegment)? + transcript_locale String = "" + +struct GetTranscriptResult + structured_transcript ApiStructuredTranscript? + "The structured transcript produced for the requested media asset, with + per-segment text, start/end offsets (in seconds from the beginning of + the media), and the detected or caller-supplied locale." + +union GetTranscriptAsyncCheckResult + "Result type for EventBus async check - must end in \"CheckResult\"" + in_progress + complete GetTranscriptResult + failed GetTranscriptAsyncError + +route get_transcript_async (GetTranscriptArgs, async.LaunchResultBase, Void) + "Asynchronous transcript generation for audio and video files." + + attrs + auth = "app, user" + is_preview = true + scope = "files.content.read" + +route get_transcript_async/check (async.PollArg, GetTranscriptAsyncCheckResult, async.PollError) + "Returns the status or result of specified get_transcript_async task." + + attrs + auth = "app, user" + is_preview = true + scope = "files.content.read" + diff --git a/secondary_emails.stone b/secondary_emails.stone index 300dea4..f7f8f42 100644 --- a/secondary_emails.stone +++ b/secondary_emails.stone @@ -5,18 +5,18 @@ import common struct SecondaryEmail email common.EmailAddress "Secondary email address." - is_verified Boolean "Whether or not the secondary email address is verified to be owned by a user." example default email = "apple@orange.com" is_verified = true - + example second_sec_email email = "banana@honeydew.com" is_verified = true - + example third_sec_email email = "grape@strawberry.com" is_verified = false + diff --git a/seen_state.stone b/seen_state.stone index c0584f6..6b73451 100644 --- a/seen_state.stone +++ b/seen_state.stone @@ -16,3 +16,4 @@ union PlatformType "The content was viewed on an unknown platform." mobile "The content was viewed on a mobile client. DEPRECATED: Use mobile_ios or mobile_android instead." + diff --git a/shared_content_links.stone b/shared_content_links.stone deleted file mode 100644 index dcc9d0f..0000000 --- a/shared_content_links.stone +++ /dev/null @@ -1,150 +0,0 @@ -namespace sharing - -import common - - -union LinkExpiry - remove_expiry - "Remove the currently set expiry for the link." - set_expiry common.DropboxTimestamp - "Set a new expiry or change an existing expiry." - -union LinkPassword - - remove_password - "Remove the currently set password for the link." - - set_password String - "Set a new password or change an existing password." - -struct LinkSettings - "Settings that apply to a link." - access_level AccessLevel? - "The access level on the link for this file. Currently, - it only accepts 'viewer' and 'viewer_no_comment'." - audience LinkAudience? - "The type of audience on the link for this file." - expiry LinkExpiry? - "An expiry timestamp to set on a link." - password LinkPassword? - "The password for the link." - -union LinkAudience - public - "Link is accessible by anyone." - team - "Link is accessible only by team members." - no_one - "The link can be used by no one. The link merely points the user to the content, and does - not grant additional rights to the user. Members of the content who use this link can only - access the content with their pre-existing access rights." - password - "Use `require_password` instead. A link-specific password is required to access the - link. Login is not required." - members - "Link is accessible only by members of the content." - -struct LinkPermission - "Permissions for actions that can be performed on a link." - action LinkAction - allow Boolean - reason PermissionDeniedReason? - - example default - action = change_audience - allow = true - -union LinkAction - "Actions that can be performed on a link." - change_access_level - "Change the access level of the link." - change_audience - "Change the audience of the link." - remove_expiry - "Remove the expiry date of the link." - remove_password - "Remove the password of the link." - set_expiry - "Create or modify the expiry date of the link." - set_password - "Create or modify the password of the link." - -struct SharedContentLinkMetadataBase - access_level AccessLevel? - "The access level on the link for this file." - audience_options List(LinkAudience) - "The audience options that are available for the content. Some audience options may be - unavailable. For example, team_only may be unavailable if the content is not owned by a - user on a team. The 'default' audience option is always available if the user can modify - link settings." - audience_restricting_shared_folder AudienceRestrictingSharedFolder? - "The shared folder that prevents the link audience for this link from being more - restrictive." - current_audience LinkAudience - "The current audience of the link." - expiry common.DropboxTimestamp? - "Whether the link has an expiry set on it. A link with an expiry will have its - audience changed to members when the expiry is reached." - link_permissions List(LinkPermission) - "A list of permissions for actions you can perform on the link." - password_protected Boolean - "Whether the link is protected by a password." - -struct SharedContentLinkMetadata extends SharedContentLinkMetadataBase - "Metadata of a shared link for a file or folder." - - audience_exceptions AudienceExceptions? - "The content inside this folder with link audience different than this folder's. This is - only returned when an endpoint that returns metadata for a single shared folder is called, - e.g. /get_folder_metadata." - - url String - "The URL of the link." - - example default - audience_options = [public, team, members] - current_audience = public - link_permissions = [default] - password_protected = false - url = "" - -struct ExpectedSharedContentLinkMetadata extends SharedContentLinkMetadataBase - "The expected metadata of a shared link for a file or folder when a link is first created for - the content. Absent if the link already exists." - - example default - audience_options = [public, team, members] - current_audience = public - link_permissions = [default] - password_protected = false - -struct AudienceRestrictingSharedFolder - "Information about the shared folder that prevents the link audience for this link from being - more restrictive." - shared_folder_id common.SharedFolderId - "The ID of the shared folder." - name String - "The name of the shared folder." - audience LinkAudience - "The link audience of the shared folder." - -struct AudienceExceptions - "The total count and truncated list of information of content inside this folder that has a - different audience than the link on this folder. This is only returned for folders." - count UInt32 - exceptions List(AudienceExceptionContentInfo) - "A truncated list of some of the content that is an exception. The length of this list could - be smaller than the count since it is only a sample but will not be empty as long as - count is not 0." - - example default - count = 0 - exceptions = [] - -struct AudienceExceptionContentInfo - "Information about the content that has a link audience different than that of this folder." - name String - "The name of the content, which is either a file or a folder." - - example default - name = "sample file name" diff --git a/shared_links.stone b/shared_links.stone deleted file mode 100644 index 5b2a5d7..0000000 --- a/shared_links.stone +++ /dev/null @@ -1,775 +0,0 @@ -namespace sharing - -import common -import files -import users - -alias Id = files.Id -alias Path = files.Path -alias Rev = files.Rev -alias TeamInfo = users.Team -alias ReadPath = files.ReadPath - -# -# Link Metadata definitions and route -# - -struct GetSharedLinkMetadataArg - url String - "URL of the shared link." - path Path? - "If the shared link is to a folder, this parameter can be used to retrieve the metadata for - a specific file or sub-folder in this folder. A relative path should be used." - link_password String? - "If the shared link has a password, this parameter can be used." - - example default - url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" - path = "/Prime_Numbers.txt" - -union_closed RequestedVisibility - "The access permission that can be requested by the caller for the shared link. - Note that the final resolved visibility of the shared link takes into account other aspects, - such as team and shared folder settings. - Check the :type:`ResolvedVisibility` for more info on the possible resolved visibility values - of shared links." - - public - "Anyone who has received the link can access it. No login required." - team_only - "Only members of the same team can - access the link. Login is required." - password - "A link-specific password is required to access the - link. Login is not required." - -union ResolvedVisibility extends RequestedVisibility - "The actual access permissions values of shared links after taking into account user - preferences and the team and shared folder settings. - Check the :type:`RequestedVisibility` for more info on the possible visibility values - that can be set by the shared link's owner." - - team_and_password - "Only members of the same team who - have the link-specific password can access the link. Login is required." - shared_folder_only - "Only members of the shared folder containing the linked file - can access the link. Login is required." - no_one - "The link merely points the user to the content, and does not grant any additional rights. - Existing members of the content who use this link can only access the content with their - pre-existing access rights. Either on the file directly, or inherited from a parent folder." - only_you - "Only the current user can view this link." - - -union SharedLinkAccessFailureReason - login_required - "User is not logged in." - email_verify_required - "This user's email address is not verified. This functionality is only - available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - password_required - "The link is password protected." - team_only - "Access is allowed for team members only." - owner_only - "Access is allowed for the shared link's owner only." - -struct LinkPermissions - resolved_visibility ResolvedVisibility? - "The current visibility of the link after considering the shared links policies of the - the team (in case the link's owner is part of a team) and the shared folder (in case the - linked file is part of a shared folder). This field is shown only if the caller has access - to this info (the link's owner always has access to this data). For some links, an - effective_audience value is returned instead." - requested_visibility RequestedVisibility? - "The shared link's requested visibility. This can be overridden by the team and shared - folder policies. The final visibility, after considering these policies, can be found in - :field:`resolved_visibility`. This is shown only if the caller is the link's - owner and resolved_visibility is returned instead of effective_audience." - can_revoke Boolean - "Whether the caller can revoke the shared link." - revoke_failure_reason SharedLinkAccessFailureReason? - "The failure reason for revoking the link. This field will only be present if the - :field:`can_revoke` is :val:`false`." - effective_audience LinkAudience? - "The type of audience who can benefit from the access level specified by the - `link_access_level` field." - link_access_level LinkAccessLevel? - "The access level that the link will grant to its users. A link can grant additional rights - to a user beyond their current access level. For example, if a user was invited as a viewer - to a file, and then opens a link with `link_access_level` set to `editor`, then they will - gain editor privileges. The `link_access_level` is a property of the link, and does not - depend on who is calling this API. In particular, `link_access_level` does not take into - account the API caller's current permissions to the content." - visibility_policies List(VisibilityPolicy) - "A list of policies that the user might be able to set for the visibility." - can_set_expiry Boolean - "Whether the user can set the expiry settings of the link. This refers to the ability to - create a new expiry and modify an existing expiry." - can_remove_expiry Boolean - "Whether the user can remove the expiry of the link." - allow_download Boolean - "Whether the link can be downloaded or not." - can_allow_download Boolean - "Whether the user can allow downloads via the link. This refers to the ability to remove a - no-download restriction on the link." - can_disallow_download Boolean - "Whether the user can disallow downloads via the link. This refers to the ability to impose - a no-download restriction on the link." - allow_comments Boolean - "Whether comments are enabled for the linked file. This takes the team commenting policy into account." - team_restricts_comments Boolean - "Whether the team has disabled commenting globally." - audience_options List(LinkAudienceOption)? - "A list of link audience options the user might be able to set as the new audience." - can_set_password Boolean? - "Whether the user can set a password for the link." - can_remove_password Boolean? - "Whether the user can remove the password of the link." - require_password Boolean? - "Whether the user is required to provide a password to view the link." - can_use_extended_sharing_controls Boolean? - "Whether the user can use extended sharing controls, based on their account type." - - example default - resolved_visibility = public - can_revoke = false - revoke_failure_reason = owner_only - visibility_policies = [public, password] - can_set_expiry = false - can_remove_expiry = false - allow_download = true - can_allow_download = true - can_disallow_download = false - allow_comments = true - team_restricts_comments = true - audience_options = [public, team, no_one] - can_set_password = true - can_remove_password = true - require_password = false - can_use_extended_sharing_controls = false - -struct TeamMemberInfo - "Information about a team member." - - team_info TeamInfo - "Information about the member's team." - - display_name String - "The display name of the user." - - member_id String? - "ID of user as a member of a team. This field will only be present if the member is in the - same team as current user." - - example default - team_info = default - display_name = "Roger Rabbit" - member_id = "dbmid:abcd1234" - -struct SharedLinkMetadata - "The metadata of a shared link." - - union - file FileLinkMetadata - folder FolderLinkMetadata - - url String - "URL of the shared link." - - id Id? - "A unique identifier for the linked file." - - name String - "The linked file name (including extension). - This never contains a slash." - - expires common.DropboxTimestamp? - "Expiration time, if set. By default the link won't expire." - - path_lower String? - "The lowercased full path in the user's Dropbox. This always starts with a slash. - This field will only be present only if the linked file is in the authenticated user's - dropbox." - - link_permissions LinkPermissions - "The link's access permissions." - - team_member_info TeamMemberInfo? - "The team membership information of the link's owner. This field will only be present - if the link's owner is a team member." - - content_owner_team_info TeamInfo? - "The team information of the content's owner. This field will only be present if - the content's owner is a team member and the content's owner team is different from the - link's owner team." - - example default - file = default - - example folder_link_metadata - folder = default - -struct FileLinkMetadata extends SharedLinkMetadata - "The metadata of a file shared link." - - client_modified common.DropboxTimestamp - "The modification time set by the desktop client - when the file was added to Dropbox. Since this time is not verified - (the Dropbox server stores whatever the desktop client sends up), this - should only be used for display purposes (such as sorting) and not, - for example, to determine if a file has changed or not." - server_modified common.DropboxTimestamp - "The last time the file was modified on Dropbox." - rev Rev - "A unique identifier for the current revision of a file. This field is - the same rev as elsewhere in the API and can be used to detect changes - and avoid conflicts." - size UInt64 - "The file size in bytes." - - example default - url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" - id = "id:a4ayc_80_OEAAAAAAAAAXw" - name = "Prime_Numbers.txt" - path_lower = "/homework/math/prime_numbers.txt" - link_permissions = default - team_member_info = default - client_modified = "2015-05-12T15:50:38Z" - server_modified = "2015-05-12T15:50:38Z" - rev = "a1c10ce0dd78" - size = 7212 - -struct FolderLinkMetadata extends SharedLinkMetadata - "The metadata of a folder shared link." - - example default - url = "https://www.dropbox.com/sh/s6fvw6ol7rmqo1x/AAAgWRSbjmYDvPpDB30Sykjfa?dl=0" - id = "id:a4ayc_80_OEAAAAAAAAAXw" - name = "Math" - path_lower = "/homework/math" - team_member_info = default - link_permissions = default - -union SharedLinkError - shared_link_not_found - "The shared link wasn't found." - shared_link_access_denied - "The caller is not allowed to access this shared link." - unsupported_link_type - "This type of link is not supported; use :route:`files.export` instead." - -route get_shared_link_metadata(GetSharedLinkMetadataArg, SharedLinkMetadata, SharedLinkError) - "Get the shared link's metadata." - - attrs - auth = "app, user" - allow_app_folder_app = true - scope = "sharing.read" - -# -# List Shared links definitions and route -# - -struct ListSharedLinksArg - path ReadPath? - "See :route:`list_shared_links` description." - cursor String? - "The cursor returned by your last call to :route:`list_shared_links`." - direct_only Boolean? - "See :route:`list_shared_links` description." - - example default - "List all links." - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - - example path - path = "/Homework/Math" - - example id - path = "id:a4ayc_80_OEAAAAAAAAAYa" - - example rev - path = "rev:a1c10ce0dd78" - - example id_no_parent_links - path = "id:a4ayc_80_OEAAAAAAAAAYa" - direct_only = true - -struct ListSharedLinksResult - links List(SharedLinkMetadata) - "Shared links applicable to the path argument." - has_more Boolean - "Is true if there are additional shared links that have not been returned - yet. Pass the cursor into :route:`list_shared_links` to retrieve them." - cursor String? - "Pass the cursor into :route:`list_shared_links` to obtain the additional links. Cursor is - returned only if no path is given." - - example default - links = [default] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = true - -union ListSharedLinksError - path files.LookupError - reset - "Indicates that the cursor has been invalidated. Call - :route:`list_shared_links` to obtain a new cursor." - -route list_shared_links(ListSharedLinksArg, ListSharedLinksResult, ListSharedLinksError) - "List shared links of this user. - - If no path is given, returns a list of all shared links for the current user. For members of - business teams using team space and member folders, returns all shared links in the team - member's home folder unless the team space ID is specified in the request header. For more - information, refer to the :link:`Namespace Guide - https://www.dropbox.com/developers/reference/namespace-guide`. - - If a non-empty path is given, returns a list of all shared links - that allow access to the given path - direct links to the given path and links to parent folders - of the given path. Links to parent folders can be suppressed by setting - direct_only to true." - - attrs - allow_app_folder_app = true - scope = "sharing.read" - -# -# Modify shared link settings definitions and route -# - -struct SharedLinkSettings - require_password Boolean? - "Boolean flag to enable or disable password protection." - link_password String? - "If :field:`require_password` is true, this is needed - to specify the password to access the link." - expires common.DropboxTimestamp? - "Expiration time of the shared link. By default the link won't expire." - audience LinkAudience? - "The new audience who can benefit from the access level specified by the link's access level - specified in the `link_access_level` field of `LinkPermissions`. This is used in conjunction - with team policies and shared folder policies to determine the final effective audience type - in the `effective_audience` field of `LinkPermissions." - access RequestedLinkAccessLevel? - "Requested access level you want the audience to gain from this link. Note, modifying access - level for an existing link is not supported." - requested_visibility RequestedVisibility? - "Use :field:`audience` instead. The requested access for this shared link." - allow_download Boolean? - "Boolean flag to allow or not download capabilities for shared links." - - example default - requested_visibility = public - audience = public - access = viewer - allow_download = true - - -union LinkAccessLevel - viewer - "Users who use the link can view and comment on the content." - editor - "Users who use the link can edit, view and comment on the content." - -union RequestedLinkAccessLevel - viewer - "Users who use the link can view and comment on the content." - editor - "Users who use the link can edit, view and comment on the content. - Note not all file types support edit links yet." - max - "Request for the maximum access level you can set the link to." - default - "Request for the default access level the user has set." - -struct ModifySharedLinkSettingsArgs - url String - "URL of the shared link to change its settings." - settings SharedLinkSettings - "Set of settings for the shared link." - remove_expiration Boolean = false - "If set to true, removes the expiration of the shared link." - - example default - url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" - settings = default - -union_closed SharedLinkSettingsError - invalid_settings - "The given settings are invalid - (for example, all attributes of the :type:`SharedLinkSettings` are empty, - the requested visibility is :field:`RequestedVisibility.password` but the - :field:`SharedLinkSettings.link_password` is missing, :field:`SharedLinkSettings.expires` - is set to the past, etc.)." - - not_authorized - "User is not allowed to modify the settings of this link. Note that basic - users can only set :field:`RequestedVisibility.public` - as the :field:`SharedLinkSettings.requested_visibility` and cannot - set :field:`SharedLinkSettings.expires`." - - -union ModifySharedLinkSettingsError extends SharedLinkError - settings_error SharedLinkSettingsError - "There is an error with the given settings." - email_not_verified - "This user's email address is not verified. This functionality is only - available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - -route modify_shared_link_settings(ModifySharedLinkSettingsArgs, SharedLinkMetadata, ModifySharedLinkSettingsError) - "Modify the shared link's settings. - - If the requested visibility conflict with the shared links policy of the team or the - shared folder (in case the linked file is part of a shared folder) then the - :field:`LinkPermissions.resolved_visibility` of the returned :type:`SharedLinkMetadata` will - reflect the actual visibility of the shared link and the - :field:`LinkPermissions.requested_visibility` will reflect the requested visibility." - - attrs - allow_app_folder_app = true - scope = "sharing.write" - -# -# Create shared link with settings definitions and route -# - -struct CreateSharedLinkWithSettingsArg - path ReadPath - "The path to be shared by the shared link." - settings SharedLinkSettings? - "The requested settings for the newly created shared link." - - example default - path = "/Prime_Numbers.txt" - settings = default - -union SharedLinkAlreadyExistsMetadata - metadata SharedLinkMetadata - "Metadata of the shared link that already exists." - -union_closed CreateSharedLinkWithSettingsError - path files.LookupError - email_not_verified - "This user's email address is not verified. This functionality is only - available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - shared_link_already_exists SharedLinkAlreadyExistsMetadata? - "The shared link already exists. You can call :route:`list_shared_links` to get the - existing link, or use the provided metadata if it is returned." - settings_error SharedLinkSettingsError - "There is an error with the given settings." - access_denied - "The user is not allowed to create a shared link to the specified file. For - example, this can occur if the file is restricted or if the user's links are - :link:`banned https://help.dropbox.com/files-folders/share/banned-links`." - -route create_shared_link_with_settings(CreateSharedLinkWithSettingsArg, SharedLinkMetadata, CreateSharedLinkWithSettingsError) - "Create a shared link with custom settings. - If no settings are given then the default visibility is :field:`RequestedVisibility.public` - (The resolved visibility, though, may depend on other aspects such as team and shared folder - settings)." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "sharing.write" - - -# -# Revoke shared link -# - -struct RevokeSharedLinkArg - url String - "URL of the shared link." - - example default - url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" - -union RevokeSharedLinkError extends SharedLinkError - shared_link_malformed - "Shared link is malformed." - -route revoke_shared_link(RevokeSharedLinkArg, Void, RevokeSharedLinkError) - "Revoke a shared link. - - Note that even after revoking a shared link to a file, the file may be accessible if there are - shared links leading to any of the file parent folders. To list all shared links that enable - access to a specific file, you can use the :route:`list_shared_links` with the file as the - :field:`ListSharedLinksArg.path` argument." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "sharing.write" - -# -# NSLR endpoints -# - -union GetSharedLinkFileError extends SharedLinkError - shared_link_is_directory - "Directories cannot be retrieved by this endpoint." - -alias GetSharedLinkFileArg = GetSharedLinkMetadataArg - -route get_shared_link_file(GetSharedLinkFileArg, SharedLinkMetadata, GetSharedLinkFileError) - "Download the shared link's file from a user's Dropbox." - - attrs - host="content" - style="download" - allow_app_folder_app = true - scope = "sharing.read" - -# -# Deprecated endpoints -# - - -union Visibility - "Who can access a shared link. - The most open visibility is :field:`public`. - The default depends on many aspects, such as team and user - preferences and shared folder settings." - - public - "Anyone who has received the link can access it. No login required." - team_only - "Only members of the same team can - access the link. Login is required." - password - "A link-specific password is required to access the - link. Login is not required." - team_and_password - "Only members of the same team who - have the link-specific password can access the link." - shared_folder_only - "Only members of the shared folder containing the linked file - can access the link. Login is required." - -struct LinkMetadata - "Metadata for a shared link. This can be either a - :type:`PathLinkMetadata` or :type:`CollectionLinkMetadata`." - - union - path PathLinkMetadata - collection CollectionLinkMetadata - - url String - "URL of the shared link." - visibility Visibility - "Who can access the link." - expires common.DropboxTimestamp? - "Expiration time, if set. By default the link won't expire." - - example default - path = default - -struct PathLinkMetadata extends LinkMetadata - "Metadata for a path-based shared link." - - path String - "Path in user's Dropbox." - - example default - url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" - path = "/Homework/Math/Prime_Numbers.txt" - expires = null - visibility = public - -struct CollectionLinkMetadata extends LinkMetadata - "Metadata for a collection-based shared link." - - example default - url = "https://www.dropbox.com/sh/s6fvw6ol7rmqo1x/AAAgWRSbjmYDvPpDB30Sykjfa?dl=0" - expires = null - visibility = public - -struct GetSharedLinksArg - - path String? - "See :route:`get_shared_links` description." - - example default - "Get all links, including collection links." - path = "" - - example math_homework_links - "Get links giving access to /Homework/Math." - path = "/Homework/Math" - -struct GetSharedLinksResult - links List(LinkMetadata) - "Shared links applicable to the path argument." - - example default - links = [default] - -union GetSharedLinksError - path files.MalformedPathError - -route get_shared_links(GetSharedLinksArg, GetSharedLinksResult, GetSharedLinksError) deprecated by list_shared_links - "Returns a list of :type:`LinkMetadata` objects for this user, - including collection links. - - If no path is given, returns a list of all shared links for the current - user, including collection links, up to a maximum of 1000 links. - - If a non-empty path is given, returns a list of all shared links - that allow access to the given path. Collection links are never - returned in this case." - - attrs - allow_app_folder_app = true - scope = "sharing.read" - -union_closed PendingUploadMode - "Flag to indicate pending upload default (for linking to not-yet-existing paths)." - - file - "Assume pending uploads are files." - folder - "Assume pending uploads are folders." - -struct CreateSharedLinkArg - - path String - "The path to share." - - short_url Boolean = false - - pending_upload PendingUploadMode? - "If it's okay to share a path that does not yet exist, set this to - either :field:`PendingUploadMode.file` or :field:`PendingUploadMode.folder` - to indicate whether to assume it's a file or folder." - - example default - path = "/Homework/Math/Prime_Numbers.txt" - -union CreateSharedLinkError - path files.LookupError - -route create_shared_link(CreateSharedLinkArg, PathLinkMetadata, CreateSharedLinkError) deprecated by create_shared_link_with_settings - "Create a shared link. - - If a shared link already exists for the given path, that link is returned. - - Previously, it was technically possible to break a shared link by moving or - renaming the corresponding file or folder. In the future, this will no - longer be the case, so your app shouldn't rely on this behavior. Instead, if - your app needs to revoke a shared link, use :route:`revoke_shared_link`." - - attrs - allow_app_folder_app = true - select_admin_mode = "team_admin" - scope = "sharing.write" - -struct LinkAudienceOption - audience LinkAudience - "Specifies who can access the link." - allowed Boolean - "Whether the user calling this API can select this audience option." - disallowed_reason LinkAudienceDisallowedReason? - "If :field:`allowed` is :val:`false`, this will provide the reason that the user is not - permitted to set the visibility to this policy." - - example public - audience = public - allowed = true - - example team - audience = team - allowed = false - - example no_one - audience = no_one - allowed = true - -# -# Alpha version of LinkPermissions with visibility information and controls -# - -union VisibilityPolicyDisallowedReason - delete_and_recreate - "The user needs to delete and recreate the link to change the visibility policy." - restricted_by_shared_folder - "The parent shared folder restricts sharing of links outside the shared folder. To change - the visibility policy, remove the restriction from the parent shared folder." - restricted_by_team - "The team policy prevents links being shared outside the team." - user_not_on_team - "The user needs to be on a team to set this policy." - user_account_type - "The user is a basic user or is on a limited team." - permission_denied - "The user does not have permission." - -union LinkAudienceDisallowedReason extends VisibilityPolicyDisallowedReason - "check documentation for VisibilityPolicyDisallowedReason." - -union AlphaResolvedVisibility extends ResolvedVisibility - "check documentation for ResolvedVisibility." - -struct VisibilityPolicy - policy RequestedVisibility - "This is the value to submit when saving the visibility setting." - resolved_policy AlphaResolvedVisibility - "This is what the effective policy would be, if you selected this option. The resolved - policy is obtained after considering external effects such as shared folder settings and - team policy. This value is guaranteed to be provided." - allowed Boolean - "Whether the user is permitted to set the visibility to this policy." - disallowed_reason VisibilityPolicyDisallowedReason? - "If :field:`allowed` is :val:`false`, this will provide the reason that the user is not - permitted to set the visibility to this policy." - - example public - policy = public - resolved_policy = public - allowed = true - - example public_team - policy = public - resolved_policy = team_only - allowed = false - disallowed_reason = restricted_by_team - - example public_shared_folder - policy = public - resolved_policy = shared_folder_only - allowed = false - disallowed_reason = restricted_by_shared_folder - - example password - policy = password - resolved_policy = password - allowed = true - - example password_team - policy = password - resolved_policy = team_and_password - allowed = true - - example password_shared_folder - policy = password - resolved_policy = shared_folder_only - allowed = false - disallowed_reason = restricted_by_shared_folder - - example team_only - policy = team_only - resolved_policy = team_only - allowed = true - - example team_shared_folder - policy = team_only - resolved_policy = shared_folder_only - allowed = false - disallowed_reason = restricted_by_shared_folder diff --git a/sharing.stone b/sharing.stone index 1c8925e..81c168a 100644 --- a/sharing.stone +++ b/sharing.stone @@ -2,6 +2,2854 @@ namespace sharing "This namespace contains endpoints and data types for creating and managing shared links and shared folders." +import account_id +import async import common import files +import seen_state +import team_common +import team_policies import users +import users_common + +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 + +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" + +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 + +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 + "Email address of member." + + example default + email = "justin@example.com" + + example account + dropbox_id = "dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q" + + example group + dropbox_id = "g:98d36ed08e6290c2e9d536a392f974ee" + +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 MembershipInfo + "The information about a member of the shared content." + access_type AccessLevel + "The access type for this member. It contains inherited access type from parent folder, + and acquired access type from this folder." + 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? + "Never set." + is_inherited Boolean = false + "True if the member has access on a parent folder." + + example default + access_type = owner + permissions = [] + initials = "JD" + is_inherited = false + +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 = [] + +union InviteeInfo + "Information about the recipient of a shared content invitation." + email common.EmailAddress + "Email address of invited user." + + example default + email = "jessica@example.com" + +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." + email String + "Email address of user." + display_name String + "The display name 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" + email = "bob@example.com" + display_name = "Robert Smith" + +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 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 AccessInheritance + "Information about the inheritance policy of a shared folder." + inherit + "The shared folder inherits its members from the parent folder." + no_inherit + "The shared folder does not inherit its members from the parent folder." + +union AddFolderMemberError + access_error SharedFolderAccessError + "Unable to access shared folder." + email_unverified + "This user's email address is not verified. This functionality is only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + banned_member + "The current user has been banned." + 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 = 0 + "The value is the member limit that was reached." + too_many_pending_invites UInt64 = 0 + "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." + invalid_shared_folder + "Invalid shared folder error will be returned as an access_error." + + 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." + invalid_group + "Provided group is invalid." + unverified_dropbox_id DropboxId + "The value is the ID of the Dropbox user with an unverified email + address. Invite unverified users by email 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" + +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." + +union_closed JobStatus extends async.PollResultBase + complete + "The asynchronous job has finished." + failed JobError + "The asynchronous job returned an error." + +union ListFolderMembersContinueError + access_error SharedFolderAccessError + invalid_cursor + ":field:`ListFolderMembersContinueArg.cursor` is invalid." + +union ListFoldersContinueError + invalid_cursor + ":field:`ListFoldersContinueArg.cursor` is invalid." + +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." + must_automount + "The shared folder is not mountable by directly call APIs, instead the + automounter is responsible for mounting it." + +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." + +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." + too_many_files + "This shared folder has too many files for leaving a copy. You can + still remove this user without leaving a copy." + +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 + +union SetAccessInheritanceError + access_error SharedFolderAccessError + "Unable to access shared folder." + no_permission + "The current user does not have permission to perform this action." + + example default + no_permission = null + +union ShareFolderError extends ShareFolderErrorBase + no_permission + "The current user does not have permission to perform this action." + +union ShareFolderErrorBase + email_unverified + "This user's email address is not verified. This functionality is only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + bad_path SharePathError + ":field:`ShareFolderArg.path` is invalid." + team_policy_disallows_member_policy + "Team policy or group sharing settings are 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 ShareFolderErrorBaseV2 + email_unverified + "This user's email address is not verified. This functionality is only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + team_policy_disallows_member_policy + "Team policy or group sharing settings are 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 ShareFolderErrorV2 extends ShareFolderErrorBaseV2 + no_permission + "The current user does not have permission to perform this action." + +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 + +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." + is_vault + "We do not support sharing the Vault folder." + is_vault_locked + "We do not support sharing a folder inside a locked Vault." + is_family + "We do not support sharing the Family folder." + +union SharePathErrorBaseV2 + 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_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." + is_vault + "We do not support sharing the Vault folder." + is_vault_locked + "We do not support sharing a folder inside a locked Vault." + +union SharePathErrorV2 extends SharePathErrorBaseV2 + is_family + "We do not support sharing the Family folder." + contains_app_folder + "We do not support shared folders that contain app folders." + +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." + invalid_member + "The user does not exist or their account is disabled." + email_unverified + "Never set." + unmounted + "The shared folder is unmounted." + +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 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 email address is not verified. This functionality + is only available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + 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 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." + +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." + +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." + +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 or group sharing settings are 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." + +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." + fp_sealed_result String? + "The FingerprintJS Sealed Client Result value" + + 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? + "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 + +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 + +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 = [] + +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." + +struct ListFolderMembersArgs extends ListFolderMembersCursorArg + shared_folder_id common.SharedFolderId + "The ID for the shared folder. When path is provided, the folder ID will be extracted from the path instead." + path String? + "Optional path to get inherited members. When omitted, uses shared_folder_id to return direct members. + When provided, extracts folder ID from this path and returns users who have access through parent shared folder." + + example default + shared_folder_id = "84528192421" + actions = [] + limit = 10 + + example with_path_id + shared_folder_id = "67890" + path = "ns:67890/Documents/Folder" + actions = [] + limit = 10 + + example with_full_path + shared_folder_id = "84528192421" + path = "/Users/john/Dropbox/Documents/Folder" + actions = [] + limit = 10 + +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" + +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(max_value=1000, min_value=1) = 1000 + "The maximum number of results that include members, groups and invitees to return per request." + + example default + actions = [] + limit = 10 + +struct ListFoldersArgs + limit UInt32(max_value=1000, min_value=1) = 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 ListFoldersContinueArg + cursor String + "The cursor returned by the previous API call specified in the endpoint description." + + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +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" + +struct MountFolderArg + shared_folder_id common.SharedFolderId + "The ID of the shared folder to mount." + + example default + shared_folder_id = "84528192421" + +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. + This must be set to false when the folder is within a team folder + or another shared folder." + + example default + shared_folder_id = "84528192421" + leave_a_copy = false + +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. This must be set to false when removing a group, + or when the folder is within a team folder or another shared folder." + + example default + shared_folder_id = "84528192421" + member = default + leave_a_copy = false + +struct SetAccessInheritanceArg + access_inheritance AccessInheritance = inherit + "The access inheritance settings for the folder." + shared_folder_id common.SharedFolderId + "The ID for the shared folder." + + example default + access_inheritance = inherit + shared_folder_id = "84528192421" + +struct ShareFolderArg extends ShareFolderArgBase + 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." + + example default + path = "/example/workspace" + member_policy = team + acl_update_policy = editors + shared_link_policy = members + +struct ShareFolderArgBase + acl_update_policy AclUpdatePolicy? + "Who can add and remove members of this shared folder." + force_async Boolean = false + "Whether to force the share to happen asynchronously." + member_policy MemberPolicy? + "Who can be a member of this shared folder. Only applicable if the + current user is on a team." + path files.WritePathOrId + "The path or the file id to the folder to share. If it does not exist, + then a new one is created." + 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`." + viewer_info_policy ViewerInfoPolicy? + "Who can enable/disable viewer info for this shared folder." + access_inheritance AccessInheritance = inherit + "The access inheritance settings for the folder." + + example default + path = "/example/workspace" + +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" + +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." + access_inheritance AccessInheritance = inherit + "Whether the folder inherits its members from its parent." + folder_id files.FileId? + "The ID of the content." + + 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" + access_inheritance = inherit + folder_id = "id:a4ayc_80_OEAAAAAAAAAXw" + +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" + +struct UnmountFolderArg + shared_folder_id common.SharedFolderId + "The ID for the shared folder." + + example default + shared_folder_id = "84528192421" + +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 + +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 + +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 + + +route list_shared_links (ListSharedLinksArg, ListSharedLinksResult, ListSharedLinksError) + "List shared links of this user. + If no path is given, returns a list of all shared links for the current user. For members of + business teams using team space and member folders, returns all shared links in the team + member's home folder unless the team space ID is specified in the request header. + If a non-empty path is given, returns a list of all shared links that allow access to the + given path - direct links to the given path and links to parent folders of the given path. + Links to parent folders can be suppressed by setting direct_only to true." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "sharing.read" + select_admin_mode = "whole_team" + + +route create_shared_link (CreateSharedLinkArg, PathLinkMetadata, CreateSharedLinkError) deprecated + "Create a shared link. + If a shared link already exists for the given path, that link is returned. + Previously, it was technically possible to break a shared link by moving or + renaming the corresponding file or folder. In the future, this will no + longer be the case, so your app shouldn't rely on this behavior. Instead, if + your app needs to revoke a shared link, use revoke_shared_link. + DEPRECATED: Use create_shared_link_with_settings instead." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route get_shared_links (GetSharedLinksArg, GetSharedLinksResult, GetSharedLinksError) deprecated + "Returns a list of :type:`LinkMetadata` objects for this user, including collection links. + If no path is given, returns a list of all shared links for the current user, + including collection links, up to a maximum of 1000 links. + If a non-empty path is given, returns a list of all shared links that allow access + to the given path. Collection links are never returned in this case. + DEPRECATED: Use list_shared_links instead." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "sharing.read" + +route revoke_shared_link (RevokeSharedLinkArg, Void, RevokeSharedLinkError) + "Revoke a shared link. + Note that even after revoking a shared link to a file, the file may be accessible if there are + shared links leading to any of the file parent folders. To list all shared links that enable + access to a specific file, you can use the list_shared_links with the file as the + ListSharedLinksArg.path argument." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + + +alias PathOrId = String(min_length=1, pattern="((\/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?") + +union AddFileMemberError + "Errors for :route:`add_file_member`." + user_error SharingUserError + access_error SharingFileAccessError + rate_limit + "The user has reached the rate limit for invitations." + invalid_comment + "The custom message did not pass comment permissions checks." + banned_member + "The current user has been banned for abuse reasons." + +union FileAction + "Sharing actions that may be taken on files." + disable_viewer_info + "Disable viewer information on the file." + edit_contents + "Change or edit contents of the file." + enable_viewer_info + "Enable viewer information on the file." + invite_viewer + "Add a member with view permissions." + invite_viewer_no_comment + "Add a member with view permissions but no comment permissions." + invite_editor + "Add a member with edit permissions." + unshare + "Stop sharing this file." + relinquish_membership + "Relinquish one's own membership to the file." + share_link + "Use create_view_link and create_edit_link instead." + create_link + "Use create_view_link and create_edit_link instead." + create_view_link + "Create a shared link to a file that only allows users to view the content." + create_edit_link + "Create a shared link to a file that allows users to edit the content." + + example default + edit_contents = null + +union FileErrorResult + file_not_found_error files.Id + "File specified by id was not found." + invalid_file_action_error files.Id + "User does not have permission to take the specified action on the file." + permission_denied_error files.Id + "User does not have permission to access file specified by file.Id." + +union FileMemberActionError + invalid_member + "Specified member was not found." + no_permission + "User does not have permission to perform this action on this member." + access_error SharingFileAccessError + "Specified file was invalid or user does not have access." + no_explicit_access MemberAccessLevelResult + "The action cannot be completed because the target member does not have explicit access + to the file. The return value is the access that the member has to the file from a parent folder." + +union_closed FileMemberActionIndividualResult + success AccessLevel? + "Part of the response for both add_file_member and remove_file_member_v1 (deprecated). + For add_file_member, indicates giving access was successful and at what AccessLevel. + For remove_file_member_v1, indicates member was successfully removed from the file. If AccessLevel is given, + the member still has access via a parent shared folder." + member_error FileMemberActionError + "User was not able to perform this action." + + example default + success = null + +union FileMemberRemoveActionResult + success MemberAccessLevelResult + "Member was successfully removed from this file." + member_error FileMemberActionError + "User was not able to remove this member." + +union GetFileMetadataError + "Error result for :route:`get_file_metadata`." + user_error SharingUserError + access_error SharingFileAccessError + +union GetFileMetadataIndividualResult + metadata SharedFileMetadata + "The result for this file if it was successful." + access_error SharingFileAccessError + "The result for this file if it was an error." + + example default + metadata = default + + example file_error + access_error = invalid_file + +union ListFileMembersContinueError + "Error for :route:`list_file_members/continue`." + user_error SharingUserError + access_error SharingFileAccessError + invalid_cursor + ":field:`ListFileMembersContinueArg.cursor` is invalid." + +union ListFileMembersError + "Error for :route:`list_file_members`." + user_error SharingUserError + access_error SharingFileAccessError + +union ListFileMembersIndividualResult + result ListFileMembersCountResult + "The results of the query for this file if it was successful." + access_error SharingFileAccessError + "The result of the query for this file if it was an error." + + example default + result = default + + example file_error + access_error = invalid_file + +union ListFilesContinueError + "Error results for :route:`list_received_files/continue`." + user_error SharingUserError + "User account had a problem." + invalid_cursor + ":field:`ListFilesContinueArg.cursor` is invalid." + +union RelinquishFileMembershipError + access_error SharingFileAccessError + group_access + "The current user has access to the shared file via a group. You can't relinquish + membership to a file shared via groups." + no_permission + "The current user does not have permission to perform this action." + +union RelinquishAccessError + "Error result for the relinquish_access endpoint." + invalid_file_id + "File or folder not found or has been deleted." + email_unverified + "Caller's email address is not verified." + owner + "User is the owner of the file/folder." + no_explicit_access + "User only has inherited access from a parent folder." + group_access + "User has access only via group membership." + team_folder + "Team folder restrictions apply." + no_permission + "Caller does not have permission to perform this action. Generic fallback." + +union RemoveFileMemberError + "Errors for :route:`remove_file_member_2`." + user_error SharingUserError + access_error SharingFileAccessError + no_explicit_access MemberAccessLevelResult + "This member does not have explicit access to the file and therefore cannot be removed. + The return value is the access that a user might have to the file from a parent folder." + +union SharingFileAccessError + "User could not access this file." + no_permission + "Current user does not have sufficient privileges to perform the desired action." + invalid_file + "File specified was not found." + is_folder + "A folder can't be shared this way. Use folder sharing or a shared link instead." + inside_public_folder + "A file inside a public folder can't be shared this way. Use a public link instead." + inside_osx_package + "A Mac OS X package can't be shared this way. Use a shared link instead." + +union SharingUserError + "User account had a problem preventing this action." + email_unverified + "This user's email address is not verified. This functionality is only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + +union UnshareFileError + "Error result for :route:`unshare_file`." + user_error SharingUserError + access_error SharingFileAccessError + + example default + user_error = email_unverified + +struct AddFileMemberArgs + "Arguments for :route:`add_file_member`." + file PathOrId + "File to which to add members." + members List(MemberSelector) + "Members to add. Note that even an email address is given, this + may result in a user being directly added to the membership if that + email is the user's main account email." + custom_message String? + "Message to send to added members in their invitation." + quiet Boolean = false + "Whether added members should be notified via email and device notifications of + their invitation." + access_level AccessLevel? + "AccessLevel union object, describing what access level we want to give new members." + add_message_as_comment Boolean = false + "If the custom message should be added as a comment on the file. Only meant for Paper files." + fp_sealed_result String? + "The FingerprintJS Sealed Client Result value" + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + members = [default] + custom_message = "This is a custom message about ACME.doc" + quiet = false + access_level = viewer + +struct FileMemberActionResult + "Per-member result for :route:`add_file_member`." + member MemberSelector + "One of specified input members." + result FileMemberActionIndividualResult + "The outcome of the action on this member." + sckey_sha1 String? + "The SHA-1 encrypted shared content key." + invitation_signature List(String)? + "The sharing sender-recipient invitation signatures for the input member_id. + A member_id can be a group and thus have multiple users and multiple invitation signatures." + + example default + member = default + result = default + sckey_sha1 = "32gggb672f987b2d94ef1741616bdf37d565e8c1" + invitation_signature = ["32gggb672f987b2d94ef1741616bdf37d565e8c1:c1ce0a9ef6ggg65e6e2f43514082ea5ffefd9cf5"] + +struct FilePermission + "Whether the user is allowed to take the sharing action on the file." + action FileAction + "The action that the user may wish to take on the file." + 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 = edit_contents + allow = false + reason = user_not_same_team_as_owner + +struct GetFileMetadataArg + "Arguments of :route:`get_file_metadata`." + file PathOrId + "The file to query." + actions List(FileAction)? + "A list of `FileAction`s corresponding to `FilePermission`s that should appear in the + response's :field:`SharedFileMetadata.permissions` field describing the actions the + authenticated user can perform on the file." + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + actions = [] + +struct GetFileMetadataBatchArg + "Arguments of :route:`get_file_metadata/batch`." + files List(PathOrId, max_items=100) + "The files to query." + actions List(FileAction)? + "A list of `FileAction`s corresponding to `FilePermission`s that should appear in the + response's :field:`SharedFileMetadata.permissions` field describing the actions the + authenticated user can perform on the file." + + example default + files = ["id:3kmLmQFnf1AAAAAAAAAAAw","id:VvTaJu2VZzAAAAAAAAAADQ"] + actions = [] + +struct GetFileMetadataBatchResult + "Per file results of :route:`get_file_metadata/batch`." + file PathOrId + "This is the input file identifier corresponding to one of + :field:`GetFileMetadataBatchArg.files`." + result GetFileMetadataIndividualResult + "The result for this particular file." + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + result = default + + example file_error + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + result = file_error + +struct ListFileMembersArg + "Arguments for :route:`list_file_members`." + file PathOrId + "The file for which you want to see members." + actions List(MemberAction)? + "The actions for which to return permissions on a member." + include_inherited Boolean = true + "Whether to include members who only have access from a parent shared folder." + limit UInt32(max_value=300, min_value=1) = 100 + "Number of members to return max per query. Defaults to 100 if no limit is specified." + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + +struct ListFileMembersBatchArg + "Arguments for :route:`list_file_members/batch`." + files List(PathOrId, max_items=100) + "Files for which to return members." + limit UInt32(max_value=3000) = 1000 + "Number of members to return max per query. Defaults to 1000 if no limit is specified." + + example default + files = ["id:3kmLmQFnf1AAAAAAAAAAAw","id:VvTaJu2VZzAAAAAAAAAADQ"] + limit = 1000 + +struct ListFileMembersBatchResult + "Per-file result for :route:`list_file_members/batch`." + file PathOrId + "This is the input file identifier, whether an ID or a path." + result ListFileMembersIndividualResult + "The result for this particular file." + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + result = default + + example member_error + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + result = file_error + +struct ListFileMembersContinueArg + "Arguments for :route:`list_file_members/continue`." + cursor String + "The cursor returned by your last call to :route:`list_file_members`, + :route:`list_file_members/continue`, or :route:`list_file_members/batch`." + + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +struct ListFileMembersCountResult + members SharedFileMembers + "A list of members on this file." + member_count UInt32 + "The number of members on this file. This does not include inherited members." + + example default + members = default + member_count = 3 + +struct ListFilesArg + "Arguments for :route:`list_received_files`." + limit UInt32(max_value=300, min_value=1) = 100 + "Number of files to return max per query. Defaults to 100 if no limit + is specified." + actions List(FileAction)? + "A list of `FileAction`s corresponding to `FilePermission`s that should appear in the + response's :field:`SharedFileMetadata.permissions` field describing the actions the + authenticated user can perform on the file." + + example default + limit = 100 + actions = [] + +struct ListFilesContinueArg + "Arguments for :route:`list_received_files/continue`." + cursor String + "Cursor in :field:`ListFilesResult.cursor`." + + example default + cursor = "AzJJbGlzdF90eXBdofe9c3RPbGlzdGFyZ3NfYnlfZ2lkMRhcbric7Rdog9emfGRlc2MCRWxpbWl0BGRId" + +struct ListFilesResult + "Success results for :route:`list_received_files`." + entries List(SharedFileMetadata) + "Information about the files shared with current user." + cursor String? + "Cursor used to obtain additional shared files." + + example default + entries = [default] + cursor = "AzJJbGlzdF90eXBdofe9c3RPbGlzdGFyZ3NfYnlfZ2lkMRhcbric7Rdog9cmV2aXNpb24H3Qf6o1fkHxQ" + +struct RelinquishFileMembershipArg + file PathOrId + "The path or id for the file." + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + +struct RelinquishAccessArg + "Removes all self-removable access from a file or folder. + For folders: always relinquishes without keeping a local copy + (leave_a_copy=false behavior). If you need control over keeping + folder contents, use the relinquish_folder_membership endpoint instead." + file_id String + "The id for the file or folder." + + example default + file_id = "id:3kmLmQFnf1AAAAAAAAAAAw" + +struct RelinquishAccessResult + "Returns an empty response for the relinquish_access endpoint." + +struct RemoveFileMemberArg + "Arguments for :route:`remove_file_member_2`." + file PathOrId + "File from which to remove members." + member MemberSelector + "Member to remove from this file. Note that even if an email is + specified, it may result in the removal of a user (not an invitee) if + the user's main account corresponds to that email address." + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + member = default + +struct SharedFileMembers + "Shared file user, group, and invitee membership. + Used for the results of :route:`list_file_members` and + :route:`list_file_members/continue`, and used as part of the results + for :route:`list_file_members/batch`." + users List(UserFileMembershipInfo) + "The list of user members of the shared file." + groups List(GroupMembershipInfo) + "The list of group members of the shared file." + invitees List(InviteeMembershipInfo) + "The list of invited members of a file, but have not logged in and + claimed this." + cursor String? + "Present if there are additional shared file members that have not been returned yet. Pass + the cursor into :route:`list_file_members/continue` to list additional members." + + example default + users = [default] + groups = [default] + invitees = [default] + +struct SharedFileMetadata + "Properties of the shared file." + access_type AccessLevel? + "The current user's access level for this shared file." + id files.FileId + "The ID of the file." + expected_link_metadata ExpectedSharedContentLinkMetadata? + "The expected metadata of the link associated for the file when it is first shared. + Absent if the link already exists. This is for an unreleased feature so it may not be + returned yet." + link_metadata SharedContentLinkMetadata? + "The metadata of the link associated for the file. This is for an unreleased feature so + it may not be returned yet." + name String + "The name of this file." + owner_display_names List(String)? + "The display names of the users that own the file. If the file is part + of a team folder, the display names of the team admins are also + included. Absent if the owner display names cannot be fetched." + owner_team users.Team? + "The team that owns the file. This field is not present if the file + 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 + file is contained within a shared folder." + path_display String? + "The cased path to be used for display purposes only. In rare instances + the casing will not correctly match the user's filesystem, but this + behavior will match the path provided in the Core API v1. + Absent for unmounted files." + path_lower String? + "The lower-case full path of this file. Absent for unmounted files." + permissions List(FilePermission)? + "The sharing permissions that requesting user has on this file. This + corresponds to the entries given in :field:`GetFileMetadataBatchArg.actions` + or :field:`GetFileMetadataArg.actions`." + policy FolderPolicy + "Policies governing this shared file." + preview_url String + "URL for displaying a web preview of the shared file." + time_invited common.DropboxTimestamp? + "Timestamp indicating when the current user was invited to this shared file. If the user was + not invited to the shared file, the timestamp will indicate when the user was invited to the + parent shared folder. This value may be absent." + + example default + policy = default + permissions = [] + owner_display_names = ["Jane Doe"] + owner_team = default + preview_url = "https://www.dropbox.com/scl/fi/fir9vjelf" + path_lower = "/dir/file.txt" + path_display = "/dir/file.txt" + name = "file.txt" + id = "id:3kmLmQFnf1AAAAAAAAAAAw" + time_invited = "2016-01-20T00:00:00Z" + access_type = viewer + +struct UnshareFileArg + "Arguments for :route:`unshare_file`." + file PathOrId + "The file to unshare." + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + +struct UpdateFileMemberArgs + "Arguments for :route:`update_file_member`." + file PathOrId + "File for which we are changing a member's access." + member MemberSelector + "The member whose access we are changing." + access_level AccessLevel + "The new access level for the member." + + example default + file = "id:3kmLmQFnf1AAAAAAAAAAAw" + member = default + access_level = viewer + +struct UserFileMembershipInfo extends UserMembershipInfo + "The information about a user member of the shared content with an appended last seen timestamp." + time_last_seen common.DropboxTimestamp? + "The UTC timestamp of when the user has last seen the content. Only populated if the + user has seen the content and the caller has a plan that includes viewer history." + platform_type seen_state.PlatformType? + "The platform on which the user has last seen the content, or unknown." + + example default + user = default + access_type = owner + permissions = [] + time_last_seen = "2016-01-20T00:00:00Z" + platform_type = unknown + + +route add_file_member (AddFileMemberArgs, List(FileMemberActionResult), AddFileMemberError) + "Adds specified members to a file." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route get_file_metadata/batch (GetFileMetadataBatchArg, List(GetFileMetadataBatchResult), SharingUserError) + "Returns shared file metadata." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "team_admin" + +route list_file_members/continue (ListFileMembersContinueArg, SharedFileMembers, ListFileMembersContinueError) + "Once a cursor has been retrieved from :route:`list_file_members` or + :route:`list_file_members/batch`, use this to paginate through all shared file members." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "whole_team" + +route list_received_files (ListFilesArg, ListFilesResult, SharingUserError) + "Returns a list of all files shared with current user." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "team_admin" + +route list_received_files/continue (ListFilesContinueArg, ListFilesResult, ListFilesContinueError) + "Get more results with a cursor from :route:`list_received_files`." + + attrs + auth = "user" + scope = "sharing.read" + +route remove_file_member (RemoveFileMemberArg, FileMemberActionIndividualResult, RemoveFileMemberError) deprecated + "Identical to remove_file_member_2 but with less information returned." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route remove_file_member_2 (RemoveFileMemberArg, FileMemberRemoveActionResult, RemoveFileMemberError) + "Removes a specified member from the file." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route relinquish_file_membership (RelinquishFileMembershipArg, Void, RelinquishFileMembershipError) + "The current user relinquishes their membership in the designated file." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route relinquish_access (RelinquishAccessArg, RelinquishAccessResult, RelinquishAccessError) + "Removes all self-removable access from a file or folder for the current + user. Best-effort and idempotent: attempts to drop link-visitor associations + and explicit ACL membership." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "private:sharing.write" + select_admin_mode = "whole_team" + +route unshare_file (UnshareFileArg, Void, UnshareFileError) + "Remove all members from this file. Does not remove inherited members." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route update_file_member (UpdateFileMemberArgs, MemberAccessLevelResult, FileMemberActionError) + "Changes a member's access on a shared file." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + + +route list_file_members/batch (ListFileMembersBatchArg, List(ListFileMembersBatchResult), SharingUserError) + "Get members of multiple files at once. The arguments + to this route are more limited, and the limit on query result size per file + is more strict. To customize the results more, use the individual file + endpoint. + Inherited users and groups are not included in the result, and permissions are not + returned for this endpoint." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "whole_team" + + +alias DropboxId = String(min_length=1) + +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." + team_and_approved + "Only a teammate and approved people can become a member." + +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." + +union ViewerInfoPolicy + enabled + "Viewer information is available on this file." + disabled + "Viewer information is disabled on this file." + +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 + "Use create_view_link and create_edit_link instead." + create_link + "Use create_view_link and create_edit_link instead." + create_view_link + "Create a shared link that only allows users to view the content." + create_edit_link + "Create a shared link that allows users to edit the content." + set_access_inheritance + "Set whether the folder inherits permissions from its parent." + +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_display_names List(String)? + "The display names of the users that own the folder. If the folder is + part of a team folder, the display names of the team admins are also + included. Absent if the owner display names cannot be fetched." + 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_display String? + "The full path of this shared folder. Absent for unmounted folders." + path_lower String? + "The lower-cased full path of this shared folder. Absent for unmounted folders." + parent_folder_name String? + "Display name for the parent folder." + + example default + access_type = owner + is_inside_team_folder = false + is_team_folder = false + owner_display_names = ["Jane Doe"] + owner_team = default + parent_folder_name = "Parent Shared Folder" + + +route list_file_members (ListFileMembersArg, SharedFileMembers, ListFileMembersError) + "Use to obtain the members who have been invited to a file, both inherited + and uninherited members." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "whole_team" + + +alias GetSharedLinkFileArg = GetSharedLinkMetadataArg + +alias Id = files.Id + +alias Path = files.Path + +alias ReadPath = files.ReadPath + +alias Rev = files.Rev + +alias TeamInfo = users.Team + +union AlphaResolvedVisibility extends ResolvedVisibility + "check documentation for ResolvedVisibility." + +union CreateSharedLinkError + path files.LookupError + +union_closed CreateSharedLinkWithSettingsError + path files.LookupError + email_not_verified + "This user's email address is not verified. This functionality is only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + shared_link_already_exists SharedLinkAlreadyExistsMetadata? + "The shared link already exists. You can call :route:`list_shared_links` to get the + existing link, or use the provided metadata if it is returned. + Existing link metadata will not be returned if custom settings were specified in the request that could make the existing link incompatible with the requested settings." + settings_error SharedLinkSettingsError + "There is an error with the given settings." + access_denied + "The user is not allowed to create a shared link to the specified file. For + example, this can occur if the file is restricted or if the user's links are + :link:`banned https://help.dropbox.com/files-folders/share/banned-links`." + banned_member + "The current user has been :link:`banned https://help.dropbox.com/files-folders/share/banned-links` for abuse reasons." + too_many_shared_folders + "Your Dropbox folder will have too many shared folders after the operation. + https://help.dropbox.com/share/shared-folder-faq#Is-there-a-limit-to-the-number-of-shared-folders-I-can-create" + +union GetSharedLinkFileError extends SharedLinkError + shared_link_is_directory + "Directories cannot be retrieved by this endpoint." + +union GetSharedLinksError + path files.MalformedPathError + +union LinkAccessLevel + viewer + "Users who use the link can view and comment on the content." + editor + "Users who use the link can edit, view and comment on the content." + +union LinkAudienceDisallowedReason extends VisibilityPolicyDisallowedReason + "check documentation for VisibilityPolicyDisallowedReason." + +union ListSharedLinksError + path files.LookupError + reset + "Indicates that the cursor has been invalidated. Call + :route:`list_shared_links` to obtain a new cursor." + +union ModifySharedLinkSettingsError extends SharedLinkError + settings_error SharedLinkSettingsError + "There is an error with the given settings." + email_not_verified + "This user's email address is not verified. This functionality is only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + +union_closed PendingUploadMode + "Flag to indicate pending upload default (for linking to not-yet-existing paths)." + file + "Assume pending uploads are files." + folder + "Assume pending uploads are folders." + +union RequestedLinkAccessLevel + viewer + "Users who use the link can view and comment on the content." + editor + "Users who use the link can edit, view and comment on the content. + Note not all file types support edit links yet." + max + "Request for the maximum access level you can set the link to." + default + "Request for the default access level the user has set." + +union_closed RequestedVisibility + "The access permission that can be requested by the caller for the shared link. + Note that the final resolved visibility of the shared link takes into account other aspects, + such as team and shared folder settings. + Check the :type:`ResolvedVisibility` for more info on the possible resolved visibility values + of shared links." + public + "Anyone who has received the link can access it. No login required." + team_only + "Only members of the same team can + access the link. Login is required." + password + "A link-specific password is required to access the + link. Login is not required." + +union ResolvedVisibility extends RequestedVisibility + "The actual access permissions values of shared links after taking into account user + preferences and the team and shared folder settings. + Check the :type:`RequestedVisibility` for more info on the possible visibility values + that can be set by the shared link's owner." + team_and_password + "Only members of the same team who + have the link-specific password can access the link. Login is required." + shared_folder_only + "Only members of the shared folder containing the linked file + can access the link. Login is required." + no_one + "The link merely points the user to the content, and does not grant any additional rights. + Existing members of the content who use this link can only access the content with their + pre-existing access rights. Either on the file directly, or inherited from a parent folder." + only_you + "Only the current user can view this link." + +union RevokeSharedLinkError extends SharedLinkError + shared_link_malformed + "Shared link is malformed." + +union SharedLinkAccessFailureReason + login_required + "User is not logged in." + email_verify_required + "This user's email address is not verified. This functionality is only + available on accounts with a verified email address. Users can verify + their email address :link:`here https://www.dropbox.com/help/317`." + password_required + "The link is password protected." + team_only + "Access is allowed for team members only." + owner_only + "Access is allowed for the shared link's owner only." + +union SharedLinkAlreadyExistsMetadata + metadata SharedLinkMetadata + "Metadata of the shared link that already exists." + +union SharedLinkError + shared_link_not_found + "The shared link wasn't found." + shared_link_access_denied + "The caller is not allowed to access this shared link." + unsupported_link_type + "This type of link is not supported; use :route:`files.export` instead." + unsupported_parameter_field + "Private shared links do not support `path` or `link_password` parameter fields." + +union SharedLinkMetadataError extends SharedLinkError + "The potential errors for a call to get_shared_link_metadata." + +union_closed SharedLinkSettingsError + invalid_settings + "The given settings are invalid + (for example, all attributes of the :type:`SharedLinkSettings` are empty, + the requested visibility is :field:`RequestedVisibility.password` but the + :field:`SharedLinkSettings.link_password` is missing, :field:`SharedLinkSettings.expires` + is set to the past, etc.)." + not_authorized + "User is not allowed to modify the settings of this link. Note that basic + users can only set :field:`RequestedVisibility.public` + as the :field:`SharedLinkSettings.requested_visibility` and cannot + set :field:`SharedLinkSettings.expires`." + +union Visibility + "Who can access a shared link. + The most open visibility is :field:`public`. + The default depends on many aspects, such as team and user + preferences and shared folder settings." + public + "Anyone who has received the link can access it. No login required." + team_only + "Only members of the same team can + access the link. Login is required." + password + "A link-specific password is required to access the + link. Login is not required." + team_and_password + "Only members of the same team who + have the link-specific password can access the link." + shared_folder_only + "Only members of the shared folder containing the linked file + can access the link. Login is required." + +union VisibilityPolicyDisallowedReason + delete_and_recreate + "The user needs to delete and recreate the link to change the visibility policy." + restricted_by_shared_folder + "The parent shared folder restricts sharing of links outside the shared folder. To change + the visibility policy, remove the restriction from the parent shared folder." + restricted_by_team + "The team policy prevents links being shared outside the team." + user_not_on_team + "The user needs to be on a team to set this policy." + user_account_type + "The user is a basic user or is on a limited team." + permission_denied + "The user does not have permission." + +union ChangeLinkExpirationPolicy + "Enumerates acceptable values for team's ChangeLinkExpirationPolicy setting." + allowed + not_allowed + +struct LinkMetadata + "Metadata for a shared link. This can be either a + :type:`PathLinkMetadata` or :type:`CollectionLinkMetadata`." + union + path PathLinkMetadata + collection CollectionLinkMetadata + url String + "URL of the shared link." + visibility Visibility + "Who can access the link." + expires common.DropboxTimestamp? + "Expiration time, if set. By default the link won't expire." + + example default + path = default + +struct SharedLinkMetadata + "The metadata of a shared link." + union + file FileLinkMetadata + folder FolderLinkMetadata + url String + "URL of the shared link." + id Id? + "A unique identifier for the linked file." + name String + "The linked file name (including extension). + This never contains a slash." + expires common.DropboxTimestamp? + "Expiration time, if set. By default the link won't expire." + path_lower String? + "The lowercased full path in the user's Dropbox. This always starts with a slash. + This field will only be present only if the linked file is in the authenticated user's + dropbox and the user is the owner of the link." + link_permissions LinkPermissions + "The link's access permissions." + team_member_info TeamMemberInfo? + "The team membership information of the link's owner. This field will only be present + if the link's owner is a team member." + content_owner_team_info TeamInfo? + "The team information of the content's owner. This field will only be present if + the content's owner is a team member and the content's owner team is different from the + link's owner team." + + example default + file = default + + example folder_link_metadata + folder = default + +struct CollectionLinkMetadata extends LinkMetadata + "Metadata for a collection-based shared link." + + example default + url = "https://www.dropbox.com/sh/s6fvw6ol7rmqo1x/AAAgWRSbjmYDvPpDB30Sykjfa?dl=0" + expires = null + visibility = public + +struct CreateSharedLinkArg + path String + "The path to share." + short_url Boolean = false + pending_upload PendingUploadMode? + "If it's okay to share a path that does not yet exist, set this to + either :field:`PendingUploadMode.file` or :field:`PendingUploadMode.folder` + to indicate whether to assume it's a file or folder." + + example default + path = "/Homework/Math/Prime_Numbers.txt" + +struct CreateSharedLinkWithSettingsArg + path ReadPath + "The path to be shared by the shared link." + settings SharedLinkSettings? + "The requested settings for the newly created shared link." + + example default + path = "/Prime_Numbers.txt" + settings = default + +struct FileLinkMetadata extends SharedLinkMetadata + "The metadata of a file shared link." + client_modified common.DropboxTimestamp + "The modification time set by the desktop client + when the file was added to Dropbox. Since this time is not verified + (the Dropbox server stores whatever the desktop client sends up), this + should only be used for display purposes (such as sorting) and not, + for example, to determine if a file has changed or not." + server_modified common.DropboxTimestamp + "The last time the file was modified on Dropbox." + rev Rev + "A unique identifier for the current revision of a file. This field is + the same rev as elsewhere in the API and can be used to detect changes + and avoid conflicts." + size UInt64 + "The file size in bytes." + + example default + url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" + id = "id:a4ayc_80_OEAAAAAAAAAXw" + name = "Prime_Numbers.txt" + path_lower = "/homework/math/prime_numbers.txt" + link_permissions = default + team_member_info = default + client_modified = "2015-05-12T15:50:38Z" + server_modified = "2015-05-12T15:50:38Z" + rev = "a1c10ce0dd78" + size = 7212 + +struct FolderLinkMetadata extends SharedLinkMetadata + "The metadata of a folder shared link." + + example default + url = "https://www.dropbox.com/sh/s6fvw6ol7rmqo1x/AAAgWRSbjmYDvPpDB30Sykjfa?dl=0" + id = "id:a4ayc_80_OEAAAAAAAAAXw" + name = "Math" + path_lower = "/homework/math" + team_member_info = default + link_permissions = default + +struct GetSharedLinkMetadataArg + url String + "URL of the shared link." + path Path? + "If the shared link is to a folder, this parameter can be used to retrieve the metadata for + a specific file or sub-folder in this folder. A relative path should be used." + link_password String? + "If the shared link has a password, this parameter can be used." + + example default + url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" + path = "/Prime_Numbers.txt" + +struct GetSharedLinksArg + path String? + "See :route:`get_shared_links` description." + + example default + path = "" + + example math_homework_links + path = "/Homework/Math" + +struct GetSharedLinksResult + links List(LinkMetadata) + "Shared links applicable to the path argument." + + example default + links = [default] + +struct LinkAudienceOption + audience LinkAudience + "Specifies who can access the link." + allowed Boolean + "Whether the user calling this API can select this audience option." + disallowed_reason LinkAudienceDisallowedReason? + "If :field:`allowed` is :val:`false`, this will provide the reason that the user is not + permitted to set the visibility to this policy." + + example public + audience = public + allowed = true + + example team + audience = team + allowed = false + + example no_one + audience = no_one + allowed = true + +struct LinkPermissions + resolved_visibility ResolvedVisibility? + "The current visibility of the link after considering the shared links policies of the + the team (in case the link's owner is part of a team) and the shared folder (in case the + linked file is part of a shared folder). This field is shown only if the caller has access + to this info (the link's owner always has access to this data). For some links, an + effective_audience value is returned instead." + requested_visibility RequestedVisibility? + "The shared link's requested visibility. This can be overridden by the team and shared + folder policies. The final visibility, after considering these policies, can be found in + :field:`resolved_visibility`. This is shown only if the caller is the link's + owner and resolved_visibility is returned instead of effective_audience." + can_revoke Boolean + "Whether the caller can revoke the shared link." + revoke_failure_reason SharedLinkAccessFailureReason? + "The failure reason for revoking the link. This field will only be present if the + :field:`can_revoke` is :val:`false`." + effective_audience LinkAudience? + "The type of audience who can benefit from the access level specified by the + `link_access_level` field." + link_access_level LinkAccessLevel? + "The access level that the link will grant to its users. A link can grant additional rights + to a user beyond their current access level. For example, if a user was invited as a viewer + to a file, and then opens a link with `link_access_level` set to `editor`, then they will + gain editor privileges. The `link_access_level` is a property of the link, and does not + depend on who is calling this API. In particular, `link_access_level` does not take into + account the API caller's current permissions to the content." + visibility_policies List(VisibilityPolicy) + "A list of policies that the user might be able to set for the visibility." + can_set_expiry Boolean + "Whether the user can set the expiry settings of the link. This refers to the ability to + create a new expiry and modify an existing expiry." + can_remove_expiry Boolean + "Whether the user can remove the expiry of the link." + allow_download Boolean + "Whether the link can be downloaded or not." + can_allow_download Boolean + "Whether the user can allow downloads via the link. This refers to the ability to remove a + no-download restriction on the link." + can_disallow_download Boolean + "Whether the user can disallow downloads via the link. This refers to the ability to impose + a no-download restriction on the link." + allow_comments Boolean + "Whether comments are enabled for the linked file. This takes the team commenting policy into account." + team_restricts_comments Boolean + "Whether the team has disabled commenting globally." + audience_options List(LinkAudienceOption)? + "A list of link audience options the user might be able to set as the new audience." + can_set_password Boolean? + "Whether the user can set a password for the link." + can_remove_password Boolean? + "Whether the user can remove the password of the link." + require_password Boolean? + "Whether the user is required to provide a password to view the link." + can_use_extended_sharing_controls Boolean? + "Whether the user can use extended sharing controls, based on their account type." + can_sync Boolean? + "Whether a user can save the content to their Dropbox account." + can_request_access Boolean? + "Whether the user can request access to the content." + enforce_shared_link_password_policy team_policies.EnforceLinkPasswordPolicy? + "Whether the updated externally available shared link must have password set. + Not provided if the link is not team owned." + days_to_expire_policy team_policies.DefaultLinkExpirationDaysPolicy? + "Existing owning team's policy for default number of days from today to link's expiration. + Not provided if the link is not team owned." + change_shared_link_expiration_policy ChangeLinkExpirationPolicy? + "When owning team's policy :field:`change_shared_link_expiration_policy` is :field:`ChangeLinkExpirationPolicy.not_allowed`, + the updated externally available shared link expiration value cannot be less strict + than :field:`days_to_expire_policy`. + In this case :field:`days_to_expire_policy` is expected to be different from `none`. + Not provided if the link is not team owned." + + example default + resolved_visibility = public + can_revoke = false + revoke_failure_reason = owner_only + visibility_policies = [public, password] + can_set_expiry = false + can_remove_expiry = false + allow_download = true + can_allow_download = true + can_disallow_download = false + allow_comments = true + team_restricts_comments = true + audience_options = [public, team, no_one] + can_set_password = true + can_remove_password = true + require_password = false + can_use_extended_sharing_controls = false + +struct ListSharedLinksArg + path ReadPath? + "See :route:`list_shared_links` description." + cursor String? + "The cursor returned by your last call to :route:`list_shared_links`." + direct_only Boolean? + "See :route:`list_shared_links` description." + + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + + example path + path = "/Homework/Math" + + example id + path = "id:a4ayc_80_OEAAAAAAAAAYa" + + example rev + path = "rev:a1c10ce0dd78" + + example id_no_parent_links + path = "id:a4ayc_80_OEAAAAAAAAAYa" + direct_only = true + +struct ListSharedLinksResult + links List(SharedLinkMetadata) + "Shared links applicable to the path argument." + has_more Boolean + "Is true if there are additional shared links that have not been returned + yet. Pass the cursor into :route:`list_shared_links` to retrieve them." + cursor String? + "Pass the cursor into :route:`list_shared_links` to obtain the additional links. Cursor is + returned only if no path is given." + + example default + links = [default] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = true + +struct ModifySharedLinkSettingsArgs + url String + "URL of the shared link to change its settings." + settings SharedLinkSettings + "Set of settings for the shared link." + remove_expiration Boolean = false + "If set to true, removes the expiration of the shared link." + + example default + url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" + settings = default + +struct PathLinkMetadata extends LinkMetadata + "Metadata for a path-based shared link." + path String + "Path in user's Dropbox." + + example default + url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" + path = "/Homework/Math/Prime_Numbers.txt" + expires = null + visibility = public + +struct RevokeSharedLinkArg + url String + "URL of the shared link." + + example default + url = "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0" + +struct SharedLinkSettings + require_password Boolean? + "Boolean flag to enable or disable password protection." + link_password String? + "If :field:`require_password` is true, this is needed + to specify the password to access the link." + expires common.DropboxTimestamp? + "Expiration time of the shared link. By default the link won't expire." + audience LinkAudience? + "The new audience who can benefit from the access level specified by the link's access level + specified in the `link_access_level` field of `LinkPermissions`. This is used in conjunction + with team policies and shared folder policies to determine the final effective audience type + in the `effective_audience` field of `LinkPermissions." + access RequestedLinkAccessLevel? + "Requested access level you want the audience to gain from this link. Note, modifying access + level for an existing link is not supported." + requested_visibility RequestedVisibility? + "Use :field:`audience` instead. The requested access for this shared link." + allow_download Boolean? + "Boolean flag to allow or not download capabilities for shared links." + + example default + requested_visibility = public + audience = public + access = viewer + allow_download = true + +struct TeamMemberInfo + "Information about a team member." + team_info TeamInfo + "Information about the member's team." + display_name String + "The display name of the user." + member_id String? + "ID of user as a member of a team. This field will only be present if the member is in the + same team as current user." + + example default + team_info = default + display_name = "Roger Rabbit" + member_id = "dbmid:abcd1234" + +struct VisibilityPolicy + policy RequestedVisibility + "This is the value to submit when saving the visibility setting." + resolved_policy AlphaResolvedVisibility + "This is what the effective policy would be, if you selected this option. The resolved + policy is obtained after considering external effects such as shared folder settings and + team policy. This value is guaranteed to be provided." + allowed Boolean + "Whether the user is permitted to set the visibility to this policy." + disallowed_reason VisibilityPolicyDisallowedReason? + "If :field:`allowed` is :val:`false`, this will provide the reason that the user is not + permitted to set the visibility to this policy." + + example public + policy = public + resolved_policy = public + allowed = true + + example public_team + policy = public + resolved_policy = team_only + allowed = false + disallowed_reason = restricted_by_team + + example public_shared_folder + policy = public + resolved_policy = shared_folder_only + allowed = false + disallowed_reason = restricted_by_shared_folder + + example password + policy = password + resolved_policy = password + allowed = true + + example password_team + policy = password + resolved_policy = team_and_password + allowed = true + + example password_shared_folder + policy = password + resolved_policy = shared_folder_only + allowed = false + disallowed_reason = restricted_by_shared_folder + + example team_only + policy = team_only + resolved_policy = team_only + allowed = true + + example team_shared_folder + policy = team_only + resolved_policy = shared_folder_only + allowed = false + disallowed_reason = restricted_by_shared_folder + + +union LinkExpiry + remove_expiry + "Remove the currently set expiry for the link." + set_expiry common.DropboxTimestamp + "Set a new expiry or change an existing expiry." + +union LinkPassword + remove_password + "Remove the currently set password for the link." + set_password String + "Set a new password or change an existing password." + +union LinkAudience + public + "Link is accessible by anyone." + team + "Link is accessible only by team members." + no_one + "The link can be used by no one. The link merely points the user to the content, and does + not grant additional rights to the user. Members of the content who use this link can only + access the content with their pre-existing access rights." + password + "Use `require_password` instead. A link-specific password is required to access the + link. Login is not required." + members + "Link is accessible only by members of the content." + +union LinkAction + "Actions that can be performed on a link." + change_access_level + "Change the access level of the link." + change_audience + "Change the audience of the link." + remove_expiry + "Remove the expiry date of the link." + remove_password + "Remove the password of the link." + set_expiry + "Create or modify the expiry date of the link." + set_password + "Create or modify the password of the link." + +struct LinkSettings + "Settings that apply to a link." + access_level AccessLevel? + "The access level on the link for this file. Currently, + it only accepts 'viewer' and 'viewer_no_comment'." + audience LinkAudience? + "The type of audience on the link for this file." + expiry LinkExpiry? + "An expiry timestamp to set on a link." + password LinkPassword? + "The password for the link." + +struct LinkPermission + "Permissions for actions that can be performed on a link." + action LinkAction + allow Boolean + reason PermissionDeniedReason? + + example default + action = change_audience + allow = true + +struct SharedContentLinkMetadataBase + access_level AccessLevel? + "The access level on the link for this file." + audience_options List(LinkAudience) + "The audience options that are available for the content. Some audience options may be + unavailable. For example, team_only may be unavailable if the content is not owned by a + user on a team. The 'default' audience option is always available if the user can modify + link settings." + audience_restricting_shared_folder AudienceRestrictingSharedFolder? + "The shared folder that prevents the link audience for this link from being more + restrictive." + current_audience LinkAudience + "The current audience of the link." + expiry common.DropboxTimestamp? + "Whether the link has an expiry set on it. A link with an expiry will have its + audience changed to members when the expiry is reached." + link_permissions List(LinkPermission) + "A list of permissions for actions you can perform on the link." + password_protected Boolean + "Whether the link is protected by a password." + +struct SharedContentLinkMetadata extends SharedContentLinkMetadataBase + "Metadata of a shared link for a file or folder." + audience_exceptions AudienceExceptions? + "The content inside this folder with link audience different than this folder's. This is + only returned when an endpoint that returns metadata for a single shared folder is called, + e.g. /get_folder_metadata." + url String + "The URL of the link." + + example default + audience_options = [public, team, members] + current_audience = public + link_permissions = [default] + password_protected = false + url = "" + +struct ExpectedSharedContentLinkMetadata extends SharedContentLinkMetadataBase + "The expected metadata of a shared link for a file or folder when a link is first created for + the content. Absent if the link already exists." + + example default + audience_options = [public, team, members] + current_audience = public + link_permissions = [default] + password_protected = false + +struct AudienceRestrictingSharedFolder + "Information about the shared folder that prevents the link audience for this link from being + more restrictive." + shared_folder_id common.SharedFolderId + "The ID of the shared folder." + name String + "The name of the shared folder." + audience LinkAudience + "The link audience of the shared folder." + +struct AudienceExceptions + "The total count and truncated list of information of content inside this folder that has a + different audience than the link on this folder. This is only returned for folders." + count UInt32 + exceptions List(AudienceExceptionContentInfo) + "A truncated list of some of the content that is an exception. The length of this list could + be smaller than the count since it is only a sample but will not be empty as long as + count is not 0." + + example default + count = 0 + exceptions = [] + +struct AudienceExceptionContentInfo + "Information about the content that has a link audience different than that of this folder." + name String + "The name of the content, which is either a file or a folder." + + example default + name = "sample file name" + + +route get_shared_link_file (GetSharedLinkFileArg, SharedLinkMetadata, GetSharedLinkFileError) + "Download the shared link's file from a user's Dropbox. + This is a download-style endpoint that returns the file content." + + attrs + allow_app_folder_app = true + auth = "app, user" + host = "content" + scope = "sharing.read" + style = "download" + + +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." + traverse + "The collaborator can only view the shared folder that they have + access to." + no_access + "If there is a Righteous Link on the folder which grants access + and the user has visited such link, they are allowed to perform + certain action (i.e. add themselves to the folder) via the link + access even though the user themselves are not a member on the + shared folder yet." + +struct InsufficientPlan + message String + "A message to tell the user to upgrade in order to support expected action." + upsell_url String? + "A URL to send the user to in order to obtain the account type they need, e.g. upgrading. + Absent if there is no action the user can take to upgrade." + +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." + restricted_by_parent_folder + "Policy cannot be changed due to restrictions from parent folder." + insufficient_plan InsufficientPlan + + +route create_shared_link_with_settings (CreateSharedLinkWithSettingsArg, SharedLinkMetadata, CreateSharedLinkWithSettingsError) + "Create a shared link with custom settings. + If no settings are given then the default visibility is RequestedVisibility.public + (The resolved visibility, though, may depend on other aspects such as team and shared folder + settings)." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route get_shared_link_metadata (GetSharedLinkMetadataArg, SharedLinkMetadata, SharedLinkMetadataError) + "Get the shared link's metadata." + + attrs + allow_app_folder_app = true + auth = "app, user" + scope = "sharing.read" + +route modify_shared_link_settings (ModifySharedLinkSettingsArgs, SharedLinkMetadata, ModifySharedLinkSettingsError) + "Modify the shared link's settings. + If the requested visibility conflict with the shared links policy of the team or the + shared folder (in case the linked file is part of a shared folder) then the + LinkPermissions.resolved_visibility of the returned SharedLinkMetadata will + reflect the actual visibility of the shared link and the + LinkPermissions.requested_visibility will reflect the requested visibility." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "sharing.write" + + +route get_file_metadata (GetFileMetadataArg, SharedFileMetadata, GetFileMetadataError) + "Returns shared file metadata." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "team_admin" + + +route get_folder_metadata (GetMetadataArgs, SharedFolderMetadata, SharedFolderAccessError) + "Returns shared folder metadata by its folder ID." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "whole_team" + +route list_folder_members (ListFolderMembersArgs, SharedFolderMembers, SharedFolderAccessError) + "Returns shared folder membership by its folder ID." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "whole_team" + +route list_mountable_folders (ListFoldersArgs, ListFoldersResult, Void) + "Return the list of all shared folders the current user can mount or unmount." + + attrs + auth = "user" + scope = "sharing.read" + + +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." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route check_job_status (async.PollArg, JobStatus, async.PollError) + "Returns the status of an asynchronous job." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route check_remove_member_job_status (async.PollArg, RemoveMemberJobStatus, async.PollError) + "Returns the status of an asynchronous job for sharing a folder." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route check_share_job_status (async.PollArg, ShareFolderJobStatus, async.PollError) + "Returns the status of an asynchronous job for sharing a folder." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +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." + + attrs + auth = "user" + scope = "sharing.read" + select_admin_mode = "whole_team" + +route list_folders (ListFoldersArgs, ListFoldersResult, Void) + "Return the list of all shared folders the current user has access to." + + attrs + auth = "user" + scope = "sharing.read" + +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`." + + attrs + auth = "user" + scope = "sharing.read" + +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`." + + attrs + auth = "user" + scope = "sharing.read" + +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." + + attrs + auth = "user" + scope = "sharing.write" + +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." + + attrs + auth = "user" + scope = "sharing.write" + +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." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route set_access_inheritance (SetAccessInheritanceArg, ShareFolderLaunch, SetAccessInheritanceError) + "Change the inheritance policy of an existing Shared Folder. Only permitted for shared folders in a shared team root. + 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." + + attrs + auth = "user" + scope = "sharing.write" + +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." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +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." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +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`." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route unshare_folder (UnshareFolderArg, async.LaunchEmptyResult, UnshareFolderError) + "Allows a shared folder owner to unshare the folder. + Unshare will not work in following cases: + The shared folder contains shared folders OR the shared folder is inside another shared folder. + You'll need to call :route:`check_job_status` to determine if the action has + completed successfully." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +route update_folder_member (UpdateFolderMemberArg, MemberAccessLevelResult, UpdateFolderMemberError) + "Allows an owner or editor of a shared folder to update another member's + permissions." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + +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." + + attrs + auth = "user" + scope = "sharing.write" + select_admin_mode = "team_admin" + diff --git a/sharing_files.stone b/sharing_files.stone deleted file mode 100644 index d8b6123..0000000 --- a/sharing_files.stone +++ /dev/null @@ -1,707 +0,0 @@ -namespace sharing - -import common -import files -import users -import seen_state - -alias PathOrId = String(pattern="((\/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?", min_length=1) - -########################################### -# Generic route error related definitions # -########################################### - -union SharingUserError - "User account had a problem preventing this action." - email_unverified - "This user's email address is not verified. This functionality is only - available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - -union SharingFileAccessError - "User could not access this file." - - no_permission - "Current user does not have sufficient privileges to perform the desired action." - invalid_file - "File specified was not found." - is_folder - "A folder can't be shared this way. Use folder sharing or a shared link instead." - inside_public_folder - "A file inside a public folder can't be shared this way. Use a public link instead." - inside_osx_package - "A Mac OS X package can't be shared this way. Use a shared link instead." - - -union FileErrorResult - file_not_found_error files.Id - "File specified by id was not found." - invalid_file_action_error files.Id - "User does not have permission to take the specified action on the file." - permission_denied_error files.Id - "User does not have permission to access file specified by file.Id." - -############################################# -# File metadata and permissions definitions # -############################################# - -union FileAction - "Sharing actions that may be taken on files." - - disable_viewer_info - "Disable viewer information on the file." - - edit_contents - "Change or edit contents of the file." - - enable_viewer_info - "Enable viewer information on the file." - - invite_viewer - "Add a member with view permissions." - - invite_viewer_no_comment - "Add a member with view permissions but no comment permissions." - - invite_editor - "Add a member with edit permissions." - - unshare - "Stop sharing this file." - - relinquish_membership - "Relinquish one's own membership to the file." - - share_link - "Use create_view_link and create_edit_link instead." - - create_link - "Use create_view_link and create_edit_link instead." - - create_view_link - "Create a shared link to a file that only allows users to view the content." - - create_edit_link - "Create a shared link to a file that allows users to edit the content." - - example default - edit_contents = null - -struct FilePermission - "Whether the user is allowed to take the sharing action on the file." - - action FileAction - "The action that the user may wish to take on the file." - 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 = edit_contents - allow = false - reason = user_not_same_team_as_owner - -struct SharedFileMetadata - "Properties of the shared file." - - access_type AccessLevel? - "The current user's access level for this shared file." - - id files.FileId - "The ID of the file." - - expected_link_metadata ExpectedSharedContentLinkMetadata? - "The expected metadata of the link associated for the file when it is first shared. - Absent if the link already exists. This is for an unreleased feature so it may not be - returned yet." - - link_metadata SharedContentLinkMetadata? - "The metadata of the link associated for the file. This is for an unreleased feature so - it may not be returned yet." - - name String - "The name of this file." - - owner_display_names List(String)? - "The display names of the users that own the file. If the file is part - of a team folder, the display names of the team admins are also - included. Absent if the owner display names cannot be fetched." - - owner_team users.Team? - "The team that owns the file. This field is not present if the file - 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 - file is contained within a shared folder." - - path_display String? - "The cased path to be used for display purposes only. In rare instances - the casing will not correctly match the user's filesystem, but this - behavior will match the path provided in the Core API v1. - Absent for unmounted files." - - path_lower String? - "The lower-case full path of this file. Absent for unmounted files." - - permissions List(FilePermission)? - "The sharing permissions that requesting user has on this file. This - corresponds to the entries given in :field:`GetFileMetadataBatchArg.actions` - or :field:`GetFileMetadataArg.actions`." - - policy FolderPolicy - "Policies governing this shared file." - - preview_url String - "URL for displaying a web preview of the shared file." - - time_invited common.DropboxTimestamp? - "Timestamp indicating when the current user was invited to this shared file. If the user was - not invited to the shared file, the timestamp will indicate when the user was invited to the - parent shared folder. This value may be absent." - - - example default - policy = default - permissions = [] - owner_display_names = ["Jane Doe"] - owner_team = default - preview_url = "https://www.dropbox.com/scl/fi/fir9vjelf" - path_lower = "/dir/file.txt" - path_display = "/dir/file.txt" - name = "file.txt" - id = "id:3kmLmQFnf1AAAAAAAAAAAw" - time_invited = "2016-01-20T00:00:00Z" - access_type = viewer - -union ViewerInfoPolicy - enabled - "Viewer information is available on this file." - disabled - "Viewer information is disabled on this file." - -################################## -# File membership mutation types # -################################## - -struct FileMemberActionResult - "Per-member result for :route:`add_file_member`." - - member MemberSelector - "One of specified input members." - result FileMemberActionIndividualResult - "The outcome of the action on this member." - sckey_sha1 String? - "The SHA-1 encrypted shared content key." - invitation_signature List(String)? - "The sharing sender-recipient invitation signatures for the input member_id. - A member_id can be a group and thus have multiple users and multiple invitation signatures." - - example default - member = default - result = default - sckey_sha1 = "32gggb672f987b2d94ef1741616bdf37d565e8c1" - invitation_signature = ["32gggb672f987b2d94ef1741616bdf37d565e8c1:c1ce0a9ef6ggg65e6e2f43514082ea5ffefd9cf5"] - -union_closed FileMemberActionIndividualResult - success AccessLevel? - "Part of the response for both add_file_member and remove_file_member_v1 (deprecated). - For add_file_member, indicates giving access was successful and at what AccessLevel. - For remove_file_member_v1, indicates member was successfully removed from the file. If AccessLevel is given, - the member still has access via a parent shared folder." - member_error FileMemberActionError - "User was not able to perform this action." - - example default - success = null - -union FileMemberRemoveActionResult - success MemberAccessLevelResult - "Member was successfully removed from this file." - member_error FileMemberActionError - "User was not able to remove this member." - -union AddFileMemberError - "Errors for :route:`add_file_member`." - user_error SharingUserError - access_error SharingFileAccessError - rate_limit - "The user has reached the rate limit for invitations." - invalid_comment - "The custom message did not pass comment permissions checks." - -union RemoveFileMemberError - "Errors for :route:`remove_file_member_2`." - user_error SharingUserError - access_error SharingFileAccessError - no_explicit_access MemberAccessLevelResult - "This member does not have explicit access to the file and therefore cannot be removed. - The return value is the access that a user might have to the file from a parent folder." - -union FileMemberActionError - invalid_member - "Specified member was not found." - no_permission - "User does not have permission to perform this action on this member." - access_error SharingFileAccessError - "Specified file was invalid or user does not have access." - no_explicit_access MemberAccessLevelResult - "The action cannot be completed because the target member does not have explicit access - to the file. The return value is the access that the member has to the file from a parent folder." - -##################### -# Route Definitions # -##################### - -route add_file_member(AddFileMemberArgs, List(FileMemberActionResult), AddFileMemberError) - "Adds specified members to a file." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -struct AddFileMemberArgs - "Arguments for :route:`add_file_member`." - - file PathOrId - "File to which to add members." - - members List(MemberSelector) - "Members to add. Note that even an email address is given, this - may result in a user being directly added to the membership if that - email is the user's main account email." - - custom_message String? - "Message to send to added members in their invitation." - - quiet Boolean = false - "Whether added members should be notified via email and device notifications of - their invitation." - - access_level AccessLevel = viewer - "AccessLevel union object, describing what access level we want to give new members." - - add_message_as_comment Boolean = false - "If the custom message should be added as a comment on the file." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - members = [default] - custom_message = "This is a custom message about ACME.doc" - quiet = false - access_level = viewer - -# -- - -struct UpdateFileMemberArgs - "Arguments for :route:`update_file_member`." - - file PathOrId - "File for which we are changing a member's access." - member MemberSelector - "The member whose access we are changing." - access_level AccessLevel - "The new access level for the member." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - member = default - access_level = viewer - -route update_file_member(UpdateFileMemberArgs, MemberAccessLevelResult, FileMemberActionError) - "Changes a member's access on a shared file." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -# -- - -route get_file_metadata(GetFileMetadataArg, SharedFileMetadata, GetFileMetadataError) - "Returns shared file metadata." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.read" - -struct GetFileMetadataArg - "Arguments of :route:`get_file_metadata`." - - file PathOrId - "The file to query." - actions List(FileAction)? - "A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - response's :field:`SharedFileMetadata.permissions` field describing the actions the - authenticated user can perform on the file." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - actions = [] - -union GetFileMetadataError - "Error result for :route:`get_file_metadata`." - - user_error SharingUserError - access_error SharingFileAccessError - -# -- - -route get_file_metadata/batch(GetFileMetadataBatchArg, List(GetFileMetadataBatchResult), SharingUserError) - "Returns shared file metadata." - - attrs - scope = "sharing.read" - -struct GetFileMetadataBatchArg - "Arguments of :route:`get_file_metadata/batch`." - - files List(PathOrId, max_items=100) - "The files to query." - actions List(FileAction)? - "A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - response's :field:`SharedFileMetadata.permissions` field describing the actions the - authenticated user can perform on the file." - - example default - files = ["id:3kmLmQFnf1AAAAAAAAAAAw","id:VvTaJu2VZzAAAAAAAAAADQ"] - actions = [] - -struct GetFileMetadataBatchResult - "Per file results of :route:`get_file_metadata/batch`." - - file PathOrId - "This is the input file identifier corresponding to one of - :field:`GetFileMetadataBatchArg.files`." - result GetFileMetadataIndividualResult - "The result for this particular file." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - result = default - - example file_error - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - result = file_error - -union GetFileMetadataIndividualResult - metadata SharedFileMetadata - "The result for this file if it was successful." - access_error SharingFileAccessError - "The result for this file if it was an error." - - example default - metadata = default - - example file_error - access_error = invalid_file - -# -- - -route list_file_members(ListFileMembersArg, SharedFileMembers, ListFileMembersError) - "Use to obtain the members who have been invited to a file, both inherited - and uninherited members." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.read" - -struct ListFileMembersArg - "Arguments for :route:`list_file_members`." - - file PathOrId - "The file for which you want to see members." - actions List(MemberAction)? - "The actions for which to return permissions on a member." - include_inherited Boolean = true - "Whether to include members who only have access from a parent shared folder." - limit UInt32(min_value=1, max_value=300) = 100 - "Number of members to return max per query. Defaults to 100 if no limit is specified." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - -struct SharedFileMembers - "Shared file user, group, and invitee membership. - - Used for the results of :route:`list_file_members` and - :route:`list_file_members/continue`, and used as part of the results - for :route:`list_file_members/batch`." - - users List(UserFileMembershipInfo) - "The list of user members of the shared file." - groups List(GroupMembershipInfo) - "The list of group members of the shared file." - invitees List(InviteeMembershipInfo) - "The list of invited members of a file, but have not logged in and - claimed this." - cursor String? - "Present if there are additional shared file members that have not been returned yet. Pass - the cursor into :route:`list_file_members/continue` to list additional members." - - example default - users = [default] - groups = [default] - invitees = [default] - -union ListFileMembersError - "Error for :route:`list_file_members`." - - user_error SharingUserError - access_error SharingFileAccessError - -struct UserFileMembershipInfo extends UserMembershipInfo - "The information about a user member of the shared content with an appended last seen timestamp." - - time_last_seen common.DropboxTimestamp? - "The UTC timestamp of when the user has last seen the content. Only populated if the - user has seen the content and the caller has a plan that includes viewer history." - platform_type seen_state.PlatformType? - "The platform on which the user has last seen the content, or unknown." - - example default - user = default - access_type = owner - permissions = [] - time_last_seen = "2016-01-20T00:00:00Z" - platform_type = unknown - -# -- - -route list_file_members/batch(ListFileMembersBatchArg, List(ListFileMembersBatchResult), SharingUserError) - "Get members of multiple files at once. The arguments - to this route are more limited, and the limit on query result size per file - is more strict. To customize the results more, use the individual file - endpoint. - - Inherited users and groups are not included in the result, and permissions are not - returned for this endpoint." - - attrs - scope = "sharing.read" - -struct ListFileMembersBatchArg - "Arguments for :route:`list_file_members/batch`." - - files List(PathOrId, max_items=100) - "Files for which to return members." - limit UInt32(max_value=20) = 10 - "Number of members to return max per query. Defaults to 10 if no limit is specified." - - example default - files = ["id:3kmLmQFnf1AAAAAAAAAAAw","id:VvTaJu2VZzAAAAAAAAAADQ"] - limit = 10 - -struct ListFileMembersBatchResult - "Per-file result for :route:`list_file_members/batch`." - - file PathOrId - "This is the input file identifier, whether an ID or a path." - result ListFileMembersIndividualResult - "The result for this particular file." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - result = default - - example member_error - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - result = file_error - - -struct ListFileMembersCountResult - members SharedFileMembers - "A list of members on this file." - member_count UInt32 - "The number of members on this file. This does not include inherited members." - - example default - members = default - member_count = 3 - -union ListFileMembersIndividualResult - result ListFileMembersCountResult - "The results of the query for this file if it was successful." - access_error SharingFileAccessError - "The result of the query for this file if it was an error." - - example default - result = default - - example file_error - access_error = invalid_file - -# -- - -route list_file_members/continue(ListFileMembersContinueArg, SharedFileMembers, ListFileMembersContinueError) - "Once a cursor has been retrieved from :route:`list_file_members` or - :route:`list_file_members/batch`, use this to paginate through all shared - file members." - - attrs - scope = "sharing.read" - -struct ListFileMembersContinueArg - "Arguments for :route:`list_file_members/continue`." - - cursor String - "The cursor returned by your last call to :route:`list_file_members`, - :route:`list_file_members/continue`, or :route:`list_file_members/batch`." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - -union ListFileMembersContinueError - "Error for :route:`list_file_members/continue`." - - user_error SharingUserError - access_error SharingFileAccessError - invalid_cursor - ":field:`ListFileMembersContinueArg.cursor` is invalid." - -# -- - -route list_received_files(ListFilesArg, ListFilesResult, SharingUserError) - "Returns a list of all files shared with current user. - - Does not include files the user has received via shared folders, and does - not include unclaimed invitations." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.read" - -struct ListFilesArg - "Arguments for :route:`list_received_files`." - - limit UInt32(min_value=1, max_value=300) = 100 - "Number of files to return max per query. Defaults to 100 if no limit - is specified." - actions List(FileAction)? - "A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - response's :field:`SharedFileMetadata.permissions` field describing the actions the - authenticated user can perform on the file." - - example default - limit = 100 - actions = [] - -struct ListFilesResult - "Success results for :route:`list_received_files`." - - entries List(SharedFileMetadata) - "Information about the files shared with current user." - cursor String? - "Cursor used to obtain additional shared files." - - example default - entries = [default] - cursor = "AzJJbGlzdF90eXBdofe9c3RPbGlzdGFyZ3NfYnlfZ2lkMRhcbric7Rdog9cmV2aXNpb24H3Qf6o1fkHxQ" - -# -- - -route list_received_files/continue (ListFilesContinueArg, ListFilesResult, ListFilesContinueError) - "Get more results with a cursor from :route:`list_received_files`." - - attrs - scope = "sharing.read" - -struct ListFilesContinueArg - "Arguments for :route:`list_received_files/continue`." - - cursor String - "Cursor in :field:`ListFilesResult.cursor`." - - example default - cursor = "AzJJbGlzdF90eXBdofe9c3RPbGlzdGFyZ3NfYnlfZ2lkMRhcbric7Rdog9emfGRlc2MCRWxpbWl0BGRId" - -union ListFilesContinueError - "Error results for :route:`list_received_files/continue`." - - user_error SharingUserError - "User account had a problem." - invalid_cursor - ":field:`ListFilesContinueArg.cursor` is invalid." - -# -- - -route remove_file_member(RemoveFileMemberArg, FileMemberActionIndividualResult, RemoveFileMemberError) deprecated by remove_file_member_2 - "Identical to remove_file_member_2 but with less information returned." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -route remove_file_member_2(RemoveFileMemberArg, FileMemberRemoveActionResult, RemoveFileMemberError) - "Removes a specified member from the file." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -struct RemoveFileMemberArg - "Arguments for :route:`remove_file_member_2`." - - file PathOrId - "File from which to remove members." - member MemberSelector - "Member to remove from this file. Note that even if an email is - specified, it may result in the removal of a user (not an invitee) if - the user's main account corresponds to that email address." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - member = default - -# -- - -route relinquish_file_membership(RelinquishFileMembershipArg, Void, RelinquishFileMembershipError) - "The current user relinquishes their membership in the designated file. - Note that the current user may still have inherited access to this file - through the parent folder." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -struct RelinquishFileMembershipArg - file PathOrId - "The path or id for the file." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - -union RelinquishFileMembershipError - access_error SharingFileAccessError - group_access - "The current user has access to the shared file via a group. You can't relinquish - membership to a file shared via groups." - no_permission - "The current user does not have permission to perform this action." - -# -- - -route unshare_file(UnshareFileArg, Void, UnshareFileError) - "Remove all members from this file. Does not remove inherited members." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -struct UnshareFileArg - "Arguments for :route:`unshare_file`." - - file PathOrId - "The file to unshare." - - example default - file = "id:3kmLmQFnf1AAAAAAAAAAAw" - -union UnshareFileError - "Error result for :route:`unshare_file`." - user_error SharingUserError - access_error SharingFileAccessError - - example default - user_error = email_unverified diff --git a/sharing_folders.stone b/sharing_folders.stone deleted file mode 100644 index dc487c9..0000000 --- a/sharing_folders.stone +++ /dev/null @@ -1,1310 +0,0 @@ -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." - traverse - "The collaborator can only view the shared folder that they have - access to." - no_access - "If there is a Righteous Link on the folder which grants access - and the user has visited such link, they are allowed to perform - certain action (i.e. add themselves to the folder) via the link - access even though the user themselves are not a member on the - shared folder yet." - -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 - "Use create_link instead." - - create_link - "Create a shared link for folder." - - set_access_inheritance - "Set whether the folder inherits permissions from its parent." - -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." - restricted_by_parent_folder - "Policy cannot be changed due to restrictions from parent folder." - insufficient_plan InsufficientPlan - -struct InsufficientPlan - message String - "A message to tell the user to upgrade in order to support expected action." - upsell_url String? - "A URL to send the user to in order to obtain the account type they need, e.g. upgrading. - Absent if there is no action the user can take to upgrade." - -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. It contains inherited access type from parent folder, - and acquired access type from this folder." - 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? - "Never set." - 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." - email String - "Email address of user." - display_name String - "The display name 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" - email = "bob@example.com" - display_name = "Robert Smith" - -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 - "Email 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_display_names List(String)? - "The display names of the users that own the folder. If the folder is - part of a team folder, the display names of the team admins are also - included. Absent if the owner display names cannot be fetched." - - 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_display String? - "The full path of this shared folder. Absent for unmounted folders." - - path_lower String? - "The lower-cased full path of this shared folder. Absent for unmounted folders." - - parent_folder_name String? - "Display name for the parent folder." - - example default - access_type = owner - is_inside_team_folder = false - is_team_folder = false - owner_display_names = ["Jane Doe"] - owner_team = default - parent_folder_name = "Parent Shared Folder" - -union AccessInheritance - "Information about the inheritance policy of a shared folder." - - inherit - "The shared folder inherits its members from the parent folder." - - no_inherit - "The shared folder does not inherit its members from the parent folder." - -# 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." - - access_inheritance AccessInheritance = inherit - "Whether the folder inherits its members from its parent." - - 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" - access_inheritance = inherit - -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." - invalid_member - "The user does not exist or their account is disabled." - email_unverified - "Never set." - 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." - - attrs - scope = "sharing.read" - -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`." - - attrs - scope = "sharing.read" - -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." - - attrs - scope = "sharing.read" - -# -- - -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`." - - attrs - scope = "sharing.read" - -# -- - -route get_folder_metadata(GetMetadataArgs, SharedFolderMetadata, SharedFolderAccessError) - "Returns shared folder metadata by its folder ID." - - attrs - select_admin_mode = "whole_team" - scope = "sharing.read" - -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." - - attrs - select_admin_mode = "whole_team" - scope = "sharing.read" - -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." - - attrs - select_admin_mode = "whole_team" - scope = "sharing.read" - -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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -# As of 2017-05, there are three kinds of arg: -# ShareFolderArg: The public stable version. We cannot make backwards-incompatible changes at all. -# ShareFolderInternalArg: The private stable version. We cannot make backwards-incompatible changes -# unless we are sure no clients in the wild are using the endpoint. -# AlphaShareFolderArg: The private experimental version. We can do what we want as long as it -# doesn't break web. -struct ShareFolderArgBase - acl_update_policy AclUpdatePolicy? - "Who can add and remove members of this shared folder." - force_async Boolean = false - "Whether to force the share to happen asynchronously." - member_policy MemberPolicy? - "Who can be a member of this shared folder. Only applicable if the - current user is on a team." - path files.WritePathOrId - "The path or the file id to the folder to share. If it does not exist, - then a new one is created." - 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`." - viewer_info_policy ViewerInfoPolicy? - "Who can enable/disable viewer info for this shared folder." - access_inheritance AccessInheritance = inherit - "The access inheritance settings for the folder." - - example default - path = "/example/workspace" - -struct ShareFolderArg extends ShareFolderArgBase - 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." - - example default - path = "/example/workspace" - member_policy = team - acl_update_policy = editors - shared_link_policy = members - -union ShareFolderErrorBase - email_unverified - "This user's email address is not verified. This functionality is only - available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - 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." - is_vault - "We do not support sharing the Vault folder." - is_vault_locked - "We do not support sharing a folder inside a locked Vault." - is_family - "We do not support sharing the Family folder." - -# -- - -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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -# -- - -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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -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 email address is not verified. This functionality - is only available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - 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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -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 - "Email 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 - "This user's email address is not verified. This functionality is only - available on accounts with a verified email address. Users can verify - their email address :link:`here https://www.dropbox.com/help/317`." - banned_member - "The current user has been banned." - 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." - invalid_shared_folder - "Invalid shared folder error will be returned as an access_error." - - 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 email - address. Invite unverified users by email 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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -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. This must be set to false when removing a group, - or when the folder is within a team folder or another shared folder." - - 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." - too_many_files - "This shared folder has too many files for leaving a copy. You can - still remove this user without leaving a copy." - -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." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -# -- - -route update_folder_member(UpdateFolderMemberArg, MemberAccessLevelResult, UpdateFolderMemberError) - "Allows an owner or editor of a shared folder to update another member's - permissions." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -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." - - attrs - scope = "sharing.write" - -# 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`." - - attrs - select_admin_mode = "team_admin" - scope = "sharing.write" - -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." - - attrs - scope = "sharing.write" - -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. - This must be set to false when the folder is within a team folder - or another shared folder." - - 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." - -# -- - -route set_access_inheritance (SetAccessInheritanceArg, ShareFolderLaunch, SetAccessInheritanceError) - "Change the inheritance policy of an existing Shared Folder. Only permitted for shared folders in a shared team root. - - 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." - - attrs - scope = "sharing.write" - -struct SetAccessInheritanceArg - access_inheritance AccessInheritance = inherit - "The access inheritance settings for the folder." - - shared_folder_id common.SharedFolderId - "The ID for the shared folder." - - example default - access_inheritance = inherit - shared_folder_id = "84528192421" - -union SetAccessInheritanceError - access_error SharedFolderAccessError - "Unable to access shared folder." - no_permission - "The current user does not have permission to perform this action." - - example default - no_permission = null diff --git a/stone_cfg.stone b/stone_cfg.stone index 8b77371..1858e86 100644 --- a/stone_cfg.stone +++ b/stone_cfg.stone @@ -2,7 +2,7 @@ namespace stone_cfg struct Route - auth String(pattern="^(user|team|app|noauth|app, user)$") = "user" + auth String(pattern="^(user|team|app|noauth|app,\\s*user|app,\\s*team)$") = "user" "The auth type for the route. In case of multiple values it should be sorted allphabetically" host String(pattern="^(api|content|notify)$") = "api" "The server to make the request to. " diff --git a/team.stone b/team.stone index 49024b7..f65bd13 100644 --- a/team.stone +++ b/team.stone @@ -1,354 +1,3630 @@ namespace team +import account +import async import common import file_properties +import files +import secondary_emails import team_common import team_policies +import users import users_common -import secondary_emails -# Note that in the database, we also have members that are in state "deleted" -# meaning that the User has been permanently removed from the team. -# But the API is not going to expose such users externally. We will omit such users -# in API responses. -# -union_closed TeamMemberStatus - "The user's status as a member of a specific team." +union NamespaceType + app_folder + "App sandbox folder." + shared_folder + "Shared folder." + team_folder + "Top-level team-owned folder." + team_member_folder + "Team member's home folder." + team_member_root + "Team member's root folder." + +union TeamNamespacesListContinueError extends TeamNamespacesListError + invalid_cursor + "The cursor is invalid." + +union TeamNamespacesListError + invalid_arg + "Argument passed in is invalid." + +struct NamespaceMetadata + "Properties of a namespace." + name String + "The name of this namespace." + namespace_id common.SharedFolderId + "The ID of this namespace." + namespace_type NamespaceType + "The type of this namespace." + team_member_id team_common.TeamMemberId? + "If this is a team member or app folder, the ID of the owning team member. + Otherwise, this field is not present." + + example shared_folder + name = "Marketing" + namespace_id = "123456789" + namespace_type = shared_folder + + example team_member_folder + name = "Franz Ferdinand" + namespace_id = "123456789" + namespace_type = team_member_folder + team_member_id = "dbmid:1234567" - active - "User has successfully joined the team." - invited - "User has been invited to a team, but has not joined the team yet." - suspended - "User is no longer a member of the team, but the account can be un-suspended, - re-establishing the user as a team member." - removed RemovedStatus - "User is no longer a member of the team. - Removed users are only listed when include_removed is true in members/list." +struct TeamNamespacesListResult + "Result for :route:`namespaces/list`." + namespaces List(NamespaceMetadata) + "List of all namespaces the team can access." + cursor String + "Pass the cursor into :route:`namespaces/list/continue` to obtain + additional namespaces. Note that duplicate namespaces may be returned." + has_more Boolean + "Is true if there are additional namespaces that have not been returned yet." -struct RemovedStatus - is_recoverable Boolean - "True if the removed team member is recoverable." + example default + namespaces = [shared_folder, team_member_folder] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = false - is_disconnected Boolean - "True if the team member's account was converted to individual account." +struct TeamNamespacesListArg + limit UInt32(max_value=1000, min_value=1) = 1000 + "Specifying a value here has no effect." example default - is_recoverable = false - is_disconnected = false + limit = 1 + + example with_filter + limit = 1 -union_closed TeamMembershipType - full - "User uses a license and has full access to team resources like the shared quota." - limited - "User does not have access to the shared quota and team admins have restricted administrative control." +struct TeamNamespacesListContinueArg + cursor String + "Indicates from what point to get the next set of team-accessible namespaces." -struct MemberProfile - "Basic member profile." + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + + example with_filter + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +route namespaces/list (TeamNamespacesListArg, TeamNamespacesListResult, TeamNamespacesListError) + "Returns a list of all team-accessible namespaces. This list includes team folders, + shared folders containing team members, team members' home namespaces, and team members' + app folders. Home namespaces and app folders are always owned by this team or members of the + team, but shared folders may be owned by other users or other teams. Duplicates may occur in the + list." - team_member_id team_common.TeamMemberId - "ID of user as a member of a team." + attrs + auth = "team" + scope = "team_data.member" - external_id String? - "External ID that a team can attach to the user. - An application using the API may find it easier to use their - own IDs instead of Dropbox IDs like account_id or team_member_id." +route namespaces/list/continue (TeamNamespacesListContinueArg, TeamNamespacesListResult, TeamNamespacesListContinueError) + "Once a cursor has been retrieved from :route:`namespaces/list`, use this to paginate + through all team-accessible namespaces. Duplicates may occur in the list." - account_id users_common.AccountId? - "A user's account identifier." + attrs + auth = "team" + scope = "team_data.member" - email String - "Email address of user." - email_verified Boolean - "Is true if the user's email is verified to be owned by the user." +alias GroupsGetInfoResult = List(GroupsGetInfoItem) - secondary_emails List(secondary_emails.SecondaryEmail)? - "Secondary emails of a user." +union_closed GroupAccessType + "Role of a user in group." + member + "User is a member of the group, but has no special permissions." + owner + "User can rename the group, and add/remove members." - status TeamMemberStatus - "The user's status as a member of a specific team." + example default + member = null - name users.Name - "Representations for a person's name." +union_closed GroupSelector + "Argument for selecting a single group, either by group_id or by external group ID." + group_id team_common.GroupId + "Group ID." + group_external_id team_common.GroupExternalId + "External ID of the group." - membership_type TeamMembershipType - "The user's membership type: full (normal team member) vs limited (does not use a license; no access to the team's shared quota)." + example default + group_id = "g:e2db7665347abcd600000000001a2b3c" + +union GroupSelectorError + "Error that can be raised when :type:`GroupSelector` is used." + group_not_found + "No matching group found. No groups match the specified group ID." + +union GroupSelectorWithTeamGroupError extends GroupSelectorError + "Error that can be raised when :type:`GroupSelector` is used and team groups are disallowed from + being used." + system_managed_group_disallowed + "This operation is not supported on system-managed groups." + +union_closed GroupsSelector + "Argument for selecting a list of groups, either by group_ids, or external group IDs." + group_ids List(team_common.GroupId) + "List of group IDs." + group_external_ids List(String) + "List of external IDs of groups." - invited_on common.DropboxTimestamp? - "The date and time the user was invited to the team (contains value only when the member's status matches :field:`TeamMemberStatus.invited`)." + example default + group_ids = ["g:e2db7665347abcd600000000001a2b3c", "g:111111147abcd6000000000222222c"] + +union GroupMemberSelectorError extends GroupSelectorWithTeamGroupError + "Error that can be raised when :type:`GroupMemberSelector` is used, and the user + is required to be a member of the specified group." + member_not_in_group + "The specified user is not a member of this group." + +union GroupMembersSelectorError extends GroupSelectorWithTeamGroupError + "Error that can be raised when :type:`GroupMembersSelector` is used, and the users + are required to be members of the specified group." + member_not_in_group + "At least one of the specified users is not a member of the group." + +union GroupsListContinueError + invalid_cursor + "The cursor is invalid." + +union_closed GroupsGetInfoItem + id_not_found String = "" + "An ID that was provided as a parameter to :route:`groups/get_info`, and + did not match a corresponding group. The ID can be a group ID, or an external ID, + depending on how the method was called." + group_info GroupFullInfo + "Info about a group." - joined_on common.DropboxTimestamp? - "The date and time the user joined as a member of a specific team." + example default + group_info = default + +union GroupsGetInfoError + group_not_on_team + "The group is not on your team." + +union GroupCreateError + group_name_already_used + "The requested group name is already being used by another group." + group_name_invalid + "Group name is empty or has invalid characters." + external_id_already_in_use + "The requested external ID is already being used by another group." + system_managed_group_disallowed + "System-managed group cannot be manually created." + +union GroupDeleteError extends GroupSelectorWithTeamGroupError + group_already_deleted + "This group has already been deleted." + +union GroupUpdateError extends GroupSelectorWithTeamGroupError + group_name_already_used + "The requested group name is already being used by another group." + group_name_invalid + "Group name is empty or has invalid characters." + external_id_already_in_use + "The requested external ID is already being used by another group." + +union GroupMembersAddError extends GroupSelectorWithTeamGroupError + duplicate_user + "You cannot add duplicate users. One or more of the members + you are trying to add is already a member of the group." + group_not_in_team + "Group is not in this team. You cannot add members to a + group that is outside of your team." + members_not_in_team List(String) + "These members are not part of your team. Currently, you cannot add members + to a group if they are not part of your team, though this + may change in a subsequent version. To add new members to your Dropbox + Business team, use the :route:`members/add` endpoint." + users_not_found List(String) + "These users were not found in Dropbox." + user_must_be_active_to_be_owner + "A suspended user cannot be added to a group as :field:`GroupAccessType.owner`." + user_cannot_be_manager_of_company_managed_group List(String) + "A company-managed group cannot be managed by a user." + +union GroupMembersRemoveError extends GroupMembersSelectorError + group_not_in_team + "Group is not in this team. You cannot remove members from a group + that is outside of your team." + members_not_in_team List(String) + "These members are not part of your team." + users_not_found List(String) + "These users were not found in Dropbox." + +union GroupMemberSetAccessTypeError extends GroupMemberSelectorError + user_cannot_be_manager_of_company_managed_group + "A company managed group cannot be managed by a user." + +union GroupsMembersListContinueError + invalid_cursor + "The cursor is invalid." + +union GroupsPollError extends async.PollError + access_denied + "You are not allowed to poll this job." + +struct GroupMemberSelector + "Argument for selecting a group and a single user." + group GroupSelector + "Specify a group." + user UserSelectorArg + "Identity of a user that is a member of :field:`group`." - suspended_on common.DropboxTimestamp? - "The date and time the user was suspended from the team (contains value only when the member's status matches :field:`TeamMemberStatus.suspended`)." + example default + group = default + user = default + +struct GroupMembersSelector + "Argument for selecting a group and a list of users." + group GroupSelector + "Specify a group." + users UsersSelectorArg + "A list of users that are members of :field:`group`." + +struct IncludeMembersArg + return_members Boolean = true + "Whether to return the list of members in the group. + Note that the default value will cause all the group members + to be returned in the response. This may take a long time for large groups." + +struct GroupMemberInfo + "Profile of group member, and role in group." + profile MemberProfile + "Profile of group member." + access_type GroupAccessType + "The role that the user has in the group." - persistent_id String? - "Persistent ID that a team can attach to the user. - The persistent ID is unique ID to be used for SAML authentication." + example default + profile = default + access_type = default - is_directory_restricted Boolean? - "Whether the user is a directory restricted user." +struct GroupFullInfo extends team_common.GroupSummary + "Full description of a group." + members List(GroupMemberInfo)? + "List of group members." + created UInt64 + "The group creation time as a UTC timestamp in milliseconds since the Unix epoch." - profile_photo_url String? - "URL for the photo representing the user, if one is set." + example default + group_name = "project launch" + group_id = "g:e2db7665347abcd600000000001a2b3c" + member_count = 5 + group_management_type = user_managed + members = [default] + created = 1447255518000 + +struct GroupsListArg + limit UInt32(max_value=1000, min_value=1) = 1000 + "Number of results to return per call." example default - team_member_id = "dbmid:1234567" - account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" - email = "mary@lamb.com" - email_verified = true - secondary_emails = [default, second_sec_email, third_sec_email] - status = active - name = default - membership_type = full - joined_on = "2015-05-12T15:50:38Z" - profile_photo_url = "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102&size=128x128" + limit = 100 -union_closed UserSelectorArg - "Argument for selecting a single user, either by team_member_id, external_id or email." +struct GroupsListResult + groups List(team_common.GroupSummary) + cursor String + "Pass the cursor into :route:`groups/list/continue` to obtain the additional groups." + has_more Boolean + "Is true if there are additional groups that have not been returned + yet. An additional call to :route:`groups/list/continue` can retrieve them." - team_member_id team_common.TeamMemberId - external_id team_common.MemberExternalId - email common.EmailAddress + example default + groups = [default] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = false + +struct GroupsListContinueArg + cursor String + "Indicates from what point to get the next set of groups." example default - team_member_id = "dbmid:efgh5678" + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +struct GroupCreateArg + group_name String + "Group name." + add_creator_as_owner Boolean = false + "Automatically add the creator of the group." + group_external_id team_common.GroupExternalId? + "The creator of a team can associate an arbitrary external ID to the group." + group_management_type team_common.GroupManagementType? + "Whether the team can be managed by selected users, or only by team admins." - example email - email = "dan@hotmail.com" + example default + group_name = "Europe sales" + group_external_id = "group-134" + +struct GroupUpdateArgs extends IncludeMembersArg + group GroupSelector + "Specify a group." + new_group_name String? + "Optional argument. Set group name to this if provided." + new_group_external_id team_common.GroupExternalId? + "Optional argument. New group external ID. + If the argument is None, the group's external_id won't be updated. + If the argument is empty string, the group's external id will be cleared." + new_group_management_type team_common.GroupManagementType? + "Set new group management type, if provided." -union_closed UserSelectorError - "Error that can be returned whenever a struct derived from :type:`UserSelectorArg` is used." + example default + group = default + new_group_name = "Europe west sales" + new_group_external_id = "sales-234" + new_group_management_type = company_managed + +struct GroupMembersChangeResult + "Result returned by :route:`groups/members/add` and :route:`groups/members/remove`." + group_info GroupFullInfo + "The group info after member change operation has been performed." + async_job_id async.AsyncJobId + "For legacy purposes async_job_id will always return one space ' '. Formerly, it was an ID that was used to obtain the status of granting/revoking group-owned resources. It's no longer necessary because the async processing now happens automatically." - user_not_found - "No matching user found. The provided team_member_id, email, or external_id does not exist on this team." + example default + group_info = default + async_job_id = "99988877733388" -union_closed UsersSelectorArg - "Argument for selecting a list of users, either by team_member_ids, external_ids or emails." +struct MemberAccess + "Specify access type a member should have when joined to a group." + user UserSelectorArg + "Identity of a user." + access_type GroupAccessType + "Access type." - team_member_ids List(team_common.TeamMemberId) - "List of member IDs." - external_ids List(team_common.MemberExternalId) - "List of external user IDs." - emails List(common.EmailAddress) - "List of email addresses." + example default + user = default + access_type = default +struct GroupMembersAddArg extends IncludeMembersArg + group GroupSelector + "Group to which users will be added." + members List(MemberAccess) + "List of users to be added to the group." + example default + group = default + members = [default] -# -# Handle DfB routes that do not have a better place to be. -# +struct GroupMembersRemoveArg extends IncludeMembersArg + group GroupSelector + "Group from which users will be removed." + users List(UserSelectorArg) + "List of users to be removed from the group." -# -# Route get_info -# + example default + group = default + users = [default] -struct TeamGetInfoResult +struct GroupMembersSetAccessTypeArg extends GroupMemberSelector + access_type GroupAccessType + "New group access type the user will have." + return_members Boolean = true + "Whether to return the list of members in the group. + Note that the default value will cause all the group members + to be returned in the response. This may take a long time for large groups." - name String - "The name of the team." + example default + group = default + user = default + access_type = default - team_id String - "The ID of the team." +struct GroupsMembersListArg + group GroupSelector + "The group whose members are to be listed." + limit UInt32(max_value=1000, min_value=1) = 1000 + "Number of results to return per call." - num_licensed_users UInt32 - "The number of licenses available to the team." + example default + group = default + limit = 100 - num_provisioned_users UInt32 - "The number of accounts that have been invited or are already active members of the team." +struct GroupsMembersListResult + members List(GroupMemberInfo) + cursor String + "Pass the cursor into :route:`groups/members/list/continue` to obtain additional group members." + has_more Boolean + "Is true if there are additional group members that have not been returned + yet. An additional call to :route:`groups/members/list/continue` can retrieve them." - num_used_licenses UInt32 = 0 - "The number of licenses used on the team." + example default + members = [] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = false - policies team_policies.TeamMemberPolicies +struct GroupsMembersListContinueArg + cursor String + "Indicates from what point to get the next set of groups." example default - name="Dropbox Inc." - team_id="dbtid:1234abcd" - num_licensed_users=5 - num_provisioned_users=2 - num_used_licenses=1 - policies=default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" -route get_info(Void, TeamGetInfoResult, Void) - "Retrieves information about a team." +route groups/list (GroupsListArg, GroupsListResult, Void) + "Lists groups on a team. + Permission : Team Information." attrs auth = "team" - scope = "team_info.read" + scope = "groups.read" +route groups/list/continue (GroupsListContinueArg, GroupsListResult, GroupsListContinueError) + "Once a cursor has been retrieved from :route:`groups/list`, use this to paginate + through all groups. + Permission : Team Information." -# -# Structs for token/get_authenticated_admin -# + attrs + auth = "team" + scope = "groups.read" -struct TokenGetAuthenticatedAdminResult - "Results for :route:`token/get_authenticated_admin`." +route groups/get_info (GroupsSelector, GroupsGetInfoResult, GroupsGetInfoError) + "Retrieves information about one or more groups. Note that the optional field + :field:`GroupFullInfo.members` is not returned for system-managed groups. + Permission : Team Information." - admin_profile TeamMemberProfile - "The admin who authorized the token." + attrs + auth = "team" + scope = "groups.read" - example default - admin_profile = default +route groups/create (GroupCreateArg, GroupFullInfo, GroupCreateError) + "Creates a new, empty group, with a requested name. + Permission : Team member management." -union TokenGetAuthenticatedAdminError - "Error returned by :route:`token/get_authenticated_admin`." + attrs + auth = "team" + scope = "groups.write" - mapping_not_found - "The current token is not associated with a team admin, because mappings were not - recorded when the token was created. Consider re-authorizing a new access token - to record its authenticating admin." - admin_not_active - "Either the team admin that authorized this token is no longer an active member of the - team or no longer a team admin." +route groups/delete (GroupSelector, async.LaunchEmptyResult, GroupDeleteError) + "Deletes a group. + The group is deleted immediately. However the revoking of group-owned resources + may take additional time. + Use the :route:`groups/job_status/get` to determine whether this process has completed. + Permission : Team member management." -# -# Route: token/get_authenticated_admin -# + attrs + auth = "team" + scope = "groups.write" -route token/get_authenticated_admin(Void, TokenGetAuthenticatedAdminResult, TokenGetAuthenticatedAdminError) - "Returns the member profile of the admin who generated the team access token used to make the call." +route groups/update (GroupUpdateArgs, GroupFullInfo, GroupUpdateError) + "Updates a group's name and/or external ID. + Permission : Team member management." attrs auth = "team" - scope = "team_info.read" + scope = "groups.write" -# -# Common types -# +route groups/members/add (GroupMembersAddArg, GroupMembersChangeResult, GroupMembersAddError) + "Adds members to a group. + The members are added immediately. However the granting of group-owned resources + may take additional time. + Use the :route:`groups/job_status/get` to determine whether this process has completed. + Permission : Team member management." -union Feature - "A set of features that a Dropbox Business account may support." + attrs + auth = "team" + scope = "groups.write" - upload_api_rate_limit - "The number of upload API calls allowed per month." - has_team_shared_dropbox - "Does this team have a shared team root." - has_team_file_events - "Does this team have file events." - has_team_selective_sync - "Does this team have team selective sync enabled." +route groups/members/remove (GroupMembersRemoveArg, GroupMembersChangeResult, GroupMembersRemoveError) + "Removes members from a group. + The members are removed immediately. However the revoking of group-owned resources + may take additional time. + Use the :route:`groups/job_status/get` to determine whether this process has completed. + This method permits removing the only owner of a group, even in cases where this is not + possible via the web client. + Permission : Team member management." -union FeatureValue - "The values correspond to entries in :type:`Feature`. You may get different value according - to your Dropbox Business plan." + attrs + auth = "team" + scope = "groups.write" - upload_api_rate_limit UploadApiRateLimitValue - has_team_shared_dropbox HasTeamSharedDropboxValue - has_team_file_events HasTeamFileEventsValue - has_team_selective_sync HasTeamSelectiveSyncValue +route groups/members/set_access_type (GroupMembersSetAccessTypeArg, GroupsGetInfoResult, GroupMemberSetAccessTypeError) + "Sets a member's access type in a group. + Permission : Team member management." - example uploadRateLimited - upload_api_rate_limit = limited + attrs + auth = "team" + scope = "groups.write" - example hasTeamSharedDropbox - has_team_shared_dropbox = default +route groups/members/list (GroupsMembersListArg, GroupsMembersListResult, GroupSelectorError) + "Lists members of a group. + Permission : Team Information." - example hasTeamFileEvents - has_team_file_events = ex_no_file_events + attrs + auth = "team" + scope = "groups.read" - example HasTeamSelectiveSync - has_team_selective_sync = default +route groups/members/list/continue (GroupsMembersListContinueArg, GroupsMembersListResult, GroupsMembersListContinueError) + "Once a cursor has been retrieved from :route:`groups/members/list`, use this to paginate + through all members of the group. + Permission : Team information." -union UploadApiRateLimitValue - "The value for :field:`Feature.upload_api_rate_limit`." + attrs + auth = "team" + scope = "groups.read" - unlimited - "This team has unlimited upload API quota. So far both server version account and legacy - account type have unlimited monthly upload api quota." - limit UInt32 - "The number of upload API calls allowed per month." +route groups/job_status/get (async.PollArg, async.PollEmptyResult, GroupsPollError) + "Once an async_job_id is returned from :route:`groups/delete`, + :route:`groups/members/add` , or :route:`groups/members/remove` + use this method to poll the status of granting/revoking + group members' access to group-owned resources. + Permission : Team member management." - example limited - limit = 25000 + attrs + auth = "team" + scope = "groups.write" + + +union ListMemberAppsError + "Error returned by :route:`linked_apps/list_member_linked_apps`." + member_not_found + "Member not found." + +union ListMembersAppsError + "Error returned by :route:`linked_apps/list_members_linked_apps`." + reset + "Indicates that the cursor has been invalidated. Call + :route:`linked_apps/list_members_linked_apps` again with an empty cursor to obtain a new cursor." + +union RevokeLinkedAppError + "Error returned by :route:`linked_apps/revoke_linked_app`." + app_not_found + "Application not found." + member_not_found + "Member not found." + app_folder_removal_not_supported + "App folder removal is not supported." + +union RevokeLinkedAppBatchError + "Error returned by :route:`linked_apps/revoke_linked_app_batch`." + +union ListTeamAppsError + "Error returned by :route:`linked_apps/list_team_linked_apps`." + reset + "Indicates that the cursor has been invalidated. Call + :route:`linked_apps/list_team_linked_apps` again with an empty cursor to obtain a new cursor." + +struct ListMemberAppsArg + team_member_id String + "The team member id." -union HasTeamSharedDropboxValue - "The value for :field:`Feature.has_team_shared_dropbox`." + example default + team_member_id = "dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + +struct ApiApp + "Information on linked third party applications." + app_id String + "The application unique id." + app_name String + "The application name." + publisher String? + "The application publisher name." + publisher_url String? + "The publisher's URL." + linked common.DropboxTimestamp? + "The time this application was linked." + is_app_folder Boolean + "Whether the linked application uses a dedicated folder." - has_team_shared_dropbox Boolean - "Does this team have a shared team root." + example default + app_id = "dbaid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + app_name = "Notes" + publisher = "Notes company" + publisher_url = "http://company.com" + linked = "2015-05-12T15:50:38Z" + is_app_folder = true + +struct ListMemberAppsResult + linked_api_apps List(ApiApp) + "List of third party applications linked by this team member." example default - has_team_shared_dropbox = false + linked_api_apps = [default] -union HasTeamFileEventsValue - "The value for :field:`Feature.has_team_file_events`." +struct ListMembersAppsArg + "Arguments for :route:`linked_apps/list_members_linked_apps`." + cursor String? + "At the first call to the :route:`linked_apps/list_members_linked_apps` the cursor shouldn't be + passed. Then, if the result of the call includes a cursor, the following requests should + include the received cursors in order to receive the next sub list of the team applications." - enabled Boolean - "Does this team have file events." + example default + cursor = "AADAQO8ZWKvBkSMXb1J9dAYVvwZ0wcvfyzIBo2e1H-_N-67pfrYKTb4oN_3LG9_ilWjblZXuiR8ubjjiQQkHq-MvDjbe_6bkcJgjnTpowrRaQA" - example ex_no_file_events - enabled = false +struct MemberLinkedApps + "Information on linked applications of a team member." + team_member_id String + "The member unique Id." + linked_api_apps List(ApiApp) + "List of third party applications linked by this team member." -union HasTeamSelectiveSyncValue - "The value for :field:`Feature.has_team_selective_sync`." + example default + team_member_id = "dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + linked_api_apps = [default] + +struct ListMembersAppsResult + "Information returned by :route:`linked_apps/list_members_linked_apps`." + apps List(MemberLinkedApps) + "The linked applications of each member of the team." + has_more Boolean + "If true, then there are more apps available. Pass the + cursor to :route:`linked_apps/list_members_linked_apps` to retrieve the rest." + cursor String? + "Pass the cursor into :route:`linked_apps/list_members_linked_apps` to receive the next + sub list of team's applications." - has_team_selective_sync Boolean - "Does this team have team selective sync enabled." + example default + apps = [default] + has_more = true + cursor = "AADAQO8ZWKvBkSMXb1J9dAYVvwZ0wcvfyzIBo2e1H-_N-67pfrYKTb4oN_3LG9_ilWjblZXuiR8ubjjiQQkHq-MvDjbe_6bkcJgjnTpowrRaQA" + +struct RevokeLinkedApiAppArg + app_id String + "The application's unique id." + team_member_id String + "The unique id of the member owning the device." + keep_app_folder Boolean = true + "This flag is not longer supported, the application dedicated folder (in case the application uses + one) will be kept." example default - has_team_selective_sync = true + app_id = "dbaid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + team_member_id = "dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" -# -# Route: feature/get_value_batch -# +struct RevokeLinkedApiAppBatchArg + revoke_linked_app List(RevokeLinkedApiAppArg) -struct FeaturesGetValuesBatchArg - features List(Feature) - "A list of features in :type:`Feature`. If the list is empty, - this route will return :type:`FeaturesGetValuesBatchError`." + example default + revoke_linked_app = [default] - example listOfValues - features = [upload_api_rate_limit, has_team_shared_dropbox] +struct RevokeLinkedAppStatus + success Boolean + "Result of the revoking request." + error_type RevokeLinkedAppError? + "The error cause in case of a failure." -struct FeaturesGetValuesBatchResult - values List(FeatureValue) + example default + success = false + error_type = app_not_found - example listOfResults - values = [uploadRateLimited, hasTeamSharedDropbox] +struct RevokeLinkedAppBatchResult + revoke_linked_app_status List(RevokeLinkedAppStatus) -union FeaturesGetValuesBatchError - empty_features_list - "At least one :type:`Feature` must be included in the - :type:`FeaturesGetValuesBatchArg`.features list." + example default + revoke_linked_app_status = [default] -route features/get_values(FeaturesGetValuesBatchArg, FeaturesGetValuesBatchResult, FeaturesGetValuesBatchError) - "Get the values for one or more featues. This route allows you to check your account's - capability for what feature you can access or what value you have for certain features. +struct ListTeamAppsArg + "Arguments for :route:`linked_apps/list_team_linked_apps`." + cursor String? + "At the first call to the :route:`linked_apps/list_team_linked_apps` the cursor shouldn't be + passed. Then, if the result of the call includes a cursor, the following requests should + include the received cursors in order to receive the next sub list of the team applications." - Permission : Team information." + example default + cursor = "AADAQO8ZWKvBkSMXb1J9dAYVvwZ0wcvfyzIBo2e1H-_N-67pfrYKTb4oN_3LG9_ilWjblZXuiR8ubjjiQQkHq-MvDjbe_6bkcJgjnTpowrRaQA" + +struct ListTeamAppsResult + "Information returned by :route:`linked_apps/list_team_linked_apps`." + apps List(MemberLinkedApps) + "The linked applications of each member of the team." + has_more Boolean + "If true, then there are more apps available. Pass the + cursor to :route:`linked_apps/list_team_linked_apps` to retrieve the rest." + cursor String? + "Pass the cursor into :route:`linked_apps/list_team_linked_apps` to receive the next + sub list of team's applications." + + example default + apps = [default] + has_more = true + cursor = "AADAQO8ZWKvBkSMXb1J9dAYVvwZ0wcvfyzIBo2e1H-_N-67pfrYKTb4oN_3LG9_ilWjblZXuiR8ubjjiQQkHq-MvDjbe_6bkcJgjnTpowrRaQA" + +route linked_apps/list_member_linked_apps (ListMemberAppsArg, ListMemberAppsResult, ListMemberAppsError) + "List all linked applications of the team member. + Note, this endpoint does not list any team-linked applications." attrs auth = "team" - scope = "team_info.read" - -# -# Deprecated File Properties Routes -# + scope = "sessions.list" -route properties/template/add(file_properties.AddTemplateArg, file_properties.AddTemplateResult, file_properties.ModifyTemplateError) deprecated - "Permission : Team member file access." +route linked_apps/list_members_linked_apps (ListMembersAppsArg, ListMembersAppsResult, ListMembersAppsError) + "List all applications linked to the team members' accounts. + Note, this endpoint does not list any team-linked applications." attrs auth = "team" - scope = "files.team_metadata.write" + scope = "sessions.list" + +route linked_apps/revoke_linked_app (RevokeLinkedApiAppArg, Void, RevokeLinkedAppError) + "Revoke a linked application of the team member." -route properties/template/update(file_properties.UpdateTemplateArg, file_properties.UpdateTemplateResult, file_properties.ModifyTemplateError) deprecated - "Permission : Team member file access." attrs auth = "team" - scope = "files.team_metadata.write" + scope = "sessions.modify" + +route linked_apps/revoke_linked_app_batch (RevokeLinkedApiAppBatchArg, RevokeLinkedAppBatchResult, RevokeLinkedAppBatchError) + "Revoke a list of linked applications of the team members." -route properties/template/get(file_properties.GetTemplateArg, file_properties.GetTemplateResult, file_properties.TemplateError) deprecated - "Permission : Team member file access. The scope for the route is files.team_metadata.write." attrs auth = "team" - scope = "files.team_metadata.write" + scope = "sessions.modify" + +route linked_apps/list_team_linked_apps (ListTeamAppsArg, ListTeamAppsResult, ListTeamAppsError) deprecated + "List all applications linked to the team members' accounts. + Note, this endpoint doesn't list any team-linked applications." -route properties/template/list(Void, file_properties.ListTemplateResult, file_properties.TemplateError) deprecated - "Permission : Team member file access. The scope for the route is files.team_metadata.write." attrs auth = "team" - scope = "files.team_metadata.write" + scope = "sessions.list" + + +route token/get_authenticated_admin (Void, TokenGetAuthenticatedAdminResult, TokenGetAuthenticatedAdminError) + "Returns the member profile of the admin who generated the team access token used to make the call." + + attrs + auth = "team" + scope = "team_info.read" + + +route get_info (Void, TeamGetInfoResult, Void) + "Retrieves information about a team." + + attrs + auth = "team" + scope = "team_info.read" + + +union SharingAllowlistAddError + malformed_entry String = "" + "One of provided values is not valid." + no_entries_provided + "Neither single domain nor email provided." + too_many_entries_provided + "Too many entries provided within one call." + team_limit_reached + "Team entries limit reached." + unknown_error + "Unknown error." + entries_already_exist String = "" + "Entries already exists." + +union SharingAllowlistListContinueError + invalid_cursor + "Provided cursor is not valid." + +union SharingAllowlistRemoveError + malformed_entry String = "" + "One of provided values is not valid." + entries_do_not_exist String = "" + "One or more provided values do not exist." + no_entries_provided + "Neither single domain nor email provided." + too_many_entries_provided + "Too many entries provided within one call." + unknown_error + "Unknown error." + +struct SharingAllowlistAddArgs + "Structure representing Approve List entries. Domain and emails are supported. + At least one entry of any supported type is required." + domains List(String)? + "List of domains represented by valid string representation (RFC-1034/5)." + emails List(String)? + "List of emails represented by valid string representation (RFC-5322/822)." + + example default + domains = ["test-domain.com", "subdomain.some.com"] + emails = ["adam@test-domain.com", "john@some.com"] + +struct SharingAllowlistAddResponse + "This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone." + +struct SharingAllowlistListArg + limit UInt32(max_value=1000, min_value=1) = 1000 + "The number of entries to fetch at one time." + + example default + limit = 100 + +struct SharingAllowlistListContinueArg + cursor String + "The cursor returned from a previous call to :route:`sharing_allowlist/list` or :route:`sharing_allowlist/list/continue`." + + example default + cursor = "dGVzdF9jdXJzb3IK" + +struct SharingAllowlistListError + "This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone." + +struct SharingAllowlistListResponse + domains List(String) + "List of domains represented by valid string representation (RFC-1034/5)." + emails List(String) + "List of emails represented by valid string representation (RFC-5322/822)." + cursor String = "" + "If this is nonempty, there are more entries that can be fetched with :route:`sharing_allowlist/list/continue`." + has_more Boolean = false + "if true indicates that more entries can be fetched with :route:`sharing_allowlist/list/continue`." + + example default + domains = ["test-domain.com", "subdomain.some.com"] + emails = ["adam@test-domain.com", "john@some.com"] + cursor = "dGVzdF9jdXJzb3IK" + has_more = true + +struct SharingAllowlistRemoveArgs + domains List(String)? + "List of domains represented by valid string representation (RFC-1034/5)." + emails List(String)? + "List of emails represented by valid string representation (RFC-5322/822)." + + example default + domains = ["test-domain.com", "subdomain.some.com"] + emails = ["adam@test-domain.com", "john@some.com"] + +struct SharingAllowlistRemoveResponse + "This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone." + +route sharing_allowlist/add (SharingAllowlistAddArgs, SharingAllowlistAddResponse, SharingAllowlistAddError) + "Endpoint adds Approve List entries. Changes are effective immediately. + Changes are committed in transaction. In case of single validation error - all entries are rejected. + Valid domains (RFC-1034/5) and emails (RFC-5322/822) are accepted. + Added entries cannot overflow limit of 10000 entries per team. + Maximum 100 entries per call is allowed." + + attrs + auth = "team" + is_preview = true + scope = "team_info.write" + +route sharing_allowlist/list (SharingAllowlistListArg, SharingAllowlistListResponse, SharingAllowlistListError) + "Lists Approve List entries for given team, from newest to oldest, returning + up to `limit` entries at a time. If there are more than `limit` entries + associated with the current team, more can be fetched by passing the + returned `cursor` to :route:`sharing_allowlist/list/continue`." + + attrs + auth = "team" + is_preview = true + scope = "team_info.read" + +route sharing_allowlist/list/continue (SharingAllowlistListContinueArg, SharingAllowlistListResponse, SharingAllowlistListContinueError) + "Lists entries associated with given team, starting from a the cursor. See :route:`sharing_allowlist/list`." + + attrs + auth = "team" + is_preview = true + scope = "team_info.read" + +route sharing_allowlist/remove (SharingAllowlistRemoveArgs, SharingAllowlistRemoveResponse, SharingAllowlistRemoveError) + "Endpoint removes Approve List entries. Changes are effective immediately. + Changes are committed in transaction. In case of single validation error - all entries are rejected. + Valid domains (RFC-1034/5) and emails (RFC-5322/822) are accepted. + Entries being removed have to be present on the list. + Maximum 1000 entries per call is allowed." + + attrs + auth = "team" + is_preview = true + scope = "team_info.write" + + +route features/get_values (FeaturesGetValuesBatchArg, FeaturesGetValuesBatchResult, FeaturesGetValuesBatchError) + "Get the values for one or more features. This route allows you to check your account's + capability for what feature you can access or what value you have for certain features. + Permission : Team information." + + attrs + auth = "team" + scope = "team_info.read" + + +alias UserQuota = UInt32(min_value=2) + +struct UserCustomQuotaArg + "User and their required custom quota in GB (1 TB = 1024 GB)." + user UserSelectorArg + quota_gb UserQuota + + example default + user = default + quota_gb = 30 + +struct UserCustomQuotaResult + "User and their custom quota in GB (1 TB = 1024 GB). + No quota returns if the user has no custom quota set." + user UserSelectorArg + quota_gb UserQuota? + +struct SetCustomQuotaArg + users_and_quotas List(UserCustomQuotaArg) + "List of users and their custom quotas." + + example default + users_and_quotas = [default] + +union CustomQuotaError + "Error returned when getting member custom quota." + too_many_users + "A maximum of 1000 users can be set for a single call." + +union SetCustomQuotaError extends CustomQuotaError + "Error returned when setting member custom quota." + some_users_are_excluded + "Some of the users are on the excluded users list and can't have custom quota set." + +union CustomQuotaResult + "User custom quota." + success UserCustomQuotaResult + "User's custom quota." + invalid_user UserSelectorArg + "Invalid user (not in team)." + +struct CustomQuotaUsersArg + users List(UserSelectorArg) + "List of users." + + example default + users = [default] + +union RemoveCustomQuotaResult + "User result for setting member custom quota." + success UserSelectorArg + "Successfully removed user." + invalid_user UserSelectorArg + "Invalid user (not in team)." + +struct ExcludedUsersUpdateArg + "Argument of excluded users update operation. + Should include a list of users to add/remove (according to endpoint), + Maximum size of the list is 1000 users." + users List(UserSelectorArg)? + "List of users to be added/removed." + + example default + users = [default] + +union ExcludedUsersUpdateError + "Excluded users update error." + users_not_in_team + "At least one of the users is not part of your team." + too_many_users + "A maximum of 1000 users for each of addition/removal can be supplied." + +struct ExcludedUsersListArg + "Excluded users list argument." + limit UInt32(max_value=1000, min_value=1) = 1000 + "Number of results to return per call." + + example default + limit = 100 + +struct ExcludedUsersListContinueArg + "Excluded users list continue argument." + cursor String + "Indicates from what point to get the next set of users." + + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +struct ExcludedUsersListResult + "Excluded users list result." + users List(MemberProfile) + cursor String? + "Pass the cursor into :route:`member_space_limits/excluded_users/list/continue` to obtain + additional excluded users." + has_more Boolean + "Is true if there are additional excluded users that have not been returned + yet. An additional call to :route:`member_space_limits/excluded_users/list/continue` can + retrieve them." + + example default + users = [] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = false + +union ExcludedUsersUpdateStatus + "Excluded users update operation status." + success + "Update successful." + +struct ExcludedUsersUpdateResult + "Excluded users update result." + status ExcludedUsersUpdateStatus + "Update status." + + example default + status = success + +union ExcludedUsersListError + "Excluded users list error." + list_error + "An error occurred." + +union ExcludedUsersListContinueError + "Excluded users list continue error." + invalid_cursor + "The cursor is invalid." + +route member_space_limits/set_custom_quota (SetCustomQuotaArg, List(CustomQuotaResult), SetCustomQuotaError) + "Set users custom quota. Custom quota has to be at least 2GB. + A maximum of 1000 members can be specified in a single call. + Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. + (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space)." + + attrs + auth = "team" + scope = "members.read" + +route member_space_limits/remove_custom_quota (CustomQuotaUsersArg, List(RemoveCustomQuotaResult), CustomQuotaError) + "Remove users custom quota. + A maximum of 1000 members can be specified in a single call. + Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. + (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space)." + + attrs + auth = "team" + scope = "members.write" + +route member_space_limits/get_custom_quota (CustomQuotaUsersArg, List(CustomQuotaResult), CustomQuotaError) + "Get users custom quota. + A maximum of 1000 members can be specified in a single call. + Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. + (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space)." + + attrs + auth = "team" + scope = "members.read" + +route member_space_limits/excluded_users/add (ExcludedUsersUpdateArg, ExcludedUsersUpdateResult, ExcludedUsersUpdateError) + "Add users to member space limits excluded users list." + + attrs + auth = "team" + scope = "members.write" + +route member_space_limits/excluded_users/remove (ExcludedUsersUpdateArg, ExcludedUsersUpdateResult, ExcludedUsersUpdateError) + "Remove users from member space limits excluded users list." + + attrs + auth = "team" + scope = "members.write" + +route member_space_limits/excluded_users/list (ExcludedUsersListArg, ExcludedUsersListResult, ExcludedUsersListError) + "List member space limits excluded users." + + attrs + auth = "team" + scope = "members.read" + +route member_space_limits/excluded_users/list/continue (ExcludedUsersListContinueArg, ExcludedUsersListResult, ExcludedUsersListContinueError) + "Continue listing member space limits excluded users." + + attrs + auth = "team" + scope = "members.read" + + +route properties/template/add (file_properties.AddTemplateArg, file_properties.AddTemplateResult, file_properties.ModifyTemplateError) deprecated + "Permission : Team member file access." + + attrs + auth = "team" + scope = "files.team_metadata.write" + +route properties/template/get (file_properties.GetTemplateArg, file_properties.GetTemplateResult, file_properties.TemplateError) deprecated + "Permission : Team member file access. The scope for the route is files.team_metadata.write." + + attrs + auth = "team" + scope = "files.team_metadata.write" + + +union AddSecondaryEmailResult + "Result of trying to add a secondary email to a user. + 'success' is the only value indicating that a secondary email was successfully added to a user. + The other values explain the type of error that occurred, and include the email for which the error occurred." + success secondary_emails.SecondaryEmail + "Describes a secondary email that was successfully added to a user." + unavailable common.EmailAddress + "Secondary email is not available to be claimed by the user." + already_pending common.EmailAddress + "Secondary email is already a pending email for the user." + already_owned_by_user common.EmailAddress + "Secondary email is already a verified email for the user." + reached_limit common.EmailAddress + "User already has the maximum number of secondary emails allowed." + transient_error common.EmailAddress + "A transient error occurred. Please try again later." + too_many_updates common.EmailAddress + "An error occurred due to conflicting updates. Please try again later." + unknown_error common.EmailAddress + "An unknown error occurred." + rate_limited common.EmailAddress + "Too many emails are being sent to this email address. Please try again later." + + example default + success = default + + example unavailable + unavailable = "alice@example.com" + +union UserAddResult + "Result of trying to add secondary emails to a user. + 'success' is the only value indicating that a user was successfully retrieved for adding secondary emails. + The other values explain the type of error that occurred, and include the user for which the error occurred." + success UserSecondaryEmailsResult + "Describes a user and the results for each attempt to add a secondary email." + invalid_user UserSelectorArg + "Specified user is not a valid target for adding secondary emails." + unverified UserSelectorArg + "Secondary emails can only be added to verified users." + placeholder_user UserSelectorArg + "Secondary emails cannot be added to placeholder users." + + example default + success = default + + example invalid + invalid_user = default + +union AddSecondaryEmailsError + "Error returned when adding secondary emails fails." + secondary_emails_disabled + "Secondary emails are disabled for the team." + too_many_emails + "A maximum of 20 secondary emails can be added in a single call." + +union ResendSecondaryEmailResult + "Result of trying to resend verification email to a secondary email address. + 'success' is the only value indicating that a verification email was successfully sent. + The other values explain the type of error that occurred, and include the email for which the error occurred." + success common.EmailAddress + "A verification email was successfully sent to the secondary email address." + not_pending common.EmailAddress + "This secondary email address is not pending for the user." + rate_limited common.EmailAddress + "Too many emails are being sent to this email address. Please try again later." + + example default + success = "alice@example.com" + +union UserResendResult + "Result of trying to resend verification emails to a user. + 'success' is the only value indicating that a user was successfully retrieved for sending verification emails. + The other values explain the type of error that occurred, and include the user for which the error occurred." + success UserResendEmailsResult + "Describes a user and the results for each attempt to resend verification emails." + invalid_user UserSelectorArg + "Specified user is not a valid target for resending verification emails." + + example default + success = default + + example invalid + invalid_user = default + +union DeleteSecondaryEmailResult + "Result of trying to delete a secondary email address. + 'success' is the only value indicating that a secondary email was successfully deleted. + The other values explain the type of error that occurred, and include the email for which the error occurred." + success common.EmailAddress + "The secondary email was successfully deleted." + not_found common.EmailAddress + "The email address was not found for the user." + cannot_remove_primary common.EmailAddress + "The email address is the primary email address of the user, and cannot be removed." + + example default + success = "alice@example.com" + + example not_found + not_found = "alic@example.com" + +union UserDeleteResult + "Result of trying to delete a user's secondary emails. + 'success' is the only value indicating that a user was successfully retrieved for deleting secondary emails. + The other values explain the type of error that occurred, and include the user for which the error occurred." + success UserDeleteEmailsResult + "Describes a user and the results for each attempt to delete a secondary email." + invalid_user UserSelectorArg + "Specified user is not a valid target for deleting secondary emails." + + example default + success = default + + example invalid_user + invalid_user = default + +struct UserSecondaryEmailsArg + "User and a list of secondary emails." + user UserSelectorArg + secondary_emails List(common.EmailAddress) + + example default + user = default + secondary_emails = ["bob2@hotmail.com", "bob@inst.gov"] + +struct UserSecondaryEmailsResult + user UserSelectorArg + results List(AddSecondaryEmailResult) + + example default + user = default + results = [default, unavailable] + +struct AddSecondaryEmailsArg + new_secondary_emails List(UserSecondaryEmailsArg) + "List of users and secondary emails to add." + + example default + new_secondary_emails = [default] + +struct AddSecondaryEmailsResult + results List(UserAddResult) + "List of users and secondary email results." + + example default + results = [default, invalid] + +struct ResendVerificationEmailArg + emails_to_resend List(UserSecondaryEmailsArg) + "List of users and secondary emails to resend verification emails to." + + example default + emails_to_resend = [default] + +struct UserResendEmailsResult + user UserSelectorArg + results List(ResendSecondaryEmailResult) + + example default + user = default + results = [default] + +struct ResendVerificationEmailResult + "List of users and resend results." + results List(UserResendResult) + + example default + results = [default] + +struct DeleteSecondaryEmailsArg + emails_to_delete List(UserSecondaryEmailsArg) + "List of users and their secondary emails to delete." + + example default + emails_to_delete = [default] + +struct UserDeleteEmailsResult + user UserSelectorArg + results List(DeleteSecondaryEmailResult) + + example default + user = default + results = [default, not_found] + +struct DeleteSecondaryEmailsResult + results List(UserDeleteResult) + + example default + results = [default] + +route members/secondary_emails/add (AddSecondaryEmailsArg, AddSecondaryEmailsResult, AddSecondaryEmailsError) + "Add secondary emails to users. + Permission : Team member management. + Emails that are on verified domains will be verified automatically. + For each email address not on a verified domain a verification email will be sent." + + attrs + auth = "team" + scope = "members.write" + +route members/secondary_emails/resend_verification_emails (ResendVerificationEmailArg, ResendVerificationEmailResult, Void) + "Resend secondary email verification emails. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/secondary_emails/delete (DeleteSecondaryEmailsArg, DeleteSecondaryEmailsResult, Void) + "Delete secondary emails from users + Permission : Team member management. + Users will be notified of deletions of verified secondary emails at both the secondary email and their primary email." + + attrs + auth = "team" + scope = "members.write" + + +alias NumberPerDay = List(UInt64?) + +union TeamReportFailureReason + temporary_error + "We couldn't create the report, but we think this was a fluke. Everything should work if you try it again." + many_reports_at_once + "Too many other reports are being created right now. Try creating this report again once the others finish." + too_much_data + "We couldn't create the report. Try creating the report again with less data." + + example default + many_reports_at_once = null + +union DateRangeError + "Errors that can originate from problems in input arguments to reports." + +struct DateRange + "Input arguments that can be provided for most reports." + start_date common.Date? + "Optional starting date (inclusive). If start_date is None or too long ago, this field will + be set to 6 months ago." + end_date common.Date? + "Optional ending date (exclusive)." + +struct StorageBucket + "Describes the number of users in a specific storage bucket." + bucket String + "The name of the storage bucket. + For example, '1G' is a bucket of users with storage size up to 1 Giga." + users UInt64 + "The number of people whose storage is in the range of this storage bucket." + + example default + bucket = "1G" + users = 21 + +struct BaseDfbReport + "Base report structure." + start_date String + "First date present in the results as 'YYYY-MM-DD' or None." + +struct GetStorageReport extends BaseDfbReport + "Storage Report Result. + Each of the items in the storage report is an array of values, one value per day. + If there is no data for a day, then the value will be None." + total_usage NumberPerDay + "Sum of the shared, unshared, and datastore usages, for each day." + shared_usage NumberPerDay + "Array of the combined size (bytes) of team members' shared folders, for each day." + unshared_usage NumberPerDay + "Array of the combined size (bytes) of team members' root namespaces, for each day." + shared_folders NumberPerDay + "Array of the number of shared folders owned by team members, for each day." + member_storage_map List(List(StorageBucket)) + "Array of storage summaries of team members' account sizes. + Each storage summary is an array of key, value pairs, where each pair describes + a storage bucket. + The key indicates the upper bound of the bucket and the value is the + number of users in that bucket. There is one such summary per day. + If there is no data for a day, the storage summary will be empty." + +struct GetActivityReport extends BaseDfbReport + "Activity Report Result. + Each of the items in the storage report is an array of values, one value per day. + If there is no data for a day, then the value will be None." + adds NumberPerDay + "Array of total number of adds by team members." + edits NumberPerDay + "Array of number of edits by team members. + If the same user edits the same file multiple times this is counted as a single edit." + deletes NumberPerDay + "Array of total number of deletes by team members." + active_users_28_day NumberPerDay + "Array of the number of users who have been active in the last 28 days." + active_users_7_day NumberPerDay + "Array of the number of users who have been active in the last week." + active_users_1_day NumberPerDay + "Array of the number of users who have been active in the last day." + active_shared_folders_28_day NumberPerDay + "Array of the number of shared folders with some activity in the last 28 days." + active_shared_folders_7_day NumberPerDay + "Array of the number of shared folders with some activity in the last week." + active_shared_folders_1_day NumberPerDay + "Array of the number of shared folders with some activity in the last day." + shared_links_created NumberPerDay + "Array of the number of shared links created." + shared_links_viewed_by_team NumberPerDay + "Array of the number of views by team users to shared links created by the team." + shared_links_viewed_by_outside_user NumberPerDay + "Array of the number of views by users outside of the team to shared links created by the team." + shared_links_viewed_by_not_logged_in NumberPerDay + "Array of the number of views by non-logged-in users to shared links created by the team." + shared_links_viewed_total NumberPerDay + "Array of the total number of views to shared links created by the team." + +struct GetMembershipReport extends BaseDfbReport + "Membership Report Result. + Each of the items in the storage report is an array of values, one value per day. + If there is no data for a day, then the value will be None." + team_size NumberPerDay + "Team size, for each day." + pending_invites NumberPerDay + "The number of pending invites to the team, for each day." + members_joined NumberPerDay + "The number of members that joined the team, for each day." + suspended_members NumberPerDay + "The number of suspended team members, for each day." + licenses NumberPerDay + "The total number of licenses the team has, for each day." + +struct DevicesActive + "Each of the items is an array of values, one value per day. + The value is the number of devices active within a time window, ending with that day. + If there is no data for a day, then the value will be None." + windows NumberPerDay + "Array of number of linked windows (desktop) clients with activity." + macos NumberPerDay + "Array of number of linked mac (desktop) clients with activity." + linux NumberPerDay + "Array of number of linked linus (desktop) clients with activity." + ios NumberPerDay + "Array of number of linked ios devices with activity." + android NumberPerDay + "Array of number of linked android devices with activity." + other NumberPerDay + "Array of number of other linked devices (blackberry, windows phone, etc) + with activity." + total NumberPerDay + "Array of total number of linked clients with activity." + +struct GetDevicesReport extends BaseDfbReport + "Devices Report Result. Contains subsections for different time ranges of activity. + Each of the items in each subsection of the storage report is an array of values, + one value per day. + If there is no data for a day, then the value will be None." + active_1_day DevicesActive + "Report of the number of devices active in the last day." + active_7_day DevicesActive + "Report of the number of devices active in the last 7 days." + active_28_day DevicesActive + "Report of the number of devices active in the last 28 days." + + +route reports/get_storage (DateRange, GetStorageReport, DateRangeError) deprecated + "Retrieves reporting data about a team's storage usage. + Deprecated: Will be removed on July 1st 2021." + + attrs + auth = "team" + scope = "team_info.read" + + +route reports/get_activity (DateRange, GetActivityReport, DateRangeError) deprecated + "Retrieves reporting data about a team's user activity. + Deprecated: Will be removed on July 1st 2021." + + attrs + auth = "team" + scope = "team_info.read" + + +route reports/get_membership (DateRange, GetMembershipReport, DateRangeError) deprecated + "Retrieves reporting data about a team's membership. + Deprecated: Will be removed on July 1st 2021." + + attrs + auth = "team" + scope = "team_info.read" + + +route reports/get_devices (DateRange, GetDevicesReport, DateRangeError) deprecated + "Retrieves reporting data about a team's linked devices. + Deprecated: Will be removed on July 1st 2021." + + attrs + auth = "team" + scope = "team_info.read" + + +union DesktopPlatform + windows + "Official Windows Dropbox desktop client." + mac + "Official Mac Dropbox desktop client." + linux + "Official Linux Dropbox desktop client." + +union MobileClientPlatform + iphone + "Official Dropbox iPhone client." + ipad + "Official Dropbox iPad client." + android + "Official Dropbox Android client." + windows_phone + "Official Dropbox Windows phone client." + blackberry + "Official Dropbox Blackberry client." + +union ListMemberDevicesError + member_not_found + "Member not found." + +union ListMembersDevicesError + reset + "Indicates that the cursor has been invalidated. Call + :route:`devices/list_members_devices` again with an empty cursor to obtain a new cursor." + +union_closed RevokeDeviceSessionArg + web_session DeviceSessionArg + "End an active session." + desktop_client RevokeDesktopClientArg + "Unlink a linked desktop device." + mobile_client DeviceSessionArg + "Unlink a linked mobile device." + + example default + web_session = default + +union RevokeDeviceSessionError + device_session_not_found + "Device session not found." + member_not_found + "Member not found." + +union RevokeDeviceSessionBatchError + "" + +union ListTeamDevicesError + reset + "Indicates that the cursor has been invalidated. Call + :route:`devices/list_team_devices` again with an empty cursor to obtain a new cursor." + +struct DeviceSessionArg + session_id String + "The session id." + team_member_id String + "The unique id of the member owning the device." + + example default + session_id = "1234faaf0678bcde" + team_member_id = "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" + +struct RevokeDesktopClientArg extends DeviceSessionArg + delete_on_unlink Boolean = false + "Whether to delete all files of the account (this is possible only if supported by + the desktop client and will be made the next time the client access the account)." + + example default + session_id = "1234faaf0678bcde" + team_member_id = "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" + +struct ListMemberDevicesArg + team_member_id String + "The team's member id." + include_web_sessions Boolean = true + "Whether to list web sessions of the team's member." + include_desktop_clients Boolean = true + "Whether to list linked desktop devices of the team's member." + include_mobile_clients Boolean = true + "Whether to list linked mobile devices of the team's member." + + example default + team_member_id = "dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + +struct DeviceSession + session_id String + "The session id." + ip_address String? + "The IP address of the last activity from this session." + country String? + "The country from which the last activity from this session was made." + created common.DropboxTimestamp? + "The time this session was created." + updated common.DropboxTimestamp? + "The time of the last activity from this session." + +struct ActiveWebSession extends DeviceSession + "Information on active web sessions." + user_agent String + "Information on the hosting device." + os String + "Information on the hosting operating system." + browser String + "Information on the browser used for this web session." + expires common.DropboxTimestamp? + "The time this session expires." + + example default + session_id = "dbwsid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + ip_address = "3.3.3.3" + country = "United States" + created = "2015-05-12T15:50:38Z" + updated = "2015-05-12T15:51:22Z" + user_agent = "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.815.0 Safari/535.1" + os = "Windows" + browser = "Chrome" + expires = "2015-05-13T15:51:22Z" + +struct DesktopClientSession extends DeviceSession + "Information about linked Dropbox desktop client sessions." + host_name String + "Name of the hosting desktop." + client_type DesktopPlatform + "The Dropbox desktop client type." + client_version String + "The Dropbox client version." + platform String + "Information on the hosting platform." + is_delete_on_unlink_supported Boolean + "Whether it's possible to delete all of the account files upon unlinking." + + example default + session_id = "dbdsid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + ip_address = "3.3.3.3" + country = "United States" + created = "2015-05-12T15:50:38Z" + updated = "2015-05-12T15:51:22Z" + host_name = "Home_desktop" + client_type = mac + client_version = "3.9.19" + platform = "Mac OS X 10.10.3" + is_delete_on_unlink_supported = true + +struct MobileClientSession extends DeviceSession + "Information about linked Dropbox mobile client sessions." + device_name String + "The device name." + client_type MobileClientPlatform + "The mobile application type." + client_version String? + "The dropbox client version." + os_version String? + "The hosting OS version." + last_carrier String? + "last carrier used by the device." + + example default + session_id = "dbmsid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + ip_address = "3.3.3.3" + country = "United States" + created = "2015-05-12T15:50:38Z" + updated = "2015-05-12T15:51:22Z" + device_name = "Iphone 6" + client_type = iphone + client_version = "3.9.5" + os_version = "8.4" + last_carrier = "Verizon" + +struct ListMemberDevicesResult + active_web_sessions List(ActiveWebSession)? + "List of web sessions made by this team member." + desktop_client_sessions List(DesktopClientSession)? + "List of desktop clients used by this team member." + mobile_client_sessions List(MobileClientSession)? + "List of mobile client used by this team member." + +struct ListMembersDevicesArg + cursor String? + "At the first call to the :route:`devices/list_members_devices` the cursor shouldn't be passed. + Then, if the result of the call includes a cursor, the following requests should include the + received cursors in order to receive the next sub list of team devices." + include_web_sessions Boolean = true + "Whether to list web sessions of the team members." + include_desktop_clients Boolean = true + "Whether to list desktop clients of the team members." + include_mobile_clients Boolean = true + "Whether to list mobile clients of the team members." + +struct MemberDevices + "Information on devices of a team's member." + team_member_id String + "The member unique Id." + web_sessions List(ActiveWebSession)? + "List of web sessions made by this team member." + desktop_clients List(DesktopClientSession)? + "List of desktop clients by this team member." + mobile_clients List(MobileClientSession)? + "List of mobile clients by this team member." + + example default + team_member_id = "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" + +struct ListMembersDevicesResult + devices List(MemberDevices) + "The devices of each member of the team." + has_more Boolean + "If true, then there are more devices available. Pass the + cursor to :route:`devices/list_members_devices` to retrieve the rest." + cursor String? + "Pass the cursor into :route:`devices/list_members_devices` to receive the next + sub list of team's devices." + +struct RevokeDeviceSessionBatchArg + revoke_devices List(RevokeDeviceSessionArg) + + example default + revoke_devices = [default] + +struct RevokeDeviceSessionStatus + success Boolean + "Result of the revoking request." + error_type RevokeDeviceSessionError? + "The error cause in case of a failure." + +struct RevokeDeviceSessionBatchResult + revoke_devices_status List(RevokeDeviceSessionStatus) + +struct ListTeamDevicesArg + cursor String? + "At the first call to the :route:`devices/list_team_devices` the cursor shouldn't be passed. + Then, if the result of the call includes a cursor, the following requests should include the + received cursors in order to receive the next sub list of team devices." + include_web_sessions Boolean = true + "Whether to list web sessions of the team members." + include_desktop_clients Boolean = true + "Whether to list desktop clients of the team members." + include_mobile_clients Boolean = true + "Whether to list mobile clients of the team members." + + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +struct ListTeamDevicesResult + devices List(MemberDevices) + "The devices of each member of the team." + has_more Boolean + "If true, then there are more devices available. Pass the + cursor to :route:`devices/list_team_devices` to retrieve the rest." + cursor String? + "Pass the cursor into :route:`devices/list_team_devices` to receive the next + sub list of team's devices." + + example default + devices = [default] + has_more = false + +route devices/list_member_devices (ListMemberDevicesArg, ListMemberDevicesResult, ListMemberDevicesError) + "List all device sessions of a team's member." + + attrs + auth = "team" + scope = "sessions.list" + +route devices/list_members_devices (ListMembersDevicesArg, ListMembersDevicesResult, ListMembersDevicesError) + "List all device sessions of a team. + Permission : Team member file access." + + attrs + auth = "team" + scope = "sessions.list" + +route devices/revoke_device_session (RevokeDeviceSessionArg, Void, RevokeDeviceSessionError) + "Revoke a device session of a team's member." + + attrs + auth = "team" + scope = "sessions.modify" + +route devices/revoke_device_session_batch (RevokeDeviceSessionBatchArg, RevokeDeviceSessionBatchResult, RevokeDeviceSessionBatchError) + "Revoke a list of device sessions of team members." + + attrs + auth = "team" + scope = "sessions.modify" + +route devices/list_team_devices (ListTeamDevicesArg, ListTeamDevicesResult, ListTeamDevicesError) deprecated + "List all device sessions of a team. + Permission : Team member file access." + + attrs + auth = "team" + scope = "sessions.list" + + +union TeamFolderStatus + active + "The team folder and sub-folders are available to all members." + archived + "The team folder is archived and is not accessible outside of the team folder manager." + archive_in_progress + "The team folder is in the process of being archived and is not accessible outside of the team folder manager." + inactive + "The team folder is unmounted and can be restored." + +struct TeamFolderIdArg + team_folder_id common.SharedFolderId + "The ID of the team folder." + + example default + team_folder_id = "123456789" + +struct TeamFolderIdListArg + team_folder_ids List(common.SharedFolderId, min_items=1) + "The list of team folder IDs." + + example default + team_folder_ids = ["947182", "5819424", "852307532"] + +struct TeamFolderMetadata + "Properties of a team folder." + team_folder_id common.SharedFolderId + "The ID of the team folder." + name String + "The name of the team folder." + status TeamFolderStatus + "The status of the team folder." + is_team_shared_dropbox Boolean + "True if this team folder is a shared team root." + sync_setting files.SyncSetting + "The sync setting applied to this team folder." + content_sync_settings List(files.ContentSyncSetting) + "Sync settings applied to contents of this team folder." + quota_limit Int64 = 0 + "The quota limit in bytes for this team folder namespace tree." + + example default + name = "Marketing" + team_folder_id = "123456789" + status = active + is_team_shared_dropbox = false + sync_setting = default + content_sync_settings = [default] + quota_limit = 123456789 + +union TeamFolderAccessError + invalid_team_folder_id + "The team folder ID is invalid." + no_access + "The authenticated app does not have permission to manage that team folder." + +union TeamFolderInvalidStatusError + active + "The folder is active and the operation did not succeed." + archived + "The folder is archived and the operation did not succeed." + archive_in_progress + "The folder is being archived and the operation did not succeed." + +union TeamFolderTeamSharedDropboxError + disallowed + "This action is not allowed for a shared team root." + +union BaseTeamFolderError + "Base error that all errors for existing team folders should extend." + access_error TeamFolderAccessError + status_error TeamFolderInvalidStatusError + team_shared_dropbox_error TeamFolderTeamSharedDropboxError + +struct TeamFolderCreateArg + name String + "Name for the new team folder." + sync_setting files.SyncSettingArg? + "The sync setting to apply to this team folder. Only permitted if the team has team selective sync enabled." + + example default + name = "Marketing" + sync_setting = not_synced + +union TeamFolderCreateError + invalid_folder_name + "The provided name cannot be used." + folder_name_already_used + "There is already a team folder with the provided name." + folder_name_reserved + "The provided name cannot be used because it is reserved." + sync_settings_error files.SyncSettingsError + "An error occurred setting the sync settings." + +struct TeamFolderRenameArg extends TeamFolderIdArg + name String + "New team folder name." + + example default + team_folder_id = "123456789" + name = "Sales" + +union TeamFolderRenameError extends BaseTeamFolderError + invalid_folder_name + "The provided folder name cannot be used." + folder_name_already_used + "There is already a team folder with the same name." + folder_name_reserved + "The provided name cannot be used because it is reserved." + +struct TeamFolderListArg + limit UInt32(max_value=1000, min_value=1) = 1000 + "The maximum number of results to return per request." + + example default + limit = 100 + +struct TeamFolderListResult + "Result for :route:`team_folder/list` and :route:`team_folder/list/continue`." + team_folders List(TeamFolderMetadata) + "List of all team folders in the authenticated team." + cursor String + "Pass the cursor into :route:`team_folder/list/continue` to obtain additional team folders." + has_more Boolean + "Is true if there are additional team folders that have not been returned + yet. An additional call to :route:`team_folder/list/continue` can retrieve them." + + example default + team_folders = [default] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = false + +struct TeamFolderListError + access_error TeamFolderAccessError + +struct TeamFolderListContinueArg + cursor String + "Indicates from what point to get the next set of team folders." + + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +union TeamFolderListContinueError + invalid_cursor + "The cursor is invalid." + +union_closed TeamFolderGetInfoItem + id_not_found String = "" + "An ID that was provided as a parameter to :route:`team_folder/get_info` did not + match any of the team's team folders." + team_folder_metadata TeamFolderMetadata + "Properties of a team folder." + +union TeamFolderActivateError extends BaseTeamFolderError + "" + +union TeamFolderRestoreError extends BaseTeamFolderError + "" + +struct TeamFolderArchiveArg extends TeamFolderIdArg + force_async_off Boolean = false + "Whether to force the archive to happen synchronously." + + example default + team_folder_id = "123456789" + force_async_off = false + +union_closed TeamFolderArchiveLaunch extends async.LaunchResultBase + complete TeamFolderMetadata + + example default + complete = default + + example async_job_id + async_job_id = "34g93hh34h04y384084" + +union TeamFolderArchiveError extends BaseTeamFolderError + "" + +union_closed TeamFolderArchiveJobStatus extends async.PollResultBase + complete TeamFolderMetadata + "The archive job has finished. The value is the metadata for the resulting team folder." + failed TeamFolderArchiveError + "Error occurred while performing an asynchronous job from :route:`team_folder/archive`." + + example default + complete = default + +union TeamFolderPermanentlyDeleteError extends BaseTeamFolderError + "" + +struct TeamFolderUpdateSyncSettingsArg extends TeamFolderIdArg + sync_setting files.SyncSettingArg? + "Sync setting to apply to the team folder itself. Only meaningful if the team folder is not a shared team root." + content_sync_settings List(files.ContentSyncSettingArg)? + "Sync settings to apply to contents of this team folder." + + example default + team_folder_id = "123456789" + sync_setting = default + content_sync_settings = [default] + +union TeamFolderUpdateSyncSettingsError extends BaseTeamFolderError + sync_settings_error files.SyncSettingsError + "An error occurred setting the sync settings." + +route team_folder/create (TeamFolderCreateArg, TeamFolderMetadata, TeamFolderCreateError) + "Creates a new, active, team folder with no members. This endpoint can only be used for teams + that do not already have a shared team space. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.write" + +route team_folder/rename (TeamFolderRenameArg, TeamFolderMetadata, TeamFolderRenameError) + "Changes an active team folder's name. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.write" + +route team_folder/list (TeamFolderListArg, TeamFolderListResult, TeamFolderListError) + "Lists all team folders. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.read" + +route team_folder/list/continue (TeamFolderListContinueArg, TeamFolderListResult, TeamFolderListContinueError) + "Once a cursor has been retrieved from :route:`team_folder/list`, use this to paginate + through all team folders. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.read" + +route team_folder/get_info (TeamFolderIdListArg, List(TeamFolderGetInfoItem), Void) + "Retrieves metadata for team folders. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.read" + +route team_folder/activate (TeamFolderIdArg, TeamFolderMetadata, TeamFolderActivateError) + "Sets an archived team folder's status to active. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.write" + +route team_folder/restore (TeamFolderIdArg, TeamFolderMetadata, TeamFolderRestoreError) + "Sets an inactive team folder's status to active. + Permission: Team member file access." + + attrs + auth = "team" + is_preview = true + scope = "team_data.content.write" + +route team_folder/archive (TeamFolderArchiveArg, TeamFolderArchiveLaunch, TeamFolderArchiveError) + "Sets an active team folder's status to archived and removes all folder and file members. + This endpoint cannot be used for teams that have a shared team space. This route will + either finish synchronously, or return a job ID and do the async archive job in + background. Please use team_folder/archive/check to check the job status. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.write" + +route team_folder/archive/check (async.PollArg, TeamFolderArchiveJobStatus, async.PollError) + "Returns the status of an asynchronous job for archiving a team folder. + The job may show '.tag' as complete, but the team folder could still be in the process of archiving (indicated by + :field:`TeamFolderMetadata.status` with 'archive_in_progress'). + To confirm that the team folder is fully archived, check the field :field:`TeamFolderMetadata.status` in the response + for the value 'archived'. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.write" + +route team_folder/permanently_delete (TeamFolderIdArg, Void, TeamFolderPermanentlyDeleteError) + "Permanently deletes an archived team folder. This endpoint cannot be used for teams + that have a shared team space. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.content.write" + +route team_folder/update_sync_settings (TeamFolderUpdateSyncSettingsArg, TeamFolderMetadata, TeamFolderUpdateSyncSettingsError) + "Updates the sync settings on a team folder or its contents. Use of this endpoint requires that the team has team selective sync enabled." + + attrs + auth = "team" + scope = "team_data.content.write" + + +route members/recover (MembersRecoverArg, Void, MembersRecoverError) + "Recover a deleted member. + Permission : Team member management + Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + + attrs + auth = "team" + scope = "members.delete" + + +alias MembersGetInfoResult = List(MembersGetInfoItem) + +alias TeamMemberRoleId = String(max_length=128, pattern="pid_dbtmr:.*") + +union_closed AdminTier + "Describes which team-related admin permissions a user has." + team_admin + "User is an administrator of the team - has all permissions." + user_management_admin + "User can do most user provisioning, de-provisioning and management." + support_admin + "User can do a limited set of common support tasks for existing users. Note: Dropbox is adding new types of admin roles; these may display as support_admin." + member_only + "User is not an admin of the team." + + example default + member_only = null + +union_closed MemberAddResult extends MemberAddResultBase + "Describes the result of attempting to add a single user to the team. + 'success' is the only value indicating that a user was indeed added to the team - + the other values explain the type of failure that occurred, and include the email + of the user for which the operation has failed." + success TeamMemberInfo + "Describes a user that was successfully added to the team." + + example default + success = default + +union_closed MemberAddResultBase + team_license_limit common.EmailAddress + "Team is already full. The organization has no available licenses." + free_team_member_limit_reached common.EmailAddress + "Team is already full. The free team member limit has been reached." + user_already_on_team common.EmailAddress + "User is already on this team. The provided email address is associated + with a user who is already a member of (including in recoverable state) or invited to the team." + user_on_another_team common.EmailAddress + "User is already on another team. The provided email address is associated + with a user that is already a member or invited to another team." + user_already_paired common.EmailAddress + "User is already paired." + user_migration_failed common.EmailAddress + "User migration has failed." + duplicate_external_member_id common.EmailAddress + "A user with the given external member ID already exists on the team (including in recoverable state)." + duplicate_member_persistent_id common.EmailAddress + "A user with the given persistent ID already exists on the team (including in recoverable state)." + persistent_id_disabled common.EmailAddress + "Persistent ID is only available to teams with persistent ID SAML configuration. Please contact Dropbox for more information." + user_creation_failed common.EmailAddress + "User creation has failed." + + example default + team_license_limit = "apple@orange.com" + +union MemberAddV2Result extends MemberAddResultBase + "Describes the result of attempting to add a single user to the team. + 'success' is the only value indicating that a user was indeed added to the team - + the other values explain the type of failure that occurred, and include the email + of the user for which the operation has failed." + success TeamMemberInfoV2 + "Describes a user that was successfully added to the team." + + example default + success = default + +union_closed MemberSelectorError extends UserSelectorError + user_not_in_team + "The user is not a member of the team." + +union_closed MembersAddJobStatus extends async.PollResultBase + complete List(MemberAddResult) + "The asynchronous job has finished. For each member that was specified in the + parameter :type:`MembersAddArg` that was provided to :route:`members/add`, a + corresponding item is returned in this list." + failed String = "" + "The asynchronous job returned an error. The string contains an error message." + + example default + complete = [default] + +union MembersAddJobStatusV2Result extends async.PollResultBase + complete List(MemberAddV2Result) + "The asynchronous job has finished. For each member that was specified in the + parameter :type:`MembersAddArg` that was provided to :route:`members/add:2`, a + corresponding item is returned in this list." + failed String = "" + "The asynchronous job returned an error. The string contains an error message." + + example default + complete = [default] + +union_closed MembersAddLaunch extends async.LaunchResultBase + complete List(MemberAddResult) + + example default + complete = [default] + +union MembersAddLaunchV2Result extends async.LaunchResultBase + complete List(MemberAddV2Result) + + example default + complete = [default] + +union MembersDeactivateError extends UserSelectorError + user_not_in_team + "The user is not a member of the team." + +union MembersDeleteFormerMemberFilesError extends MembersPermanentlyDeleteFilesError + user_not_removed + "User has not been removed from the team." + +union MembersDeleteProfilePhotoError extends MemberSelectorError + set_profile_disallowed + "Modifying deleted users is not allowed." + +union MembersGetInfoError + "" + +union_closed MembersGetInfoItem extends MembersGetInfoItemBase + "Describes a result obtained for a single user whose id was specified in the + parameter of :route:`members/get_info`." + member_info TeamMemberInfo + "Info about a team member." + + example default + member_info = default + +union_closed MembersGetInfoItemBase + id_not_found String = "" + "An ID that was provided as a parameter to :route:`members/get_info` or :route:`members/get_info:2`, + and did not match a corresponding user. This might be a team_member_id, an + email, or an external ID, depending on how the method was called." + +union MembersGetInfoItemV2 extends MembersGetInfoItemBase + "Describes a result obtained for a single user whose id was specified in the + parameter of :route:`members/get_info:2`." + member_info TeamMemberInfoV2 + "Info about a team member." + + example default + member_info = default + +union MembersListContinueError + invalid_cursor + "The cursor is invalid." + +union MembersListError + "" + +union MembersPermanentlyDeleteFilesError extends MembersDeactivateError + transfer_in_progress + "Cannot permanently delete files while it's being transferred." + already_transferred + "Cannot permanently delete files that have already been transferred." + already_transferred_or_deleted + "Cannot permanently delete files that have already been transferred or deleted." + +union MembersRecoverError extends UserSelectorError + user_unrecoverable + "The user is not recoverable." + user_not_in_team + "The user is not a member of the team." + team_license_limit + "Team is full. The organization has no available licenses." + +union MembersRemoveError extends MembersTransferFilesError + remove_last_admin + "The user is the last admin of the team, so it cannot be removed from it." + cannot_keep_account_and_transfer + "Cannot keep account and transfer the data to another user at the same time." + cannot_keep_account_and_delete_data + "Cannot keep account and delete the data at the same time. To keep the account the argument wipe_data should be set to :val:`false`." + cannot_keep_account_and_permanently_delete + "Cannot keep account and permanently delete the data at the same time. To keep the account the argument permanently_delete_files should be set to :val:`false`." + email_address_too_long_to_be_disabled + "The email address of the user is too long to be disabled." + cannot_keep_invited_user_account + "Cannot keep account of an invited user." + cannot_retain_shares_when_data_wiped + "Cannot retain team shares when the user's data is marked for deletion on their linked devices. The argument wipe_data should be set to :val:`false`." + cannot_retain_shares_when_no_account_kept + "The user's account must be kept in order to retain team shares. The argument keep_account should be set to :val:`true`." + cannot_retain_shares_when_team_external_sharing_off + "Externally sharing files, folders, and links must be enabled in team settings in order to retain team shares for the user." + cannot_keep_account + "Only a team admin, can convert this account to a Basic account." + cannot_keep_account_under_legal_hold + "This user content is currently being held. To convert this member's account to a Basic account, you'll first need to remove them from the hold." + cannot_keep_account_required_to_sign_tos + "To convert this member to a Basic account, they'll first need to sign in to Dropbox and agree to the terms of service." + cannot_permanently_delete_and_transfer + "Cannot permanently delete files and transfer the data to another user at the same time." + member_is_transfer_destination + "This user is the active destination of an in-progress file transfer. Wait for the transfer to complete before removing this member." + +union MembersSendWelcomeError extends MemberSelectorError + "" + +union MembersSetPermissions2Error extends UserSelectorError + last_admin + "Cannot remove the admin setting of the last admin." + user_not_in_team + "The user is not a member of the team." + cannot_set_permissions + "Cannot remove/grant permissions. This can happen if the team member is suspended." + role_not_found + "No matching role found. At least one of the provided new_roles does not exist on this team." + +union MembersSetPermissionsError extends UserSelectorError + last_admin + "Cannot remove the admin setting of the last admin." + user_not_in_team + "The user is not a member of the team." + cannot_set_permissions + "Cannot remove/grant permissions." + team_license_limit + "Team is full. The organization has no available licenses." + +union MembersSetProfileError extends MemberSelectorError + external_id_and_new_external_id_unsafe + "It is unsafe to use both external_id and new_external_id." + no_new_data_specified + "None of new_email, new_given_name, new_surname, or new_external_id are specified." + email_reserved_for_other_user + "Email is already reserved for another user." + external_id_used_by_other_user + "The external ID is already in use by another team member." + set_profile_disallowed + "Modifying deleted users is not allowed." + param_cannot_be_empty + "Parameter new_email cannot be empty." + persistent_id_disabled + "Persistent ID is only available to teams with persistent ID SAML configuration. Please contact Dropbox for more information." + persistent_id_used_by_other_user + "The persistent ID is already in use by another team member." + directory_restricted_off + "Directory Restrictions option is not available." + +union MembersSetProfilePhotoError extends MemberSelectorError + set_profile_disallowed + "Modifying deleted users is not allowed." + photo_error account.SetProfilePhotoError + +union MembersSuspendError extends MembersDeactivateError + suspend_inactive_user + "The user is not active, so it cannot be suspended." + suspend_last_admin + "The user is the last admin of the team, so it cannot be suspended." + team_license_limit + "Team is full. The organization has no available licenses." + +union MembersTransferFilesError extends MembersPermanentlyDeleteFilesError + removed_and_transfer_dest_should_differ + "Expected removed user and transfer_dest user to be different." + removed_and_transfer_admin_should_differ + "Expected removed user and transfer_admin user to be different." + transfer_dest_user_not_found + "No matching user found for the argument transfer_dest_id." + transfer_dest_user_not_in_team + "The provided transfer_dest_id does not exist on this team." + transfer_admin_user_not_in_team + "The provided transfer_admin_id does not exist on this team." + transfer_admin_user_not_found + "No matching user found for the argument transfer_admin_id." + unspecified_transfer_admin_id + "The transfer_admin_id argument must be provided when file transfer is requested." + transfer_admin_is_not_admin + "Specified transfer_admin user is not a team admin." + recipient_not_verified + "The recipient user's email is not verified." + +union MembersTransferFormerMembersFilesError extends MembersTransferFilesError + user_data_is_being_transferred + "The user's data is being transferred. Please wait some time before retrying." + user_not_removed + "No matching removed user found for the argument user." + user_data_cannot_be_transferred + "User files aren't transferable anymore." + user_data_already_transferred + "User's data has already been transferred to another user." + +union MembersUnsuspendError extends MembersDeactivateError + unsuspend_non_suspended_member + "The user is unsuspended, so it cannot be unsuspended again." + team_license_limit + "Team is full. The organization has no available licenses." + +struct MemberAddArg extends MemberAddArgBase + role AdminTier = member_only + + example default + member_email = "tom.s@company.com" + member_given_name = "Tom" + member_surname = "Silverstone" + member_external_id = "company_id:342432" + role = default + +struct MemberAddArgBase + member_email common.EmailAddress + member_given_name common.OptionalNamePart? + "Member's first name." + member_surname common.OptionalNamePart? + "Member's last name." + member_external_id team_common.MemberExternalId? + "External ID for member." + member_persistent_id String? + "Persistent ID for member. This field is only available to teams using persistent ID SAML configuration." + send_welcome_email Boolean = true + "Whether to send a welcome email to the member. + If send_welcome_email is false, no email invitation will be sent to the user. + This may be useful for apps using single sign-on (SSO) flows for onboarding that + want to handle announcements themselves." + is_directory_restricted Boolean? + "Whether a user is directory restricted." + + example default + member_email = "tom.s@company.com" + member_given_name = "Tom" + member_surname = "Silverstone" + member_external_id = "company_id:342432" + +struct MemberAddV2Arg extends MemberAddArgBase + role_ids List(TeamMemberRoleId, max_items=1)? + + example default + member_email = "tom.s@company.com" + member_given_name = "Tom" + member_surname = "Silverstone" + member_external_id = "company_id:342432" + role_ids = ["pid_dbtmr:2345"] + +struct MembersAddArg extends MembersAddArgBase + new_members List(MemberAddArg) + "Details of new members to be added to the team." + + example default + new_members = [default] + +struct MembersAddArgBase + force_async Boolean = false + "Whether to force the add to happen asynchronously." + + example default + force_async = true + +struct MembersAddV2Arg extends MembersAddArgBase + new_members List(MemberAddV2Arg) + "Details of new members to be added to the team." + + example default + new_members = [default] + +struct MembersDataTransferArg extends MembersDeactivateBaseArg + transfer_dest_id UserSelectorArg + "Files from the deleted member account will be transferred to this user." + transfer_admin_id UserSelectorArg + "Errors during the transfer process will be sent via + email to this user." + + example default + user = default + transfer_dest_id = default + transfer_admin_id = default + +struct MembersDeactivateArg extends MembersDeactivateBaseArg + wipe_data Boolean = true + "If provided, controls if the user's data will be deleted on their linked devices." + + example default + user = default + wipe_data = false + +struct MembersDeactivateBaseArg + "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + user UserSelectorArg + "Identity of user to remove/suspend/have their files moved." + +struct MembersDeleteProfilePhotoArg + user UserSelectorArg + "Identity of the user whose profile photo will be deleted." + + example default + user = default + +struct MembersFormerMemberArg + "Exactly one of team_member_id, email, or external_id must be provided to identify a former team member." + user UserSelectorArg + "Identity of user whose files will be permanently deleted." + +struct MembersGetAvailableTeamMemberRolesResult + "Available TeamMemberRole for the connected team. To be used with :route:`members/set_admin_permissions:2`." + roles List(TeamMemberRole) + "Available roles." + + example default + roles = [team_member_role_super, team_member_role_billing, team_member_role_user_management, team_member_role_support] + +struct MembersGetInfoArgs + members List(UserSelectorArg) + "List of team members." + + example default + members = [default] + +struct MembersGetInfoV2Arg + members List(UserSelectorArg) + "List of team members." + + example default + members = [default] + +struct MembersGetInfoV2Result + members_info List(MembersGetInfoItemV2) + "List of team members info." + + example default + members_info = [default] + +struct MembersListArg + limit UInt32(max_value=1000, min_value=1) = 1000 + "Number of results to return per call." + include_removed Boolean = false + "Whether to return removed members." + + example default + limit = 100 + include_removed = false + +struct MembersListContinueArg + cursor String + "Indicates from what point to get the next set of members." + + example default + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + +struct MembersListResult + members List(TeamMemberInfo) + "List of team members." + cursor String + "Pass the cursor into :route:`members/list/continue` to obtain the additional members." + has_more Boolean + "Is true if there are additional team members that have not been returned + yet. An additional call to :route:`members/list/continue` can retrieve them." + + example default + members = [default] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = true + +struct MembersListV2Result + members List(TeamMemberInfoV2) + "List of team members." + cursor String + "Pass the cursor into :route:`members/list/continue:2` to obtain the additional members." + has_more Boolean + "Is true if there are additional team members that have not been returned + yet. An additional call to :route:`members/list/continue:2` can retrieve them." + + example default + members = [default] + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + has_more = true + +struct MembersRecoverArg + "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + user UserSelectorArg + "Identity of user to recover." + + example default + user = default + +struct MembersRemoveArg extends MembersDeactivateArg + transfer_dest_id UserSelectorArg? + "If provided, files from the deleted member account will be + transferred to this user." + transfer_admin_id UserSelectorArg? + "If provided, errors during the transfer process will be sent via + email to this user. If the transfer_dest_id argument was provided, + then this argument must be provided as well." + keep_account Boolean = false + "Downgrade the member to a Basic account. The user will retain the email address associated with their Dropbox + account and data in their account that is not restricted to team members. In order to keep the account the argument :field:`wipe_data` should be set to :val:`false`." + retain_team_shares Boolean = false + "If provided, allows removed users to keep access to Dropbox folders (not Dropbox Paper folders) already explicitly shared with them (not via a group) when they are downgraded to a Basic account. + Users will not retain access to folders that do not allow external sharing. In order to keep the sharing relationships, + the arguments :field:`wipe_data` should be set to :val:`false` and :field:`keep_account` should be set to :val:`true`." + permanently_delete_files Boolean = false + "Permanently delete the data in the deleted member's account. After permanent + deletion, the data is no longer available to be transferred to a different user." + + example default + user = default + wipe_data = true + transfer_dest_id = default + transfer_admin_id = default + keep_account = false + retain_team_shares = false + permanently_delete_files = false + +struct MembersSetPermissions2Arg + "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + user UserSelectorArg + "Identity of user whose role will be set." + new_roles List(TeamMemberRoleId, max_items=1)? + "The new roles for the member. Send empty list to make user member only. For now, only up to one role is allowed." + + example default + user = default + new_roles = ["pid_dbtmr:1234"] + +struct MembersSetPermissions2Result + team_member_id team_common.TeamMemberId + "The member ID of the user to which the change was applied." + roles List(TeamMemberRole)? + "The roles after the change. Empty in case the user become a non-admin." + + example default + team_member_id = "dbmid:9978889" + roles = [team_member_role_user_management] + +struct MembersSetPermissionsArg + "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + user UserSelectorArg + "Identity of user whose role will be set." + new_role AdminTier + "The new role of the member." + + example default + user = default + new_role = default + +struct MembersSetPermissionsResult + team_member_id team_common.TeamMemberId + "The member ID of the user to which the change was applied." + role AdminTier + "The role after the change." + + example default + team_member_id = "dbmid:9978889" + role = default + +struct MembersSetProfileArg + "Exactly one of team_member_id, email, or external_id must be provided to identify the user account. + At least one of new_email, new_external_id, new_given_name, and/or new_surname must be provided." + user UserSelectorArg + "Identity of user whose profile will be set." + new_email common.EmailAddress? + "New email for member." + new_external_id team_common.MemberExternalId? + "New external ID for member." + new_given_name common.OptionalNamePart? + "New given name for member." + new_surname common.OptionalNamePart? + "New surname for member." + new_persistent_id String? + "New persistent ID. This field only available to teams using persistent ID SAML configuration." + new_is_directory_restricted Boolean? + "New value for whether the user is a directory restricted user." + + example default + user = default + new_email = "t.smith@domain.com" + new_surname = "Smith" + +struct MembersSetProfilePhotoArg + user UserSelectorArg + "Identity of the user whose profile photo will be set." + photo account.PhotoSourceArg + "Image to set as the member's new profile photo." + + example default + user = default + photo = default + +struct MembersUnsuspendArg + "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + user UserSelectorArg + "Identity of user to unsuspend." + + example default + user = default + +struct TeamMemberInfo + "Information about a team member." + profile TeamMemberProfile + "Profile of a user as a member of a team." + role AdminTier + "The user's role in the team." + + example default + profile = default + role = member_only + +struct TeamMemberInfoV2 + "Information about a team member." + profile TeamMemberProfile + "Profile of a user as a member of a team." + roles List(TeamMemberRole)? + "The user's roles in the team." + + example default + profile = default + roles = [team_member_role_user_management] + +struct TeamMemberInfoV2Result + "Information about a team member, after the change, like at :route:`members/set_profile:2`." + member_info TeamMemberInfoV2 + "Member info, after the change." + + example default + member_info = default + +struct TeamMemberRole + "A role which can be attached to a team member. This replaces AdminTier; each AdminTier corresponds to a new TeamMemberRole with a matching name." + role_id TeamMemberRoleId + "A string containing encoded role ID. For roles defined by Dropbox, this is the same across all teams." + name String(max_length=32) + "The role display name." + description String(max_length=256) + "Role description. Describes which permissions come with this role." + + example team_member_role_super + role_id = "pid_dbtmr:2345" + name = "Team admin" + description = "User can do most user provisioning, de-provisioning and management." + + example team_member_role_user_management + role_id = "pid_dbtmr:3456" + name = "User management admin" + description = "Add, remove, and manage member accounts." + + example team_member_role_support + role_id = "pid_dbtmr:4567" + name = "Support admin" + description = "Help members with limited tasks, including password reset." + + example team_member_role_billing + role_id = "pid_dbtmr:5678" + name = "Billing admin" + description = "Make payments and renew contracts." + + +route members/add (MembersAddArg, MembersAddLaunch, Void) + "Adds members to a team. + Permission : Team member management + A maximum of 20 members can be specified in a single call. + If no Dropbox account exists with the email address specified, a new Dropbox account will + be created with the given email address, and that account will be invited to the team. + If a personal Dropbox account exists with the email address specified in the call, + this call will create a placeholder Dropbox account for the user on the team and send an + email inviting the user to migrate their existing personal account onto the team. + Team member management apps are required to set an initial given_name and surname for a + user to use in the team invitation and for 'Perform as team member' actions taken on + the user before they become 'active'." + + attrs + auth = "team" + scope = "members.write" + +route members/add/job_status/get (async.PollArg, MembersAddJobStatus, async.PollError) + "Once an async_job_id is returned from :route:`members/add` , + use this to poll the status of the asynchronous request. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/add/job_status/get:2 (async.PollArg, MembersAddJobStatusV2Result, async.PollError) + "Once an async_job_id is returned from :route:`members/add:2` , + use this to poll the status of the asynchronous request. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/add:2 (MembersAddV2Arg, MembersAddLaunchV2Result, Void) + "Adds members to a team. + Permission : Team member management + A maximum of 20 members can be specified in a single call. + If no Dropbox account exists with the email address specified, a new Dropbox account will + be created with the given email address, and that account will be invited to the team. + If a personal Dropbox account exists with the email address specified in the call, + this call will create a placeholder Dropbox account for the user on the team and send an + email inviting the user to migrate their existing personal account onto the team." + + attrs + auth = "team" + scope = "members.write" + +route members/send_welcome_email (UserSelectorArg, Void, MembersSendWelcomeError) + "Sends welcome email to pending team member. + Permission : Team member management + Exactly one of team_member_id, email, or external_id must be provided to identify the user account. + No-op if team member is not pending." + + attrs + auth = "team" + scope = "members.write" + + +union Feature + "A set of features that a Dropbox Business account may support." + upload_api_rate_limit + "The number of upload API calls allowed per month." + has_team_shared_dropbox + "Does this team have a shared team root." + has_team_file_events + "Does this team have file events." + has_team_selective_sync + "Does this team have team selective sync enabled." + has_distinct_member_homes + "Does this team have team member folder." + +union FeatureValue + "The values correspond to entries in :type:`Feature`. You may get different value according + to your Dropbox Business plan." + upload_api_rate_limit UploadApiRateLimitValue + has_team_shared_dropbox HasTeamSharedDropboxValue + has_team_file_events HasTeamFileEventsValue + has_team_selective_sync HasTeamSelectiveSyncValue + has_distinct_member_homes HasDistinctMemberHomesValue + + example uploadRateLimited + upload_api_rate_limit = limited + + example hasTeamSharedDropbox + has_team_shared_dropbox = default + + example hasTeamFileEvents + has_team_file_events = ex_no_file_events + + example HasTeamSelectiveSync + has_team_selective_sync = default + + example hasDistinctMemberHomes + has_distinct_member_homes = default + +union FeaturesGetValuesBatchError + empty_features_list + "At least one :type:`Feature` must be included in the + :type:`FeaturesGetValuesBatchArg`.features list." + +union HasDistinctMemberHomesValue + "The value for :field:`Feature.has_distinct_member_homes`." + has_distinct_member_homes Boolean = false + "Does this team have distinct team member homes." + + example default + has_distinct_member_homes = true + +union HasTeamFileEventsValue + "The value for :field:`Feature.has_team_file_events`." + enabled Boolean = false + "Does this team have file events." + + example ex_no_file_events + enabled = false + +union HasTeamSelectiveSyncValue + "The value for :field:`Feature.has_team_selective_sync`." + has_team_selective_sync Boolean = false + "Does this team have team selective sync enabled." + + example default + has_team_selective_sync = true + +union HasTeamSharedDropboxValue + "The value for :field:`Feature.has_team_shared_dropbox`." + has_team_shared_dropbox Boolean = false + "Does this team have a shared team root." + + example default + has_team_shared_dropbox = false + +union TokenGetAuthenticatedAdminError + "Error returned by :route:`token/get_authenticated_admin`." + mapping_not_found + "The current token is not associated with a team admin, because mappings were not + recorded when the token was created. Consider re-authorizing a new access token + to record its authenticating admin." + admin_not_active + "Either the team admin that authorized this token is no longer an active member of the + team or no longer a team admin." + +union UploadApiRateLimitValue + "The value for :field:`Feature.upload_api_rate_limit`." + unlimited + "This team has unlimited upload API quota. So far both server version account and legacy + account type have unlimited monthly upload api quota." + limit UInt32 = 0 + "The number of upload API calls allowed per month." + + example limited + limit = 25000 + +union_closed UserSelectorArg + "Argument for selecting a single user, either by team_member_id, external_id or email." + team_member_id team_common.TeamMemberId + external_id team_common.MemberExternalId + email common.EmailAddress + + example default + team_member_id = "dbmid:efgh5678" + + example email + email = "dan@hotmail.com" + +union_closed UserSelectorError + "Error that can be returned whenever a struct derived from :type:`UserSelectorArg` is used." + user_not_found + "No matching user found. The provided team_member_id, email, or external_id does not exist on this team." + +union_closed UsersSelectorArg + "Argument for selecting a list of users, either by team_member_ids, external_ids or emails." + team_member_ids List(team_common.TeamMemberId) + "List of member IDs." + external_ids List(team_common.MemberExternalId) + "List of external user IDs." + emails List(common.EmailAddress) + "List of email addresses." + +struct FeaturesGetValuesBatchArg + features List(Feature) + "A list of features in :type:`Feature`. If the list is empty, + this route will return :type:`FeaturesGetValuesBatchError`." + + example listOfValues + features = [upload_api_rate_limit, has_team_shared_dropbox] + +struct FeaturesGetValuesBatchResult + values List(FeatureValue) + + example listOfResults + values = [uploadRateLimited, hasTeamSharedDropbox] + +struct TeamGetInfoResult + name String + "The name of the team." + team_id String + "The ID of the team." + num_licensed_users UInt32 + "The number of licenses available to the team." + num_provisioned_users UInt32 + "The number of accounts that have been invited or are already active members of the team." + num_used_licenses UInt32 = 0 + "The number of licenses used on the team." + policies team_policies.TeamMemberPolicies + + example default + name = "Dropbox Inc." + team_id = "dbtid:1234abcd" + num_licensed_users = 5 + num_provisioned_users = 2 + num_used_licenses = 1 + policies = default + +struct TokenGetAuthenticatedAdminResult + "Results for :route:`token/get_authenticated_admin`." + admin_profile TeamMemberProfile + "The admin who authorized the token." + + example default + admin_profile = default + + +route members/delete_profile_photo (MembersDeleteProfilePhotoArg, TeamMemberInfo, MembersDeleteProfilePhotoError) + "Deletes a team member's profile photo. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/delete_profile_photo:2 (MembersDeleteProfilePhotoArg, TeamMemberInfoV2Result, MembersDeleteProfilePhotoError) + "Deletes a team member's profile photo. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/set_profile (MembersSetProfileArg, TeamMemberInfo, MembersSetProfileError) + "Updates a team member's profile. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/set_profile:2 (MembersSetProfileArg, TeamMemberInfoV2Result, MembersSetProfileError) + "Updates a team member's profile. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/set_profile_photo (MembersSetProfilePhotoArg, TeamMemberInfo, MembersSetProfilePhotoError) + "Updates a team member's profile photo. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/set_profile_photo:2 (MembersSetProfilePhotoArg, TeamMemberInfoV2Result, MembersSetProfilePhotoError) + "Updates a team member's profile photo. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + + +route members/delete_former_member_files (MembersFormerMemberArg, Void, MembersDeleteFormerMemberFilesError) + "Permanently delete the files of a user who has been removed from the team. After permanent + deletion, those files will not be available to be transferred to another team member. + Permission : Team member management + Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + + attrs + auth = "team" + scope = "members.write" + +route members/get_available_team_member_roles (Void, MembersGetAvailableTeamMemberRolesResult, Void) + "Get available TeamMemberRoles for the connected team. To be used with :route:`members/set_admin_permissions:2`. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.read" + +route members/get_info (MembersGetInfoArgs, MembersGetInfoResult, MembersGetInfoError) + "Returns information about multiple team members. + Permission : Team information + This endpoint will return :field:`MembersGetInfoItem.id_not_found`, + for IDs (or emails) that cannot be matched to a valid team member." + + attrs + auth = "team" + scope = "members.read" + +route members/get_info:2 (MembersGetInfoV2Arg, MembersGetInfoV2Result, MembersGetInfoError) + "Returns information about multiple team members. + Permission : Team information + This endpoint will return :field:`MembersGetInfoItem.id_not_found`, + for IDs (or emails) that cannot be matched to a valid team member." + + attrs + auth = "team" + scope = "members.read" + +route members/list (MembersListArg, MembersListResult, MembersListError) + "Lists members of a team. + Permission : Team information." + + attrs + auth = "team" + scope = "members.read" + +route members/list/continue (MembersListContinueArg, MembersListResult, MembersListContinueError) + "Once a cursor has been retrieved from :route:`members/list`, use this to paginate + through all team members. + Permission : Team information." + + attrs + auth = "team" + scope = "members.read" + +route members/list/continue:2 (MembersListContinueArg, MembersListV2Result, MembersListContinueError) + "Once a cursor has been retrieved from :route:`members/list:2`, use this to paginate + through all team members. + Permission : Team information." + + attrs + auth = "team" + scope = "members.read" + +route members/list:2 (MembersListArg, MembersListV2Result, MembersListError) + "Lists members of a team. + Permission : Team information." + + attrs + auth = "team" + scope = "members.read" + +route members/move_former_member_files (MembersDataTransferArg, async.LaunchEmptyResult, MembersTransferFormerMembersFilesError) + "Moves removed member's files to a different member. This endpoint initiates an asynchronous job. To obtain the final result + of the job, the client should periodically poll :route:`members/move_former_member_files/job_status/check`. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/move_former_member_files/job_status/check (async.PollArg, async.PollEmptyResult, async.PollError) + "Once an async_job_id is returned from :route:`members/move_former_member_files` , + use this to poll the status of the asynchronous request. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/remove (MembersRemoveArg, async.LaunchEmptyResult, MembersRemoveError) + "Removes a member from a team. + Permission : Team member management + Exactly one of team_member_id, email, or external_id must be provided to identify the user account. + Accounts can be recovered via :route:`members/recover` for a 7 day period + or until the account has been permanently deleted or transferred to another account + (whichever comes first). Calling :route:`members/add` while a user is still recoverable + on your team will return with :field:`MemberAddResult.user_already_on_team`. + Accounts can have their files transferred via the admin console for a limited time, based on the version history + length associated with the team (180 days for most teams). + Accounts can have their stacks transferred through the admin console. This only transfers stacks that they have created. + This endpoint may initiate an asynchronous job. To obtain the final result + of the job, the client should periodically poll :route:`members/remove/job_status/get`." + + attrs + auth = "team" + scope = "members.delete" + +route members/remove/job_status/get (async.PollArg, async.PollEmptyResult, async.PollError) + "Once an async_job_id is returned from :route:`members/remove` , + use this to poll the status of the asynchronous request. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.delete" + +route members/set_admin_permissions (MembersSetPermissionsArg, MembersSetPermissionsResult, MembersSetPermissionsError) + "Updates a team member's permissions. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/set_admin_permissions:2 (MembersSetPermissions2Arg, MembersSetPermissions2Result, MembersSetPermissions2Error) + "Updates a team member's permissions. + Permission : Team member management." + + attrs + auth = "team" + scope = "members.write" + +route members/suspend (MembersDeactivateArg, Void, MembersSuspendError) + "Suspend a member from a team. + Permission : Team member management + Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + + attrs + auth = "team" + scope = "members.write" + +route members/unsuspend (MembersUnsuspendArg, Void, MembersUnsuspendError) + "Unsuspend a member from a team. + Permission : Team member management + Exactly one of team_member_id, email, or external_id must be provided to identify the user account." + + attrs + auth = "team" + scope = "members.write" + + +alias LegalHoldId = String(pattern="^pid_dbhid:.+") + +alias LegalHoldPolicyName = String(max_length=140) + +alias LegalHoldPolicyDescription = String(max_length=501) + +alias Path = String(pattern="(/(.|[\\r\\n])*)?") + +alias LegalHoldsPolicyCreateResult = LegalHoldPolicy + +alias LegalHoldsGetPolicyResult = LegalHoldPolicy + +alias ListHeldRevisionCursor = String(min_length=1) + +alias LegalHoldsPolicyUpdateResult = LegalHoldPolicy + +union LegalHoldStatus + active + "The legal hold policy is active." + released + "The legal hold policy was released." + activating + "The legal hold policy is activating." + updating + "The legal hold policy is updating." + exporting + "The legal hold policy is exporting." + releasing + "The legal hold policy is releasing." + +union LegalHoldsError + unknown_legal_hold_error + "There has been an unknown legal hold error." + insufficient_permissions + "You don't have permissions to perform this action." + +union LegalHoldsPolicyCreateError extends LegalHoldsError + start_date_is_later_than_end_date + "Start date must be earlier than end date." + empty_members_list + "The users list must have at least one user." + invalid_members + "Some members in the members list are not valid to be placed under legal hold." + number_of_users_on_hold_is_greater_than_hold_limitation + "You cannot add more than 5 users in a legal hold." + transient_error + "Temporary infrastructure failure, please retry." + name_must_be_unique + "The name provided is already in use by another legal hold." + team_exceeded_legal_hold_quota + "Team exceeded legal hold quota." + invalid_date + "The provided date is invalid." + +union LegalHoldsGetPolicyError extends LegalHoldsError + legal_hold_policy_not_found + "Legal hold policy does not exist for :field:`LegalHoldsGetPolicyArg.id`." + +union LegalHoldsListPoliciesError extends LegalHoldsError + transient_error + "Temporary infrastructure failure, please retry." + +union LegalHoldsListHeldRevisionsError extends LegalHoldsError + transient_error + "Temporary infrastructure failure, please retry." + legal_hold_still_empty + "The legal hold is not holding any revisions yet." + inactive_legal_hold + "Trying to list revisions for an inactive legal hold." + +union LegalHoldsListHeldRevisionsContinueError + unknown_legal_hold_error + "There has been an unknown legal hold error." + transient_error + "Temporary infrastructure failure, please retry." + reset + "Indicates that the cursor has been invalidated. Call + :route:`legal_holds/list_held_revisions_continue` again with an empty cursor to obtain a new cursor." + +union LegalHoldsPolicyUpdateError extends LegalHoldsError + transient_error + "Temporary infrastructure failure, please retry." + inactive_legal_hold + "Trying to release an inactive legal hold." + legal_hold_performing_another_operation + "Legal hold is currently performing another operation." + invalid_members + "Some members in the members list are not valid to be placed under legal hold." + number_of_users_on_hold_is_greater_than_hold_limitation + "You cannot add more than 5 users in a legal hold." + empty_members_list + "The users list must have at least one user." + name_must_be_unique + "The name provided is already in use by another legal hold." + legal_hold_policy_not_found + "Legal hold policy does not exist for :field:`LegalHoldsPolicyUpdateArg.id`." + +union LegalHoldsPolicyReleaseError extends LegalHoldsError + legal_hold_performing_another_operation + "Legal hold is currently performing another operation." + legal_hold_already_releasing + "Legal hold is currently performing a release or is already released." + legal_hold_policy_not_found + "Legal hold policy does not exist for :field:`LegalHoldsPolicyReleaseArg.id`." + +struct MembersInfo + team_member_ids List(team_common.TeamMemberId) + "Team member IDs of the users under this hold." + permanently_deleted_users UInt64 + "The number of permanently deleted users that were under this hold." + + example default + team_member_ids = ["dbmid:efgh5678"] + permanently_deleted_users = 2 + +struct LegalHoldPolicy + id LegalHoldId + "The legal hold id." + name LegalHoldPolicyName + "Policy name." + description LegalHoldPolicyDescription? + "A description of the legal hold policy." + activation_time common.DropboxTimestamp? + "The time at which the legal hold was activated." + members MembersInfo + "Team members IDs and number of permanently deleted members under hold." + status LegalHoldStatus + "The current state of the hold." + start_date common.DropboxTimestamp + "Start date of the legal hold policy." + end_date common.DropboxTimestamp? + "End date of the legal hold policy." + + example default + id = "pid_dbhid:abcd1234" + name = "acme cfo policy" + activation_time = "2016-01-20T00:00:10Z" + members = default + status = active + start_date = "2016-01-01T00:00:00Z" + end_date = "2017-12-31T00:00:00Z" + +struct LegalHoldsPolicyCreateArg + name LegalHoldPolicyName + "Policy name." + description LegalHoldPolicyDescription? + "A description of the legal hold policy." + members List(team_common.TeamMemberId) + "List of team member IDs added to the hold." + start_date common.DropboxTimestamp? + "start date of the legal hold policy." + end_date common.DropboxTimestamp? + "end date of the legal hold policy." + + example default + name = "acme cfo policy" + members = ["dbmid:FDFSVF-DFSDF"] + start_date = "2016-01-01T00:00:00Z" + end_date = "2017-12-31T00:00:00Z" + +struct LegalHoldsGetPolicyArg + id LegalHoldId + "The legal hold Id." + + example default + id = "pid_dbhid:abcd1234" + +struct LegalHoldsListPoliciesArg + include_released Boolean = false + "Whether to return holds that were released." + + example default + include_released = false + +struct LegalHoldsListPoliciesResult + policies List(LegalHoldPolicy) + + example default + policies = [default] + +struct LegalHoldsListHeldRevisionsArg + id LegalHoldId + "The legal hold Id." + + example default + id = "pid_dbhid:abcd1234" + +struct LegalHoldHeldRevisionMetadata + new_filename String + "The held revision filename." + original_revision_id files.Rev + "The id of the held revision." + original_file_path Path + "The original path of the held revision." + server_modified common.DropboxTimestamp + "The last time the file was modified on Dropbox." + author_member_id team_common.TeamMemberId + "The member id of the revision's author." + author_member_status TeamMemberStatus + "The member status of the revision's author." + author_email common.EmailAddress + "The email address of the held revision author." + file_type String + "The type of the held revision's file." + size UInt64 + "The file size in bytes." + content_hash files.Sha256HexHash + "A hash of the file content. This field can be used to verify data integrity. For more + information see our :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." + + example default + new_filename = "111_222.pdf" + original_revision_id = "ab2rij4i5ojgfd" + original_file_path = "/a.pdf" + server_modified = "2019-08-12T12:08:52Z" + author_member_id = "dbmid:abcd1234abcd1234abcd1234abcd1234a23" + author_member_status = active + author_email = "a@a.com" + file_type = "Document" + size = 3 + content_hash = "abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234" + +struct LegalHoldsListHeldRevisionResult + entries List(LegalHoldHeldRevisionMetadata) + "List of file entries that under the hold." + cursor ListHeldRevisionCursor? + "The cursor idicates where to continue reading file metadata entries for the next API call. When there are no more entries, the cursor will return none. + Pass the cursor into + /2/team/legal_holds/list_held_revisions/continue." + has_more Boolean + "True if there are more file entries that haven't been returned. You can retrieve them with a call to /legal_holds/list_held_revisions_continue." + + example default + entries = [default] + has_more = false + +struct LegalHoldsListHeldRevisionsContinueArg + id LegalHoldId + "The legal hold Id." + cursor ListHeldRevisionCursor? + "The cursor idicates where to continue reading file metadata entries for the next API call. When there are no more entries, the cursor will return none." + + example default + id = "pid_dbhid:abcd1234" + +struct LegalHoldsPolicyUpdateArg + id LegalHoldId + "The legal hold Id." + name LegalHoldPolicyName? + "Policy new name." + description LegalHoldPolicyDescription? + "Policy new description." + members List(team_common.TeamMemberId)? + "List of team member IDs to apply the policy on." + + example default + id = "pid_dbhid:abcd1234" + members = ["dbmid:FDFSVF-DFSDF"] + +struct LegalHoldsPolicyReleaseArg + id LegalHoldId + "The legal hold Id." + + example default + id = "pid_dbhid:abcd1234" + +route legal_holds/create_policy (LegalHoldsPolicyCreateArg, LegalHoldsPolicyCreateResult, LegalHoldsPolicyCreateError) + "Creates new legal hold policy. + Note: Legal Holds is a paid add-on. Not all teams have the feature. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.governance.write" + +route legal_holds/get_policy (LegalHoldsGetPolicyArg, LegalHoldsGetPolicyResult, LegalHoldsGetPolicyError) + "Gets a legal hold by Id. + Note: Legal Holds is a paid add-on. Not all teams have the feature. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.governance.write" + +route legal_holds/list_policies (LegalHoldsListPoliciesArg, LegalHoldsListPoliciesResult, LegalHoldsListPoliciesError) + "Lists legal holds on a team. + Note: Legal Holds is a paid add-on. Not all teams have the feature. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.governance.write" + +route legal_holds/list_held_revisions (LegalHoldsListHeldRevisionsArg, LegalHoldsListHeldRevisionResult, LegalHoldsListHeldRevisionsError) + "List the file metadata that's under the hold. + Note: Legal Holds is a paid add-on. Not all teams have the feature. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.governance.write" + +route legal_holds/list_held_revisions_continue (LegalHoldsListHeldRevisionsContinueArg, LegalHoldsListHeldRevisionResult, LegalHoldsListHeldRevisionsError) + "Continue listing the file metadata that's under the hold. + Note: Legal Holds is a paid add-on. Not all teams have the feature. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.governance.write" + +route legal_holds/update_policy (LegalHoldsPolicyUpdateArg, LegalHoldsPolicyUpdateResult, LegalHoldsPolicyUpdateError) + "Updates a legal hold. + Note: Legal Holds is a paid add-on. Not all teams have the feature. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.governance.write" + +route legal_holds/release_policy (LegalHoldsPolicyReleaseArg, Void, LegalHoldsPolicyReleaseError) + "Releases a legal hold by Id. + Note: Legal Holds is a paid add-on. Not all teams have the feature. + Permission : Team member file access." + + attrs + auth = "team" + scope = "team_data.governance.write" + + +union_closed TeamMembershipType + full + "User uses a license and has full access to team resources like the shared quota." + limited + "User does not have access to the shared quota and team admins have restricted administrative control." + +struct RemovedStatus + is_recoverable Boolean + "True if the removed team member is recoverable." + is_disconnected Boolean + "True if the team member's account was converted to individual account." + + example default + is_recoverable = false + is_disconnected = false + +union_closed TeamMemberStatus + "The user's status as a member of a specific team." + active + "User has successfully joined the team." + invited + "User has been invited to a team, but has not joined the team yet." + suspended + "User is no longer a member of the team, but the account can be un-suspended, + re-establishing the user as a team member." + removed RemovedStatus + "User is no longer a member of the team. + Removed users are only listed when include_removed is true in members/list." + +struct MemberProfile + "Basic member profile." + team_member_id team_common.TeamMemberId + "ID of user as a member of a team." + external_id String? + "External ID that a team can attach to the user. + An application using the API may find it easier to use their + own IDs instead of Dropbox IDs like account_id or team_member_id." + account_id users_common.AccountId? + "A user's account identifier." + email String + "Email address of user." + email_verified Boolean + "Is true if the user's email is verified to be owned by the user." + secondary_emails List(secondary_emails.SecondaryEmail)? + "Secondary emails of a user." + status TeamMemberStatus + "The user's status as a member of a specific team." + name users.Name + "Representations for a person's name." + membership_type TeamMembershipType + "The user's membership type: full (normal team member) vs limited (does not use a license; no access to the team's shared quota)." + invited_on common.DropboxTimestamp? + "The date and time the user was invited to the team (contains value only when the member's status matches :field:`TeamMemberStatus.invited`)." + joined_on common.DropboxTimestamp? + "The date and time the user joined as a member of a specific team." + suspended_on common.DropboxTimestamp? + "The date and time the user was suspended from the team (contains value only when the member's status matches :field:`TeamMemberStatus.suspended`)." + persistent_id String? + "Persistent ID that a team can attach to the user. + The persistent ID is unique ID to be used for SAML authentication." + is_directory_restricted Boolean? + "Whether the user is a directory restricted user." + profile_photo_url String? + "URL for the photo representing the user, if one is set." + + example default + team_member_id = "dbmid:1234567" + account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" + email = "mary@lamb.com" + email_verified = true + secondary_emails = [default, second_sec_email, third_sec_email] + status = active + name = default + membership_type = full + joined_on = "2015-05-12T15:50:38Z" + profile_photo_url = "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102&size=128x128" + +struct TeamMemberProfile extends MemberProfile + "Profile of a user as a member of a team." + groups List(team_common.GroupId) + "List of group IDs of groups that the user belongs to." + member_folder_id common.NamespaceId + "The namespace id of the user's member folder." + root_folder_id common.NamespaceId + "The namespace id of the user's root folder." + + example default + team_member_id = "dbmid:FDFSVF-DFSDF" + account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" + external_id = "244423" + email = "tami@seagull.com" + email_verified = false + secondary_emails = [third_sec_email, default] + status = active + name = default + groups = ["g:e2db7665347abcd600000000001a2b3c"] + membership_type = full + joined_on = "2015-05-12T15:50:38Z" + member_folder_id = "20" + root_folder_id = "30" + profile_photo_url = "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102&size=128x128" + diff --git a/team_common.stone b/team_common.stone index f663f43..cfd79dc 100644 --- a/team_common.stone +++ b/team_common.stone @@ -3,16 +3,19 @@ namespace team_common import common alias TeamMemberId = String + alias MemberExternalId = String(max_length=64) + alias GroupExternalId = String alias GroupId = String + alias ResellerId = String + alias TeamId = String struct GroupSummary "Information about a group." - group_name String group_id GroupId group_external_id GroupExternalId? @@ -28,10 +31,8 @@ struct GroupSummary member_count = 10 group_management_type = user_managed - union GroupManagementType "The group type determines how a group is managed." - user_managed "A group which is managed by selected users." company_managed @@ -39,10 +40,8 @@ union GroupManagementType system_managed "A group which is managed automatically by Dropbox." - union GroupType "The group type determines how a group is created and managed." - team "A group to which team members are automatically added. Applicable to :link:`team folders https://www.dropbox.com/help/986` only." @@ -56,10 +55,8 @@ struct TimeRange end_time common.DropboxTimestamp? "Optional ending time (exclusive)." - union MemberSpaceLimitType "The type of the space limit imposed on a team member." - off "The team member does not have imposed space limit." alert_only @@ -68,3 +65,4 @@ union MemberSpaceLimitType stop_sync "The team member has hard imposed space limit - Dropbox file sync will stop after the limit is reached." + diff --git a/team_devices.stone b/team_devices.stone deleted file mode 100644 index efb0706..0000000 --- a/team_devices.stone +++ /dev/null @@ -1,359 +0,0 @@ -namespace team - -import common - -# -# Structs for devices/list_member_devices -# - -struct ListMemberDevicesArg - team_member_id String - "The team's member id." - include_web_sessions Boolean = true - "Whether to list web sessions of the team's member." - include_desktop_clients Boolean = true - "Whether to list linked desktop devices of the team's member." - include_mobile_clients Boolean = true - "Whether to list linked mobile devices of the team's member." - - example default - team_member_id="dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - -struct DeviceSession - session_id String - "The session id." - - ip_address String? - "The IP address of the last activity from this session." - - country String? - "The country from which the last activity from this session was made." - - created common.DropboxTimestamp? - "The time this session was created." - - updated common.DropboxTimestamp? - "The time of the last activity from this session." - -# TODO(gal) - for mobile, camera uploads don't count for updated activity (See T25556 -# for more context). This needs to be documented somewhere. - -struct ActiveWebSession extends DeviceSession - "Information on active web sessions." - - user_agent String - "Information on the hosting device." - - os String - "Information on the hosting operating system." - - browser String - "Information on the browser used for this web session." - - expires common.DropboxTimestamp? - "The time this session expires." - - example default - session_id = "dbwsid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - ip_address = "3.3.3.3" - country = "United States" - created = "2015-05-12T15:50:38Z" - updated = "2015-05-12T15:51:22Z" - user_agent = "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.815.0 Safari/535.1" - os = "Windows" - browser = "Chrome" - expires = "2015-05-13T15:51:22Z" - -union DesktopPlatform - windows - "Official Windows Dropbox desktop client." - mac - "Official Mac Dropbox desktop client." - linux - "Official Linux Dropbox desktop client." - -struct DesktopClientSession extends DeviceSession - "Information about linked Dropbox desktop client sessions." - - host_name String - "Name of the hosting desktop." - - client_type DesktopPlatform - "The Dropbox desktop client type." - - client_version String - "The Dropbox client version." - - platform String - "Information on the hosting platform." - - is_delete_on_unlink_supported Boolean - "Whether it's possible to delete all of the account files upon unlinking." - - example default - session_id= "dbdsid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - ip_address = "3.3.3.3" - country = "United States" - created = "2015-05-12T15:50:38Z" - updated = "2015-05-12T15:51:22Z" - host_name = "Home_desktop" - client_type = mac - client_version = "3.9.19" - platform = "Mac OS X 10.10.3" - is_delete_on_unlink_supported = true - -union MobileClientPlatform - iphone - "Official Dropbox iPhone client." - ipad - "Official Dropbox iPad client." - android - "Official Dropbox Android client." - windows_phone - "Official Dropbox Windows phone client." - blackberry - "Official Dropbox Blackberry client." - -struct MobileClientSession extends DeviceSession - "Information about linked Dropbox mobile client sessions." - - device_name String - "The device name." - - client_type MobileClientPlatform - "The mobile application type." - - client_version String? - "The dropbox client version." - - os_version String? - "The hosting OS version." - - last_carrier String? - "last carrier used by the device." - - example default - session_id = "dbmsid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - ip_address = "3.3.3.3" - country = "United States" - created = "2015-05-12T15:50:38Z" - updated = "2015-05-12T15:51:22Z" - device_name = "Iphone 6" - client_type = iphone - client_version = "3.9.5" - os_version = "8.4" - last_carrier = "Verizon" - -struct ListMemberDevicesResult - active_web_sessions List(ActiveWebSession)? - "List of web sessions made by this team member." - desktop_client_sessions List(DesktopClientSession)? - "List of desktop clients used by this team member." - mobile_client_sessions List(MobileClientSession)? - "List of mobile client used by this team member." - -union ListMemberDevicesError - member_not_found - "Member not found." - -# -# Route: devices/list_member_devices -# - -route devices/list_member_devices(ListMemberDevicesArg, ListMemberDevicesResult, ListMemberDevicesError) - "List all device sessions of a team's member." - - attrs - auth = "team" - scope = "sessions.list" - -# -# Structs for devices/list_members_devices -# - -struct ListMembersDevicesArg - cursor String? - "At the first call to the :route:`devices/list_members_devices` the cursor shouldn't be passed. - Then, if the result of the call includes a cursor, the following requests should include the - received cursors in order to receive the next sub list of team devices." - include_web_sessions Boolean = true - "Whether to list web sessions of the team members." - include_desktop_clients Boolean = true - "Whether to list desktop clients of the team members." - include_mobile_clients Boolean = true - "Whether to list mobile clients of the team members." - -struct MemberDevices - "Information on devices of a team's member." - - team_member_id String - "The member unique Id." - web_sessions List(ActiveWebSession)? - "List of web sessions made by this team member." - desktop_clients List(DesktopClientSession)? - "List of desktop clients by this team member." - mobile_clients List(MobileClientSession)? - "List of mobile clients by this team member." - - example default - team_member_id = "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" - -struct ListMembersDevicesResult - devices List(MemberDevices) - "The devices of each member of the team." - has_more Boolean - "If true, then there are more devices available. Pass the - cursor to :route:`devices/list_members_devices` to retrieve the rest." - cursor String? - "Pass the cursor into :route:`devices/list_members_devices` to receive the next - sub list of team's devices." - -union ListMembersDevicesError - reset - "Indicates that the cursor has been invalidated. Call - :route:`devices/list_members_devices` again with an empty cursor to obtain a new cursor." - -# -# Route: devices/list_members_devices -# -route devices/list_members_devices(ListMembersDevicesArg, ListMembersDevicesResult, ListMembersDevicesError) - "List all device sessions of a team. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "sessions.list" - -# -# Structs for devices/revoke_device_session -# - -struct DeviceSessionArg - session_id String - "The session id." - team_member_id String - "The unique id of the member owning the device." - - example default - session_id = "1234faaf0678bcde" - team_member_id = "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" - -struct RevokeDesktopClientArg extends DeviceSessionArg - delete_on_unlink Boolean = false - "Whether to delete all files of the account (this is possible only if supported by - the desktop client and will be made the next time the client access the account)." - - example default - session_id = "1234faaf0678bcde" - team_member_id = "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" - -union_closed RevokeDeviceSessionArg - web_session DeviceSessionArg - "End an active session." - desktop_client RevokeDesktopClientArg - "Unlink a linked desktop device." - mobile_client DeviceSessionArg - "Unlink a linked mobile device." - - example default - web_session = default - -union RevokeDeviceSessionError - device_session_not_found - "Device session not found." - member_not_found - "Member not found." - -# -# Route: devices/revoke_device_session -# - -route devices/revoke_device_session(RevokeDeviceSessionArg, Void, RevokeDeviceSessionError) - "Revoke a device session of a team's member." - - attrs - auth = "team" - scope = "sessions.modify" - -# -# structs for devices/revoke_device_session_batch -# - -struct RevokeDeviceSessionBatchArg - revoke_devices List(RevokeDeviceSessionArg) - - example default - revoke_devices = [default] - -struct RevokeDeviceSessionStatus - - success Boolean - "Result of the revoking request." - error_type RevokeDeviceSessionError? - "The error cause in case of a failure." - -struct RevokeDeviceSessionBatchResult - revoke_devices_status List(RevokeDeviceSessionStatus) - -union RevokeDeviceSessionBatchError - "" - -# -# Route: devices/revoke_device_session_batch -# - -route devices/revoke_device_session_batch(RevokeDeviceSessionBatchArg, RevokeDeviceSessionBatchResult, RevokeDeviceSessionBatchError) - "Revoke a list of device sessions of team members." - - attrs - auth = "team" - scope = "sessions.modify" - - -# -# Deprecated endpoints -# - -struct ListTeamDevicesArg - cursor String? - "At the first call to the :route:`devices/list_team_devices` the cursor shouldn't be passed. - Then, if the result of the call includes a cursor, the following requests should include the - received cursors in order to receive the next sub list of team devices." - include_web_sessions Boolean = true - "Whether to list web sessions of the team members." - include_desktop_clients Boolean = true - "Whether to list desktop clients of the team members." - include_mobile_clients Boolean = true - "Whether to list mobile clients of the team members." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - -struct ListTeamDevicesResult - devices List(MemberDevices) - "The devices of each member of the team." - has_more Boolean - "If true, then there are more devices available. Pass the - cursor to :route:`devices/list_team_devices` to retrieve the rest." - cursor String? - "Pass the cursor into :route:`devices/list_team_devices` to receive the next - sub list of team's devices." - - example default - devices = [default] - has_more = false - -union ListTeamDevicesError - reset - "Indicates that the cursor has been invalidated. Call - :route:`devices/list_team_devices` again with an empty cursor to obtain a new cursor." - -route devices/list_team_devices(ListTeamDevicesArg, ListTeamDevicesResult, ListTeamDevicesError) deprecated by devices/list_members_devices - "List all device sessions of a team. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "sessions.list" diff --git a/team_folders.stone b/team_folders.stone deleted file mode 100644 index 5ba9418..0000000 --- a/team_folders.stone +++ /dev/null @@ -1,341 +0,0 @@ -namespace team - -import async -import common -import files - -# Common structs - -union TeamFolderStatus - active - "The team folder and sub-folders are available to all members." - archived - "The team folder is not accessible outside of the team folder manager." - archive_in_progress - "The team folder is not accessible outside of the team folder manager." - -struct TeamFolderIdArg - team_folder_id common.SharedFolderId - "The ID of the team folder." - - example default - team_folder_id = "123456789" - -struct TeamFolderIdListArg - team_folder_ids List(common.SharedFolderId, min_items=1) - "The list of team folder IDs." - - example default - team_folder_ids = ["947182", "5819424", "852307532"] - -struct TeamFolderMetadata - "Properties of a team folder." - - team_folder_id common.SharedFolderId - "The ID of the team folder." - - name String - "The name of the team folder." - - status TeamFolderStatus - "The status of the team folder." - - is_team_shared_dropbox Boolean - "True if this team folder is a shared team root." - - sync_setting files.SyncSetting - "The sync setting applied to this team folder." - - content_sync_settings List(files.ContentSyncSetting) - "Sync settings applied to contents of this team folder." - - example default - name = "Marketing" - team_folder_id = "123456789" - status = active - is_team_shared_dropbox = false - sync_setting = default - content_sync_settings = [default] - -union TeamFolderAccessError - invalid_team_folder_id - "The team folder ID is invalid." - no_access - "The authenticated app does not have permission to manage that team folder." - -union TeamFolderInvalidStatusError - active - "The folder is active and the operation did not succeed." - archived - "The folder is archived and the operation did not succeed." - archive_in_progress - "The folder is being archived and the operation did not succeed." - -union TeamFolderTeamSharedDropboxError - disallowed - "This action is not allowed for a shared team root." - -union BaseTeamFolderError - "Base error that all errors for existing team folders should extend." - access_error TeamFolderAccessError - status_error TeamFolderInvalidStatusError - team_shared_dropbox_error TeamFolderTeamSharedDropboxError - -# -# Team folder create -# - -route team_folder/create(TeamFolderCreateArg, TeamFolderMetadata, TeamFolderCreateError) - "Creates a new, active, team folder with no members. This endpoint can only be used for teams - that do not already have a shared team space. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.content.write" - -struct TeamFolderCreateArg - name String - "Name for the new team folder." - - sync_setting files.SyncSettingArg? - "The sync setting to apply to this team folder. Only permitted if the team has team selective sync enabled." - - example default - name = "Marketing" - sync_setting = not_synced - -union TeamFolderCreateError - invalid_folder_name - "The provided name cannot be used." - folder_name_already_used - "There is already a team folder with the provided name." - folder_name_reserved - "The provided name cannot be used because it is reserved." - sync_settings_error files.SyncSettingsError - "An error occurred setting the sync settings." - -# -# Team folder rename -# - -route team_folder/rename(TeamFolderRenameArg, TeamFolderMetadata, TeamFolderRenameError) - "Changes an active team folder's name. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.content.write" - -struct TeamFolderRenameArg extends TeamFolderIdArg - name String - "New team folder name." - - example default - team_folder_id = "123456789" - name = "Sales" - -union TeamFolderRenameError extends BaseTeamFolderError - invalid_folder_name - "The provided folder name cannot be used." - folder_name_already_used - "There is already a team folder with the same name." - folder_name_reserved - "The provided name cannot be used because it is reserved." - -# -# Team folder list -# - -route team_folder/list(TeamFolderListArg, TeamFolderListResult, TeamFolderListError) - "Lists all team folders. - - Permission : Team member file access." - attrs - auth = "team" - scope = "team_data.content.read" - -struct TeamFolderListArg - limit UInt32(min_value=1, max_value=1000) = 1000 - "The maximum number of results to return per request." - - example default - limit = 100 - -struct TeamFolderListResult - "Result for :route:`team_folder/list` and :route:`team_folder/list/continue`." - - team_folders List(TeamFolderMetadata) - "List of all team folders in the authenticated team." - cursor String - "Pass the cursor into :route:`team_folder/list/continue` to obtain additional team folders." - has_more Boolean - "Is true if there are additional team folders that have not been returned - yet. An additional call to :route:`team_folder/list/continue` can retrieve them." - - example default - team_folders = [default] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = false - -struct TeamFolderListError - access_error TeamFolderAccessError - -# -# Team folder list/continue -# - -route team_folder/list/continue(TeamFolderListContinueArg, TeamFolderListResult, TeamFolderListContinueError) - "Once a cursor has been retrieved from :route:`team_folder/list`, use this to paginate - through all team folders. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.content.read" - -struct TeamFolderListContinueArg - cursor String - "Indicates from what point to get the next set of team folders." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - -union TeamFolderListContinueError - invalid_cursor - "The cursor is invalid." - -# -# Team folder get info -# - -route team_folder/get_info(TeamFolderIdListArg, List(TeamFolderGetInfoItem), Void) - "Retrieves metadata for team folders. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.content.read" - -union_closed TeamFolderGetInfoItem - id_not_found String - "An ID that was provided as a parameter to :route:`team_folder/get_info` did not - match any of the team's team folders." - team_folder_metadata TeamFolderMetadata - "Properties of a team folder." - -# -# Team folder activate -# - -route team_folder/activate(TeamFolderIdArg, TeamFolderMetadata, TeamFolderActivateError) - "Sets an archived team folder's status to active. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.content.write" - -union TeamFolderActivateError extends BaseTeamFolderError - "" - -# -# Team folder archive -# - -route team_folder/archive(TeamFolderArchiveArg, TeamFolderArchiveLaunch, TeamFolderArchiveError) - "Sets an active team folder's status to archived and removes all folder and file members. - This endpoint cannot be used for teams that have a shared team space. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.content.write" - -struct TeamFolderArchiveArg extends TeamFolderIdArg - force_async_off Boolean = false - "Whether to force the archive to happen synchronously." - - example default - team_folder_id = "123456789" - force_async_off = false - -union_closed TeamFolderArchiveLaunch extends async.LaunchResultBase - complete TeamFolderMetadata - - example default - complete = default - - example async_job_id - async_job_id = "34g93hh34h04y384084" - -union TeamFolderArchiveError extends BaseTeamFolderError - "" - -route team_folder/archive/check(async.PollArg, TeamFolderArchiveJobStatus, async.PollError) - "Returns the status of an asynchronous job for archiving a team folder. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.content.write" - -union_closed TeamFolderArchiveJobStatus extends async.PollResultBase - complete TeamFolderMetadata - "The archive job has finished. The value is the metadata for the resulting team folder." - failed TeamFolderArchiveError - "Error occurred while performing an asynchronous job from :route:`team_folder/archive`." - - example default - complete = default - -# -# Team folder permanently delete -# - -route team_folder/permanently_delete(TeamFolderIdArg, Void, TeamFolderPermanentlyDeleteError) - "Permanently deletes an archived team folder. This endpoint cannot be used for teams - that have a shared team space. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.content.write" - -union TeamFolderPermanentlyDeleteError extends BaseTeamFolderError - "" - -# -# Team folder update_sync_settings -# - -struct TeamFolderUpdateSyncSettingsArg extends TeamFolderIdArg - sync_setting files.SyncSettingArg? - "Sync setting to apply to the team folder itself. Only meaningful if the team folder is not a shared team root." - - content_sync_settings List(files.ContentSyncSettingArg)? - "Sync settings to apply to contents of this team folder." - - example default - team_folder_id = "123456789" - sync_setting = default - content_sync_settings = [default] - -union TeamFolderUpdateSyncSettingsError extends BaseTeamFolderError - sync_settings_error files.SyncSettingsError - "An error occurred setting the sync settings." - -route team_folder/update_sync_settings(TeamFolderUpdateSyncSettingsArg, TeamFolderMetadata, TeamFolderUpdateSyncSettingsError) - "Updates the sync settings on a team folder or its contents. Use of this endpoint requires that the team has team selective sync enabled." - - attrs - auth = "team" - scope = "team_data.content.write" diff --git a/team_groups.stone b/team_groups.stone deleted file mode 100644 index 5a24813..0000000 --- a/team_groups.stone +++ /dev/null @@ -1,560 +0,0 @@ -namespace team - -import async -import team_common - -# -# Common types. -# - -union_closed GroupAccessType - "Role of a user in group." - - member - "User is a member of the group, but has no special permissions." - owner - "User can rename the group, and add/remove members." - - example default - member = null - -union_closed GroupSelector - "Argument for selecting a single group, either by group_id or by external group ID." - - group_id team_common.GroupId - "Group ID." - group_external_id team_common.GroupExternalId - "External ID of the group." - - example default - group_id = "g:e2db7665347abcd600000000001a2b3c" - -union GroupSelectorError - "Error that can be raised when :type:`GroupSelector` is used." - - group_not_found - "No matching group found. No groups match the specified group ID." - -union GroupSelectorWithTeamGroupError extends GroupSelectorError - "Error that can be raised when :type:`GroupSelector` is used and team groups are disallowed from - being used." - - system_managed_group_disallowed - "This operation is not supported on system-managed groups." - - -union_closed GroupsSelector - "Argument for selecting a list of groups, either by group_ids, or external group IDs." - - group_ids List(team_common.GroupId) - "List of group IDs." - group_external_ids List(String) - "List of external IDs of groups." - - example default - group_ids = ["g:e2db7665347abcd600000000001a2b3c", "g:111111147abcd6000000000222222c"] - - -struct GroupMemberSelector - "Argument for selecting a group and a single user." - - group GroupSelector - "Specify a group." - user UserSelectorArg - "Identity of a user that is a member of :field:`group`." - - example default - group = default - user = default - - -union GroupMemberSelectorError extends GroupSelectorWithTeamGroupError - "Error that can be raised when :type:`GroupMemberSelector` is used, and the user - is required to be a member of the specified group." - - member_not_in_group - "The specified user is not a member of this group." - - -struct GroupMembersSelector - "Argument for selecting a group and a list of users." - - group GroupSelector - "Specify a group." - users UsersSelectorArg - "A list of users that are members of :field:`group`." - - -union GroupMembersSelectorError extends GroupSelectorWithTeamGroupError - "Error that can be raised when :type:`GroupMembersSelector` is used, and the users - are required to be members of the specified group." - - member_not_in_group - "At least one of the specified users is not a member of the group." - - -struct IncludeMembersArg - - return_members Boolean = true - "Whether to return the list of members in the group. - Note that the default value will cause all the group members - to be returned in the response. This may take a long time for large groups." - -#################### -# Group Info methods -#################### - - -struct GroupMemberInfo - "Profile of group member, and role in group." - - profile MemberProfile - "Profile of group member." - access_type GroupAccessType - "The role that the user has in the group." - - example default - profile = default - access_type = default - - -struct GroupFullInfo extends team_common.GroupSummary - "Full description of a group." - - members List(GroupMemberInfo)? - "List of group members." - created UInt64 - "The group creation time as a UTC timestamp in milliseconds since the Unix epoch." - - example default - group_name = "project launch" - group_id = "g:e2db7665347abcd600000000001a2b3c" - member_count = 5 - group_management_type = user_managed - members = [default] - created = 1447255518000 - -# -# route groups/list -# - -struct GroupsListArg - limit UInt32(min_value=1, max_value=1000) = 1000 - "Number of results to return per call." - - example default - limit = 100 - - -struct GroupsListResult - groups List(team_common.GroupSummary) - cursor String - "Pass the cursor into :route:`groups/list/continue` to obtain the additional groups." - has_more Boolean - "Is true if there are additional groups that have not been returned - yet. An additional call to :route:`groups/list/continue` can retrieve them." - - example default - groups = [default] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = false - -route groups/list(GroupsListArg, GroupsListResult, Void) - "Lists groups on a team. - - Permission : Team Information." - - attrs - auth = "team" - scope = "groups.read" - -# -# route groups/list/continue -# - -struct GroupsListContinueArg - cursor String - "Indicates from what point to get the next set of groups." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - -union GroupsListContinueError - invalid_cursor - "The cursor is invalid." - -route groups/list/continue(GroupsListContinueArg, GroupsListResult, GroupsListContinueError) - "Once a cursor has been retrieved from :route:`groups/list`, use this to paginate - through all groups. - - Permission : Team Information." - - attrs - auth = "team" - scope = "groups.read" - -# -# route groups/get_info -# - -union_closed GroupsGetInfoItem - id_not_found String - "An ID that was provided as a parameter to :route:`groups/get_info`, and - did not match a corresponding group. The ID can be a group ID, or an external ID, - depending on how the method was called." - group_info GroupFullInfo - "Info about a group." - - example default - group_info = default - - -alias GroupsGetInfoResult = List(GroupsGetInfoItem) - - -union GroupsGetInfoError - group_not_on_team - "The group is not on your team." - -route groups/get_info(GroupsSelector, GroupsGetInfoResult, GroupsGetInfoError) - "Retrieves information about one or more groups. Note that the optional field - :field:`GroupFullInfo.members` is not returned for system-managed groups. - - Permission : Team Information." - - attrs - auth = "team" - scope = "groups.read" - -########################## -# Group management methods -########################## - - -# -# route groups/create -# - -struct GroupCreateArg - group_name String - "Group name." - add_creator_as_owner Boolean = false - "Automatically add the creator of the group." - group_external_id team_common.GroupExternalId? - "The creator of a team can associate an arbitrary external ID to the group." - group_management_type team_common.GroupManagementType? - "Whether the team can be managed by selected users, or only by team admins." - - example default - group_name = "Europe sales" - group_external_id = "group-134" - -union GroupCreateError - group_name_already_used - "The requested group name is already being used by another group." - group_name_invalid - "Group name is empty or has invalid characters." - external_id_already_in_use - "The requested external ID is already being used by another group." - system_managed_group_disallowed - "System-managed group cannot be manually created." - - -route groups/create(GroupCreateArg, GroupFullInfo, GroupCreateError) - "Creates a new, empty group, with a requested name. - - Permission : Team member management." - - attrs - auth = "team" - scope = "groups.write" - -# -# route groups/delete (async method) -# - -union GroupDeleteError extends GroupSelectorWithTeamGroupError - group_already_deleted - "This group has already been deleted." - - -route groups/delete(GroupSelector, async.LaunchEmptyResult, GroupDeleteError) - "Deletes a group. - - The group is deleted immediately. However the revoking of group-owned resources - may take additional time. - Use the :route:`groups/job_status/get` to determine whether this process has completed. - - Permission : Team member management." - - attrs - auth = "team" - scope = "groups.write" - -# -# route groups/update -# - -struct GroupUpdateArgs extends IncludeMembersArg - group GroupSelector - "Specify a group." - new_group_name String? - "Optional argument. Set group name to this if provided." - new_group_external_id team_common.GroupExternalId? - "Optional argument. New group external ID. - If the argument is None, the group's external_id won't be updated. - If the argument is empty string, the group's external id will be cleared." - new_group_management_type team_common.GroupManagementType? - "Set new group management type, if provided." - - example default - group = default - new_group_name = "Europe west sales" - new_group_external_id = "sales-234" - new_group_management_type = company_managed - -union GroupUpdateError extends GroupSelectorWithTeamGroupError - group_name_already_used - "The requested group name is already being used by another group." - group_name_invalid - "Group name is empty or has invalid characters." - external_id_already_in_use - "The requested external ID is already being used by another group." - -route groups/update(GroupUpdateArgs, GroupFullInfo, GroupUpdateError) - "Updates a group's name and/or external ID. - - Permission : Team member management." - - attrs - auth = "team" - scope = "groups.write" - -# -# Structures common to groups/members/add and groups/members/remove -# - -struct GroupMembersChangeResult - "Result returned by :route:`groups/members/add` and :route:`groups/members/remove`." - - group_info GroupFullInfo - "The group info after member change operation has been performed." - async_job_id async.AsyncJobId - "For legacy purposes async_job_id will always return one space ' '. Formerly, it was an ID that was used to obtain the status of granting/revoking group-owned resources. It's no longer necessary because the async processing now happens automatically." - - example default - group_info = default - async_job_id = "99988877733388" - -# -# route groups/members/add (async method) -# - -struct MemberAccess - "Specify access type a member should have when joined to a group." - - user UserSelectorArg - "Identity of a user." - access_type GroupAccessType - "Access type." - - example default - user = default - access_type = default - -struct GroupMembersAddArg extends IncludeMembersArg - group GroupSelector - "Group to which users will be added." - members List(MemberAccess) - "List of users to be added to the group." - - example default - group = default - members = [default] - - -union GroupMembersAddError extends GroupSelectorWithTeamGroupError - duplicate_user - "You cannot add duplicate users. One or more of the members - you are trying to add is already a member of the group." - group_not_in_team - "Group is not in this team. You cannot add members to a - group that is outside of your team." - members_not_in_team List(String) - "These members are not part of your team. Currently, you cannot add members - to a group if they are not part of your team, though this - may change in a subsequent version. To add new members to your Dropbox - Business team, use the :route:`members/add` endpoint." - users_not_found List(String) - "These users were not found in Dropbox." - user_must_be_active_to_be_owner - "A suspended user cannot be added to a group as :field:`GroupAccessType.owner`." - user_cannot_be_manager_of_company_managed_group List(String) - "A company-managed group cannot be managed by a user." - - -route groups/members/add(GroupMembersAddArg, GroupMembersChangeResult, GroupMembersAddError) - "Adds members to a group. - - The members are added immediately. However the granting of group-owned resources - may take additional time. - Use the :route:`groups/job_status/get` to determine whether this process has completed. - - Permission : Team member management." - - attrs - auth = "team" - scope = "groups.write" - -# -# route groups/members/remove (async method) -# - -struct GroupMembersRemoveArg extends IncludeMembersArg - group GroupSelector - "Group from which users will be removed." - users List(UserSelectorArg) - "List of users to be removed from the group." - - example default - group = default - users = [default] - -union GroupMembersRemoveError extends GroupMembersSelectorError - group_not_in_team - "Group is not in this team. You cannot remove members from a group - that is outside of your team." - members_not_in_team List(String) - "These members are not part of your team." - users_not_found List(String) - "These users were not found in Dropbox." - -route groups/members/remove(GroupMembersRemoveArg, GroupMembersChangeResult, GroupMembersRemoveError) - "Removes members from a group. - - The members are removed immediately. However the revoking of group-owned resources - may take additional time. - Use the :route:`groups/job_status/get` to determine whether this process has completed. - - This method permits removing the only owner of a group, even in cases where this is not - possible via the web client. - - Permission : Team member management." - - attrs - auth = "team" - scope = "groups.write" - -# -# route groups/members/set_access_type -# - - -struct GroupMembersSetAccessTypeArg extends GroupMemberSelector - access_type GroupAccessType - "New group access type the user will have." - return_members Boolean = true - "Whether to return the list of members in the group. - Note that the default value will cause all the group members - to be returned in the response. This may take a long time for large groups." - - example default - group = default - user = default - access_type = default - -union GroupMemberSetAccessTypeError extends GroupMemberSelectorError - user_cannot_be_manager_of_company_managed_group - "A company managed group cannot be managed by a user." - -route groups/members/set_access_type(GroupMembersSetAccessTypeArg, GroupsGetInfoResult, GroupMemberSetAccessTypeError) - "Sets a member's access type in a group. - - Permission : Team member management." - - attrs - auth = "team" - scope = "groups.write" - - -# -# route groups/members/list -# - -struct GroupsMembersListArg - group GroupSelector - "The group whose members are to be listed." - limit UInt32(min_value=1, max_value=1000) = 1000 - "Number of results to return per call." - - example default - group = default - limit = 100 - -struct GroupsMembersListResult - members List(GroupMemberInfo) - cursor String - "Pass the cursor into :route:`groups/members/list/continue` to obtain additional group members." - has_more Boolean - "Is true if there are additional group members that have not been returned - yet. An additional call to :route:`groups/members/list/continue` can retrieve them." - - example default - members = [] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = false - - -route groups/members/list(GroupsMembersListArg, GroupsMembersListResult, GroupSelectorError) - "Lists members of a group. - - Permission : Team Information." - - attrs - auth = "team" - scope = "groups.read" - -# -# route groups/members/list/continue -# - -struct GroupsMembersListContinueArg - cursor String - "Indicates from what point to get the next set of groups." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - -union GroupsMembersListContinueError - invalid_cursor - "The cursor is invalid." - -route groups/members/list/continue(GroupsMembersListContinueArg, GroupsMembersListResult, GroupsMembersListContinueError) - "Once a cursor has been retrieved from :route:`groups/members/list`, use this to paginate - through all members of the group. - - Permission : Team information." - - attrs - auth = "team" - scope = "groups.read" - -# -# route groups/job_status/get -# - -union GroupsPollError extends async.PollError - access_denied - "You are not allowed to poll this job." - -route groups/job_status/get(async.PollArg, async.PollEmptyResult, GroupsPollError) - "Once an async_job_id is returned from :route:`groups/delete`, - :route:`groups/members/add` , or :route:`groups/members/remove` - use this method to poll the status of granting/revoking - group members' access to group-owned resources. - - Permission : Team member management." - - attrs - auth = "team" - scope = "groups.write" diff --git a/team_legal_holds.stone b/team_legal_holds.stone deleted file mode 100644 index c673a98..0000000 --- a/team_legal_holds.stone +++ /dev/null @@ -1,365 +0,0 @@ -namespace team - -import common -import team_common -import files - -alias LegalHoldId = String(pattern="^pid_dbhid:.+") -alias LegalHoldPolicyName = String(max_length=140) -alias LegalHoldPolicyDescription = String(max_length=501) -alias Path = String(pattern="(/(.|[\\r\\n])*)?") - -union LegalHoldStatus - active - "The legal hold policy is active." - released - "The legal hold policy was released." - activating - "The legal hold policy is activating." - updating - "The legal hold policy is updating." - exporting - "The legal hold policy is exporting." - releasing - "The legal hold policy is releasing." - -struct MembersInfo - team_member_ids List(team_common.TeamMemberId) - "Team member IDs of the users under this hold." - permanently_deleted_users UInt64 - "The number of permanently deleted users that were under this hold." - - example default - team_member_ids = ["dbmid:efgh5678"] - permanently_deleted_users = 2 - -union LegalHoldsError - unknown_legal_hold_error - "There has been an unknown legal hold error." - insufficient_permissions - "You don't have permissions to perform this action." - -struct LegalHoldPolicy - id LegalHoldId - "The legal hold id." - name LegalHoldPolicyName - "Policy name." - description LegalHoldPolicyDescription? - "A description of the legal hold policy." - activation_time common.DropboxTimestamp? - "The time at which the legal hold was activated." - members MembersInfo - "Team members IDs and number of permanently deleted members under hold." - status LegalHoldStatus - "The current state of the hold." - start_date common.DropboxTimestamp - "Start date of the legal hold policy." - end_date common.DropboxTimestamp? - "End date of the legal hold policy." - - example default - id = "pid_dbhid:abcd1234" - name = "acme cfo policy" - activation_time = "2016-01-20T00:00:10Z" - members = default - status = active - start_date = "2016-01-01T00:00:00Z" - end_date = "2017-12-31T00:00:00Z" - -# -# route legal_holds/create_policy -# - -struct LegalHoldsPolicyCreateArg - name LegalHoldPolicyName - "Policy name." - description LegalHoldPolicyDescription? - "A description of the legal hold policy." - members List(team_common.TeamMemberId) - "List of team member IDs added to the hold." - start_date common.DropboxTimestamp? - "start date of the legal hold policy." - end_date common.DropboxTimestamp? - "end date of the legal hold policy." - - example default - name = "acme cfo policy" - members = ["dbmid:FDFSVF-DFSDF"] - start_date = "2016-01-01T00:00:00Z" - end_date = "2017-12-31T00:00:00Z" - -union LegalHoldsPolicyCreateError extends LegalHoldsError - start_date_is_later_than_end_date - "Start date must be earlier than end date." - empty_members_list - "The users list must have at least one user." - invalid_members - "Some members in the members list are not valid to be placed under legal hold." - number_of_users_on_hold_is_greater_than_hold_limitation - "You cannot add more than 5 users in a legal hold." - transient_error - "Temporary infrastructure failure, please retry." - name_must_be_unique - "The name provided is already in use by another legal hold." - team_exceeded_legal_hold_quota - "Team exceeded legal hold quota." - invalid_date - "The provided date is invalid." - -alias LegalHoldsPolicyCreateResult = LegalHoldPolicy - -route legal_holds/create_policy(LegalHoldsPolicyCreateArg, LegalHoldsPolicyCreateResult, LegalHoldsPolicyCreateError) - "Creates new legal hold policy. - Note: Legal Holds is a paid add-on. Not all teams have the feature. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.governance.write" - -# -# route legal_holds/get_policy -# - -struct LegalHoldsGetPolicyArg - id LegalHoldId - "The legal hold Id." - example default - id = "pid_dbhid:abcd1234" - -alias LegalHoldsGetPolicyResult = LegalHoldPolicy - -union LegalHoldsGetPolicyError extends LegalHoldsError - legal_hold_policy_not_found - "Legal hold policy does not exist for :field:`LegalHoldsGetPolicyArg.id`." - -route legal_holds/get_policy(LegalHoldsGetPolicyArg, LegalHoldsGetPolicyResult, LegalHoldsGetPolicyError) - "Gets a legal hold by Id. - Note: Legal Holds is a paid add-on. Not all teams have the feature. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.governance.write" - - -# -# route legal_holds/list_policies -# -struct LegalHoldsListPoliciesArg - include_released Boolean = false - "Whether to return holds that were released." - - example default - include_released = false - -struct LegalHoldsListPoliciesResult - policies List(LegalHoldPolicy) - - example default - policies = [default] - -union LegalHoldsListPoliciesError extends LegalHoldsError - transient_error - "Temporary infrastructure failure, please retry." - -route legal_holds/list_policies(LegalHoldsListPoliciesArg, LegalHoldsListPoliciesResult, LegalHoldsListPoliciesError) - "Lists legal holds on a team. - Note: Legal Holds is a paid add-on. Not all teams have the feature. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.governance.write" - - -# -# route legal_holds/list_held_revisions -# - -struct LegalHoldsListHeldRevisionsArg - id LegalHoldId - "The legal hold Id." - example default - id = "pid_dbhid:abcd1234" - -union LegalHoldsListHeldRevisionsError extends LegalHoldsError - transient_error - "Temporary infrastructure failure, please retry." - legal_hold_still_empty - "The legal hold is not holding any revisions yet." - inactive_legal_hold - "Trying to list revisions for an inactive legal hold." - -struct LegalHoldHeldRevisionMetadata - new_filename String - "The held revision filename." - original_revision_id files.Rev - "The id of the held revision." - original_file_path Path - "The original path of the held revision." - server_modified common.DropboxTimestamp - "The last time the file was modified on Dropbox." - author_member_id team_common.TeamMemberId - "The member id of the revision's author." - author_member_status TeamMemberStatus - "The member status of the revision's author." - author_email common.EmailAddress - "The email address of the held revision author." - file_type String - "The type of the held revision's file." - size UInt64 - "The file size in bytes." - content_hash files.Sha256HexHash - "A hash of the file content. This field can be used to verify data integrity. For more - information see our :link:`Content hash https://www.dropbox.com/developers/reference/content-hash` page." - - example default - new_filename = "111_222.pdf" - original_revision_id = "ab2rij4i5ojgfd" - original_file_path = "/a.pdf" - server_modified = "2019-08-12T12:08:52Z" - author_member_id = "dbmid:abcd1234abcd1234abcd1234abcd1234a23" - author_member_status = active - author_email = "a@a.com" - file_type = "Document" - size = 3 - content_hash = "abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234" - -alias ListHeldRevisionCursor = String(min_length=1) - -struct LegalHoldsListHeldRevisionResult - entries List(LegalHoldHeldRevisionMetadata) - "List of file entries that under the hold." - cursor ListHeldRevisionCursor? - "The cursor idicates where to continue reading file metadata entries for the next API call. When there are no more entries, the cursor will return none. - - Pass the cursor into - /2/team/legal_holds/list_held_revisions/continue." - has_more Boolean - "True if there are more file entries that haven't been returned. You can retrieve them with a call to /legal_holds/list_held_revisions_continue." - - example default - entries = [default] - has_more = false - -route legal_holds/list_held_revisions(LegalHoldsListHeldRevisionsArg, LegalHoldsListHeldRevisionResult, LegalHoldsListHeldRevisionsError) - "List the file metadata that's under the hold. - Note: Legal Holds is a paid add-on. Not all teams have the feature. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.governance.write" - - -# -# route legal_holds/list_held_revisions_continue -# - -struct LegalHoldsListHeldRevisionsContinueArg - id LegalHoldId - "The legal hold Id." - cursor ListHeldRevisionCursor? - "The cursor idicates where to continue reading file metadata entries for the next API call. When there are no more entries, the cursor will return none." - example default - id = "pid_dbhid:abcd1234" - -union LegalHoldsListHeldRevisionsContinueError - unknown_legal_hold_error - "There has been an unknown legal hold error." - transient_error - "Temporary infrastructure failure, please retry." - reset - "Indicates that the cursor has been invalidated. Call - :route:`legal_holds/list_held_revisions_continue` again with an empty cursor to obtain a new cursor." - -route legal_holds/list_held_revisions_continue(LegalHoldsListHeldRevisionsContinueArg, LegalHoldsListHeldRevisionResult, LegalHoldsListHeldRevisionsError) - "Continue listing the file metadata that's under the hold. - Note: Legal Holds is a paid add-on. Not all teams have the feature. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.governance.write" - -# -# route legal_holds/update_policy -# - -struct LegalHoldsPolicyUpdateArg - id LegalHoldId - "The legal hold Id." - name LegalHoldPolicyName? - "Policy new name." - description LegalHoldPolicyDescription? - "Policy new description." - members List(team_common.TeamMemberId)? - "List of team member IDs to apply the policy on." - example default - id = "pid_dbhid:abcd1234" - members = ["dbmid:FDFSVF-DFSDF"] - -union LegalHoldsPolicyUpdateError extends LegalHoldsError - transient_error - "Temporary infrastructure failure, please retry." - inactive_legal_hold - "Trying to release an inactive legal hold." - legal_hold_performing_another_operation - "Legal hold is currently performing another operation." - invalid_members - "Some members in the members list are not valid to be placed under legal hold." - number_of_users_on_hold_is_greater_than_hold_limitation - "You cannot add more than 5 users in a legal hold." - empty_members_list - "The users list must have at least one user." - name_must_be_unique - "The name provided is already in use by another legal hold." - legal_hold_policy_not_found - "Legal hold policy does not exist for :field:`LegalHoldsPolicyUpdateArg.id`." - - -alias LegalHoldsPolicyUpdateResult = LegalHoldPolicy - -route legal_holds/update_policy(LegalHoldsPolicyUpdateArg, LegalHoldsPolicyUpdateResult, LegalHoldsPolicyUpdateError) - "Updates a legal hold. - Note: Legal Holds is a paid add-on. Not all teams have the feature. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.governance.write" - -# -# route legal_holds/release_policy -# - -struct LegalHoldsPolicyReleaseArg - id LegalHoldId - "The legal hold Id." - example default - id = "pid_dbhid:abcd1234" - -union LegalHoldsPolicyReleaseError extends LegalHoldsError - legal_hold_performing_another_operation - "Legal hold is currently performing another operation." - legal_hold_already_releasing - "Legal hold is currently performing a release or is already released." - legal_hold_policy_not_found - "Legal hold policy does not exist for :field:`LegalHoldsPolicyReleaseArg.id`." - -route legal_holds/release_policy(LegalHoldsPolicyReleaseArg, Void, LegalHoldsPolicyReleaseError) - "Releases a legal hold by Id. - Note: Legal Holds is a paid add-on. Not all teams have the feature. - - Permission : Team member file access." - - attrs - auth = "team" - scope = "team_data.governance.write" diff --git a/team_linked_apps.stone b/team_linked_apps.stone deleted file mode 100644 index 4c4483d..0000000 --- a/team_linked_apps.stone +++ /dev/null @@ -1,254 +0,0 @@ -namespace team - -import common - -# -# Structures for linked_apps/list_member_linked_apps -# - -struct ListMemberAppsArg - team_member_id String - "The team member id." - - example default - team_member_id = "dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - -struct ApiApp - "Information on linked third party applications." - - app_id String - "The application unique id." - app_name String - "The application name." - publisher String? - "The application publisher name." - publisher_url String? - "The publisher's URL." - linked common.DropboxTimestamp? - "The time this application was linked." - is_app_folder Boolean - "Whether the linked application uses a dedicated folder." - - example default - app_id = "dbaid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - app_name = "Notes" - publisher = "Notes company" - publisher_url = "http://company.com" - linked = "2015-05-12T15:50:38Z" - is_app_folder = true - -struct ListMemberAppsResult - linked_api_apps List(ApiApp) - "List of third party applications linked by this team member." - - example default - linked_api_apps = [default] - -union ListMemberAppsError - "Error returned by :route:`linked_apps/list_member_linked_apps`." - - member_not_found - "Member not found." - -# -# Route: linked_apps/list_member_linked_apps -# - -route linked_apps/list_member_linked_apps(ListMemberAppsArg, ListMemberAppsResult, ListMemberAppsError) - "List all linked applications of the team member. - - Note, this endpoint does not list any team-linked applications." - - attrs - auth = "team" - scope = "sessions.list" - -# -# Structs for linked_apps/list_members_linked_apps -# - -struct ListMembersAppsArg - "Arguments for :route:`linked_apps/list_members_linked_apps`." - - cursor String? - "At the first call to the :route:`linked_apps/list_members_linked_apps` the cursor shouldn't be - passed. Then, if the result of the call includes a cursor, the following requests should - include the received cursors in order to receive the next sub list of the team applications." - - example default - cursor = "AADAQO8ZWKvBkSMXb1J9dAYVvwZ0wcvfyzIBo2e1H-_N-67pfrYKTb4oN_3LG9_ilWjblZXuiR8ubjjiQQkHq-MvDjbe_6bkcJgjnTpowrRaQA" - -struct MemberLinkedApps - "Information on linked applications of a team member." - - team_member_id String - "The member unique Id." - linked_api_apps List(ApiApp) - "List of third party applications linked by this team member." - - example default - team_member_id = "dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - linked_api_apps = [default] - -struct ListMembersAppsResult - "Information returned by :route:`linked_apps/list_members_linked_apps`." - - apps List(MemberLinkedApps) - "The linked applications of each member of the team." - has_more Boolean - "If true, then there are more apps available. Pass the - cursor to :route:`linked_apps/list_members_linked_apps` to retrieve the rest." - cursor String? - "Pass the cursor into :route:`linked_apps/list_members_linked_apps` to receive the next - sub list of team's applications." - - example default - apps = [default] - has_more = true - cursor = "AADAQO8ZWKvBkSMXb1J9dAYVvwZ0wcvfyzIBo2e1H-_N-67pfrYKTb4oN_3LG9_ilWjblZXuiR8ubjjiQQkHq-MvDjbe_6bkcJgjnTpowrRaQA" - -union ListMembersAppsError - "Error returned by :route:`linked_apps/list_members_linked_apps`." - - reset - "Indicates that the cursor has been invalidated. Call - :route:`linked_apps/list_members_linked_apps` again with an empty cursor to obtain a new cursor." - -# -# Route: linked_apps/list_members_linked_apps -# -route linked_apps/list_members_linked_apps(ListMembersAppsArg, ListMembersAppsResult, ListMembersAppsError) - "List all applications linked to the team members' accounts. - - Note, this endpoint does not list any team-linked applications." - - attrs - auth = "team" - scope = "sessions.list" - -# -# Structs for linked_apps/revoke_linked_app -# - -struct RevokeLinkedApiAppArg - app_id String - "The application's unique id." - team_member_id String - "The unique id of the member owning the device." - keep_app_folder Boolean = true - "This flag is not longer supported, the application dedicated folder (in case the application uses - one) will be kept." - - example default - app_id = "dbaid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - team_member_id = "dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - -union RevokeLinkedAppError - "Error returned by :route:`linked_apps/revoke_linked_app`." - - app_not_found - "Application not found." - member_not_found - "Member not found." - app_folder_removal_not_supported - "App folder removal is not supported." - -# -# Route: linked_apps/revoke_linked_app -# - -route linked_apps/revoke_linked_app(RevokeLinkedApiAppArg, Void, RevokeLinkedAppError) - "Revoke a linked application of the team member." - - attrs - auth = "team" - scope = "sessions.modify" - -# -# structs for linked_apps/revoke_linked_app_batch -# - -struct RevokeLinkedApiAppBatchArg - revoke_linked_app List(RevokeLinkedApiAppArg) - - example default - revoke_linked_app = [default] - -struct RevokeLinkedAppStatus - - success Boolean - "Result of the revoking request." - error_type RevokeLinkedAppError? - "The error cause in case of a failure." - - example default - success = false - error_type = app_not_found - -struct RevokeLinkedAppBatchResult - revoke_linked_app_status List(RevokeLinkedAppStatus) - - example default - revoke_linked_app_status = [default] - -union RevokeLinkedAppBatchError - "Error returned by :route:`linked_apps/revoke_linked_app_batch`." - -# -# Route: linked_apps/revoke_linked_app_batch -# - -route linked_apps/revoke_linked_app_batch(RevokeLinkedApiAppBatchArg, RevokeLinkedAppBatchResult, RevokeLinkedAppBatchError) - "Revoke a list of linked applications of the team members." - - attrs - auth = "team" - scope = "sessions.modify" - -# -# Deprecated endpoints -# - -struct ListTeamAppsArg - "Arguments for :route:`linked_apps/list_team_linked_apps`." - - cursor String? - "At the first call to the :route:`linked_apps/list_team_linked_apps` the cursor shouldn't be - passed. Then, if the result of the call includes a cursor, the following requests should - include the received cursors in order to receive the next sub list of the team applications." - - example default - cursor = "AADAQO8ZWKvBkSMXb1J9dAYVvwZ0wcvfyzIBo2e1H-_N-67pfrYKTb4oN_3LG9_ilWjblZXuiR8ubjjiQQkHq-MvDjbe_6bkcJgjnTpowrRaQA" - -struct ListTeamAppsResult - "Information returned by :route:`linked_apps/list_team_linked_apps`." - - apps List(MemberLinkedApps) - "The linked applications of each member of the team." - has_more Boolean - "If true, then there are more apps available. Pass the - cursor to :route:`linked_apps/list_team_linked_apps` to retrieve the rest." - cursor String? - "Pass the cursor into :route:`linked_apps/list_team_linked_apps` to receive the next - sub list of team's applications." - - example default - apps = [default] - has_more = true - cursor = "AADAQO8ZWKvBkSMXb1J9dAYVvwZ0wcvfyzIBo2e1H-_N-67pfrYKTb4oN_3LG9_ilWjblZXuiR8ubjjiQQkHq-MvDjbe_6bkcJgjnTpowrRaQA" - -union ListTeamAppsError - "Error returned by :route:`linked_apps/list_team_linked_apps`." - - reset - "Indicates that the cursor has been invalidated. Call - :route:`linked_apps/list_team_linked_apps` again with an empty cursor to obtain a new cursor." - -route linked_apps/list_team_linked_apps(ListTeamAppsArg, ListTeamAppsResult, ListTeamAppsError) deprecated by linked_apps/list_members_linked_apps - "List all applications linked to the team members' accounts. - - Note, this endpoint doesn't list any team-linked applications." - - attrs - auth = "team" - scope = "sessions.list" diff --git a/team_log.stone b/team_log.stone index ee08e55..a2bc1d5 100644 --- a/team_log.stone +++ b/team_log.stone @@ -1,17 +1,44 @@ namespace team_log -import async import common +import file_requests +import files +import sharing import team import team_common +import team_policies import users_common -############################### -# Routes declarations -############################### +alias TeamEventList = List(TeamEvent) + +union GetTeamEventsError + "Errors that can be raised when calling :route:`get_events`." + account_id_not_found + "No user found matching the provided account_id." + invalid_time_range + "Invalid time range." + invalid_filters + "Invalid filters. Do not specify both event_type and category parameters for the same call." + + example default + account_id_not_found = null + +union GetTeamEventsContinueError + "Errors that can be raised when calling :route:`get_events/continue`." + bad_cursor + "Bad cursor." + reset common.DropboxTimestamp + "Cursors are intended to be used quickly. Individual cursor values are normally valid for days, + but in rare cases may be reset sooner. + Cursor reset errors should be handled by fetching a new cursor from :route:`get_events`. + The associated value is the approximate timestamp of the most recent event returned by the cursor. + This should be used as a resumption point when calling :route:`get_events` to obtain a new cursor." + + example default + bad_cursor = null struct GetTeamEventsArg - limit UInt32(min_value=1, max_value=1000) = 1000 + limit UInt32(max_value=1000, min_value=1) = 1000 "The maximal number of results to return per call. Note that some calls may not return :field:`limit` number of events, and may even return no events, even with `has_more` set to true. In this case, callers should fetch again using :route:`get_events/continue`." @@ -28,25 +55,18 @@ struct GetTeamEventsArg together with category." example default - limit=50 - category=groups - -# This is used only for `json_encode` in metaserver/tests/util/event_helper.py -# simply because I don't know how to use the list. -alias TeamEventList = List(TeamEvent) + limit = 50 + category = groups struct GetTeamEventsResult events List(TeamEvent) "List of events. Note that events are not guaranteed to be sorted by their timestamp value." cursor String "Pass the cursor into :route:`get_events/continue` to obtain additional events. - The value of :field:`cursor` may change for each response from :route:`get_events/continue`, regardless of the value of :field:`has_more`; older cursor strings may expire. - Thus, callers should ensure that they update their cursor based on the latest value of :field:`cursor` after each call, and poll regularly if they wish to poll for new events. - Callers should handle reset exceptions for expired cursors." has_more Boolean "Is true if there may be additional events that have not been returned yet. @@ -58,69 +78,14347 @@ struct GetTeamEventsResult cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" has_more = false -union GetTeamEventsError - "Errors that can be raised when calling :route:`get_events`." - - account_id_not_found - "No user found matching the provided account_id." - invalid_time_range - "Invalid time range." - invalid_filters - "Invalid filters. Do not specify both event_type and category parameters for the same call." +struct GetTeamEventsContinueArg + cursor String + "Indicates from what point to get the next set of events." example default - account_id_not_found = null + cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" -route get_events(GetTeamEventsArg, GetTeamEventsResult, GetTeamEventsError) +route get_events (GetTeamEventsArg, GetTeamEventsResult, GetTeamEventsError) "Retrieves team events. If the result's :field:`GetTeamEventsResult.has_more` field is :val:`true`, call :route:`get_events/continue` with the returned cursor to retrieve more entries. If end_time is not specified in your request, you may use the returned cursor to poll :route:`get_events/continue` for new events. - Many attributes note 'may be missing due to historical data gap'. - Note that the file_operations category and & analogous paper events are not available on all Dropbox Business :link:`plans /business/plans-comparison`. Use :link:`features/get_values /developers/documentation/http/teams#team-features-get_values` to check for this feature. + Permission : Team Auditing." + + attrs + auth = "team" + scope = "events.read" +route get_events/continue (GetTeamEventsContinueArg, GetTeamEventsResult, GetTeamEventsContinueError) + "Once a cursor has been retrieved from :route:`get_events`, use this to paginate through all events. Permission : Team Auditing." attrs auth = "team" scope = "events.read" -struct GetTeamEventsContinueArg - cursor String - "Indicates from what point to get the next set of events." + +alias FilePath = String + +alias NamespaceId = String + +alias EmailAddress = String(max_length=255) + +alias AppId = String + +alias IpAddress = String + +alias RequestId = String + +union QuickActionType + "Quick action type." + delete_shared_link + reset_password + restore_file_or_folder + unlink_app + unlink_device + unlink_session example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" + delete_shared_link = null +union TeamMembershipType + free + full + guest -union GetTeamEventsContinueError - "Errors that can be raised when calling :route:`get_events/continue`." +union AccountCaptureAvailability + available + unavailable - bad_cursor - "Bad cursor." +union AccountCaptureNotificationType + actionable_notification + proactive_warning_notification - reset common.DropboxTimestamp - "Cursors are intended to be used quickly. Individual cursor values are normally valid for days, - but in rare cases may be reset sooner. +union AccountCapturePolicy + all_users + disabled + invited_users - Cursor reset errors should be handled by fetching a new cursor from :route:`get_events`. +union AccountState + locked + unlocked - The associated value is the approximate timestamp of the most recent event returned by the cursor. - This should be used as a resumption point when calling :route:`get_events` to obtain a new cursor." +union AdminAlertCategoryEnum + "Alert category" + account_takeover + data_loss_protection + information_governance + malware_sharing + massive_file_operation + na + threat_management + +union AdminAlertGeneralStateEnum + "Alert state" + active + dismissed + in_progress + na + resolved + +union AdminAlertSeverityEnum + "Alert severity" + high + info + low + medium + na + +union AdminAlertingAlertSensitivity + "Alert sensitivity" + high + highest + invalid + low + lowest + medium + +union AdminAlertingAlertStatePolicy + "Policy for controlling whether an alert can be triggered or not" + off + on + +union AdminConsoleAppPermission + default_for_listed_apps + default_for_unlisted_apps + +union AdminConsoleAppPolicy + allow + block + default + +union AdminEmailRemindersPolicy + "Policy for deciding whether team admins receive reminder emails for requests to join the team" + default + disabled + enabled + +union AdminRole + billing_admin + compliance_admin + content_admin + deprecated_freemium_team_member + freemium_team_creator + limited_admin + member_only + reporting_admin + security_admin + support_admin + team_admin + user_management_admin + +union AiThirdPartySharingDropboxBasePolicy + "Policy for deciding whether team users can use third party AI services" + admins_only + default + disabled + enabled + +union AlertRecipientsSettingType + "Alert recipients setting type" + custom_list + invalid + none + team_admins + +union AppleLoginPolicy + "Apple login policy" + default + disabled + enabled + +union BackupStatus + "Backup status" + disabled + enabled + +union CameraUploadsPolicy + "Policy for controlling if team members can activate camera uploads" + disabled + enabled + +union CaptureTeamSpacePolicy + "Policy for deciding whether team users have access to the Capture team space" + disabled + enabled + +union CaptureTranscriptPolicy + "Policy for deciding whether team users can transcription in Capture" + default + disabled + enabled + +union ChangeLinkExpirationPolicy + "Policy for deciding whether the team's default expiration days policy must be enforced when an externally shared link is updated" + allowed + not_allowed + +union ClassificationPolicyEnumWrapper + "Policy for controlling team access to the classification feature" + disabled + enabled + member_and_team_folders + team_folders + +union ClassificationType + "The type of classification (currently only personal information)" + personal_information + pii + +union ComputerBackupPolicy + "Policy for controlling team access to computer backup feature" + default + disabled + enabled + +union ContentDeletionProtectionPolicy + "Content deletion protection policy" + off + on_above_threshold + on_all_files + +union ContentPermanentDeletePolicy + "Policy for pemanent content deletion" + disabled + enabled + +union DashConnectorStatus + "The status of the Connector" + fail + success + +union DashExternalSharingPolicy + "Policy for deciding whether team users can share Dash content externally" + default + disabled + enabled + +union DashPreviewOptOutStatus + "The new preview opt-out status" + opted_in + opted_out + +union DashStackSharingScope + "The stack sharing scope" + invited + public + team + unknown + +union DashStackType + "The type of stack backend" + cypress + reference_container + unknown + +union DefaultLinkExpirationDaysPolicy + "Policy for the default number of days until an externally shared link expires" + day_1 + day_180 + day_3 + day_30 + day_7 + day_90 + none + year_1 + +union DeviceApprovalsPolicy + limited + unlimited + +union DeviceType + desktop + mobile + +union DeviceUnlinkPolicy + keep + remove + +union DispositionActionType + automatic_delete + automatic_permanently_delete + +union DownloadPolicyType + "Shared content downloads policy" + allow + disallow + +union DropboxPasswordsPolicy + "Policy for deciding whether team users can use Dropbox Passwords" + default + disabled + enabled + +union EmailIngestPolicy + "Policy for deciding whether a team can use Email to Dropbox feature" + disabled + enabled + +union EnforceLinkPasswordPolicy + "Policy for deciding whether password must be enforced when an externally shared link is updated" + optional + required + +union ExtendedVersionHistoryPolicy + explicitly_limited + explicitly_unlimited + implicitly_limited + implicitly_unlimited + +union ExternalDriveBackupEligibilityStatus + "External Drive Backup eligibility status" + exceed_license_cap + skip + success + +union ExternalDriveBackupPolicy + "Policy for controlling team access to external drive backup feature" + default + disabled + enabled + +union ExternalDriveBackupStatus + "External Drive Backup status" + broken + created + created_or_broken + deleted + empty + unknown + +union ExternalSharingSetting + "External sharing setting" + allow + forbid + unset + +union FedAdminRole + enterprise_admin + not_enterprise_admin + +union FedHandshakeAction + accepted_invite + canceled_invite + invite_expired + invited + rejected_invite + removed_team + +union FileCommentNotificationPolicy + "Enable or disable file comments notifications" + disabled + enabled + +union FileCommentsPolicy + "File comments policy" + disabled + enabled + +union FileRequestsPolicy + "File requests policy" + disabled + enabled + +union FileTransfersPolicy + "File transfers policy" + disabled + enabled + +union FlexibleFileNamesPolicy + "Flexible file names policy" + off + off_default + optional + optional_default + required + required_default + +union FolderLinkRestrictionPolicy + "Policy for deciding whether applying link restrictions on all team owned folders" + disabled + enabled + +union GoogleSsoPolicy + "Google SSO policy" + disabled + enabled + +union GroupJoinPolicy + open + request_to_join + +union IdentifierType + email + facebook_profile_name + +union IntegrationPolicy + "Policy for controlling whether a service integration is enabled for the team." + disabled + enabled + +union InviteAcceptanceEmailPolicy + "Policy for deciding whether team admins receive email when an invitation to join the team is accepted" + disabled + enabled + +union InviteMethod + auto_approve + invite_link + member_invite + moved_from_another_team + +union LabelType + "Label type" + personal_information + test_only + user_defined_tag + +union LockStatus + "File lock status" + locked + unlocked + +union LoginMethod + apple_oauth + first_party_token_exchange + google_oauth + kakao_oauth + lenovo_oauth + passkey + password + qr_code + saml + two_factor_authentication + web_session + microsoft_oauth + +union MemberRemoveActionType + delete + leave + offboard + offboard_and_retain_team_folders + +union MemberRequestsPolicy + auto_accept + disabled + require_approval + +union MemberSendInvitePolicy + "Policy for controlling whether team members can send team invites" + disabled + everyone + specific_members + +union MemberStatus + active + invited + moved_to_another_team + not_joined + removed + suspended + +union MemberSuggestionsPolicy + "Member suggestions policy" + disabled + enabled + +union MicrosoftLoginPolicy + "Microsoft login policy" + default + disabled + enabled + +union MicrosoftOfficeAddinPolicy + "Microsoft Office addin policy" + disabled + enabled + +union NetworkControlPolicy + "Network control policy" + disabled + enabled + +union PaperAccessType + commenter + editor + viewer + +union PaperDefaultFolderPolicy + "Policy to set default access for newly created Paper folders." + everyone_in_team + invite_only + +union PaperDesktopPolicy + "Policy for controlling if team members can use Paper Desktop" + disabled + enabled + +union PaperDownloadFormat + docx + html + markdown + pdf + +union PaperMemberPolicy + "Policy for controlling if team members can share Paper documents externally." + anyone_with_link + only_team + team_and_explicitly_shared + +union PassPolicy + allow + disabled + enabled + +union PasskeyLoginPolicy + "Passkey login policy" + default + disabled + enabled + +union PlacementRestriction + australia_only + canada_only + europe_only + japan_only + none + uk_only + us_s3_only + +union PolicyType + disposition + retention + +union PreviewsAiPolicy + "Policy for deciding whether team users can use Previews AI" + default + disabled + enabled + +union ReplayAddingPeoplePolicy + "Policy for deciding who can be added to Replay content" + anyone + team_and_allowlist + team_only + +union ReplayLinkAccess + "Who can access this Replay link" + anyone_logged_in + no_login_required + team_and_approved + team_only + +union ReplaySharingPolicy + "Policy for deciding who Replay content can be shared with through links" + anyone + team_and_allowlist + team_only + +union ResellerRole + not_reseller + reseller_admin + +union ResellerSupportPolicy + "Policy for controlling if reseller can access the admin console as administrator" + disabled + enabled + +union RewindPolicy + "Policy for controlling whether team members can rewind" + admins_only + everyone + +union SecondaryMailsPolicy + disabled + enabled + +union SendAndTrackPolicy + "Policy for deciding whether team users can use Send and Track" + default + disabled + enabled + +union SendExternalSharingPolicy + "Policy for deciding whether team users can share Send content externally" + default + disabled + enabled + +union SendForSignaturePolicy + "Policy for controlling team access to send for signature feature" + disabled + enabled + +union SharedFolderMembersInheritancePolicy + "Specifies if a shared folder inherits its members from the parent folder." + dont_inherit_members + inherit_members + +union SharedLinkAccessLevel + "Shared link access level." + none + reader + writer + +union SharedLinkDefaultPermissionsPolicy + "Policy for deciding the default permissions granted through shared links" + default + edit + view + +union SharedLinkVisibility + "Defines who has access to a shared link." + no_one + password + public + team_only + +union SharingFolderJoinPolicy + "Policy for controlling if team members can join shared folders owned by non team members." + from_anyone + from_team_only + +union SharingLinkPolicy + "Policy for controlling if team members can share links externally" + default_no_one + default_private + default_public + only_private + +union SharingMemberPolicy + "External sharing policy" + allow + forbid + forbid_with_exclusions + +union ShowcaseDownloadPolicy + "Policy for controlling if files can be downloaded from Showcases by team members" + disabled + enabled + +union ShowcaseEnabledPolicy + "Policy for controlling whether Showcase is enabled." + disabled + enabled + +union ShowcaseExternalSharingPolicy + "Policy for controlling if team members can share Showcases externally." + disabled + enabled + +union SignExternalSharingPolicy + "Policy for deciding whether team users can share Sign content externally" + default + disabled + enabled + +union SignTemplateCreationPermissionPolicy + "Policy for controlling if team members can create templates" + disabled + enabled + +union SmartSyncOptOutPolicy + default + opted_out + +union SpaceCapsType + "Space limit alert policy" + hard + off + soft + +union SpaceLimitsStatus + near_quota + over_quota + within_quota + +union StackCrossTeamAccessPolicy + "Policy for whether a team's content can be reached via Stacks owned by other teams" + allowed + default + disallowed + +union TeamBrandingPolicy + "Policy for controlling team access to setting up branding feature" + disabled + enabled + +union TeamExtensionsPolicy + "Policy for controlling whether App Integrations are enabled for the team." + disabled + enabled + +union TeamMemberStorageRequestPolicy + "Policy for deciding whether team members can request increased storage limits from admins" + default + disabled + enabled + +union TeamSelectiveSyncPolicy + "Policy for controlling whether team selective sync is enabled for team." + disabled + enabled + +union TfaConfiguration + "Two factor authentication configuration. Note: the enabled option is deprecated." + authenticator + disabled + enabled + sms + +union TimeUnit + days + hours + milliseconds + minutes + months + seconds + weeks + years + +union TopLevelContentPolicy + "Policy for deciding whether members can edit team folders at the top level of the team space" + admins_only + everyone + +union TrustedNonTeamMemberType + enterprise_admin + multi_instance_admin + +union TrustedTeamsRequestAction + accepted + declined + expired + invited + revoked + +union TrustedTeamsRequestState + invited + linked + unlinked + +union TwoAccountPolicy + "Policy for pairing personal account to work account" + disabled + enabled + +union WatermarkingPolicy + "Policy for controlling team access to watermarking feature" + disabled + enabled + +union ActionDetails + "Additional information indicating the action taken that caused status change." + remove_action MemberRemoveActionType + "Define how the user was removed from the team." + team_invite_details TeamInviteDetails + "Additional information relevant when someone is invited to the team" + team_join_details JoinTeamDetails + "Additional information relevant when a new member joins the team." example default - bad_cursor = null + team_join_details = default + + example default2 + team_join_details = default2 -route get_events/continue(GetTeamEventsContinueArg, GetTeamEventsResult, GetTeamEventsContinueError) - "Once a cursor has been retrieved from :route:`get_events`, use this to paginate through all events. +union AssetLogInfo + "Asset details." + file FileLogInfo + "File's details." + folder FolderLogInfo + "Folder's details." + paper_document PaperDocumentLogInfo + "Paper document's details." + paper_folder PaperFolderLogInfo + "Paper folder's details." + showcase_document ShowcaseDocumentLogInfo + "Showcase document's details." - Permission : Team Auditing." + example default + file = default + + example default2 + file = default2 + +union FedExtraDetails + "More details about the organization or team." + organization OrganizationDetails + "More details about the organization." + team TeamDetails + "More details about the team." + + example default + team = default + + example default2 + team = default2 + +union FederationStatusChangeAdditionalInfo + "Additional information about the organization or connected team" + connected_team_name ConnectedTeamName + "The name of the team" + non_trusted_team_details NonTrustedTeamDetails + "The email to which the request was sent" + organization_name OrganizationName + "The name of the organization" + + example default + connected_team_name = default + + example default2 + connected_team_name = default2 + +union LinkedDeviceLogInfo + "The device sessions that user is linked to." + desktop_device_session DesktopDeviceSessionLogInfo + "desktop device session's details." + legacy_device_session LegacyDeviceSessionLogInfo + "legacy device session's details." + mobile_device_session MobileDeviceSessionLogInfo + "mobile device session's details." + web_device_session WebDeviceSessionLogInfo + "web device session's details." + + example default + mobile_device_session = default + + example default2 + mobile_device_session = default2 + +union ParticipantLogInfo + "A user or group" + group GroupLogInfo + "Group details." + user UserLogInfo + "A user with a Dropbox account." + + example default + user = default + + example default2 + user = default2 + +union TeamMergeRequestAcceptedExtraDetails + "Team merge request acceptance details" + primary_team PrimaryTeamRequestAcceptedDetails + "Team merge request accepted details shown to the primary team" + secondary_team SecondaryTeamRequestAcceptedDetails + "Team merge request accepted details shown to the secondary team" + + example default + primary_team = default + + example default2 + primary_team = default2 + +union TeamMergeRequestCanceledExtraDetails + "Team merge request cancellation details" + primary_team PrimaryTeamRequestCanceledDetails + "Team merge request cancellation details shown to the primary team" + secondary_team SecondaryTeamRequestCanceledDetails + "Team merge request cancellation details shown to the secondary team" + + example default + primary_team = default + + example default2 + primary_team = default2 + +union TeamMergeRequestExpiredExtraDetails + "Team merge request expiration details" + primary_team PrimaryTeamRequestExpiredDetails + "Team merge request canceled details shown to the primary team" + secondary_team SecondaryTeamRequestExpiredDetails + "Team merge request canceled details shown to the secondary team" + + example default + primary_team = default + + example default2 + primary_team = default2 + +union TeamMergeRequestReminderExtraDetails + "Team merge request reminder details" + primary_team PrimaryTeamRequestReminderDetails + "Team merge request reminder details shown to the primary team" + secondary_team SecondaryTeamRequestReminderDetails + "Team merge request reminder details shown to the secondary team" + + example default + primary_team = default + + example default2 + primary_team = default2 + +union WebSessionsFixedLengthPolicy + "Web sessions fixed length policy." + defined DurationLogInfo + "Defined fixed session length." + undefined + "Undefined fixed session length." + + example default + defined = default + + example default2 + defined = default2 + +union WebSessionsIdleLengthPolicy + "Web sessions idle length policy." + defined DurationLogInfo + "Defined idle session length." + undefined + "Undefined idle session length." + + example default + defined = default + + example default2 + defined = default2 + +struct AddonLogInfo + "Add-on logged information" + addon_name String + "Add-on name." + + example default + addon_name = "abc" + + example default2 + addon_name = "xyz" + +struct AdminAlertingAlertConfiguration + "Alert configurations" + alert_state AdminAlertingAlertStatePolicy? + "Alert state." + sensitivity_level AdminAlertingAlertSensitivity? + "Sensitivity level." + recipients_settings RecipientsConfiguration? + "Recipient settings." + text String? + "Text." + excluded_file_extensions String? + "Excluded file extensions." + malware_exclusion_state MalwareExclusionState? + "Malware exclusion list state." + + example default + alert_state = off + sensitivity_level = invalid + recipients_settings = default + text = "abc" + excluded_file_extensions = "abc" + malware_exclusion_state = default + + example default2 + alert_state = off + sensitivity_level = invalid + recipients_settings = default2 + text = "xyz" + excluded_file_extensions = "xyz" + malware_exclusion_state = default2 + +struct AppLogInfo + "App's logged information." + union + team_linked_app TeamLinkedAppLogInfo + user_linked_app UserLinkedAppLogInfo + user_or_team_linked_app UserOrTeamLinkedAppLogInfo + app_id AppId? + "App unique ID." + display_name String? + "App display name." + + example default + team_linked_app = default + + example default2 + team_linked_app = default2 + +struct Certificate + "Certificate details." + subject String + "Certificate subject." + issuer String + "Certificate issuer." + issue_date String + "Certificate issue date." + expiration_date String + "Certificate expiration date." + serial_number String + "Certificate serial number." + sha1_fingerprint String + "Certificate sha1 fingerprint." + common_name String? + "Certificate common name." + + example default + subject = "abc" + issuer = "abc" + issue_date = "abc" + expiration_date = "abc" + serial_number = "abc" + sha1_fingerprint = "abc" + common_name = "abc" + + example default2 + subject = "xyz" + issuer = "xyz" + issue_date = "xyz" + expiration_date = "xyz" + serial_number = "xyz" + sha1_fingerprint = "xyz" + common_name = "xyz" + +struct ConnectedTeamName + "The name of the team" + team String + "The name of the team." + + example default + team = "My Team" + + example default2 + team = "My Team" + +struct DesktopDeviceSessionLogInfo extends DeviceSessionLogInfo + "Information about linked Dropbox desktop client sessions" + session_info DesktopSessionLogInfo? + "Desktop session unique id." + host_name String + "Name of the hosting desktop." + client_type team.DesktopPlatform + "The Dropbox desktop client type." + client_version String? + "The Dropbox client version." + platform String + "Information on the hosting platform." + is_delete_on_unlink_supported Boolean + "Whether itu2019s possible to delete all of the account files upon unlinking." + + example default + ip_address = "45.56.78.100" + created = "2017-01-25T15:51:30Z" + updated = "2017-01-25T15:51:30Z" + session_info = default + host_name = "my_desktop" + client_type = other + client_version = "abc" + platform = "abc" + is_delete_on_unlink_supported = true + + example default2 + ip_address = "45.56.78.100" + created = "2017-01-25T15:51:30Z" + updated = "2017-01-25T15:51:30Z" + session_info = default2 + host_name = "my_desktop" + client_type = other + client_version = "xyz" + platform = "xyz" + is_delete_on_unlink_supported = false + +struct DesktopSessionLogInfo extends SessionLogInfo + "Desktop session." + + example default + session_id = "dbwsid:123456789012345678901234567890123456789" + + example default2 + session_id = "dbwsid:abcd5678901234567890123456789012345abcd" + +struct DeviceSessionLogInfo + "Device's session logged information." + union + desktop_device_session DesktopDeviceSessionLogInfo + legacy_device_session LegacyDeviceSessionLogInfo + mobile_device_session MobileDeviceSessionLogInfo + web_device_session WebDeviceSessionLogInfo + ip_address IpAddress? + "The IP address of the last activity from this session." + created common.DropboxTimestamp? + "The time this session was created." + updated common.DropboxTimestamp? + "The time of the last activity from this session." + + example default + desktop_device_session = default + + example default2 + desktop_device_session = default2 + +struct DurationLogInfo + "Represents a time duration: unit and amount" + unit TimeUnit + "Time unit." + amount UInt64 + "Amount of time." + + example default + unit = milliseconds + amount = 3 + + example default2 + unit = milliseconds + amount = 4 + +struct ExternalUserLogInfo + "A user without a Dropbox account." + user_identifier String + "An external user identifier." + identifier_type IdentifierType + "Identifier type." + + example default + user_identifier = "david@example.com" + identifier_type = email + + example default2 + user_identifier = "david@example.com" + identifier_type = email + +struct FailureDetailsLogInfo + "Provides details about a failure" + user_friendly_message String? + "A user friendly explanation of the error." + technical_error_message String? + "A technical explanation of the error. This is relevant for some errors." + + example default + user_friendly_message = "abc" + technical_error_message = "abc" + + example default2 + user_friendly_message = "xyz" + technical_error_message = "xyz" + +struct FileLogInfo extends FileOrFolderLogInfo + "File's logged information." + + example default + path = default + display_name = "reports.xls" + file_id = "id:jQKLsZFQImAAAAAAEZAAQt" + file_size = 3 + + example default2 + path = default2 + display_name = "reports.xls" + file_id = "id:jQKLsZFQImAAAAAAEZAAQt" + file_size = 4 + +struct FileRequestDeadline + "File request deadline" + deadline common.DropboxTimestamp? + "The deadline for this file request. Might be missing due to historical data gap." + allow_late_uploads String? + "If set, allow uploads after the deadline has passed." + + example default + deadline = "2017-01-25T15:51:30Z" + allow_late_uploads = "one_day" + + example default2 + deadline = "2017-01-25T15:51:30Z" + allow_late_uploads = "one_day" + +struct FileRequestDetails + "File request details" + asset_index UInt64 + "Asset position in the Assets list." + deadline FileRequestDeadline? + "File request deadline." + has_password Boolean? + "Flag represents if this file request has password." + + example default + asset_index = 3 + deadline = default + has_password = true + + example default2 + asset_index = 4 + deadline = default2 + has_password = false + +struct FolderLogInfo extends FileOrFolderLogInfo + "Folder's logged information." + file_count UInt64? + "Number of files within the folder." + + example default + path = default + display_name = "reports.xls" + file_id = "id:jQKLsZFQImAAAAAAEZAAQt" + file_size = 3 + file_count = 3 + + example default2 + path = default2 + display_name = "reports.xls" + file_id = "id:jQKLsZFQImAAAAAAEZAAQt" + file_size = 4 + file_count = 4 + +struct GroupLogInfo + "Group's logged information." + group_id team_common.GroupId? + "The unique id of this group." + display_name String + "The name of this group." + external_id team_common.GroupExternalId? + "External group ID." + + example default + group_id = "g:e2db7665347abcd600000000001a2b3c" + display_name = "abc" + external_id = "some group id" + + example default2 + group_id = "g:hujn7665347abcd600000000001a2b3d" + display_name = "xyz" + external_id = "another group id" + +struct JoinTeamDetails + "Additional information relevant when a new member joins the team." + linked_apps List(UserLinkedAppLogInfo) + "Linked applications. (Deprecated) Please use has_linked_apps boolean field instead." + linked_devices List(LinkedDeviceLogInfo) + "Linked devices. (Deprecated) Please use has_linked_devices boolean field instead." + linked_shared_folders List(FolderLogInfo) + "Linked shared folders. (Deprecated) Please use has_linked_shared_folders boolean field instead." + was_linked_apps_truncated Boolean? + "(Deprecated) True if the linked_apps list was truncated to the maximum supported length (50)." + was_linked_devices_truncated Boolean? + "(Deprecated) True if the linked_devices list was truncated to the maximum supported length (50)." + was_linked_shared_folders_truncated Boolean? + "(Deprecated) True if the linked_shared_folders list was truncated to the maximum supported length (50)." + has_linked_apps Boolean? + "True if the user had linked apps at event time." + has_linked_devices Boolean? + "True if the user had linked apps at event time." + has_linked_shared_folders Boolean? + "True if the user had linked shared folders at event time." + + example default + linked_apps = [default] + linked_devices = [default] + linked_shared_folders = [default] + was_linked_apps_truncated = true + was_linked_devices_truncated = true + was_linked_shared_folders_truncated = true + has_linked_apps = true + has_linked_devices = true + has_linked_shared_folders = true + + example default2 + linked_apps = [default2] + linked_devices = [default2] + linked_shared_folders = [default2] + was_linked_apps_truncated = false + was_linked_devices_truncated = false + was_linked_shared_folders_truncated = false + has_linked_apps = false + has_linked_devices = false + has_linked_shared_folders = false + +struct LegacyDeviceSessionLogInfo extends DeviceSessionLogInfo + "Information on sessions, in legacy format" + session_info SessionLogInfo? + "Session unique id." + display_name String? + "The device name. Might be missing due to historical data gap." + is_emm_managed Boolean? + "Is device managed by emm. Might be missing due to historical data gap." + platform String? + "Information on the hosting platform. Might be missing due to historical data gap." + mac_address IpAddress? + "The mac address of the last activity from this session. Might be missing due to historical data gap." + os_version String? + "The hosting OS version. Might be missing due to historical data gap." + device_type String? + "Information on the hosting device type. Might be missing due to historical data gap." + client_version String? + "The Dropbox client version. Might be missing due to historical data gap." + legacy_uniq_id String? + "Alternative unique device session id, instead of session id field. Might be missing due to historical data gap." + + example default + ip_address = "45.56.78.100" + created = "2017-01-25T15:51:30Z" + updated = "2017-01-25T15:51:30Z" + session_info = default + display_name = "abc" + is_emm_managed = true + platform = "abc" + mac_address = "45.56.78.100" + os_version = "abc" + device_type = "abc" + client_version = "abc" + legacy_uniq_id = "abc" + + example default2 + ip_address = "45.56.78.100" + created = "2017-01-25T15:51:30Z" + updated = "2017-01-25T15:51:30Z" + session_info = default2 + display_name = "xyz" + is_emm_managed = false + platform = "xyz" + mac_address = "45.56.78.100" + os_version = "xyz" + device_type = "xyz" + client_version = "xyz" + legacy_uniq_id = "xyz" + +struct LinkSettingsLogInfo + "Link Settings" + name String + "Link Name." + require_email Boolean + "Email Required." + downloadable Boolean + "Downloadable." + expire_at common.DropboxTimestamp? + "Expires at." + password_required Boolean + "Password required." + url String + "Link URL." + + example default + name = "abc" + require_email = true + downloadable = true + expire_at = "2017-01-25T15:51:30Z" + password_required = true + url = "abc" + + example default2 + name = "xyz" + require_email = false + downloadable = false + expire_at = "2017-01-25T15:51:30Z" + password_required = false + url = "xyz" + +struct MalwareExclusionState + "Malware exclusion list state" + excluded_file_hashes_count Int64 + "The number of files that are excluded from the monitoring for malware alerts." + file_path_from_last_exclusion String? + "The file path of the last exclusion operation." + file_path_from_last_inclusion String? + "The file path of the last inclusion operation." + + example default + excluded_file_hashes_count = 3 + file_path_from_last_exclusion = "abc" + file_path_from_last_inclusion = "abc" + + example default2 + excluded_file_hashes_count = 4 + file_path_from_last_exclusion = "xyz" + file_path_from_last_inclusion = "xyz" + +struct MemberTransferredInternalFields + "Internal only - fields for target team computations" + source_team_id team_common.TeamId + "Internal only - team user was moved from." + target_team_id team_common.TeamId + "Internal only - team user was moved to." + + example default + source_team_id = "dbtid:AAE3tIYgVuVT1gZork5wQJbXbmlrkBMq26c" + target_team_id = "dbtid:AAE3tIYgVuVT1gZork5wQJbXbmlrkBMq26c" + + example default2 + source_team_id = "dbtid:AAFAqKNLrx_W9MFkS2gWftX0QfTZpo03WsE" + target_team_id = "dbtid:AAFAqKNLrx_W9MFkS2gWftX0QfTZpo03WsE" + +struct MobileDeviceSessionLogInfo extends DeviceSessionLogInfo + "Information about linked Dropbox mobile client sessions" + session_info MobileSessionLogInfo? + "Mobile session unique id." + device_name String + "The device name." + client_type team.MobileClientPlatform + "The mobile application type." + client_version String? + "The Dropbox client version." + os_version String? + "The hosting OS version." + last_carrier String? + "last carrier used by the device." + + example default + ip_address = "45.56.78.100" + created = "2017-01-25T15:51:30Z" + updated = "2017-01-25T15:51:30Z" + session_info = default + device_name = "abc" + client_type = iphone + client_version = "abc" + os_version = "abc" + last_carrier = "abc" + + example default2 + ip_address = "45.56.78.100" + created = "2017-01-25T15:51:30Z" + updated = "2017-01-25T15:51:30Z" + session_info = default2 + device_name = "xyz" + client_type = iphone + client_version = "xyz" + os_version = "xyz" + last_carrier = "xyz" + +struct MobileSessionLogInfo extends SessionLogInfo + "Mobile session." + + example default + session_id = "dbwsid:123456789012345678901234567890123456789" + + example default2 + session_id = "dbwsid:abcd5678901234567890123456789012345abcd" + +struct NamespaceRelativePathLogInfo + "Namespace relative path details." + ns_id NamespaceId? + "Namespace ID." + relative_path FilePath? + "A path relative to the specified namespace ID." + is_shared_namespace Boolean? + "True if the namespace is shared." + + example default + ns_id = "1234" + relative_path = "/Contract Work/Product Design" + is_shared_namespace = true + + example default2 + ns_id = "1234" + relative_path = "/Contract Work/Draft" + is_shared_namespace = false + +struct NonTeamMemberLogInfo extends UserLogInfo + "Non team member's logged information." + + example default + account_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" + display_name = "John Smith" + email = "john_smith@acmecorp.com" + + example default2 + account_id = "dbid:AAGx4oiLtHdvRdNxUpvvJBXYgR4BS19c9kw" + display_name = "Jane Smith" + email = "jane_smith@acmecorp.com" + +struct NonTrustedTeamDetails + "The email to which the request was sent" + team String + "The email to which the request was sent." + + example default + team = "abc" + + example default2 + team = "xyz" + +struct OrganizationDetails + "More details about the organization." + organization String + "The name of the organization." + + example default + organization = "My Organization" + + example default2 + organization = "My Organization" + +struct OrganizationName + "The name of the organization" + organization String + "The name of the organization." + + example default + organization = "My Organization" + + example default2 + organization = "My Organization" + +struct PaperDocumentLogInfo + "Paper document's logged information." + doc_id String + "Papers document Id." + doc_title String + "Paper document title." + + example default + doc_id = "abc" + doc_title = "abc" + + example default2 + doc_id = "xyz" + doc_title = "xyz" + +struct PaperFolderLogInfo + "Paper folder's logged information." + folder_id String + "Papers folder Id." + folder_name String + "Paper folder name." + + example default + folder_id = "abc" + folder_name = "abc" + + example default2 + folder_id = "xyz" + folder_name = "xyz" + +struct PathLogInfo + "Path's details." + contextual FilePath? + "Fully qualified path relative to event's context." + namespace_relative NamespaceRelativePathLogInfo + "Path relative to the namespace containing the content." + + example default + contextual = "/Contract Work/Product Design" + namespace_relative = default + + example default2 + contextual = "/Contract Work/Draft" + namespace_relative = default2 + +struct PrimaryTeamRequestAcceptedDetails + "Team merge request acceptance details shown to the primary team" + secondary_team String + "The secondary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + secondary_team = "IT Department" + sent_by = "Dan Eveninglily" + + example default2 + secondary_team = "IT Department" + sent_by = "Dan Eveninglily" + +struct PrimaryTeamRequestCanceledDetails + "Team merge request cancellation details shown to the primary team" + secondary_team String + "The secondary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + secondary_team = "IT Department" + sent_by = "Dan Eveninglily" + + example default2 + secondary_team = "IT Department" + sent_by = "Dan Eveninglily" + +struct PrimaryTeamRequestExpiredDetails + "Team merge request expiration details shown to the primary team" + secondary_team String + "The secondary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + secondary_team = "IT Department" + sent_by = "Dan Eveninglily" + + example default2 + secondary_team = "IT Department" + sent_by = "Dan Eveninglily" + +struct PrimaryTeamRequestReminderDetails + "Team merge request reminder details shown to the primary team" + secondary_team String + "The secondary team name." + sent_to String + "The name of the primary team admin the request was sent to." + + example default + secondary_team = "IT Department" + sent_to = "Dan Eveninglily" + + example default2 + secondary_team = "IT Department" + sent_to = "Dan Eveninglily" + +struct ProductLogInfo + "Product logged information" + product_name String + "Product name." + + example default + product_name = "abc" + + example default2 + product_name = "xyz" + +struct RecipientsConfiguration + "Recipients Configuration" + recipient_setting_type AlertRecipientsSettingType? + "Recipients setting type." + emails List(EmailAddress)? + "A list of user emails to notify." + groups List(String)? + "A list of groups to notify." + + example default + recipient_setting_type = invalid + emails = ["john_smith@acmecorp.com"] + groups = ["abc"] + + example default2 + recipient_setting_type = invalid + emails = ["jane_smith@acmecorp.com"] + groups = ["xyz"] + +struct RelocateAssetReferencesLogInfo + "Provides the indices of the source asset and the destination asset for a relocate action." + src_asset_index UInt64 + "Source asset position in the Assets list." + dest_asset_index UInt64 + "Destination asset position in the Assets list." + + example default + src_asset_index = 3 + dest_asset_index = 3 + + example default2 + src_asset_index = 4 + dest_asset_index = 4 + +struct SecondaryTeamRequestAcceptedDetails + "Team merge request acceptance details shown to the secondary team" + primary_team String + "The primary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + primary_team = "IT Department" + sent_by = "Dan Eveninglily" + + example default2 + primary_team = "IT Department" + sent_by = "Dan Eveninglily" + +struct SecondaryTeamRequestCanceledDetails + "Team merge request cancellation details shown to the secondary team" + sent_to String + "The email of the primary team admin that the request was sent to." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + sent_to = "admin@it_department.com" + sent_by = "Dan Eveninglily" + + example default2 + sent_to = "admin@it_department.com" + sent_by = "Dan Eveninglily" + +struct SecondaryTeamRequestExpiredDetails + "Team merge request expiration details shown to the secondary team" + sent_to String + "The email of the primary team admin the request was sent to." + + example default + sent_to = "admin@it_department.com" + + example default2 + sent_to = "admin@it_department.com" + +struct SecondaryTeamRequestReminderDetails + "Team merge request reminder details shown to the secondary team" + sent_to String + "The email of the primary team admin the request was sent to." + + example default + sent_to = "admin@it_department.com" + + example default2 + sent_to = "admin@it_department.com" + +struct SessionLogInfo + "Session's logged information." + union + desktop DesktopSessionLogInfo + mobile MobileSessionLogInfo + web WebSessionLogInfo + session_id common.SessionId? + "Session ID." + + example default + desktop = default + + example default2 + desktop = default2 + +struct ShowcaseDocumentLogInfo + "Showcase document's logged information." + showcase_id String + "Showcase document Id." + showcase_title String + "Showcase document title." + + example default + showcase_id = "fvti8SoWq5tdyM1YMXl5z" + showcase_title = "Sample Showcase Proposal" + + example default2 + showcase_id = "fvti8SoWq5tdyM1YMXl5z" + showcase_title = "Sample Showcase Proposal" + +struct TeamDetails + "More details about the team." + team String + "The name of the team." + + example default + team = "My Team" + + example default2 + team = "My Team" + +struct TeamInviteDetails + "Details about team invites" + invite_method InviteMethod + "How the user was invited to the team." + additional_license_purchase Boolean? + "True if the invitation incurred an additional license purchase." + + example default + invite_method = invite_link + additional_license_purchase = true + + example default2 + invite_method = invite_link + additional_license_purchase = false + +struct TeamLinkedAppLogInfo extends AppLogInfo + "Team linked app" + + example default + app_id = "dbaid:AAFhvuxku2OYumUaV17x6ExFhr6OPrwjTKs" + display_name = "abc" + + example default2 + app_id = "dbaid:AAG1NxJeBtby__IZENPAvDGeOssreFpPALE" + display_name = "xyz" + +struct TeamLogInfo + "Team's logged information." + display_name String + "Team display name." + + example default + display_name = "A Team" + + example default2 + display_name = "A Team" + +struct TeamMemberLogInfo extends UserLogInfo + "Team member's logged information." + team_member_id team_common.TeamMemberId? + "Team member ID." + member_external_id team_common.MemberExternalId? + "Team member external ID." + team TeamLogInfo? + "Details about this user’s team for enterprise event." + + example default + account_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" + display_name = "John Smith" + email = "john_smith@acmecorp.com" + team_member_id = "dbmid:AAFoi-tmvRuQR0jU-3fN4B-9nZo6nHcDO9Q" + member_external_id = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" + team = default + + example default2 + account_id = "dbid:AAGx4oiLtHdvRdNxUpvvJBXYgR4BS19c9kw" + display_name = "Jane Smith" + email = "jane_smith@acmecorp.com" + team_member_id = "dbmid:AAFoi-tmvRuQR0jU-3fN4B-9nZo6nHcDO9Q" + member_external_id = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1225" + team = default2 + +struct TeamName + "Team name details" + team_display_name String + "Team's display name." + team_legal_name String + "Team's legal name." + + example default + team_display_name = "abc" + team_legal_name = "abc" + + example default2 + team_display_name = "xyz" + team_legal_name = "xyz" + +struct TrustedNonTeamMemberLogInfo extends UserLogInfo + "User that is not a member of the team but considered trusted." + trusted_non_team_member_type TrustedNonTeamMemberType + "Indicates the type of the member of a trusted team." + team TeamLogInfo? + "Details about this user's trusted team." + + example default + account_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" + display_name = "John Smith" + email = "john_smith@acmecorp.com" + trusted_non_team_member_type = multi_instance_admin + team = default + + example default2 + account_id = "dbid:AAGx4oiLtHdvRdNxUpvvJBXYgR4BS19c9kw" + display_name = "Jane Smith" + email = "jane_smith@acmecorp.com" + trusted_non_team_member_type = multi_instance_admin + team = default2 + +struct UserLinkedAppLogInfo extends AppLogInfo + "User linked app" + + example default + app_id = "dbaid:AAFhvuxku2OYumUaV17x6ExFhr6OPrwjTKs" + display_name = "abc" + + example default2 + app_id = "dbaid:AAG1NxJeBtby__IZENPAvDGeOssreFpPALE" + display_name = "xyz" + +struct UserLogInfo + "User's logged information." + union + non_team_member NonTeamMemberLogInfo + team_member TeamMemberLogInfo + trusted_non_team_member TrustedNonTeamMemberLogInfo + account_id users_common.AccountId? + "User unique ID." + display_name common.DisplayNameLegacy? + "User display name." + email EmailAddress? + "User email address." + + example default + non_team_member = default + + example default2 + non_team_member = default2 + +struct UserNameLogInfo + "User's name logged information" + given_name String + "Given name." + surname String + "Surname." + locale String? + "Locale. Might be missing due to historical data gap." + + example default + given_name = "abc" + surname = "abc" + locale = "abc" + + example default2 + given_name = "xyz" + surname = "xyz" + locale = "xyz" + +struct UserOrTeamLinkedAppLogInfo extends AppLogInfo + "User or team linked app. Used when linked type is missing due to historical data gap." + + example default + app_id = "dbaid:AAFhvuxku2OYumUaV17x6ExFhr6OPrwjTKs" + display_name = "abc" + + example default2 + app_id = "dbaid:AAG1NxJeBtby__IZENPAvDGeOssreFpPALE" + display_name = "xyz" + +struct WebDeviceSessionLogInfo extends DeviceSessionLogInfo + "Information on active web sessions" + session_info WebSessionLogInfo? + "Web session unique id." + user_agent String + "Information on the hosting device." + os String + "Information on the hosting operating system." + browser String + "Information on the browser used for this web session." + + example default + ip_address = "45.56.78.100" + created = "2017-01-25T15:51:30Z" + updated = "2017-01-25T15:51:30Z" + session_info = default + user_agent = "abc" + os = "abc" + browser = "abc" + + example default2 + ip_address = "45.56.78.100" + created = "2017-01-25T15:51:30Z" + updated = "2017-01-25T15:51:30Z" + session_info = default2 + user_agent = "xyz" + os = "xyz" + browser = "xyz" + +struct WebSessionLogInfo extends SessionLogInfo + "Web session." + + example default + session_id = "dbwsid:123456789012345678901234567890123456789" + + example default2 + session_id = "dbwsid:abcd5678901234567890123456789012345abcd" + +struct ApiSessionLogInfo + "Api session." + request_id RequestId + "Api request ID." + + example default + request_id = "dbarid:f451ce673cc5da6818aed4c160a3ebaa" + + example default2 + request_id = "dbarid:f451ce673cc5da6818aed4c160a3ebaa" + +struct FileOrFolderLogInfo + "Generic information relevant both for files and folders" + path PathLogInfo + "Path relative to event context." + display_name String? + "Display name." + file_id String? + "Unique ID." + file_size UInt64? + "File or folder size in bytes." + + example default + path = default + display_name = "reports.xls" + file_id = "id:jQKLsZFQImAAAAAAEZAAQt" + file_size = 3 + + example default2 + path = default2 + display_name = "reports.xls" + file_id = "id:jQKLsZFQImAAAAAAEZAAQt" + file_size = 4 + +struct GeoLocationLogInfo + "Geographic location details." + city String? + "City name." + region String? + "Region name." + country String? + "Country code." + ip_address IpAddress + "IP address." + + example default + city = "San Francisco" + region = "California" + country = "US" + ip_address = "45.56.78.100" + + example default2 + city = "San Francisco" + region = "California" + country = "US" + ip_address = "45.56.78.100" + +struct MissingDetails + "An indication that an error occurred while retrieving the event. Some attributes of the event may be omitted as a result." + source_event_fields String? + "All the data that could be retrieved and converted from the source event." + +struct OriginLogInfo + "The origin from which the actor performed the action." + geo_location GeoLocationLogInfo? + "Geographic location details." + access_method AccessMethodLogInfo + "The method that was used to perform the action." + + example default + geo_location = default + access_method = default + + example default2 + geo_location = default2 + access_method = default2 + +struct ResellerLogInfo + "Reseller information." + reseller_name String + "Reseller name." + reseller_email EmailAddress + "Reseller email." + + example default + reseller_name = "abc" + reseller_email = "john_smith@acmecorp.com" + + example default2 + reseller_name = "xyz" + reseller_email = "jane_smith@acmecorp.com" + +union AccessMethodLogInfo + "Indicates the method in which the action was performed." + admin_console WebSessionLogInfo + "Admin console session details." + api ApiSessionLogInfo + "Api session details." + content_manager WebSessionLogInfo + "Content manager session details." + end_user SessionLogInfo + "End user session details." + enterprise_console WebSessionLogInfo + "Enterprise console session details." + sign_in_as WebSessionLogInfo + "Sign in as session details." + + example default + end_user = default + + example default2 + end_user = default2 + +union ActorLogInfo + "The entity who performed the action." + admin UserLogInfo + "The admin who did the action." + anonymous + "Anonymous actor." + app AppLogInfo + "The application who did the action." + dropbox + "Action done by Dropbox." + reseller ResellerLogInfo + "Action done by reseller." + user UserLogInfo + "The user who did the action." + + example default + user = default + + example default2 + user = default2 + +union ContextLogInfo + "The primary entity on which the action was done." + anonymous + "Anonymous context." + non_team_member NonTeamMemberLogInfo + "Action was done on behalf of a non team member." + organization_team TeamLogInfo + "Action was done on behalf of a team that's part of an organization." + team + "Action was done on behalf of the team." + team_member TeamMemberLogInfo + "Action was done on behalf of a team member." + trusted_non_team_member TrustedNonTeamMemberLogInfo + "Action was done on behalf of a trusted non team member." + + example default + team_member = default + + example default2 + team_member = default2 + +union EventCategory + "Category of events in event audit log." + admin_alerting + "Events that involve team related alerts." + apps + "Events that apply to management of linked apps." + comments + "Events that have to do with comments on files and Paper documents." + dash + "Events that apply to Dropbox Dash" + data_governance + "Events that involve data governance actions" + devices + "Events that apply to linked devices on mobile, desktop and Web platforms." + domains + "Events that involve domain management feature: domain verification, invite enforcement and account capture." + encryption + "Events that involve encryption." + file_operations + "Events that have to do with filesystem operations on files and folders: copy, move, delete, etc." + file_requests + "Events that apply to the file requests feature." + groups + "Events that involve group management." + logins + "Events that involve users signing in to or out of Dropbox." + members + "Events that involve team member management." + paper + "Events that apply to Dropbox Paper." + passwords + "Events that involve using, changing or resetting passwords." + reports + "Events that concern generation of admin reports, including team activity and device usage." + sharing + "Events that apply to all types of sharing and collaboration." + showcase + "Events that apply to Dropbox Showcase." + signatures + "Events that apply to Dropbox Sign" + sso + "Events that involve using or configuring single sign-on as well as administrative policies concerning single sign-on." + team_folders + "Events that involve team folder management." + team_policies + "Events that involve a change in team-wide policies." + team_profile + "Events that involve a change in the team profile." + tfa + "Events that involve using or configuring two factor authentication as well as administrative policies concerning two factor authentication." + trusted_teams + "Events that apply to cross-team trust establishment." + + example default + sharing = null + +struct AdminAlertingAlertStateChangedDetails + "Changed an alert state." + alert_name String + "Alert name." + alert_severity AdminAlertSeverityEnum + "Alert severity." + alert_category AdminAlertCategoryEnum + "Alert category." + alert_instance_id String + "Alert ID." + previous_value AdminAlertGeneralStateEnum + "Alert state before the change." + new_value AdminAlertGeneralStateEnum + "Alert state after the change." + + example default + alert_name = "abc" + alert_severity = na + alert_category = na + alert_instance_id = "pid_admin_alert:AAgAAOVHYCEuavqE0v3Jj9VDogV4wG9q8F-XZKwYpuYTVBm5" + previous_value = na + new_value = na + +struct AdminAlertingChangedAlertConfigDetails + "Changed an alert setting." + alert_name String + "Alert Name." + previous_alert_config AdminAlertingAlertConfiguration + "Previous alert configuration." + new_alert_config AdminAlertingAlertConfiguration + "New alert configuration." + + example default + alert_name = "abc" + previous_alert_config = default + new_alert_config = default + +struct AdminAlertingTriggeredAlertDetails + "Triggered security alert." + alert_name String + "Alert name." + alert_severity AdminAlertSeverityEnum + "Alert severity." + alert_category AdminAlertCategoryEnum + "Alert category." + alert_instance_id String + "Alert ID." + + example default + alert_name = "abc" + alert_severity = na + alert_category = na + alert_instance_id = "pid_admin_alert:AAgAAOVHYCEuavqE0v3Jj9VDogV4wG9q8F-XZKwYpuYTVBm5" + +struct RansomwareRestoreProcessCompletedDetails + "Completed ransomware restore process." + status String + "The status of the restore process." + restored_files_count Int64 + "Restored files count." + restored_files_failed_count Int64 + "Restored files failed count." + + example default + status = "abc" + restored_files_count = 3 + restored_files_failed_count = 3 + +struct RansomwareRestoreProcessStartedDetails + "Started ransomware restore process." + extension String + "Ransomware filename extension." + + example default + extension = "abc" + +struct AppBlockedByPermissionsDetails + "Failed to connect app for member." + app_info AppLogInfo + "Relevant application details." + + example default + app_info = default + +struct AppLinkTeamDetails + "Linked app for team." + app_info AppLogInfo + "Relevant application details." + + example default + app_info = default + +struct AppLinkUserDetails + "Linked app for member." + app_info AppLogInfo + "Relevant application details." + + example default + app_info = default + +struct AppUnlinkTeamDetails + "Unlinked app for team." + app_info AppLogInfo + "Relevant application details." + + example default + app_info = default + +struct AppUnlinkUserDetails + "Unlinked app for member." + app_info AppLogInfo + "Relevant application details." + + example default + app_info = default + +struct IntegrationConnectedDetails + "Connected integration for member." + integration_name String + "Name of the third-party integration." + + example default + integration_name = "abc" + +struct IntegrationDisconnectedDetails + "Disconnected integration for member." + integration_name String + "Name of the third-party integration." + + example default + integration_name = "abc" + +struct FileAddCommentDetails + "Added file comment." + comment_text String? + "Comment text." + + example default + comment_text = "abc" + +struct FileChangeCommentSubscriptionDetails + "Subscribed to or unsubscribed from comment notifications for file." + new_value FileCommentNotificationPolicy + "New file comment subscription." + previous_value FileCommentNotificationPolicy? + "Previous file comment subscription. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct FileDeleteCommentDetails + "Deleted file comment." + comment_text String? + "Comment text." + + example default + comment_text = "abc" + +struct FileEditCommentDetails + "Edited file comment." + comment_text String? + "Comment text." + previous_comment_text String + "Previous comment text." + + example default + comment_text = "abc" + previous_comment_text = "abc" + +struct FileLikeCommentDetails + "Liked file comment." + comment_text String? + "Comment text." + + example default + comment_text = "abc" + +struct FileResolveCommentDetails + "Resolved file comment." + comment_text String? + "Comment text." + + example default + comment_text = "abc" + +struct FileUnlikeCommentDetails + "Unliked file comment." + comment_text String? + "Comment text." + + example default + comment_text = "abc" + +struct FileUnresolveCommentDetails + "Unresolved file comment." + comment_text String? + "Comment text." + + example default + comment_text = "abc" + +struct DashAddedCommentToStackDetails + "Added a comment to a stack." + stack_name String + "The name of the stack where the comment exists." + stack_item_name String + "The name of the stack item that the comment is tied to." + comment_text String + "The text of the comment." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_item_name = "abc" + comment_text = "abc" + stack_type = unknown + +struct DashAddedConnectorDetails + "Connected to a user connector." + connector_name String + "The name of the Connector." + connector_status DashConnectorStatus + "The status of the Connector." + + example default + connector_name = "abc" + connector_status = fail + +struct DashAddedLinkToStackDetails + "Added a link to a stack." + stack_name String + "The name of the stack." + stack_item_link String + "The link to the item in the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_item_link = "abc" + stack_type = unknown + +struct DashAddedTeamEmailDomainAllowlistDetails + "Admin added an email domain to the team allowlist." + email_domain String + "The email domain that gets added/removed from the team allowlist." + + example default + email_domain = "abc" + +struct DashAdminAddedOrgWideConnectorDetails + "Admin added an admin connector." + connector_name String + "The name of the Connector." + connector_status DashConnectorStatus + "The status of the Connector." + + example default + connector_name = "abc" + connector_status = fail + +struct DashAdminDisabledConnectorDetails + "Admin disabled a user connector." + connector_name String + "The name of the Connector." + connector_status DashConnectorStatus? + "The status of the Connector." + + example default + connector_name = "abc" + connector_status = fail + +struct DashAdminEnabledConnectorDetails + "Admin enabled a user connector." + connector_name String + "The name of the Connector." + connector_status DashConnectorStatus? + "The status of the Connector." + + example default + connector_name = "abc" + connector_status = fail + +struct DashAdminRemovedOrgWideConnectorDetails + "Admin removed an admin connector." + connector_name String + "The name of the Connector." + connector_status DashConnectorStatus + "The status of the Connector." + + example default + connector_name = "abc" + connector_status = fail + +struct DashArchivedStackDetails + "Archived a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashChangedAudienceOfSharedLinkToStackDetails + "Changed the audience of a shared link to a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashClonedStackDetails + "Cloned stack." + stack_name String + "The name of the stack." + actor_email String + "Email of the actor." + new_cloned_stack_name String + "New cloned stack name." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + actor_email = "abc" + new_cloned_stack_name = "abc" + stack_type = unknown + +struct DashConnectorToolsCallDetails + "Called a tool on a connector." + connector_name String + "The name of the connector." + tool_name String + "The name of the tool that was called." + surface String? + "The surface from which the tool was called." + + example default + connector_name = "abc" + tool_name = "abc" + surface = "abc" + +struct DashCreatedStackDetails + "Created a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashDeletedCommentFromStackDetails + "Deleted a comment from a stack." + stack_name String + "The name of the stack where the comment exists." + stack_item_name String + "The name of the stack item that the comment is tied to." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_item_name = "abc" + stack_type = unknown + +struct DashDeletedStackDetails + "Deleted a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashEditedCommentInStackDetails + "Edited a comment in a stack." + stack_name String + "The name of the stack where the comment exists." + stack_item_name String + "The name of the stack item that the comment is tied to." + comment_text String + "The text of the comment." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_item_name = "abc" + comment_text = "abc" + stack_type = unknown + +struct DashExternalUserOpenedStackDetails + "External user opened a stack." + stack_name String + "The name of the stack." + stack_sharing_scope DashStackSharingScope + "The sharing scope of the stack." + is_invited Boolean + "Whether the user was invited to the stack." + is_verified Boolean + "Whether the user has verified their email address." + stack_owner_team_id Int64? + "The team ID of the stack owner." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_sharing_scope = unknown + is_invited = true + is_verified = true + stack_owner_team_id = 3 + stack_type = unknown + +struct DashFirstLaunchedDesktopDetails + "Opened the desktop app for the first time." + os_name String + "The name of the operating system." + + example default + os_name = "abc" + +struct DashFirstLaunchedExtensionDetails + "Opened the extension for the first time." + browser_name String + "The name of the web browser." + + example default + browser_name = "abc" + +struct DashFirstLaunchedWebStartPageDetails + "Opened the web Start Page for the first time." + browser_name String + "The name of the web browser." + + example default + browser_name = "abc" + +struct DashOpenedSharedLinkToStackDetails + "Checked access permissions to a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashOpenedStackDetails + "Opened a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashPreviewOptOutStatusChangedDetails + "Changed the preview opt-out status." + opt_out_status DashPreviewOptOutStatus + "The new preview opt-out status." + + example default + opt_out_status = opted_in + +struct DashRemovedConnectorDetails + "Disconnected a user connector." + connector_name String + "The name of the Connector." + connector_status DashConnectorStatus + "The status of the Connector." + + example default + connector_name = "abc" + connector_status = fail + +struct DashRemovedLinkFromStackDetails + "Removed a link from a stack." + stack_name String + "The name of the stack." + stack_item_link String + "The link to the item in the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_item_link = "abc" + stack_type = unknown + +struct DashRemovedSharedLinkToStackDetails + "Removed a shared link to a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashRemovedTeamEmailDomainAllowlistDetails + "Admin removed an email domain from the team allowlist." + email_domain String + "The email domain that gets added/removed from the team allowlist." + + example default + email_domain = "abc" + +struct DashRenamedStackDetails + "Renamed a stack." + old_name String + "The old name of the stack." + new_name String + "The new name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + old_name = "abc" + new_name = "abc" + stack_type = unknown + +struct DashSharedLinkToStackDetails + "Shared a link to a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashUnarchivedStackDetails + "Unarchived a stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashViewedCompanyStackDetails + "Member viewed a company stack." + stack_name String + "The name of the stack." + stack_type DashStackType? + "The type of stack backend." + + example default + stack_name = "abc" + stack_type = unknown + +struct DashViewedExternalAiActivityReportDetails + "Admin viewed the external AI activity report." + +struct GovernancePolicyAddFoldersDetails + "Added folders to policy." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + folders List(String)? + "Folders." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + folders = ["abc"] + +struct GovernancePolicyAddFolderFailedDetails + "Couldn't add a folder to a policy." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + folder String + "Folder." + reason String? + "Reason." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + folder = "abc" + reason = "abc" + +struct GovernancePolicyContentDisposedDetails + "Content disposed." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + disposition_type DispositionActionType + "Disposition type." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + disposition_type = automatic_delete + +struct GovernancePolicyCreateDetails + "Activated a new policy." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + duration DurationLogInfo + "Duration in days." + folders List(String)? + "Folders." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + duration = default + folders = ["abc"] + +struct GovernancePolicyDeleteDetails + "Deleted a policy." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + +struct GovernancePolicyEditDetailsDetails + "Edited policy." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + attribute String + "Attribute." + previous_value String + "From." + new_value String + "To." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + attribute = "abc" + previous_value = "abc" + new_value = "abc" + +struct GovernancePolicyEditDurationDetails + "Changed policy duration." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + previous_value DurationLogInfo + "From." + new_value DurationLogInfo + "To." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + previous_value = default + new_value = default + +struct GovernancePolicyExportCreatedDetails + "Created a policy download." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + export_name String + "Export name." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + export_name = "abc" + +struct GovernancePolicyExportRemovedDetails + "Removed a policy download." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + export_name String + "Export name." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + export_name = "abc" + +struct GovernancePolicyRemoveFoldersDetails + "Removed folders from policy." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + folders List(String)? + "Folders." + reason String? + "Reason." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + folders = ["abc"] + reason = "abc" + +struct GovernancePolicyReportCreatedDetails + "Created a summary report for a policy." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + +struct GovernancePolicyZipPartDownloadedDetails + "Downloaded content from a policy." + governance_policy_id String + "Policy ID." + name String + "Policy name." + policy_type PolicyType? + "Policy type." + export_name String + "Export name." + part String? + "Part." + + example default + governance_policy_id = "abc" + name = "abc" + policy_type = retention + export_name = "abc" + part = "abc" + +struct LegalHoldsActivateAHoldDetails + "Activated a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + start_date common.DropboxTimestamp + "Hold start date." + end_date common.DropboxTimestamp? + "Hold end date." + + example default + legal_hold_id = "abc" + name = "abc" + start_date = "2017-01-25T15:51:30Z" + end_date = "2017-01-25T15:51:30Z" + +struct LegalHoldsAddMembersDetails + "Added members to a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + + example default + legal_hold_id = "abc" + name = "abc" + +struct LegalHoldsChangeHoldDetailsDetails + "Edited details for a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + previous_value String + "Previous details." + new_value String + "New details." + + example default + legal_hold_id = "abc" + name = "abc" + previous_value = "abc" + new_value = "abc" + +struct LegalHoldsChangeHoldNameDetails + "Renamed a hold." + legal_hold_id String + "Hold ID." + previous_value String + "Previous Name." + new_value String + "New Name." + + example default + legal_hold_id = "abc" + previous_value = "abc" + new_value = "abc" + +struct LegalHoldsExportAHoldDetails + "Exported hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + export_name String? + "Export name." + + example default + legal_hold_id = "abc" + name = "abc" + export_name = "abc" + +struct LegalHoldsExportCancelledDetails + "Canceled export for a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + export_name String + "Export name." + + example default + legal_hold_id = "abc" + name = "abc" + export_name = "abc" + +struct LegalHoldsExportDownloadedDetails + "Downloaded export for a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + export_name String + "Export name." + part String? + "Part." + file_name String? + "Filename." + + example default + legal_hold_id = "abc" + name = "abc" + export_name = "abc" + part = "abc" + file_name = "abc" + +struct LegalHoldsExportRemovedDetails + "Removed export for a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + export_name String + "Export name." + + example default + legal_hold_id = "abc" + name = "abc" + export_name = "abc" + +struct LegalHoldsReleaseAHoldDetails + "Released a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + + example default + legal_hold_id = "abc" + name = "abc" + +struct LegalHoldsRemoveMembersDetails + "Removed members from a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + + example default + legal_hold_id = "abc" + name = "abc" + +struct LegalHoldsReportAHoldDetails + "Created a summary report for a hold." + legal_hold_id String + "Hold ID." + name String + "Hold name." + + example default + legal_hold_id = "abc" + name = "abc" + +struct DeviceChangeIpDesktopDetails + "Changed IP address associated with active desktop session." + device_session_info DeviceSessionLogInfo + "Device's session logged information." + + example default + device_session_info = default + +struct DeviceChangeIpMobileDetails + "Changed IP address associated with active mobile session." + device_session_info DeviceSessionLogInfo? + "Device's session logged information." + + example default + device_session_info = default + +struct DeviceChangeIpWebDetails + "Changed IP address associated with active web session." + user_agent String + "Web browser name." + + example default + user_agent = "abc" + +struct DeviceDeleteOnUnlinkFailDetails + "Failed to delete all files from unlinked device." + session_info SessionLogInfo? + "Session unique id." + display_name String? + "The device name. Might be missing due to historical data gap." + num_failures Int64 + "The number of times that remote file deletion failed." + + example default + session_info = default + display_name = "abc" + num_failures = 3 + +struct DeviceDeleteOnUnlinkSuccessDetails + "Deleted all files from unlinked device." + session_info SessionLogInfo? + "Session unique id." + display_name String? + "The device name. Might be missing due to historical data gap." + + example default + session_info = default + display_name = "abc" + +struct DeviceLinkFailDetails + "Failed to link device." + ip_address IpAddress? + "IP address. Might be missing due to historical data gap." + device_type DeviceType + "A description of the device used while user approval blocked." + + example default + ip_address = "45.56.78.100" + device_type = desktop + +struct DeviceLinkSuccessDetails + "Linked device." + device_session_info DeviceSessionLogInfo? + "Device's session logged information." + + example default + device_session_info = default + +struct DeviceManagementDisabledDetails + "Disabled device management." + +struct DeviceManagementEnabledDetails + "Enabled device management." + +struct DeviceSyncBackupStatusChangedDetails + "Enabled/disabled backup for computer." + desktop_device_session_info DesktopDeviceSessionLogInfo + "Device's session logged information." + previous_value BackupStatus + "Previous status of computer backup on the device." + new_value BackupStatus + "Next status of computer backup on the device." + + example default + desktop_device_session_info = default + previous_value = disabled + new_value = disabled + +struct DeviceUnlinkDetails + "Disconnected device." + session_info SessionLogInfo? + "Session unique id." + display_name String? + "The device name. Might be missing due to historical data gap." + delete_data Boolean + "True if the user requested to delete data after device unlink, false otherwise." + + example default + session_info = default + display_name = "abc" + delete_data = true + +struct DropboxPasswordsExportedDetails + "Exported passwords." + platform String + "The platform the device runs export." + + example default + platform = "abc" + +struct DropboxPasswordsNewDeviceEnrolledDetails + "Enrolled new Dropbox Passwords device." + is_first_device Boolean + "Whether it's a first device enrolled." + platform String + "The platform the device is enrolled." + + example default + is_first_device = true + platform = "abc" + +struct EmmRefreshAuthTokenDetails + "Refreshed auth token used for setting up EMM." + +struct ExternalDriveBackupEligibilityStatusCheckedDetails + "Checked external drive backup eligibility status." + desktop_device_session_info DesktopDeviceSessionLogInfo + "Device's session logged information." + status ExternalDriveBackupEligibilityStatus + "Current eligibility status of external drive backup." + number_of_external_drive_backup UInt64 + "Total number of valid external drive backup for all the team members." + + example default + desktop_device_session_info = default + status = success + number_of_external_drive_backup = 3 + +struct ExternalDriveBackupStatusChangedDetails + "Modified external drive backup." + desktop_device_session_info DesktopDeviceSessionLogInfo + "Device's session logged information." + previous_value ExternalDriveBackupStatus + "Previous status of this external drive backup." + new_value ExternalDriveBackupStatus + "Next status of this external drive backup." + + example default + desktop_device_session_info = default + previous_value = empty + new_value = empty + +struct AccountCaptureChangeAvailabilityDetails + "Granted/revoked option to enable account capture on team domains." + new_value AccountCaptureAvailability + "New account capture availabilty value." + previous_value AccountCaptureAvailability? + "Previous account capture availabilty value. Might be missing due to historical data gap." + + example default + new_value = unavailable + previous_value = unavailable + +struct AccountCaptureMigrateAccountDetails + "Account-captured user migrated account to team." + domain_name String + "Domain name." + + example default + domain_name = "mars.com" + +struct AccountCaptureNotificationEmailsSentDetails + "Sent account capture email to all unmanaged members." + domain_name String + "Domain name." + notification_type AccountCaptureNotificationType? + "Account-capture email notification type." + + example default + domain_name = "mars.com" + notification_type = proactive_warning_notification + +struct AccountCaptureRelinquishAccountDetails + "Account-captured user changed account email to personal email." + domain_name String + "Domain name." + + example default + domain_name = "mars.com" + +struct DisabledDomainInvitesDetails + "Disabled domain invites." + +struct DomainInvitesApproveRequestToJoinTeamDetails + "Approved user's request to join team." + +struct DomainInvitesDeclineRequestToJoinTeamDetails + "Declined user's request to join team." + +struct DomainInvitesEmailExistingUsersDetails + "Sent domain invites to existing domain accounts." + domain_name String + "Domain names." + num_recipients UInt64 + "Number of recipients." + + example default + domain_name = "abc" + num_recipients = 3 + +struct DomainInvitesRequestToJoinTeamDetails + "Requested to join team." + +struct DomainInvitesSetInviteNewUserPrefToNoDetails + "Disabled \"Automatically invite new users\"." + +struct DomainInvitesSetInviteNewUserPrefToYesDetails + "Enabled \"Automatically invite new users\"." + +struct DomainVerificationAddDomainFailDetails + "Failed to verify team domain." + domain_name String + "Domain name." + verification_method String? + "Domain name verification method. Might be missing due to historical data gap." + + example default + domain_name = "mars.com" + verification_method = "abc" + +struct DomainVerificationAddDomainSuccessDetails + "Verified team domain." + domain_names List(String) + "Domain names." + verification_method String? + "Domain name verification method. Might be missing due to historical data gap." + + example default + domain_names = ["mars.com"] + verification_method = "abc" + +struct DomainVerificationRemoveDomainDetails + "Removed domain from list of verified team domains." + domain_names List(String) + "Domain names." + + example default + domain_names = ["mars.com"] + +struct EnabledDomainInvitesDetails + "Enabled domain invites." + +struct EncryptedFolderCancelTeamKeyRotationDetails + "Canceled team key rotation." + team_key_id String + "Identifier of the team key." + + example default + team_key_id = "abc" + +struct EncryptedFolderEnrollBackupKeyDetails + "Added recovery key." + backup_key_id String + "Identifier of the recovery key." + + example default + backup_key_id = "abc" + +struct EncryptedFolderEnrollClientDetails + "Enrolled device." + client_key_id String + "Identifier of the client key." + + example default + client_key_id = "abc" + +struct EncryptedFolderEnrollTeamDetails + "Activated team folder encryption." + +struct EncryptedFolderFinishTeamUnenrollmentDetails + "Deactivated team folder encryption." + +struct EncryptedFolderInitTeamKeyRotationDetails + "Initiated team key rotation." + team_key_id String + "Identifier of the team key." + + example default + team_key_id = "abc" + +struct EncryptedFolderInitTeamUnenrollmentDetails + "Initiated deactivation of team folder encryption." + +struct EncryptedFolderRemoveBackupKeyDetails + "Removed recovery key." + backup_key_id String + "Identifier of the recovery key." + + example default + backup_key_id = "abc" + +struct EncryptedFolderRotateTeamKeyDetails + "Rotated team key." + team_key_id String + "Identifier of the team key." + + example default + team_key_id = "abc" + +struct EncryptedFolderUnenrollClientDetails + "Unenrolled device." + client_key_id String + "Identifier of the client key." + + example default + client_key_id = "abc" + +struct TeamEncryptionKeyActivateKeyDetails + "Activated team encryption key." + key_management_type String + "Type of key management." + + example default + key_management_type = "abc" + +struct TeamEncryptionKeyCancelKeyDeletionDetails + "Canceled team encryption key deletion." + + example default + +struct TeamEncryptionKeyCreateKeyDetails + "Created team encryption key." + + example default + +struct TeamEncryptionKeyDeactivateKeyDetails + "Deactivated team encryption key." + +struct TeamEncryptionKeyDeleteKeyDetails + "Deleted team encryption key." + + example default + +struct TeamEncryptionKeyDisableKeyDetails + "Disabled team encryption key." + + example default + +struct TeamEncryptionKeyEnableKeyDetails + "Enabled team encryption key." + + example default + +struct TeamEncryptionKeyRotateKeyDetails + "Rotated team encryption key." + + example default + +struct TeamEncryptionKeyScheduleKeyDeletionDetails + "Scheduled encryption key deletion." + + example default + +struct ApplyNamingConventionDetails + "Applied naming convention." + +struct CreateFolderDetails + "Created folders." + +struct FileAddDetails + "Added files and/or folders." + +struct FileAddFromAutomationDetails + "Added files and/or folders from automation." + +struct FileCopyDetails + "Copied files and/or folders." + relocate_action_details List(RelocateAssetReferencesLogInfo) + "Relocate action details." + + example default + relocate_action_details = [default] + +struct FileDeleteDetails + "Deleted files and/or folders." + +struct FileDownloadDetails + "Downloaded files and/or folders." + +struct FileEditDetails + "Edited files." + +struct FileGetCopyReferenceDetails + "Created copy reference to file/folder." + +struct FileLockingLockStatusChangedDetails + "Locked/unlocked editing for a file." + previous_value LockStatus + "Previous lock status of the file." + new_value LockStatus + "New lock status of the file." + + example default + previous_value = locked + new_value = locked + +struct FileMoveDetails + "Moved files and/or folders." + relocate_action_details List(RelocateAssetReferencesLogInfo) + "Relocate action details." + + example default + relocate_action_details = [default] + +struct FilePermanentlyDeleteDetails + "Permanently deleted files and/or folders." + + example default + +struct FilePreviewDetails + "Previewed files and/or folders." + +struct FileRenameDetails + "Renamed files and/or folders." + relocate_action_details List(RelocateAssetReferencesLogInfo) + "Relocate action details." + + example default + relocate_action_details = [default] + +struct FileRestoreDetails + "Restored deleted files and/or folders." + +struct FileRevertDetails + "Reverted files to previous version." + +struct FileRollbackChangesDetails + "Rolled back file actions." + +struct FileSaveCopyReferenceDetails + "Saved file/folder using copy reference." + relocate_action_details List(RelocateAssetReferencesLogInfo) + "Relocate action details." + + example default + relocate_action_details = [default] + +struct FolderOverviewDescriptionChangedDetails + "Updated folder overview." + folder_overview_location_asset UInt64 + "Folder Overview location position in the Assets list." + + example default + folder_overview_location_asset = 3 + +struct FolderOverviewItemPinnedDetails + "Pinned item to folder overview." + folder_overview_location_asset UInt64 + "Folder Overview location position in the Assets list." + pinned_items_asset_indices List(UInt64) + "Pinned items positions in the Assets list." + + example default + folder_overview_location_asset = 3 + pinned_items_asset_indices = [3] + +struct FolderOverviewItemUnpinnedDetails + "Unpinned item from folder overview." + folder_overview_location_asset UInt64 + "Folder Overview location position in the Assets list." + pinned_items_asset_indices List(UInt64) + "Pinned items positions in the Assets list." + + example default + folder_overview_location_asset = 3 + pinned_items_asset_indices = [3] + +struct ObjectLabelAddedDetails + "Added a label." + label_type LabelType + "Labels mark a file or folder." + + example default + label_type = test_only + +struct ObjectLabelRemovedDetails + "Removed a label." + label_type LabelType + "Labels mark a file or folder." + + example default + label_type = test_only + +struct ObjectLabelUpdatedValueDetails + "Updated a label's value." + label_type LabelType + "Labels mark a file or folder." + + example default + label_type = test_only + +struct OrganizeFolderWithTidyDetails + "Organized a folder with multi-file organize." + +struct ReplayFileDeleteDetails + "Deleted files in Replay." + +struct ReplayFileDownloadedDetails + "Downloaded files in Replay." + +struct ReplayTeamProjectCreatedDetails + "Created a team project in Replay." + name String + "Name of the newly created team project." + + example default + name = "abc" + +struct RewindFolderDetails + "Rewound a folder." + rewind_folder_target_ts_ms common.DropboxTimestamp + "Folder was Rewound to this date." + + example default + rewind_folder_target_ts_ms = "2017-01-25T15:51:30Z" + +struct UndoNamingConventionDetails + "Reverted naming convention." + +struct UndoOrganizeFolderWithTidyDetails + "Removed multi-file organize." + +struct UserTagsAddedDetails + "Tagged a file." + values List(String) + "values." + + example default + values = ["abc"] + +struct UserTagsRemovedDetails + "Removed tags." + values List(String) + "values." + + example default + values = ["abc"] + +struct EmailIngestReceiveFileDetails + "Received files via Email to Dropbox." + inbox_name String + "Inbox name." + attachment_names List(String) + "Submitted file names." + subject String? + "Subject of the email." + from_name common.DisplayNameLegacy? + "The name as provided by the submitter." + from_email EmailAddress? + "The email as provided by the submitter." + + example default + inbox_name = "abc" + attachment_names = ["abc"] + subject = "abc" + from_name = "John Smith" + from_email = "john_smith@acmecorp.com" + +struct FileRequestAutoCloseDetails + "Auto closed file request." + file_request_id file_requests.FileRequestId? + "File request id. Might be missing due to historical data gap." + reason String? + "Reason for the auto close." + previous_details FileRequestDetails? + "Previous file request details. Might be missing due to historical data gap." + + example default + file_request_id = "oaCAVmEyrqYnkZX9955Y" + reason = "abc" + previous_details = default + +struct FileRequestChangeDetails + "Changed file request." + file_request_id file_requests.FileRequestId? + "File request id. Might be missing due to historical data gap." + previous_details FileRequestDetails? + "Previous file request details. Might be missing due to historical data gap." + new_details FileRequestDetails + "New file request details." + + example default + file_request_id = "oaCAVmEyrqYnkZX9955Y" + previous_details = default + new_details = default + +struct FileRequestCloseDetails + "Closed file request." + file_request_id file_requests.FileRequestId? + "File request id. Might be missing due to historical data gap." + previous_details FileRequestDetails? + "Previous file request details. Might be missing due to historical data gap." + + example default + file_request_id = "oaCAVmEyrqYnkZX9955Y" + previous_details = default + +struct FileRequestCreateDetails + "Created file request." + file_request_id file_requests.FileRequestId? + "File request id. Might be missing due to historical data gap." + request_details FileRequestDetails? + "File request details. Might be missing due to historical data gap." + + example default + file_request_id = "oaCAVmEyrqYnkZX9955Y" + request_details = default + +struct FileRequestDeleteDetails + "Delete file request." + file_request_id file_requests.FileRequestId? + "File request id. Might be missing due to historical data gap." + previous_details FileRequestDetails? + "Previous file request details. Might be missing due to historical data gap." + + example default + file_request_id = "oaCAVmEyrqYnkZX9955Y" + previous_details = default + +struct FileRequestReceiveFileDetails + "Received files for file request." + file_request_id file_requests.FileRequestId? + "File request id. Might be missing due to historical data gap." + file_request_details FileRequestDetails? + "File request details. Might be missing due to historical data gap." + submitted_file_names List(String) + "Submitted file names." + submitter_name common.DisplayNameLegacy? + "The name as provided by the submitter." + submitter_email EmailAddress? + "The email as provided by the submitter." + + example default + file_request_id = "oaCAVmEyrqYnkZX9955Y" + file_request_details = default + submitted_file_names = ["abc"] + submitter_name = "John Smith" + submitter_email = "john_smith@acmecorp.com" + +struct GroupAddExternalIdDetails + "Added external ID for group." + new_value team_common.GroupExternalId + "Current external id." + + example default + new_value = "some group id" + +struct GroupAddMemberDetails + "Added team members to group." + is_group_owner Boolean + "Is group owner." + + example default + is_group_owner = true + +struct GroupChangeExternalIdDetails + "Changed external ID for group." + new_value team_common.GroupExternalId + "Current external id." + previous_value team_common.GroupExternalId + "Old external id." + + example default + new_value = "some group id" + previous_value = "some group id" + +struct GroupChangeManagementTypeDetails + "Changed group management type." + new_value team_common.GroupManagementType + "New group management type." + previous_value team_common.GroupManagementType? + "Previous group management type. Might be missing due to historical data gap." + + example default + new_value = company_managed + previous_value = company_managed + +struct GroupChangeMemberRoleDetails + "Changed manager permissions of group member." + is_group_owner Boolean + "Is group owner." + + example default + is_group_owner = true + +struct GroupCreateDetails + "Created group." + is_company_managed Boolean? + "Is company managed group." + join_policy GroupJoinPolicy? + "Group join policy." + + example default + is_company_managed = true + join_policy = request_to_join + +struct GroupDeleteDetails + "Deleted group." + is_company_managed Boolean? + "Is company managed group." + + example default + is_company_managed = true + +struct GroupDescriptionUpdatedDetails + "Updated group." + +struct GroupExternalSharingSettingOverrideChangedDetails + "Changed group's external sharing setting." + new_value ExternalSharingSetting + "New external sharing setting." + previous_value ExternalSharingSetting + "Previous external sharing setting." + + example default + new_value = unset + previous_value = unset + +struct GroupJoinPolicyUpdatedDetails + "Updated group join policy." + is_company_managed Boolean? + "Is company managed group." + join_policy GroupJoinPolicy? + "Group join policy." + + example default + is_company_managed = true + join_policy = request_to_join + +struct GroupMovedDetails + "Moved group." + +struct GroupRemoveExternalIdDetails + "Removed external ID for group." + previous_value team_common.GroupExternalId + "Old external id." + + example default + previous_value = "some group id" + +struct GroupRemoveMemberDetails + "Removed team members from group." + +struct GroupRenameDetails + "Renamed group." + previous_value String + "Previous display name." + new_value String + "New display name." + + example default + previous_value = "abc" + new_value = "abc" + +struct AccountLockOrUnlockedDetails + "Unlocked/locked account after failed sign in attempts." + previous_value AccountState + "The previous account status." + new_value AccountState + "The new account status." + + example default + previous_value = locked + new_value = locked + +struct EmmErrorDetails + "Failed to sign in via EMM." + error_details FailureDetailsLogInfo + "Error details." + + example default + error_details = default + +struct GuestAdminSignedInViaTrustedTeamsDetails + "Started trusted team admin session." + team_name String? + "Host team name." + trusted_team_name String? + "Trusted team name." + + example default + team_name = "abc" + trusted_team_name = "abc" + +struct GuestAdminSignedOutViaTrustedTeamsDetails + "Ended trusted team admin session." + team_name String? + "Host team name." + trusted_team_name String? + "Trusted team name." + + example default + team_name = "abc" + trusted_team_name = "abc" + +struct LoginFailDetails + "Failed to sign in." + is_emm_managed Boolean? + "Tells if the login device is EMM managed. Might be missing due to historical data gap." + login_method LoginMethod + "Login method." + error_details FailureDetailsLogInfo + "Error details." + + example default + is_emm_managed = true + login_method = password + error_details = default + +struct LoginSuccessDetails + "Signed in." + is_emm_managed Boolean? + "Tells if the login device is EMM managed. Might be missing due to historical data gap." + login_method LoginMethod + "Login method." + + example default + is_emm_managed = true + login_method = password + +struct LogoutDetails + "Signed out." + login_id String? + "Login session id." + + example default + login_id = "abc" + +struct ResellerSupportSessionEndDetails + "Ended reseller support session." + +struct ResellerSupportSessionStartDetails + "Started reseller support session." + +struct SignInAsSessionEndDetails + "Ended admin sign-in-as session." + +struct SignInAsSessionStartDetails + "Started admin sign-in-as session." + +struct SsoErrorDetails + "Failed to sign in via SSO." + error_details FailureDetailsLogInfo + "Error details." + + example default + error_details = default + +struct AddonAssignedDetails + "Add-on Assigned." + user_name UserNameLogInfo + "User's name." + addon_name AddonLogInfo + "Add-on name." + + example default + user_name = default + addon_name = default + +struct AddonRemovedDetails + "Add-on Removed." + user_name UserNameLogInfo + "User's name." + addon_name AddonLogInfo + "Add-on name." + + example default + user_name = default + addon_name = default + +struct BackupAdminInvitationSentDetails + "Invited members to activate Backup." + +struct BackupInvitationOpenedDetails + "Opened Backup invite." + +struct CreateTeamInviteLinkDetails + "Created team invite link." + link_url String + "The invite link url that was created." + expiry_date String + "The expiration date of the invite link." + + example default + link_url = "abc" + expiry_date = "abc" + +struct DeleteTeamInviteLinkDetails + "Deleted team invite link." + link_url String + "The invite link url that was deleted." + + example default + link_url = "abc" + +struct MemberAddExternalIdDetails + "Added an external ID for team member." + new_value team_common.MemberExternalId + "Current external id." + + example default + new_value = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" + +struct MemberAddNameDetails + "Added team member name." + new_value UserNameLogInfo + "New user's name." + + example default + new_value = default + +struct MemberChangeAdminRoleDetails + "Changed team member admin role." + new_value AdminRole? + "New admin role. This field is relevant when the admin role is changed or whenthe user role changes from no admin rights to with admin rights." + previous_value AdminRole? + "Previous admin role. This field is relevant when the admin role is changed or when the admin role is removed." + + example default + new_value = team_admin + previous_value = team_admin + +struct MemberChangeEmailDetails + "Changed team member email." + new_value EmailAddress + "New email." + previous_value EmailAddress? + "Previous email. Might be missing due to historical data gap." + + example default + new_value = "john_smith@acmecorp.com" + previous_value = "john_smith@acmecorp.com" + +struct MemberChangeExternalIdDetails + "Changed the external ID for team member." + new_value team_common.MemberExternalId + "Current external id." + previous_value team_common.MemberExternalId + "Old external id." + + example default + new_value = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" + previous_value = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" + +struct MemberChangeMembershipTypeDetails + "Changed membership type (limited/full) of member." + prev_value TeamMembershipType + "Previous membership type." + new_value TeamMembershipType + "New membership type." + + example default + prev_value = full + new_value = full + +struct MemberChangeNameDetails + "Changed team member name." + new_value UserNameLogInfo + "New user's name." + previous_value UserNameLogInfo? + "Previous user's name. Might be missing due to historical data gap." + + example default + new_value = default + previous_value = default + +struct MemberChangeResellerRoleDetails + "Changed team member reseller role." + new_value ResellerRole + "New reseller role. This field is relevant when the reseller role is changed." + previous_value ResellerRole + "Previous reseller role. This field is relevant when the reseller role is changed or when the reseller role is removed." + + example default + new_value = not_reseller + previous_value = not_reseller + +struct MemberChangeStatusDetails + "Changed member status (invited, joined, suspended, etc.)." + previous_value MemberStatus? + "Previous member status. Might be missing due to historical data gap." + new_value MemberStatus + "New member status." + action ActionDetails? + "Additional information indicating the action taken that caused status change." + new_team String? + "The user's new team name. This field is relevant when the user is transferred off the team." + previous_team String? + "The user's previous team name. This field is relevant when the user is transferred onto the team." + + example default + previous_value = not_joined + new_value = not_joined + action = default + new_team = "abc" + previous_team = "abc" + +struct MemberDeleteManualContactsDetails + "Cleared manually added contacts." + +struct MemberDeleteProfilePhotoDetails + "Deleted team member profile photo." + +struct MemberPermanentlyDeleteAccountContentsDetails + "Permanently deleted contents of deleted team member account." + +struct MemberRemoveExternalIdDetails + "Removed the external ID for team member." + previous_value team_common.MemberExternalId + "Old external id." + + example default + previous_value = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" + +struct MemberSetProfilePhotoDetails + "Set team member profile photo." + +struct MemberSpaceLimitsAddCustomQuotaDetails + "Set custom member space limit." + new_value UInt64 + "New custom quota value in bytes." + + example default + new_value = 53687091200 + +struct MemberSpaceLimitsChangeCustomQuotaDetails + "Changed custom member space limit." + previous_value UInt64 + "Previous custom quota value in bytes." + new_value UInt64 + "New custom quota value in bytes." + + example default + previous_value = 42949672960 + new_value = 53687091200 + +struct MemberSpaceLimitsChangeStatusDetails + "Changed space limit status." + previous_value SpaceLimitsStatus + "Previous storage quota status." + new_value SpaceLimitsStatus + "New storage quota status." + + example default + previous_value = within_quota + new_value = within_quota + +struct MemberSpaceLimitsRemoveCustomQuotaDetails + "Removed custom member space limit." + +struct MemberSuggestDetails + "Suggested person to add to team." + suggested_members List(EmailAddress) + "suggested users emails." + + example default + suggested_members = ["john_smith@acmecorp.com"] + +struct MemberTransferAccountContentsDetails + "Transferred contents of deleted member account to another member." + +struct PendingSecondaryEmailAddedDetails + "Added pending secondary email." + secondary_email EmailAddress + "New pending secondary email." + + example default + secondary_email = "john_smith@acmecorp.com" + +struct ProductAssignedToMemberDetails + "Product assigned to team member." + user_name UserNameLogInfo + "User's name." + product_name ProductLogInfo + "Product name." + + example default + user_name = default + product_name = default + +struct ProductRemovedFromMemberDetails + "Product removed from team member." + user_name UserNameLogInfo + "User's name." + product_name ProductLogInfo + "Product name." + + example default + user_name = default + product_name = default + +struct SecondaryEmailDeletedDetails + "Deleted secondary email." + secondary_email EmailAddress + "Deleted secondary email." + + example default + secondary_email = "john_smith@acmecorp.com" + +struct SecondaryEmailVerifiedDetails + "Verified secondary email." + secondary_email EmailAddress + "Verified secondary email." + + example default + secondary_email = "john_smith@acmecorp.com" + +struct SecondaryMailsPolicyChangedDetails + "Secondary mails policy changed." + previous_value SecondaryMailsPolicy + "Previous secondary mails policy." + new_value SecondaryMailsPolicy + "New secondary mails policy." + + example default + previous_value = disabled + new_value = disabled + +struct BinderAddPageDetails + "Added Binder page." + event_uuid String + "Event unique identifier." + doc_title String + "Title of the Binder doc." + binder_item_name String + "Name of the Binder page/section." + + example default + event_uuid = "abc" + doc_title = "abc" + binder_item_name = "abc" + +struct BinderAddSectionDetails + "Added Binder section." + event_uuid String + "Event unique identifier." + doc_title String + "Title of the Binder doc." + binder_item_name String + "Name of the Binder page/section." + + example default + event_uuid = "abc" + doc_title = "abc" + binder_item_name = "abc" + +struct BinderRemovePageDetails + "Removed Binder page." + event_uuid String + "Event unique identifier." + doc_title String + "Title of the Binder doc." + binder_item_name String + "Name of the Binder page/section." + + example default + event_uuid = "abc" + doc_title = "abc" + binder_item_name = "abc" + +struct BinderRemoveSectionDetails + "Removed Binder section." + event_uuid String + "Event unique identifier." + doc_title String + "Title of the Binder doc." + binder_item_name String + "Name of the Binder page/section." + + example default + event_uuid = "abc" + doc_title = "abc" + binder_item_name = "abc" + +struct BinderRenamePageDetails + "Renamed Binder page." + event_uuid String + "Event unique identifier." + doc_title String + "Title of the Binder doc." + binder_item_name String + "Name of the Binder page/section." + previous_binder_item_name String? + "Previous name of the Binder page/section." + + example default + event_uuid = "abc" + doc_title = "abc" + binder_item_name = "abc" + previous_binder_item_name = "abc" + +struct BinderRenameSectionDetails + "Renamed Binder section." + event_uuid String + "Event unique identifier." + doc_title String + "Title of the Binder doc." + binder_item_name String + "Name of the Binder page/section." + previous_binder_item_name String? + "Previous name of the Binder page/section." + + example default + event_uuid = "abc" + doc_title = "abc" + binder_item_name = "abc" + previous_binder_item_name = "abc" + +struct BinderReorderPageDetails + "Reordered Binder page." + event_uuid String + "Event unique identifier." + doc_title String + "Title of the Binder doc." + binder_item_name String + "Name of the Binder page/section." + + example default + event_uuid = "abc" + doc_title = "abc" + binder_item_name = "abc" + +struct BinderReorderSectionDetails + "Reordered Binder section." + event_uuid String + "Event unique identifier." + doc_title String + "Title of the Binder doc." + binder_item_name String + "Name of the Binder page/section." + + example default + event_uuid = "abc" + doc_title = "abc" + binder_item_name = "abc" + +struct PaperContentAddMemberDetails + "Added users and/or groups to Paper doc/folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperContentAddToFolderDetails + "Added Paper doc/folder to folder." + event_uuid String + "Event unique identifier." + target_asset_index UInt64 + "Target asset position in the Assets list." + parent_asset_index UInt64 + "Parent asset position in the Assets list." + + example default + event_uuid = "abc" + target_asset_index = 3 + parent_asset_index = 3 + +struct PaperContentArchiveDetails + "Archived Paper doc/folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperContentCreateDetails + "Created Paper doc/folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperContentPermanentlyDeleteDetails + "Permanently deleted Paper doc/folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperContentRemoveFromFolderDetails + "Removed Paper doc/folder from folder." + event_uuid String + "Event unique identifier." + target_asset_index UInt64? + "Target asset position in the Assets list." + parent_asset_index UInt64? + "Parent asset position in the Assets list." + + example default + event_uuid = "abc" + target_asset_index = 3 + parent_asset_index = 3 + +struct PaperContentRemoveMemberDetails + "Removed users and/or groups from Paper doc/folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperContentRenameDetails + "Renamed Paper doc/folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperContentRestoreDetails + "Restored archived Paper doc/folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocAddCommentDetails + "Added Paper doc comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "abc" + +struct PaperDocChangeMemberRoleDetails + "Changed member permissions for Paper doc." + event_uuid String + "Event unique identifier." + access_type PaperAccessType + "Paper doc access type." + + example default + event_uuid = "abc" + access_type = viewer + +struct PaperDocChangeSharingPolicyDetails + "Changed sharing setting for Paper doc." + event_uuid String + "Event unique identifier." + public_sharing_policy String? + "Sharing policy with external users." + team_sharing_policy String? + "Sharing policy with team." + + example default + event_uuid = "abc" + public_sharing_policy = "abc" + team_sharing_policy = "abc" + +struct PaperDocChangeSubscriptionDetails + "Followed/unfollowed Paper doc." + event_uuid String + "Event unique identifier." + new_subscription_level String + "New doc subscription level." + previous_subscription_level String? + "Previous doc subscription level. Might be missing due to historical data gap." + + example default + event_uuid = "abc" + new_subscription_level = "every" + previous_subscription_level = "no_email" + +struct PaperDocDeletedDetails + "Archived Paper doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocDeleteCommentDetails + "Deleted Paper doc comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "abc" + +struct PaperDocDownloadDetails + "Downloaded Paper doc in specific format." + event_uuid String + "Event unique identifier." + export_file_format PaperDownloadFormat + "Export file format." + + example default + event_uuid = "abc" + export_file_format = docx + +struct PaperDocEditDetails + "Edited Paper doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocEditCommentDetails + "Edited Paper doc comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "abc" + +struct PaperDocFollowedDetails + "Followed Paper doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocMentionDetails + "Mentioned user in Paper doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocOwnershipChangedDetails + "Transferred ownership of Paper doc." + event_uuid String + "Event unique identifier." + old_owner_user_id users_common.AccountId? + "Previous owner." + new_owner_user_id users_common.AccountId + "New owner." + + example default + event_uuid = "abc" + old_owner_user_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" + new_owner_user_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" + +struct PaperDocRequestAccessDetails + "Requested access to Paper doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocResolveCommentDetails + "Resolved Paper doc comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "abc" + +struct PaperDocRevertDetails + "Restored Paper doc to previous version." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocSlackShareDetails + "Shared Paper doc via Slack." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocTeamInviteDetails + "Shared Paper doc with users and/or groups." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocTrashedDetails + "Deleted Paper doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocUnresolveCommentDetails + "Unresolved Paper doc comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "abc" + +struct PaperDocUntrashedDetails + "Restored Paper doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperDocViewDetails + "Viewed Paper doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperExternalViewAllowDetails + "Changed Paper external sharing setting to anyone." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperExternalViewDefaultTeamDetails + "Changed Paper external sharing setting to default team." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperExternalViewForbidDetails + "Changed Paper external sharing setting to team-only." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperFolderChangeSubscriptionDetails + "Followed/unfollowed Paper folder." + event_uuid String + "Event unique identifier." + new_subscription_level String + "New folder subscription level." + previous_subscription_level String? + "Previous folder subscription level. Might be missing due to historical data gap." + + example default + event_uuid = "abc" + new_subscription_level = "activity_only" + previous_subscription_level = "weekly_emails" + +struct PaperFolderDeletedDetails + "Archived Paper folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperFolderFollowedDetails + "Followed Paper folder." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperFolderTeamInviteDetails + "Shared Paper folder with users and/or groups." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperPublishedLinkChangePermissionDetails + "Changed permissions for published doc." + event_uuid String + "Event unique identifier." + new_permission_level String + "New permission level." + previous_permission_level String + "Previous permission level." + + example default + event_uuid = "abc" + new_permission_level = "TEAM_ONLY" + previous_permission_level = "ANYONE_WITH_THE_LINK" + +struct PaperPublishedLinkCreateDetails + "Published doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperPublishedLinkDisabledDetails + "Unpublished doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PaperPublishedLinkViewDetails + "Viewed published doc." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct PasswordChangeDetails + "Changed password." + +struct PasswordResetDetails + "Reset password." + +struct PasswordResetAllDetails + "Reset all team member passwords." + +struct ClassificationCreateReportDetails + "Created Classification report." + +struct ClassificationCreateReportFailDetails + "Couldn't create Classification report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct EmmCreateExceptionsReportDetails + "Created EMM-excluded users report." + +struct EmmCreateUsageReportDetails + "Created EMM mobile app usage report." + +struct ExportMembersReportDetails + "Created member data report." + +struct ExportMembersReportFailDetails + "Failed to create members data report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct ExternalSharingCreateReportDetails + "Created External sharing report." + +struct ExternalSharingReportFailedDetails + "Couldn't create External sharing report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct MemberAccessDetailsCreateReportDetails + "Created member access report." + +struct MemberAccessDetailsCreateReportFailedDetails + "Couldn't generate member access report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct NoExpirationLinkGenCreateReportDetails + "Report created: Links created with no expiration." + start_date common.DropboxTimestamp + "Report start date." + end_date common.DropboxTimestamp + "Report end date." + + example default + start_date = "2017-01-25T15:51:30Z" + end_date = "2017-01-25T15:51:30Z" + +struct NoExpirationLinkGenReportFailedDetails + "Couldn't create report: Links created with no expiration." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct NoPasswordLinkGenCreateReportDetails + "Report created: Links created without passwords." + start_date common.DropboxTimestamp + "Report start date." + end_date common.DropboxTimestamp + "Report end date." + + example default + start_date = "2017-01-25T15:51:30Z" + end_date = "2017-01-25T15:51:30Z" + +struct NoPasswordLinkGenReportFailedDetails + "Couldn't create report: Links created without passwords." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct NoPasswordLinkViewCreateReportDetails + "Report created: Views of links without passwords." + start_date common.DropboxTimestamp + "Report start date." + end_date common.DropboxTimestamp + "Report end date." + + example default + start_date = "2017-01-25T15:51:30Z" + end_date = "2017-01-25T15:51:30Z" + +struct NoPasswordLinkViewReportFailedDetails + "Couldn't create report: Views of links without passwords." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct OutdatedLinkViewCreateReportDetails + "Report created: Views of old links." + start_date common.DropboxTimestamp + "Report start date." + end_date common.DropboxTimestamp + "Report end date." + + example default + start_date = "2017-01-25T15:51:30Z" + end_date = "2017-01-25T15:51:30Z" + +struct OutdatedLinkViewReportFailedDetails + "Couldn't create report: Views of old links." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct PaperAdminExportStartDetails + "Exported all team Paper docs." + +struct RansomwareAlertCreateReportDetails + "Created ransomware report." + +struct RansomwareAlertCreateReportFailedDetails + "Couldn't generate ransomware report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct SharedFoldersCreateReportDetails + "Created shared folders report." + +struct SharedFoldersCreateReportFailedDetails + "Couldn't generate shared folders report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct SmartSyncCreateAdminPrivilegeReportDetails + "Created Smart Sync non-admin devices report." + +struct TeamActivityCreateReportDetails + "Created team activity report." + start_date common.DropboxTimestamp + "Report start date." + end_date common.DropboxTimestamp + "Report end date." + + example default + start_date = "2017-01-25T15:51:30Z" + end_date = "2017-01-25T15:51:30Z" + +struct TeamActivityCreateReportFailDetails + "Couldn't generate team activity report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct TeamFoldersCreateReportDetails + "Created team folders report." + +struct TeamFoldersCreateReportFailedDetails + "Couldn't generate team folders report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct TeamStorageCreateReportDetails + "Created team storage report." + +struct TeamStorageCreateReportFailedDetails + "Couldn't generate team storage report." + failure_reason team.TeamReportFailureReason + "Failure reason." + + example default + failure_reason = temporary_error + +struct CollectionShareDetails + "Shared album." + album_name String + "Album name." + + example default + album_name = "abc" + +struct FileTransfersFileAddDetails + "Transfer files added." + file_transfer_id String + "Transfer id." + + example default + file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" + +struct FileTransfersTransferDeleteDetails + "Deleted transfer." + file_transfer_id String + "Transfer id." + + example default + file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" + +struct FileTransfersTransferDownloadDetails + "Transfer downloaded." + file_transfer_id String + "Transfer id." + + example default + file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" + +struct FileTransfersTransferSendDetails + "Sent transfer." + file_transfer_id String + "Transfer id." + + example default + file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" + +struct FileTransfersTransferViewDetails + "Viewed transfer." + file_transfer_id String + "Transfer id." + + example default + file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" + +struct NoteAclInviteOnlyDetails + "Changed Paper doc to invite-only." + +struct NoteAclLinkDetails + "Changed Paper doc to link-accessible." + +struct NoteAclTeamLinkDetails + "Changed Paper doc to link-accessible for team." + +struct NoteSharedDetails + "Shared Paper doc." + +struct NoteShareReceiveDetails + "Shared received Paper doc." + +struct OpenNoteSharedDetails + "Opened shared Paper doc." + +struct ReplayFileSharedLinkCreatedDetails + "Created shared link in Replay." + is_watermarked Boolean? + "Indicates whether it was a watermark share link." + access ReplayLinkAccess? + "The Replay sharing policy in place when the link was created. Might be missing due to historical data gap." + + example default + is_watermarked = true + access = no_login_required + +struct ReplayFileSharedLinkModifiedDetails + "Changed shared link in Replay." + is_watermarked Boolean? + "Indicates whether it was a watermark share link." + access ReplayLinkAccess? + "The Replay sharing policy in place when the link was modified. Might be missing due to historical data gap." + + example default + is_watermarked = true + access = no_login_required + +struct ReplayProjectTeamAddDetails + "Added member to Replay Project." + +struct ReplayProjectTeamDeleteDetails + "Removed member from Replay Project." + +struct SendAndTrackFileAddedDetails + "File added to Send and Track." + +struct SendAndTrackFileRenamedDetails + "File renamed in Send and Track." + previous_value String? + "Previous file name." + + example default + previous_value = "abc" + +struct SendAndTrackFileUpdatedDetails + "File updated in Send and Track." + +struct SendAndTrackLinkCreatedDetails + "Link created in Send and Track." + link_settings LinkSettingsLogInfo + "Link Settings." + + example default + link_settings = default + +struct SendAndTrackLinkDeletedDetails + "Link deleted in Send and Track." + shared_content_link String + "Shared content link." + + example default + shared_content_link = "abc" + +struct SendAndTrackLinkUpdatedDetails + "Send and Track Link Updated." + link_settings LinkSettingsLogInfo + "Link Settings." + previous_link_name String? + "Previous link name." + + example default + link_settings = default + previous_link_name = "abc" + +struct SendAndTrackLinkViewedDetails + "Send and Track Link Visited." + link_settings LinkSettingsLogInfo + "Link Settings." + email_address String? + "Visitor Email address." + link_owner String? + "Link Owner." + + example default + link_settings = default + email_address = "abc" + link_owner = "abc" + +struct SendAndTrackRemovedFileAndAssociatedLinksDetails + "Send and Track file and associated links deleted." + +struct SfAddGroupDetails + "Added team to shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + sharing_permission String? + "Sharing permission." + team_name String + "Team name." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + sharing_permission = "viewer" + team_name = "abc" + +struct SfAllowNonMembersToViewSharedLinksDetails + "Allowed non-collaborators to view links to files in shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + shared_folder_type String? + "Shared folder type." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + shared_folder_type = "abc" + +struct SfExternalInviteWarnDetails + "Set team members to see warning before sharing folders outside team." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + new_sharing_permission String? + "New sharing permission." + previous_sharing_permission String? + "Previous sharing permission." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + new_sharing_permission = "editor" + previous_sharing_permission = "owner" + +struct SfFbInviteDetails + "Invited Facebook users to shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + sharing_permission String? + "Sharing permission." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + sharing_permission = "viewer" + +struct SfFbInviteChangeRoleDetails + "Changed Facebook user's role in shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + previous_sharing_permission String? + "Previous sharing permission." + new_sharing_permission String? + "New sharing permission." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + previous_sharing_permission = "owner" + new_sharing_permission = "editor" + +struct SfFbUninviteDetails + "Uninvited Facebook user from shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + +struct SfInviteGroupDetails + "Invited group to shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + + example default + target_asset_index = 3 + +struct SfTeamGrantAccessDetails + "Granted access to shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + +struct SfTeamInviteDetails + "Invited team members to shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + sharing_permission String? + "Sharing permission." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + sharing_permission = "viewer" + +struct SfTeamInviteChangeRoleDetails + "Changed team member's role in shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + new_sharing_permission String? + "New sharing permission." + previous_sharing_permission String? + "Previous sharing permission." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + new_sharing_permission = "editor" + previous_sharing_permission = "owner" + +struct SfTeamJoinDetails + "Joined team member's shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + +struct SfTeamJoinFromOobLinkDetails + "Joined team member's shared folder from link." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + token_key String? + "Shared link token key." + sharing_permission String? + "Sharing permission." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + token_key = "abc" + sharing_permission = "viewer" + +struct SfTeamUninviteDetails + "Unshared folder with team member." + target_asset_index UInt64 + "Target asset position in the Assets list." + original_folder_name String + "Original shared folder name." + + example default + target_asset_index = 3 + original_folder_name = "My pictures" + +struct SharedContentAddInviteesDetails + "Invited user to Dropbox and added them to shared file/folder." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + invitees List(EmailAddress) + "A list of invitees." + + example default + shared_content_access_level = traverse + invitees = ["john_smith@acmecorp.com"] + +struct SharedContentAddLinkExpiryDetails + "Added expiration date to link for shared file/folder." + new_value common.DropboxTimestamp? + "New shared content link expiration date. Might be missing due to historical data gap." + + example default + new_value = "2017-01-25T15:51:30Z" + +struct SharedContentAddLinkPasswordDetails + "Added password to link for shared file/folder." + +struct SharedContentAddMemberDetails + "Added users and/or groups to shared file/folder." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + + example default + shared_content_access_level = traverse + +struct SharedContentChangeDownloadsPolicyDetails + "Changed whether members can download shared file/folder." + new_value DownloadPolicyType + "New downloads policy." + previous_value DownloadPolicyType? + "Previous downloads policy. Might be missing due to historical data gap." + + example default + new_value = allow + previous_value = allow + +struct SharedContentChangeInviteeRoleDetails + "Changed access type of invitee to shared file/folder before invite was accepted." + previous_access_level sharing.AccessLevel? + "Previous access level. Might be missing due to historical data gap." + new_access_level sharing.AccessLevel + "New access level." + invitee EmailAddress + "The invitee whose role was changed." + + example default + previous_access_level = traverse + new_access_level = traverse + invitee = "john_smith@acmecorp.com" + +struct SharedContentChangeLinkAudienceDetails + "Changed link audience of shared file/folder." + new_value sharing.LinkAudience + "New link audience value." + previous_value sharing.LinkAudience? + "Previous link audience value." + + example default + new_value = public + previous_value = public + +struct SharedContentChangeLinkExpiryDetails + "Changed link expiration of shared file/folder." + new_value common.DropboxTimestamp? + "New shared content link expiration date. Might be missing due to historical data gap." + previous_value common.DropboxTimestamp? + "Previous shared content link expiration date. Might be missing due to historical data gap." + + example default + new_value = "2017-01-25T15:51:30Z" + previous_value = "2017-01-25T15:51:30Z" + +struct SharedContentChangeLinkPasswordDetails + "Changed link password of shared file/folder." + +struct SharedContentChangeMemberRoleDetails + "Changed access type of shared file/folder member." + previous_access_level sharing.AccessLevel? + "Previous access level. Might be missing due to historical data gap." + new_access_level sharing.AccessLevel + "New access level." + + example default + previous_access_level = traverse + new_access_level = traverse + +struct SharedContentChangeViewerInfoPolicyDetails + "Changed whether members can see who viewed shared file/folder." + new_value sharing.ViewerInfoPolicy + "New viewer info policy." + previous_value sharing.ViewerInfoPolicy? + "Previous view info policy." + + example default + new_value = disabled + previous_value = disabled + +struct SharedContentClaimInvitationDetails + "Acquired membership of shared file/folder by accepting invite." + shared_content_link String? + "Shared content link." + + example default + shared_content_link = "abc" + +struct SharedContentCopyDetails + "Copied shared file/folder to own Dropbox." + shared_content_link String + "Shared content link." + shared_content_owner UserLogInfo? + "The shared content owner." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + destination_path FilePath + "The path where the member saved the content." + + example default + shared_content_link = "abc" + shared_content_owner = default + shared_content_access_level = traverse + destination_path = "/Contract Work/Product Design" + +struct SharedContentDownloadDetails + "Downloaded shared file/folder." + shared_content_link String + "Shared content link." + shared_content_owner UserLogInfo? + "The shared content owner." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + + example default + shared_content_link = "abc" + shared_content_owner = default + shared_content_access_level = traverse + +struct SharedContentRelinquishMembershipDetails + "Left shared file/folder." + +struct SharedContentRemoveInviteesDetails + "Removed invitee from shared file/folder before invite was accepted." + invitees List(EmailAddress) + "A list of invitees." + + example default + invitees = ["john_smith@acmecorp.com"] + +struct SharedContentRemoveLinkExpiryDetails + "Removed link expiration date of shared file/folder." + previous_value common.DropboxTimestamp? + "Previous shared content link expiration date. Might be missing due to historical data gap." + + example default + previous_value = "2017-01-25T15:51:30Z" + +struct SharedContentRemoveLinkPasswordDetails + "Removed link password of shared file/folder." + +struct SharedContentRemoveMemberDetails + "Removed user/group from shared file/folder." + shared_content_access_level sharing.AccessLevel? + "Shared content access level." + + example default + shared_content_access_level = traverse + +struct SharedContentRequestAccessDetails + "Requested access to shared file/folder." + shared_content_link String? + "Shared content link." + + example default + shared_content_link = "abc" + +struct SharedContentRestoreInviteesDetails + "Restored shared file/folder invitees." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + invitees List(EmailAddress) + "A list of invitees." + + example default + shared_content_access_level = traverse + invitees = ["john_smith@acmecorp.com"] + +struct SharedContentRestoreMemberDetails + "Restored users and/or groups to membership of shared file/folder." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + + example default + shared_content_access_level = traverse + +struct SharedContentUnshareDetails + "Unshared file/folder by clearing membership." + + example default + +struct SharedContentViewDetails + "Previewed shared file/folder." + shared_content_link String + "Shared content link." + shared_content_owner UserLogInfo? + "The shared content owner." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + + example default + shared_content_link = "abc" + shared_content_owner = default + shared_content_access_level = traverse + +struct SharedFolderChangeLinkPolicyDetails + "Changed who can access shared folder via link." + new_value sharing.SharedLinkPolicy + "New shared folder link policy." + previous_value sharing.SharedLinkPolicy? + "Previous shared folder link policy. Might be missing due to historical data gap." + + example default + new_value = members + previous_value = members + +struct SharedFolderChangeMembersInheritancePolicyDetails + "Changed whether shared folder inherits members from parent folder." + new_value SharedFolderMembersInheritancePolicy + "New member inheritance policy." + previous_value SharedFolderMembersInheritancePolicy? + "Previous member inheritance policy. Might be missing due to historical data gap." + + example default + new_value = inherit_members + previous_value = inherit_members + +struct SharedFolderChangeMembersManagementPolicyDetails + "Changed who can add/remove members of shared folder." + new_value sharing.AclUpdatePolicy + "New members management policy." + previous_value sharing.AclUpdatePolicy? + "Previous members management policy. Might be missing due to historical data gap." + + example default + new_value = owner + previous_value = owner + +struct SharedFolderChangeMembersPolicyDetails + "Changed who can become member of shared folder." + new_value sharing.MemberPolicy + "New external invite policy." + previous_value sharing.MemberPolicy? + "Previous external invite policy. Might be missing due to historical data gap." + + example default + new_value = team + previous_value = team + +struct SharedFolderCreateDetails + "Created shared folder." + target_ns_id NamespaceId? + "Target namespace ID." + + example default + target_ns_id = "1234" + +struct SharedFolderDeclineInvitationDetails + "Declined team member's invite to shared folder." + +struct SharedFolderMountDetails + "Added shared folder to own Dropbox." + +struct SharedFolderNestDetails + "Changed parent of shared folder." + previous_parent_ns_id NamespaceId? + "Previous parent namespace ID." + new_parent_ns_id NamespaceId? + "New parent namespace ID." + previous_ns_path FilePath? + "Previous namespace path." + new_ns_path FilePath? + "New namespace path." + + example default + previous_parent_ns_id = "1234" + new_parent_ns_id = "1234" + previous_ns_path = "/Contract Work/Product Design" + new_ns_path = "/Contract Work/Product Design" + +struct SharedFolderTransferOwnershipDetails + "Transferred ownership of shared folder to another member." + previous_owner_email EmailAddress? + "The email address of the previous shared folder owner." + new_owner_email EmailAddress + "The email address of the new shared folder owner." + + example default + previous_owner_email = "john_smith@acmecorp.com" + new_owner_email = "john_smith@acmecorp.com" + +struct SharedFolderUnmountDetails + "Deleted shared folder from Dropbox." + +struct SharedLinkAddExpiryDetails + "Added shared link expiration date." + new_value common.DropboxTimestamp + "New shared link expiration date." + is_consolidation_action Boolean? + "Indicates whether this was a consolidation action by system." + + example default + new_value = "2017-01-25T15:51:30Z" + is_consolidation_action = true + +struct SharedLinkChangeExpiryDetails + "Changed shared link expiration date." + new_value common.DropboxTimestamp? + "New shared link expiration date. Might be missing due to historical data gap." + previous_value common.DropboxTimestamp? + "Previous shared link expiration date. Might be missing due to historical data gap." + is_consolidation_action Boolean? + "Indicates whether this was a consolidation action by system." + + example default + new_value = "2017-01-25T15:51:30Z" + previous_value = "2017-01-25T15:51:30Z" + is_consolidation_action = true + +struct SharedLinkChangeVisibilityDetails + "Changed visibility of shared link." + new_value SharedLinkVisibility + "New shared link visibility." + previous_value SharedLinkVisibility? + "Previous shared link visibility. Might be missing due to historical data gap." + is_consolidation_action Boolean? + "Indicates whether this was a consolidation action by system." + + example default + new_value = public + previous_value = public + is_consolidation_action = true + +struct SharedLinkCopyDetails + "Added file/folder to Dropbox from shared link." + shared_link_owner UserLogInfo? + "Shared link owner details. Might be missing due to historical data gap." + + example default + shared_link_owner = default + +struct SharedLinkCreateDetails + "Created shared link." + shared_link_access_level SharedLinkAccessLevel? + "Defines who can access the shared link. Might be missing due to historical data gap." + + example default + shared_link_access_level = none + +struct SharedLinkDisableDetails + "Removed shared link." + shared_link_owner UserLogInfo? + "Shared link owner details. Might be missing due to historical data gap." + + example default + shared_link_owner = default + +struct SharedLinkDownloadDetails + "Downloaded file/folder from shared link." + shared_link_owner UserLogInfo? + "Shared link owner details. Might be missing due to historical data gap." + + example default + shared_link_owner = default + +struct SharedLinkRemoveExpiryDetails + "Removed shared link expiration date." + previous_value common.DropboxTimestamp? + "Previous shared link expiration date. Might be missing due to historical data gap." + + example default + previous_value = "2017-01-25T15:51:30Z" + +struct SharedLinkRemoveVisitorDetails + "Removed link visitor." + +struct SharedLinkSettingsAddExpirationDetails + "Added an expiration date to the shared link." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + new_value common.DropboxTimestamp? + "New shared content link expiration date. Might be missing due to historical data gap." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + new_value = "2017-01-25T15:51:30Z" + +struct SharedLinkSettingsAddPasswordDetails + "Added a password to the shared link." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + +struct SharedLinkSettingsAllowDownloadDisabledDetails + "Disabled downloads." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + +struct SharedLinkSettingsAllowDownloadEnabledDetails + "Enabled downloads." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + +struct SharedLinkSettingsChangeAudienceDetails + "Changed the audience of the shared link." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + new_value sharing.LinkAudience + "New link audience value." + previous_value sharing.LinkAudience? + "Previous link audience value." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + new_value = no_one + previous_value = no_one + +struct SharedLinkSettingsChangeExpirationDetails + "Changed the expiration date of the shared link." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + new_value common.DropboxTimestamp? + "New shared content link expiration date. Might be missing due to historical data gap." + previous_value common.DropboxTimestamp? + "Previous shared content link expiration date. Might be missing due to historical data gap." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + new_value = "2017-01-25T15:51:30Z" + previous_value = "2017-01-25T15:51:30Z" + +struct SharedLinkSettingsChangePasswordDetails + "Changed the password of the shared link." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + +struct SharedLinkSettingsRemoveExpirationDetails + "Removed the expiration date from the shared link." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + previous_value common.DropboxTimestamp? + "Previous shared link expiration date. Might be missing due to historical data gap." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + previous_value = "2017-01-25T15:51:30Z" + +struct SharedLinkSettingsRemovePasswordDetails + "Removed the password from the shared link." + shared_content_access_level sharing.AccessLevel + "Shared content access level." + shared_content_link String? + "Shared content link." + + example default + shared_content_access_level = traverse + shared_content_link = "abc" + +struct SharedLinkShareDetails + "Added members as audience of shared link." + shared_link_owner UserLogInfo? + "Shared link owner details. Might be missing due to historical data gap." + external_users List(ExternalUserLogInfo)? + "Users without a Dropbox account that were added as shared link audience." + + example default + shared_link_owner = default + external_users = [default] + +struct SharedLinkViewDetails + "Opened shared link." + shared_link_owner UserLogInfo? + "Shared link owner details. Might be missing due to historical data gap." + + example default + shared_link_owner = default + +struct SharedNoteOpenedDetails + "Opened shared Paper doc." + +struct ShmodelDisableDownloadsDetails + "Disabled downloads for link." + shared_link_owner UserLogInfo? + "Shared link owner details. Might be missing due to historical data gap." + + example default + shared_link_owner = default + +struct ShmodelEnableDownloadsDetails + "Enabled downloads for link." + shared_link_owner UserLogInfo? + "Shared link owner details. Might be missing due to historical data gap." + + example default + shared_link_owner = default + +struct ShmodelGroupShareDetails + "Shared link with group." + +struct ShowcaseAccessGrantedDetails + "Granted access to showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseAddMemberDetails + "Added member to showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseArchivedDetails + "Archived showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseCreatedDetails + "Created showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseDeleteCommentDetails + "Deleted showcase comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "A comment on showcase" + +struct ShowcaseEditedDetails + "Edited showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseEditCommentDetails + "Edited showcase comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "A comment on showcase" + +struct ShowcaseFileAddedDetails + "Added file to showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseFileDownloadDetails + "Downloaded file from showcase." + event_uuid String + "Event unique identifier." + download_type String + "Showcase download type." + + example default + event_uuid = "abc" + download_type = "single_embed" + +struct ShowcaseFileRemovedDetails + "Removed file from showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseFileViewDetails + "Viewed file in showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcasePermanentlyDeletedDetails + "Permanently deleted showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcasePostCommentDetails + "Added showcase comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "A comment on showcase" + +struct ShowcaseRemoveMemberDetails + "Removed member from showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseRenamedDetails + "Renamed showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseRequestAccessDetails + "Requested access to showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseResolveCommentDetails + "Resolved showcase comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "A comment on showcase" + +struct ShowcaseRestoredDetails + "Unarchived showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseTrashedDetails + "Deleted showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseTrashedDeprecatedDetails + "Deleted showcase (old version)." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseUnresolveCommentDetails + "Unresolved showcase comment." + event_uuid String + "Event unique identifier." + comment_text String? + "Comment text." + + example default + event_uuid = "abc" + comment_text = "A comment on showcase" + +struct ShowcaseUntrashedDetails + "Restored showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseUntrashedDeprecatedDetails + "Restored showcase (old version)." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct ShowcaseViewDetails + "Viewed showcase." + event_uuid String + "Event unique identifier." + + example default + event_uuid = "abc" + +struct SignSignatureRequestCanceledDetails + "Canceled signature request." + recipient String + "The recipient of the signature request." + file_name String + "The name of the related file." + + example default + recipient = "abc" + file_name = "abc" + +struct SignSignatureRequestCompletedDetails + "Completed signature request." + recipient String + "The recipient of the signature request." + file_name String + "The name of the related file." + + example default + recipient = "abc" + file_name = "abc" + +struct SignSignatureRequestDeclinedDetails + "Declined signature request." + recipient String + "The recipient of the signature request." + file_name String + "The name of the related file." + + example default + recipient = "abc" + file_name = "abc" + +struct SignSignatureRequestOpenedDetails + "Opened signature request." + recipient String + "The recipient of the signature request." + file_name String + "The name of the related file." + + example default + recipient = "abc" + file_name = "abc" + +struct SignSignatureRequestReminderSentDetails + "Sent signature request reminder." + recipient String + "The recipient of the signature request." + file_name String + "The name of the related file." + + example default + recipient = "abc" + file_name = "abc" + +struct SignSignatureRequestSentDetails + "Sent signature request." + recipient String + "The recipient of the signature request." + file_name String + "The name of the related file." + + example default + recipient = "abc" + file_name = "abc" + +struct SignTemplateCreatedDetails + "Created template." + access_level String + "The access level of the template." + file_name String + "The name of the related file." + + example default + access_level = "abc" + file_name = "abc" + +struct SignTemplateSharedDetails + "Shared template." + access_level String + "The access level of the template." + file_name String + "The name of the related file." + + example default + access_level = "abc" + file_name = "abc" + +struct RiscSecurityEventDetails + "RISC security event received from external provider." + event_type String + "RISC event type (e.g., account-disabled, token-revoked)." + reason String + "Reason for the RISC event." + issuer String + "Identity provider issuer (e.g., https://accounts.google.com)." + + example default + event_type = "https://schemas.openid.net/secevent/risc/event-type/account-disabled" + reason = "hijacking" + issuer = "https://accounts.google.com" + +struct SsoAddCertDetails + "Added X.509 certificate for SSO." + certificate_details Certificate + "SSO certificate details." + + example default + certificate_details = default + +struct SsoAddLoginUrlDetails + "Added sign-in URL for SSO." + new_value String + "New single sign-on login URL." + + example default + new_value = "abc" + +struct SsoAddLogoutUrlDetails + "Added sign-out URL for SSO." + new_value String? + "New single sign-on logout URL." + + example default + new_value = "abc" + +struct SsoChangeCertDetails + "Changed X.509 certificate for SSO." + previous_certificate_details Certificate? + "Previous SSO certificate details. Might be missing due to historical data gap." + new_certificate_details Certificate + "New SSO certificate details." + + example default + previous_certificate_details = default + new_certificate_details = default + +struct SsoChangeLoginUrlDetails + "Changed sign-in URL for SSO." + previous_value String + "Previous single sign-on login URL." + new_value String + "New single sign-on login URL." + + example default + previous_value = "abc" + new_value = "abc" + +struct SsoChangeLogoutUrlDetails + "Changed sign-out URL for SSO." + previous_value String? + "Previous single sign-on logout URL. Might be missing due to historical data gap." + new_value String? + "New single sign-on logout URL." + + example default + previous_value = "abc" + new_value = "abc" + +struct SsoChangeSamlIdentityModeDetails + "Changed SAML identity mode for SSO." + previous_value Int64 + "Previous single sign-on identity mode." + new_value Int64 + "New single sign-on identity mode." + + example default + previous_value = 3 + new_value = 3 + +struct SsoRemoveCertDetails + "Removed X.509 certificate for SSO." + +struct SsoRemoveLoginUrlDetails + "Removed sign-in URL for SSO." + previous_value String + "Previous single sign-on login URL." + + example default + previous_value = "abc" + +struct SsoRemoveLogoutUrlDetails + "Removed sign-out URL for SSO." + previous_value String + "Previous single sign-on logout URL." + + example default + previous_value = "abc" + +struct TeamFolderChangeStatusDetails + "Changed archival status of team folder." + new_value team.TeamFolderStatus + "New team folder status." + previous_value team.TeamFolderStatus? + "Previous team folder status. Might be missing due to historical data gap." + + example default + new_value = active + previous_value = active + +struct TeamFolderCreateDetails + "Created team folder in active status." + +struct TeamFolderDowngradeDetails + "Downgraded team folder to regular shared folder." + target_asset_index UInt64 + "Target asset position in the Assets list." + + example default + target_asset_index = 3 + +struct TeamFolderPermanentlyDeleteDetails + "Permanently deleted archived team folder." + +struct TeamFolderRenameDetails + "Renamed active/archived team folder." + previous_folder_name String + "Previous folder name." + new_folder_name String + "New folder name." + + example default + previous_folder_name = "abc" + new_folder_name = "abc" + +struct TeamSelectiveSyncSettingsChangedDetails + "Changed sync default." + previous_value files.SyncSetting + "Previous value." + new_value files.SyncSetting + "New value." + + example default + previous_value = default + new_value = default + +struct AccountCaptureChangePolicyDetails + "Changed account capture setting on team domain." + new_value AccountCapturePolicy + "New account capture policy." + previous_value AccountCapturePolicy? + "Previous account capture policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct AdminEmailRemindersChangedDetails + "Changed admin reminder settings for requests to join the team." + new_value AdminEmailRemindersPolicy + "To." + previous_value AdminEmailRemindersPolicy + "From." + + example default + new_value = default + previous_value = default + +struct AiThirdPartySharingDropboxBasePolicyChangedDetails + "Changed AI third party sharing policy for team." + new_value AiThirdPartySharingDropboxBasePolicy + "To." + previous_value AiThirdPartySharingDropboxBasePolicy + "From." + + example default + new_value = default + previous_value = default + +struct AllowDownloadDisabledDetails + "Disabled downloads." + +struct AllowDownloadEnabledDetails + "Enabled downloads." + +struct AppleLoginChangePolicyDetails + "Enabled/disabled Apple login for team." + new_value AppleLoginPolicy + "New Apple login policy." + previous_value AppleLoginPolicy? + "Previous Apple login policy. Might be missing due to historical data gap." + + example default + new_value = default + previous_value = default + +struct AppPermissionsChangedDetails + "Changed app permissions." + app_name String? + "Name of the app." + permission AdminConsoleAppPermission? + "Permission that was changed." + previous_value AdminConsoleAppPolicy + "Previous policy." + new_value AdminConsoleAppPolicy + "New policy." + + example default + app_name = "abc" + permission = default_for_listed_apps + previous_value = default + new_value = default + +struct CameraUploadsPolicyChangedDetails + "Changed camera uploads setting for team." + new_value CameraUploadsPolicy + "New camera uploads setting." + previous_value CameraUploadsPolicy + "Previous camera uploads setting." + + example default + new_value = disabled + previous_value = disabled + +struct CaptureTeamSpacePolicyChangedDetails + "Changed Capture team space policy for team." + new_value CaptureTeamSpacePolicy + "To." + previous_value CaptureTeamSpacePolicy + "From." + + example default + new_value = enabled + previous_value = enabled + +struct CaptureTranscriptPolicyChangedDetails + "Changed Capture transcription policy for team." + new_value CaptureTranscriptPolicy + "To." + previous_value CaptureTranscriptPolicy + "From." + + example default + new_value = default + previous_value = default + +struct ClassificationChangePolicyDetails + "Changed classification policy for team." + previous_value ClassificationPolicyEnumWrapper + "Previous classification policy." + new_value ClassificationPolicyEnumWrapper + "New classification policy." + classification_type ClassificationType + "Policy type." + + example default + previous_value = team_folders + new_value = team_folders + classification_type = pii + +struct ComputerBackupPolicyChangedDetails + "Changed computer backup policy for team." + new_value ComputerBackupPolicy + "New computer backup policy." + previous_value ComputerBackupPolicy + "Previous computer backup policy." + + example default + new_value = disabled + previous_value = disabled + +struct ContentAdministrationPolicyChangedDetails + "Changed content management setting." + new_value String + "New content administration policy." + previous_value String + "Previous content administration policy." + + example default + new_value = "abc" + previous_value = "abc" + +struct ContentDeletionProtectionChangePolicyDetails + "Changed content deletion protection policy for team." + new_value ContentDeletionProtectionPolicy + "New content deletion protection policy." + new_threshold_bytes UInt64? + "New threshold value in bytes (only present when new policy is on_above_threshold)." + previous_value ContentDeletionProtectionPolicy? + "Previous content deletion protection policy. Might be missing due to historical data gap." + previous_threshold_bytes UInt64? + "Previous threshold value in bytes (only present when previous policy was on_above_threshold)." + + example default + new_value = off + new_threshold_bytes = 3 + previous_value = off + previous_threshold_bytes = 3 + +struct DashExternalSharingPolicyChangedDetails + "Changed Dash external sharing policy for team." + new_value DashExternalSharingPolicy + "To." + previous_value DashExternalSharingPolicy + "From." + + example default + new_value = default + previous_value = default + +struct DataPlacementRestrictionChangePolicyDetails + "Set restrictions on data center locations where team data resides." + previous_value PlacementRestriction + "Previous placement restriction." + new_value PlacementRestriction + "New placement restriction." + + example default + previous_value = none + new_value = none + +struct DataPlacementRestrictionSatisfyPolicyDetails + "Completed restrictions on data center locations where team data resides." + placement_restriction PlacementRestriction + "Placement restriction." + + example default + placement_restriction = none + +struct DeviceApprovalsAddExceptionDetails + "Added members to device approvals exception list." + +struct DeviceApprovalsChangeDesktopPolicyDetails + "Set/removed limit on number of computers member can link to team Dropbox account." + new_value DeviceApprovalsPolicy? + "New desktop device approvals policy. Might be missing due to historical data gap." + previous_value DeviceApprovalsPolicy? + "Previous desktop device approvals policy. Might be missing due to historical data gap." + + example default + new_value = unlimited + previous_value = unlimited + +struct DeviceApprovalsChangeMobilePolicyDetails + "Set/removed limit on number of mobile devices member can link to team Dropbox account." + new_value DeviceApprovalsPolicy? + "New mobile device approvals policy. Might be missing due to historical data gap." + previous_value DeviceApprovalsPolicy? + "Previous mobile device approvals policy. Might be missing due to historical data gap." + + example default + new_value = unlimited + previous_value = unlimited + +struct DeviceApprovalsChangeOverageActionDetails + "Changed device approvals setting when member is over limit." + new_value team_policies.RolloutMethod? + "New over the limits policy. Might be missing due to historical data gap." + previous_value team_policies.RolloutMethod? + "Previous over the limit policy. Might be missing due to historical data gap." + + example default + new_value = unlink_all + previous_value = unlink_all + +struct DeviceApprovalsChangeUnlinkActionDetails + "Changed device approvals setting when member unlinks approved device." + new_value DeviceUnlinkPolicy? + "New device unlink policy. Might be missing due to historical data gap." + previous_value DeviceUnlinkPolicy? + "Previous device unlink policy. Might be missing due to historical data gap." + + example default + new_value = remove + previous_value = remove + +struct DeviceApprovalsRemoveExceptionDetails + "Removed members from device approvals exception list." + +struct DirectoryRestrictionsAddMembersDetails + "Added members to directory restrictions list." + +struct DirectoryRestrictionsRemoveMembersDetails + "Removed members from directory restrictions list." + +struct DropboxPasswordsPolicyChangedDetails + "Changed Dropbox Passwords policy for team." + new_value DropboxPasswordsPolicy + "To." + previous_value DropboxPasswordsPolicy + "From." + + example default + new_value = default + previous_value = default + +struct EmailIngestPolicyChangedDetails + "Changed email to Dropbox policy for team." + new_value EmailIngestPolicy + "To." + previous_value EmailIngestPolicy + "From." + + example default + new_value = disabled + previous_value = disabled + +struct EmmAddExceptionDetails + "Added members to EMM exception list." + +struct EmmChangePolicyDetails + "Enabled/disabled enterprise mobility management for members." + new_value team_policies.EmmState + "New enterprise mobility management policy." + previous_value team_policies.EmmState? + "Previous enterprise mobility management policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct EmmRemoveExceptionDetails + "Removed members from EMM exception list." + +struct ExtendedVersionHistoryChangePolicyDetails + "Accepted/opted out of extended version history." + new_value ExtendedVersionHistoryPolicy + "New extended version history policy." + previous_value ExtendedVersionHistoryPolicy? + "Previous extended version history policy. Might be missing due to historical data gap." + + example default + new_value = implicitly_limited + previous_value = implicitly_limited + +struct ExternalDriveBackupPolicyChangedDetails + "Changed external drive backup policy for team." + new_value ExternalDriveBackupPolicy + "New external drive backup policy." + previous_value ExternalDriveBackupPolicy + "Previous external drive backup policy." + + example default + new_value = default + previous_value = default + +struct FileCommentsChangePolicyDetails + "Enabled/disabled commenting on team files." + new_value FileCommentsPolicy + "New commenting on team files policy." + previous_value FileCommentsPolicy? + "Previous commenting on team files policy. Might be missing due to historical data gap." + + example default + new_value = enabled + previous_value = enabled + +struct FileLockingPolicyChangedDetails + "Changed file locking policy for team." + new_value team_policies.FileLockingPolicyState + "New file locking policy." + previous_value team_policies.FileLockingPolicyState + "Previous file locking policy." + + example default + new_value = disabled + previous_value = disabled + +struct FileProviderMigrationPolicyChangedDetails + "Changed File Provider Migration policy for team." + new_value team_policies.FileProviderMigrationPolicyState + "To." + previous_value team_policies.FileProviderMigrationPolicyState + "From." + + example default + new_value = default + previous_value = default + +struct FileRequestsChangePolicyDetails + "Enabled/disabled file requests." + new_value FileRequestsPolicy + "New file requests policy." + previous_value FileRequestsPolicy? + "Previous file requests policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct FileRequestsEmailsEnabledDetails + "Enabled file request emails for everyone." + +struct FileRequestsEmailsRestrictedToTeamOnlyDetails + "Enabled file request emails for team." + +struct FileTransfersPolicyChangedDetails + "Changed file transfers policy for team." + new_value FileTransfersPolicy + "New file transfers policy." + previous_value FileTransfersPolicy + "Previous file transfers policy." + + example default + new_value = disabled + previous_value = disabled + +struct FlexibleFileNamesPolicyChangedDetails + "Changed flexible file names policy for team." + new_value FlexibleFileNamesPolicy + "New flexible file names policy." + previous_value FlexibleFileNamesPolicy? + "Previous flexible file names policy. Might be missing due to historical data gap." + + example default + new_value = off + previous_value = off + +struct FolderLinkRestrictionPolicyChangedDetails + "Changed folder link restrictions policy for team." + new_value FolderLinkRestrictionPolicy + "To." + previous_value FolderLinkRestrictionPolicy + "From." + + example default + new_value = disabled + previous_value = disabled + +struct GoogleSsoChangePolicyDetails + "Enabled/disabled Google single sign-on for team." + new_value GoogleSsoPolicy + "New Google single sign-on policy." + previous_value GoogleSsoPolicy? + "Previous Google single sign-on policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct GroupUserManagementChangePolicyDetails + "Changed who can create groups." + new_value team_policies.GroupCreation + "New group users management policy." + previous_value team_policies.GroupCreation? + "Previous group users management policy. Might be missing due to historical data gap." + + example default + new_value = admins_and_members + previous_value = admins_and_members + +struct IntegrationPolicyChangedDetails + "Changed integration policy for team." + integration_name String + "Name of the third-party integration." + new_value IntegrationPolicy + "New integration policy." + previous_value IntegrationPolicy + "Previous integration policy." + + example default + integration_name = "abc" + new_value = disabled + previous_value = disabled + +struct InviteAcceptanceEmailPolicyChangedDetails + "Changed invite accept email policy for team." + new_value InviteAcceptanceEmailPolicy + "To." + previous_value InviteAcceptanceEmailPolicy + "From." + + example default + new_value = disabled + previous_value = disabled + +struct MemberRequestsChangePolicyDetails + "Changed whether users can find team when not invited." + new_value MemberRequestsPolicy + "New member change requests policy." + previous_value MemberRequestsPolicy? + "Previous member change requests policy. Might be missing due to historical data gap." + + example default + new_value = require_approval + previous_value = require_approval + +struct MemberSendInvitePolicyChangedDetails + "Changed member send invite policy for team." + new_value MemberSendInvitePolicy + "New team member send invite policy." + previous_value MemberSendInvitePolicy + "Previous team member send invite policy." + + example default + new_value = disabled + previous_value = disabled + +struct MemberSpaceLimitsAddExceptionDetails + "Added members to member space limit exception list." + +struct MemberSpaceLimitsChangeCapsTypePolicyDetails + "Changed member space limit type for team." + previous_value SpaceCapsType + "Previous space limit type." + new_value SpaceCapsType + "New space limit type." + + example default + previous_value = hard + new_value = hard + +struct MemberSpaceLimitsChangePolicyDetails + "Changed team default member space limit." + previous_value UInt64? + "Previous team default limit value in bytes. Might be missing due to historical data gap." + new_value UInt64? + "New team default limit value in bytes. Might be missing due to historical data gap." + + example default + previous_value = 3 + new_value = 3 + +struct MemberSpaceLimitsRemoveExceptionDetails + "Removed members from member space limit exception list." + +struct MemberSuggestionsChangePolicyDetails + "Enabled/disabled option for team members to suggest people to add to team." + new_value MemberSuggestionsPolicy + "New team member suggestions policy." + previous_value MemberSuggestionsPolicy? + "Previous team member suggestions policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct MicrosoftLoginChangePolicyDetails + "Enabled/disabled Microsoft login for team." + new_value MicrosoftLoginPolicy + "New Microsoft login policy." + previous_value MicrosoftLoginPolicy? + "Previous Microsoft login policy. Might be missing due to historical data gap." + + example default + new_value = default + previous_value = default + +struct MicrosoftOfficeAddinChangePolicyDetails + "Enabled/disabled Microsoft Office add-in." + new_value MicrosoftOfficeAddinPolicy + "New Microsoft Office addin policy." + previous_value MicrosoftOfficeAddinPolicy? + "Previous Microsoft Office addin policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct NetworkControlChangePolicyDetails + "Enabled/disabled network control." + new_value NetworkControlPolicy + "New network control policy." + previous_value NetworkControlPolicy? + "Previous network control policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct PaperChangeDeploymentPolicyDetails + "Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members." + new_value team_policies.PaperDeploymentPolicy + "New Dropbox Paper deployment policy." + previous_value team_policies.PaperDeploymentPolicy? + "Previous Dropbox Paper deployment policy. Might be missing due to historical data gap." + + example default + new_value = full + previous_value = full + +struct PaperChangeMemberLinkPolicyDetails + "Changed whether non-members can view Paper docs with link." + new_value PaperMemberPolicy + "New paper external link accessibility policy." + + example default + new_value = only_team + +struct PaperChangeMemberPolicyDetails + "Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default." + new_value PaperMemberPolicy + "New paper external accessibility policy." + previous_value PaperMemberPolicy? + "Previous paper external accessibility policy. Might be missing due to historical data gap." + + example default + new_value = only_team + previous_value = only_team + +struct PaperChangePolicyDetails + "Enabled/disabled Dropbox Paper for team." + new_value team_policies.PaperEnabledPolicy + "New Dropbox Paper policy." + previous_value team_policies.PaperEnabledPolicy? + "Previous Dropbox Paper policy. Might be missing due to historical data gap." + + example default + new_value = unspecified + previous_value = unspecified + +struct PaperDefaultFolderPolicyChangedDetails + "Changed Paper Default Folder Policy setting for team." + new_value PaperDefaultFolderPolicy + "New Paper Default Folder Policy." + previous_value PaperDefaultFolderPolicy + "Previous Paper Default Folder Policy." + + example default + new_value = everyone_in_team + previous_value = everyone_in_team + +struct PaperDesktopPolicyChangedDetails + "Enabled/disabled Paper Desktop for team." + new_value PaperDesktopPolicy + "New Paper Desktop policy." + previous_value PaperDesktopPolicy + "Previous Paper Desktop policy." + + example default + new_value = disabled + previous_value = disabled + +struct PaperEnabledUsersGroupAdditionDetails + "Added users to Paper-enabled users list." + +struct PaperEnabledUsersGroupRemovalDetails + "Removed users from Paper-enabled users list." + +struct PasskeyLoginPolicyChangedDetails + "Changed passkey login policy for team." + new_value PasskeyLoginPolicy + "New passkey login policy." + previous_value PasskeyLoginPolicy? + "Previous passkey login policy. Might be missing due to historical data gap." + + example default + new_value = default + previous_value = default + +struct PasswordStrengthRequirementsChangePolicyDetails + "Changed team password strength requirements." + previous_value team_policies.PasswordStrengthPolicy + "Old password strength policy." + new_value team_policies.PasswordStrengthPolicy + "New password strength policy." + + example default + previous_value = minimal_requirements + new_value = minimal_requirements + +struct PermanentDeleteChangePolicyDetails + "Enabled/disabled ability of team members to permanently delete content." + new_value ContentPermanentDeletePolicy + "New permanent delete content policy." + previous_value ContentPermanentDeletePolicy? + "Previous permanent delete content policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct PreviewsAiPolicyChangedDetails + "Changed Dropbox AI policy for team." + new_value PreviewsAiPolicy + "To." + previous_value PreviewsAiPolicy + "From." + + example default + new_value = default + previous_value = default + +struct ReplayAddingPeoplePolicyChangedDetails + "Changed the policy for adding people to Replay content." + new_value ReplayAddingPeoplePolicy + "To." + previous_value ReplayAddingPeoplePolicy + "From." + + example default + new_value = anyone + previous_value = anyone + +struct ReplaySharingPolicyChangedDetails + "Changed the policy for sharing Replay content." + new_value ReplaySharingPolicy + "To." + previous_value ReplaySharingPolicy + "From." + + example default + new_value = anyone + previous_value = anyone + +struct ResellerSupportChangePolicyDetails + "Enabled/disabled reseller support." + new_value ResellerSupportPolicy + "New Reseller support policy." + previous_value ResellerSupportPolicy + "Previous Reseller support policy." + + example default + new_value = disabled + previous_value = disabled + +struct RewindPolicyChangedDetails + "Changed Rewind policy for team." + new_value RewindPolicy + "New Dropbox Rewind policy." + previous_value RewindPolicy + "Previous Dropbox Rewind policy." + + example default + new_value = admins_only + previous_value = admins_only + +struct SendAndTrackPolicyChangedDetails + "Changed “Send and track” policy for team." + new_value SendAndTrackPolicy + "To." + previous_value SendAndTrackPolicy + "From." + + example default + new_value = default + previous_value = default + +struct SendExternalSharingPolicyChangedDetails + "Changed “Send and track” external sharing policy for team." + new_value SendExternalSharingPolicy + "To." + previous_value SendExternalSharingPolicy + "From." + + example default + new_value = default + previous_value = default + +struct SendForSignaturePolicyChangedDetails + "Changed send for signature policy for team." + new_value SendForSignaturePolicy + "New send for signature policy." + previous_value SendForSignaturePolicy + "Previous send for signature policy." + + example default + new_value = disabled + previous_value = disabled + +struct SharedLinkDefaultPermissionsPolicyChangedDetails + "Changed shared link default permissions policy for team." + new_value SharedLinkDefaultPermissionsPolicy + "To." + previous_value SharedLinkDefaultPermissionsPolicy + "From." + + example default + new_value = default + previous_value = default + +struct SharingChangeFolderJoinPolicyDetails + "Changed whether team members can join shared folders owned outside team." + new_value SharingFolderJoinPolicy + "New external join policy." + previous_value SharingFolderJoinPolicy? + "Previous external join policy. Might be missing due to historical data gap." + + example default + new_value = from_anyone + previous_value = from_anyone + +struct SharingChangeLinkAllowChangeExpirationPolicyDetails + "Changed the allow remove or change expiration policy for the links shared outside of the team." + new_value EnforceLinkPasswordPolicy + "To." + previous_value EnforceLinkPasswordPolicy? + "From." + + example default + new_value = optional + previous_value = optional + +struct SharingChangeLinkDefaultExpirationPolicyDetails + "Changed the default expiration for the links shared outside of the team." + new_value DefaultLinkExpirationDaysPolicy + "To." + previous_value DefaultLinkExpirationDaysPolicy? + "From." + + example default + new_value = none + previous_value = none + +struct SharingChangeLinkEnforcePasswordPolicyDetails + "Changed the password requirement for the links shared outside of the team." + new_value ChangeLinkExpirationPolicy + "To." + previous_value ChangeLinkExpirationPolicy? + "From." + + example default + new_value = allowed + previous_value = allowed + +struct SharingChangeLinkPolicyDetails + "Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default." + new_value SharingLinkPolicy + "New external link accessibility policy." + previous_value SharingLinkPolicy? + "Previous external link accessibility policy. Might be missing due to historical data gap." + + example default + new_value = default_public + previous_value = default_public + +struct SharingChangeMemberPolicyDetails + "Changed whether members can share files/folders outside team." + new_value SharingMemberPolicy + "New external invite policy." + previous_value SharingMemberPolicy? + "Previous external invite policy. Might be missing due to historical data gap." + + example default + new_value = allow + previous_value = allow + +struct ShowcaseChangeDownloadPolicyDetails + "Enabled/disabled downloading files from Dropbox Showcase for team." + new_value ShowcaseDownloadPolicy + "New Dropbox Showcase download policy." + previous_value ShowcaseDownloadPolicy + "Previous Dropbox Showcase download policy." + + example default + new_value = disabled + previous_value = disabled + +struct ShowcaseChangeEnabledPolicyDetails + "Enabled/disabled Dropbox Showcase for team." + new_value ShowcaseEnabledPolicy + "New Dropbox Showcase policy." + previous_value ShowcaseEnabledPolicy + "Previous Dropbox Showcase policy." + + example default + new_value = disabled + previous_value = disabled + +struct ShowcaseChangeExternalSharingPolicyDetails + "Enabled/disabled sharing Dropbox Showcase externally for team." + new_value ShowcaseExternalSharingPolicy + "New Dropbox Showcase external sharing policy." + previous_value ShowcaseExternalSharingPolicy + "Previous Dropbox Showcase external sharing policy." + + example default + new_value = disabled + previous_value = disabled + +struct SignExternalSharingPolicyChangedDetails + "Changed Signatures external sharing policy for team." + new_value SignExternalSharingPolicy + "To." + previous_value SignExternalSharingPolicy + "From." + + example default + new_value = default + previous_value = default + +struct SignTemplateCreationPermissionChangedDetails + "Changed template creation permission." + new_value SignTemplateCreationPermissionPolicy + "New template creation permission policy." + previous_value SignTemplateCreationPermissionPolicy + "Previous template creation permission policy." + + example default + new_value = disabled + previous_value = disabled + +struct SmarterSmartSyncPolicyChangedDetails + "Changed automatic Smart Sync setting for team." + previous_value team_policies.SmarterSmartSyncPolicyState + "Previous automatic Smart Sync setting." + new_value team_policies.SmarterSmartSyncPolicyState + "New automatic Smart Sync setting." + + example default + previous_value = disabled + new_value = disabled + +struct SmartSyncChangePolicyDetails + "Changed default Smart Sync setting for team members." + new_value team_policies.SmartSyncPolicy? + "New smart sync policy." + previous_value team_policies.SmartSyncPolicy? + "Previous smart sync policy." + + example default + new_value = local + previous_value = local + +struct SmartSyncNotOptOutDetails + "Opted team into Smart Sync." + previous_value SmartSyncOptOutPolicy + "Previous Smart Sync opt out policy." + new_value SmartSyncOptOutPolicy + "New Smart Sync opt out policy." + + example default + previous_value = default + new_value = default + +struct SmartSyncOptOutDetails + "Opted team out of Smart Sync." + previous_value SmartSyncOptOutPolicy + "Previous Smart Sync opt out policy." + new_value SmartSyncOptOutPolicy + "New Smart Sync opt out policy." + + example default + previous_value = default + new_value = default + +struct SsoChangePolicyDetails + "Changed single sign-on setting for team." + new_value team_policies.SsoPolicy + "New single sign-on policy." + previous_value team_policies.SsoPolicy? + "Previous single sign-on policy. Might be missing due to historical data gap." + + example default + new_value = disabled + previous_value = disabled + +struct StackCrossTeamAccessPolicyChangedDetails + "Changed cross-team Stack access policy for team." + new_value StackCrossTeamAccessPolicy + "New cross-team Stack access policy." + previous_value StackCrossTeamAccessPolicy? + "Previous cross-team Stack access policy. Might be missing due to historical data gap." + + example default + new_value = default + previous_value = default + +struct TeamBrandingPolicyChangedDetails + "Changed team branding policy for team." + new_value TeamBrandingPolicy + "New team branding policy." + previous_value TeamBrandingPolicy + "Previous team branding policy." + + example default + new_value = disabled + previous_value = disabled + +struct TeamExtensionsPolicyChangedDetails + "Changed App Integrations setting for team." + new_value TeamExtensionsPolicy + "New Extensions policy." + previous_value TeamExtensionsPolicy + "Previous Extensions policy." + + example default + new_value = disabled + previous_value = disabled + +struct TeamMemberStorageRequestPolicyChangedDetails + "Changed team member storage request policy for team." + new_value TeamMemberStorageRequestPolicy + "New team member storage request policy." + previous_value TeamMemberStorageRequestPolicy? + "Previous team member storage request policy. Might be missing due to historical data gap." + + example default + new_value = default + previous_value = default + +struct TeamSelectiveSyncPolicyChangedDetails + "Enabled/disabled Team Selective Sync for team." + new_value TeamSelectiveSyncPolicy + "New Team Selective Sync policy." + previous_value TeamSelectiveSyncPolicy + "Previous Team Selective Sync policy." + + example default + new_value = disabled + previous_value = disabled + +struct TeamSharingWhitelistSubjectsChangedDetails + "Edited the approved list for sharing externally." + added_whitelist_subjects List(String) + "Domains or emails added to the approved list for sharing externally." + removed_whitelist_subjects List(String) + "Domains or emails removed from the approved list for sharing externally." + + example default + added_whitelist_subjects = ["example.com"] + removed_whitelist_subjects = ["example.com"] + +struct TfaAddExceptionDetails + "Added members to two factor authentication exception list." + +struct TfaChangePolicyDetails + "Changed two-factor authentication setting for team." + new_value team_policies.TwoStepVerificationPolicy + "New change policy." + previous_value team_policies.TwoStepVerificationPolicy? + "Previous change policy. Might be missing due to historical data gap." + + example default + new_value = require_tfa_disable + previous_value = require_tfa_disable + +struct TfaRemoveExceptionDetails + "Removed members from two factor authentication exception list." + +struct TopLevelContentPolicyChangedDetails + "Changed top level content setting for team." + new_value TopLevelContentPolicy + "To." + previous_value TopLevelContentPolicy + "From." + + example default + new_value = everyone + previous_value = everyone + +struct TwoAccountChangePolicyDetails + "Enabled/disabled option for members to link personal Dropbox account and team account to same computer." + new_value TwoAccountPolicy + "New two account policy." + previous_value TwoAccountPolicy? + "Previous two account policy. Might be missing due to historical data gap." + + example default + new_value = enabled + previous_value = enabled + +struct ViewerInfoPolicyChangedDetails + "Changed team policy for viewer info." + previous_value PassPolicy + "Previous Viewer Info policy." + new_value PassPolicy + "New Viewer Info policy." + + example default + previous_value = enabled + new_value = enabled + +struct WatermarkingPolicyChangedDetails + "Changed watermarking policy for team." + new_value WatermarkingPolicy + "New watermarking policy." + previous_value WatermarkingPolicy + "Previous watermarking policy." + + example default + new_value = disabled + previous_value = disabled + +struct WebSessionsChangeActiveSessionLimitDetails + "Changed limit on active sessions per member." + previous_value String + "Previous max number of concurrent active sessions policy." + new_value String + "New max number of concurrent active sessions policy." + + example default + previous_value = "abc" + new_value = "abc" + +struct WebSessionsChangeFixedLengthPolicyDetails + "Changed how long members can stay signed in to Dropbox.com." + new_value WebSessionsFixedLengthPolicy? + "New session length policy. Might be missing due to historical data gap." + previous_value WebSessionsFixedLengthPolicy? + "Previous session length policy. Might be missing due to historical data gap." + + example default + new_value = default + previous_value = default + +struct WebSessionsChangeIdleLengthPolicyDetails + "Changed how long team members can be idle while signed in to Dropbox.com." + new_value WebSessionsIdleLengthPolicy? + "New idle length policy. Might be missing due to historical data gap." + previous_value WebSessionsIdleLengthPolicy? + "Previous idle length policy. Might be missing due to historical data gap." + + example default + new_value = default + previous_value = default + +struct DataResidencyMigrationRequestSuccessfulDetails + "Requested data residency migration for team data." + +struct DataResidencyMigrationRequestUnsuccessfulDetails + "Request for data residency migration for team data has failed." + +struct TeamMergeFromDetails + "Merged another team into this team." + team_name String + "The name of the team that was merged into this team." + + example default + team_name = "abc" + +struct TeamMergeToDetails + "Merged this team into another team." + team_name String + "The name of the team that this team was merged into." + + example default + team_name = "abc" + +struct TeamProfileAddBackgroundDetails + "Added team background to display on shared link headers." + +struct TeamProfileAddLogoDetails + "Added team logo to display on shared link headers." + +struct TeamProfileChangeBackgroundDetails + "Changed team background displayed on shared link headers." + +struct TeamProfileChangeDefaultLanguageDetails + "Changed default language for team." + new_value common.LanguageCode + "New team's default language." + previous_value common.LanguageCode + "Previous team's default language." + + example default + new_value = "en_GB" + previous_value = "en" + +struct TeamProfileChangeLogoDetails + "Changed team logo displayed on shared link headers." + +struct TeamProfileChangeNameDetails + "Changed team name." + previous_value TeamName? + "Previous teams name. Might be missing due to historical data gap." + new_value TeamName + "New team name." + + example default + previous_value = default + new_value = default + +struct TeamProfileRemoveBackgroundDetails + "Removed team background displayed on shared link headers." + +struct TeamProfileRemoveLogoDetails + "Removed team logo displayed on shared link headers." + +struct PasskeyAddDetails + "Added passkey for login." + +struct PasskeyRemoveDetails + "Removed passkey for login." + +struct TfaAddBackupPhoneDetails + "Added backup phone for two-factor authentication." + +struct TfaAddSecurityKeyDetails + "Added security key for two-factor authentication." + +struct TfaChangeBackupPhoneDetails + "Changed backup phone for two-factor authentication." + +struct TfaChangeStatusDetails + "Enabled/disabled/changed two-factor authentication setting." + new_value TfaConfiguration + "The new two factor authentication configuration." + previous_value TfaConfiguration? + "The previous two factor authentication configuration. Might be missing due to historical data gap." + used_rescue_code Boolean? + "Used two factor authentication rescue code. This flag is relevant when the two factor authentication configuration is disabled." + + example default + new_value = disabled + previous_value = disabled + used_rescue_code = true + +struct TfaRemoveBackupPhoneDetails + "Removed backup phone for two-factor authentication." + +struct TfaRemoveSecurityKeyDetails + "Removed security key for two-factor authentication." + +struct TfaResetDetails + "Reset two-factor authentication for team member." + +struct ChangedEnterpriseAdminRoleDetails + "Changed enterprise admin role." + previous_value FedAdminRole + "The member’s previous enterprise admin role." + new_value FedAdminRole + "The member’s new enterprise admin role." + team_name String + "The name of the member’s team." + + example default + previous_value = not_enterprise_admin + new_value = not_enterprise_admin + team_name = "IT Department" + +struct ChangedEnterpriseConnectedTeamStatusDetails + "Changed enterprise-connected team status." + action FedHandshakeAction + "The preformed change in the team’s connection status." + additional_info FederationStatusChangeAdditionalInfo + "Additional information about the organization or team." + previous_value TrustedTeamsRequestState + "Previous request state." + new_value TrustedTeamsRequestState + "New request state." + + example default + action = invited + additional_info = default + previous_value = invited + new_value = invited + +struct EndedEnterpriseAdminSessionDetails + "Ended enterprise admin session." + +struct EndedEnterpriseAdminSessionDeprecatedDetails + "Ended enterprise admin session." + federation_extra_details FedExtraDetails + "More information about the organization or team." + + example default + federation_extra_details = default + +struct EnterpriseSettingsLockingDetails + "Changed who can update a setting." + team_name String + "The secondary team name." + settings_page_name String + "Settings page name." + previous_settings_page_locking_state String + "Previous locked settings page state." + new_settings_page_locking_state String + "New locked settings page state." + + example default + team_name = "abc" + settings_page_name = "abc" + previous_settings_page_locking_state = "abc" + new_settings_page_locking_state = "abc" + +struct GuestAdminChangeStatusDetails + "Changed guest team admin status." + is_guest Boolean + "True for guest, false for host." + guest_team_name String? + "The name of the guest team." + host_team_name String? + "The name of the host team." + previous_value TrustedTeamsRequestState + "Previous request state." + new_value TrustedTeamsRequestState + "New request state." + action_details TrustedTeamsRequestAction + "Action details." + + example default + is_guest = true + guest_team_name = "abc" + host_team_name = "abc" + previous_value = invited + new_value = invited + action_details = invited + +struct StartedEnterpriseAdminSessionDetails + "Started enterprise admin session." + federation_extra_details FedExtraDetails + "More information about the organization or team." + + example default + federation_extra_details = default + +struct TeamMergeRequestAcceptedDetails + "Accepted a team merge request." + request_accepted_details TeamMergeRequestAcceptedExtraDetails + "Team merge request acceptance details." + + example default + request_accepted_details = default + +struct TeamMergeRequestAcceptedShownToPrimaryTeamDetails + "Accepted a team merge request." + secondary_team String + "The secondary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + secondary_team = "abc" + sent_by = "abc" + +struct TeamMergeRequestAcceptedShownToSecondaryTeamDetails + "Accepted a team merge request." + primary_team String + "The primary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + primary_team = "abc" + sent_by = "abc" + +struct TeamMergeRequestAutoCanceledDetails + "Automatically canceled team merge request." + details String? + "The cancellation reason." + + example default + details = "Canceled by Dropbox Support" + +struct TeamMergeRequestCanceledDetails + "Canceled a team merge request." + request_canceled_details TeamMergeRequestCanceledExtraDetails + "Team merge request cancellation details." + + example default + request_canceled_details = default + +struct TeamMergeRequestCanceledShownToPrimaryTeamDetails + "Canceled a team merge request." + secondary_team String + "The secondary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + secondary_team = "abc" + sent_by = "abc" + +struct TeamMergeRequestCanceledShownToSecondaryTeamDetails + "Canceled a team merge request." + sent_to String + "The email of the primary team admin that the request was sent to." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + sent_to = "abc" + sent_by = "abc" + +struct TeamMergeRequestExpiredDetails + "Team merge request expired." + request_expired_details TeamMergeRequestExpiredExtraDetails + "Team merge request expiration details." + + example default + request_expired_details = default + +struct TeamMergeRequestExpiredShownToPrimaryTeamDetails + "Team merge request expired." + secondary_team String + "The secondary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + secondary_team = "abc" + sent_by = "abc" + +struct TeamMergeRequestExpiredShownToSecondaryTeamDetails + "Team merge request expired." + sent_to String + "The email of the primary team admin the request was sent to." + + example default + sent_to = "abc" + +struct TeamMergeRequestRejectedShownToPrimaryTeamDetails + "Rejected a team merge request." + secondary_team String + "The secondary team name." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + secondary_team = "abc" + sent_by = "abc" + +struct TeamMergeRequestRejectedShownToSecondaryTeamDetails + "Rejected a team merge request." + sent_by String + "The name of the secondary team admin who sent the request originally." + + example default + sent_by = "abc" + +struct TeamMergeRequestReminderDetails + "Sent a team merge request reminder." + request_reminder_details TeamMergeRequestReminderExtraDetails + "Team merge request reminder details." + + example default + request_reminder_details = default + +struct TeamMergeRequestReminderShownToPrimaryTeamDetails + "Sent a team merge request reminder." + secondary_team String + "The secondary team name." + sent_to String + "The name of the primary team admin the request was sent to." + + example default + secondary_team = "abc" + sent_to = "abc" + +struct TeamMergeRequestReminderShownToSecondaryTeamDetails + "Sent a team merge request reminder." + sent_to String + "The email of the primary team admin the request was sent to." + + example default + sent_to = "abc" + +struct TeamMergeRequestRevokedDetails + "Canceled the team merge." + team String + "The name of the other team." + + example default + team = "IT Department" + +struct TeamMergeRequestSentShownToPrimaryTeamDetails + "Requested to merge their Dropbox team into yours." + secondary_team String + "The secondary team name." + sent_to String + "The name of the primary team admin the request was sent to." + + example default + secondary_team = "BAU IT Department" + sent_to = "Saffron Eveninglily" + +struct TeamMergeRequestSentShownToSecondaryTeamDetails + "Requested to merge your team into another Dropbox team." + sent_to String + "The email of the primary team admin the request was sent to." + + example default + sent_to = "admin@it_department.com" + +union EventDetails + "Additional fields depending on the event type." + admin_alerting_alert_state_changed_details AdminAlertingAlertStateChangedDetails + admin_alerting_changed_alert_config_details AdminAlertingChangedAlertConfigDetails + admin_alerting_triggered_alert_details AdminAlertingTriggeredAlertDetails + ransomware_restore_process_completed_details RansomwareRestoreProcessCompletedDetails + ransomware_restore_process_started_details RansomwareRestoreProcessStartedDetails + app_blocked_by_permissions_details AppBlockedByPermissionsDetails + app_link_team_details AppLinkTeamDetails + app_link_user_details AppLinkUserDetails + app_unlink_team_details AppUnlinkTeamDetails + app_unlink_user_details AppUnlinkUserDetails + integration_connected_details IntegrationConnectedDetails + integration_disconnected_details IntegrationDisconnectedDetails + file_add_comment_details FileAddCommentDetails + file_change_comment_subscription_details FileChangeCommentSubscriptionDetails + file_delete_comment_details FileDeleteCommentDetails + file_edit_comment_details FileEditCommentDetails + file_like_comment_details FileLikeCommentDetails + file_resolve_comment_details FileResolveCommentDetails + file_unlike_comment_details FileUnlikeCommentDetails + file_unresolve_comment_details FileUnresolveCommentDetails + dash_added_comment_to_stack_details DashAddedCommentToStackDetails + dash_added_connector_details DashAddedConnectorDetails + dash_added_link_to_stack_details DashAddedLinkToStackDetails + dash_added_team_email_domain_allowlist_details DashAddedTeamEmailDomainAllowlistDetails + dash_admin_added_org_wide_connector_details DashAdminAddedOrgWideConnectorDetails + dash_admin_disabled_connector_details DashAdminDisabledConnectorDetails + dash_admin_enabled_connector_details DashAdminEnabledConnectorDetails + dash_admin_removed_org_wide_connector_details DashAdminRemovedOrgWideConnectorDetails + dash_archived_stack_details DashArchivedStackDetails + dash_changed_audience_of_shared_link_to_stack_details DashChangedAudienceOfSharedLinkToStackDetails + dash_cloned_stack_details DashClonedStackDetails + dash_connector_tools_call_details DashConnectorToolsCallDetails + dash_created_stack_details DashCreatedStackDetails + dash_deleted_comment_from_stack_details DashDeletedCommentFromStackDetails + dash_deleted_stack_details DashDeletedStackDetails + dash_edited_comment_in_stack_details DashEditedCommentInStackDetails + dash_external_user_opened_stack_details DashExternalUserOpenedStackDetails + dash_first_launched_desktop_details DashFirstLaunchedDesktopDetails + dash_first_launched_extension_details DashFirstLaunchedExtensionDetails + dash_first_launched_web_start_page_details DashFirstLaunchedWebStartPageDetails + dash_opened_shared_link_to_stack_details DashOpenedSharedLinkToStackDetails + dash_opened_stack_details DashOpenedStackDetails + dash_preview_opt_out_status_changed_details DashPreviewOptOutStatusChangedDetails + dash_removed_connector_details DashRemovedConnectorDetails + dash_removed_link_from_stack_details DashRemovedLinkFromStackDetails + dash_removed_shared_link_to_stack_details DashRemovedSharedLinkToStackDetails + dash_removed_team_email_domain_allowlist_details DashRemovedTeamEmailDomainAllowlistDetails + dash_renamed_stack_details DashRenamedStackDetails + dash_shared_link_to_stack_details DashSharedLinkToStackDetails + dash_unarchived_stack_details DashUnarchivedStackDetails + dash_viewed_company_stack_details DashViewedCompanyStackDetails + dash_viewed_external_ai_activity_report_details DashViewedExternalAiActivityReportDetails + governance_policy_add_folders_details GovernancePolicyAddFoldersDetails + governance_policy_add_folder_failed_details GovernancePolicyAddFolderFailedDetails + governance_policy_content_disposed_details GovernancePolicyContentDisposedDetails + governance_policy_create_details GovernancePolicyCreateDetails + governance_policy_delete_details GovernancePolicyDeleteDetails + governance_policy_edit_details_details GovernancePolicyEditDetailsDetails + governance_policy_edit_duration_details GovernancePolicyEditDurationDetails + governance_policy_export_created_details GovernancePolicyExportCreatedDetails + governance_policy_export_removed_details GovernancePolicyExportRemovedDetails + governance_policy_remove_folders_details GovernancePolicyRemoveFoldersDetails + governance_policy_report_created_details GovernancePolicyReportCreatedDetails + governance_policy_zip_part_downloaded_details GovernancePolicyZipPartDownloadedDetails + legal_holds_activate_a_hold_details LegalHoldsActivateAHoldDetails + legal_holds_add_members_details LegalHoldsAddMembersDetails + legal_holds_change_hold_details_details LegalHoldsChangeHoldDetailsDetails + legal_holds_change_hold_name_details LegalHoldsChangeHoldNameDetails + legal_holds_export_a_hold_details LegalHoldsExportAHoldDetails + legal_holds_export_cancelled_details LegalHoldsExportCancelledDetails + legal_holds_export_downloaded_details LegalHoldsExportDownloadedDetails + legal_holds_export_removed_details LegalHoldsExportRemovedDetails + legal_holds_release_a_hold_details LegalHoldsReleaseAHoldDetails + legal_holds_remove_members_details LegalHoldsRemoveMembersDetails + legal_holds_report_a_hold_details LegalHoldsReportAHoldDetails + device_change_ip_desktop_details DeviceChangeIpDesktopDetails + device_change_ip_mobile_details DeviceChangeIpMobileDetails + device_change_ip_web_details DeviceChangeIpWebDetails + device_delete_on_unlink_fail_details DeviceDeleteOnUnlinkFailDetails + device_delete_on_unlink_success_details DeviceDeleteOnUnlinkSuccessDetails + device_link_fail_details DeviceLinkFailDetails + device_link_success_details DeviceLinkSuccessDetails + device_management_disabled_details DeviceManagementDisabledDetails + device_management_enabled_details DeviceManagementEnabledDetails + device_sync_backup_status_changed_details DeviceSyncBackupStatusChangedDetails + device_unlink_details DeviceUnlinkDetails + dropbox_passwords_exported_details DropboxPasswordsExportedDetails + dropbox_passwords_new_device_enrolled_details DropboxPasswordsNewDeviceEnrolledDetails + emm_refresh_auth_token_details EmmRefreshAuthTokenDetails + external_drive_backup_eligibility_status_checked_details ExternalDriveBackupEligibilityStatusCheckedDetails + external_drive_backup_status_changed_details ExternalDriveBackupStatusChangedDetails + account_capture_change_availability_details AccountCaptureChangeAvailabilityDetails + account_capture_migrate_account_details AccountCaptureMigrateAccountDetails + account_capture_notification_emails_sent_details AccountCaptureNotificationEmailsSentDetails + account_capture_relinquish_account_details AccountCaptureRelinquishAccountDetails + disabled_domain_invites_details DisabledDomainInvitesDetails + domain_invites_approve_request_to_join_team_details DomainInvitesApproveRequestToJoinTeamDetails + domain_invites_decline_request_to_join_team_details DomainInvitesDeclineRequestToJoinTeamDetails + domain_invites_email_existing_users_details DomainInvitesEmailExistingUsersDetails + domain_invites_request_to_join_team_details DomainInvitesRequestToJoinTeamDetails + domain_invites_set_invite_new_user_pref_to_no_details DomainInvitesSetInviteNewUserPrefToNoDetails + domain_invites_set_invite_new_user_pref_to_yes_details DomainInvitesSetInviteNewUserPrefToYesDetails + domain_verification_add_domain_fail_details DomainVerificationAddDomainFailDetails + domain_verification_add_domain_success_details DomainVerificationAddDomainSuccessDetails + domain_verification_remove_domain_details DomainVerificationRemoveDomainDetails + enabled_domain_invites_details EnabledDomainInvitesDetails + encrypted_folder_cancel_team_key_rotation_details EncryptedFolderCancelTeamKeyRotationDetails + encrypted_folder_enroll_backup_key_details EncryptedFolderEnrollBackupKeyDetails + encrypted_folder_enroll_client_details EncryptedFolderEnrollClientDetails + encrypted_folder_enroll_team_details EncryptedFolderEnrollTeamDetails + encrypted_folder_finish_team_unenrollment_details EncryptedFolderFinishTeamUnenrollmentDetails + encrypted_folder_init_team_key_rotation_details EncryptedFolderInitTeamKeyRotationDetails + encrypted_folder_init_team_unenrollment_details EncryptedFolderInitTeamUnenrollmentDetails + encrypted_folder_remove_backup_key_details EncryptedFolderRemoveBackupKeyDetails + encrypted_folder_rotate_team_key_details EncryptedFolderRotateTeamKeyDetails + encrypted_folder_unenroll_client_details EncryptedFolderUnenrollClientDetails + team_encryption_key_activate_key_details TeamEncryptionKeyActivateKeyDetails + team_encryption_key_cancel_key_deletion_details TeamEncryptionKeyCancelKeyDeletionDetails + team_encryption_key_create_key_details TeamEncryptionKeyCreateKeyDetails + team_encryption_key_deactivate_key_details TeamEncryptionKeyDeactivateKeyDetails + team_encryption_key_delete_key_details TeamEncryptionKeyDeleteKeyDetails + team_encryption_key_disable_key_details TeamEncryptionKeyDisableKeyDetails + team_encryption_key_enable_key_details TeamEncryptionKeyEnableKeyDetails + team_encryption_key_rotate_key_details TeamEncryptionKeyRotateKeyDetails + team_encryption_key_schedule_key_deletion_details TeamEncryptionKeyScheduleKeyDeletionDetails + apply_naming_convention_details ApplyNamingConventionDetails + create_folder_details CreateFolderDetails + file_add_details FileAddDetails + file_add_from_automation_details FileAddFromAutomationDetails + file_copy_details FileCopyDetails + file_delete_details FileDeleteDetails + file_download_details FileDownloadDetails + file_edit_details FileEditDetails + file_get_copy_reference_details FileGetCopyReferenceDetails + file_locking_lock_status_changed_details FileLockingLockStatusChangedDetails + file_move_details FileMoveDetails + file_permanently_delete_details FilePermanentlyDeleteDetails + file_preview_details FilePreviewDetails + file_rename_details FileRenameDetails + file_restore_details FileRestoreDetails + file_revert_details FileRevertDetails + file_rollback_changes_details FileRollbackChangesDetails + file_save_copy_reference_details FileSaveCopyReferenceDetails + folder_overview_description_changed_details FolderOverviewDescriptionChangedDetails + folder_overview_item_pinned_details FolderOverviewItemPinnedDetails + folder_overview_item_unpinned_details FolderOverviewItemUnpinnedDetails + object_label_added_details ObjectLabelAddedDetails + object_label_removed_details ObjectLabelRemovedDetails + object_label_updated_value_details ObjectLabelUpdatedValueDetails + organize_folder_with_tidy_details OrganizeFolderWithTidyDetails + replay_file_delete_details ReplayFileDeleteDetails + replay_file_downloaded_details ReplayFileDownloadedDetails + replay_team_project_created_details ReplayTeamProjectCreatedDetails + rewind_folder_details RewindFolderDetails + undo_naming_convention_details UndoNamingConventionDetails + undo_organize_folder_with_tidy_details UndoOrganizeFolderWithTidyDetails + user_tags_added_details UserTagsAddedDetails + user_tags_removed_details UserTagsRemovedDetails + email_ingest_receive_file_details EmailIngestReceiveFileDetails + file_request_auto_close_details FileRequestAutoCloseDetails + file_request_change_details FileRequestChangeDetails + file_request_close_details FileRequestCloseDetails + file_request_create_details FileRequestCreateDetails + file_request_delete_details FileRequestDeleteDetails + file_request_receive_file_details FileRequestReceiveFileDetails + group_add_external_id_details GroupAddExternalIdDetails + group_add_member_details GroupAddMemberDetails + group_change_external_id_details GroupChangeExternalIdDetails + group_change_management_type_details GroupChangeManagementTypeDetails + group_change_member_role_details GroupChangeMemberRoleDetails + group_create_details GroupCreateDetails + group_delete_details GroupDeleteDetails + group_description_updated_details GroupDescriptionUpdatedDetails + group_external_sharing_setting_override_changed_details GroupExternalSharingSettingOverrideChangedDetails + group_join_policy_updated_details GroupJoinPolicyUpdatedDetails + group_moved_details GroupMovedDetails + group_remove_external_id_details GroupRemoveExternalIdDetails + group_remove_member_details GroupRemoveMemberDetails + group_rename_details GroupRenameDetails + account_lock_or_unlocked_details AccountLockOrUnlockedDetails + emm_error_details EmmErrorDetails + guest_admin_signed_in_via_trusted_teams_details GuestAdminSignedInViaTrustedTeamsDetails + guest_admin_signed_out_via_trusted_teams_details GuestAdminSignedOutViaTrustedTeamsDetails + login_fail_details LoginFailDetails + login_success_details LoginSuccessDetails + logout_details LogoutDetails + reseller_support_session_end_details ResellerSupportSessionEndDetails + reseller_support_session_start_details ResellerSupportSessionStartDetails + sign_in_as_session_end_details SignInAsSessionEndDetails + sign_in_as_session_start_details SignInAsSessionStartDetails + sso_error_details SsoErrorDetails + addon_assigned_details AddonAssignedDetails + addon_removed_details AddonRemovedDetails + backup_admin_invitation_sent_details BackupAdminInvitationSentDetails + backup_invitation_opened_details BackupInvitationOpenedDetails + create_team_invite_link_details CreateTeamInviteLinkDetails + delete_team_invite_link_details DeleteTeamInviteLinkDetails + member_add_external_id_details MemberAddExternalIdDetails + member_add_name_details MemberAddNameDetails + member_change_admin_role_details MemberChangeAdminRoleDetails + member_change_email_details MemberChangeEmailDetails + member_change_external_id_details MemberChangeExternalIdDetails + member_change_membership_type_details MemberChangeMembershipTypeDetails + member_change_name_details MemberChangeNameDetails + member_change_reseller_role_details MemberChangeResellerRoleDetails + member_change_status_details MemberChangeStatusDetails + member_delete_manual_contacts_details MemberDeleteManualContactsDetails + member_delete_profile_photo_details MemberDeleteProfilePhotoDetails + member_permanently_delete_account_contents_details MemberPermanentlyDeleteAccountContentsDetails + member_remove_external_id_details MemberRemoveExternalIdDetails + member_set_profile_photo_details MemberSetProfilePhotoDetails + member_space_limits_add_custom_quota_details MemberSpaceLimitsAddCustomQuotaDetails + member_space_limits_change_custom_quota_details MemberSpaceLimitsChangeCustomQuotaDetails + member_space_limits_change_status_details MemberSpaceLimitsChangeStatusDetails + member_space_limits_remove_custom_quota_details MemberSpaceLimitsRemoveCustomQuotaDetails + member_suggest_details MemberSuggestDetails + member_transfer_account_contents_details MemberTransferAccountContentsDetails + pending_secondary_email_added_details PendingSecondaryEmailAddedDetails + product_assigned_to_member_details ProductAssignedToMemberDetails + product_removed_from_member_details ProductRemovedFromMemberDetails + secondary_email_deleted_details SecondaryEmailDeletedDetails + secondary_email_verified_details SecondaryEmailVerifiedDetails + secondary_mails_policy_changed_details SecondaryMailsPolicyChangedDetails + binder_add_page_details BinderAddPageDetails + binder_add_section_details BinderAddSectionDetails + binder_remove_page_details BinderRemovePageDetails + binder_remove_section_details BinderRemoveSectionDetails + binder_rename_page_details BinderRenamePageDetails + binder_rename_section_details BinderRenameSectionDetails + binder_reorder_page_details BinderReorderPageDetails + binder_reorder_section_details BinderReorderSectionDetails + paper_content_add_member_details PaperContentAddMemberDetails + paper_content_add_to_folder_details PaperContentAddToFolderDetails + paper_content_archive_details PaperContentArchiveDetails + paper_content_create_details PaperContentCreateDetails + paper_content_permanently_delete_details PaperContentPermanentlyDeleteDetails + paper_content_remove_from_folder_details PaperContentRemoveFromFolderDetails + paper_content_remove_member_details PaperContentRemoveMemberDetails + paper_content_rename_details PaperContentRenameDetails + paper_content_restore_details PaperContentRestoreDetails + paper_doc_add_comment_details PaperDocAddCommentDetails + paper_doc_change_member_role_details PaperDocChangeMemberRoleDetails + paper_doc_change_sharing_policy_details PaperDocChangeSharingPolicyDetails + paper_doc_change_subscription_details PaperDocChangeSubscriptionDetails + paper_doc_deleted_details PaperDocDeletedDetails + paper_doc_delete_comment_details PaperDocDeleteCommentDetails + paper_doc_download_details PaperDocDownloadDetails + paper_doc_edit_details PaperDocEditDetails + paper_doc_edit_comment_details PaperDocEditCommentDetails + paper_doc_followed_details PaperDocFollowedDetails + paper_doc_mention_details PaperDocMentionDetails + paper_doc_ownership_changed_details PaperDocOwnershipChangedDetails + paper_doc_request_access_details PaperDocRequestAccessDetails + paper_doc_resolve_comment_details PaperDocResolveCommentDetails + paper_doc_revert_details PaperDocRevertDetails + paper_doc_slack_share_details PaperDocSlackShareDetails + paper_doc_team_invite_details PaperDocTeamInviteDetails + paper_doc_trashed_details PaperDocTrashedDetails + paper_doc_unresolve_comment_details PaperDocUnresolveCommentDetails + paper_doc_untrashed_details PaperDocUntrashedDetails + paper_doc_view_details PaperDocViewDetails + paper_external_view_allow_details PaperExternalViewAllowDetails + paper_external_view_default_team_details PaperExternalViewDefaultTeamDetails + paper_external_view_forbid_details PaperExternalViewForbidDetails + paper_folder_change_subscription_details PaperFolderChangeSubscriptionDetails + paper_folder_deleted_details PaperFolderDeletedDetails + paper_folder_followed_details PaperFolderFollowedDetails + paper_folder_team_invite_details PaperFolderTeamInviteDetails + paper_published_link_change_permission_details PaperPublishedLinkChangePermissionDetails + paper_published_link_create_details PaperPublishedLinkCreateDetails + paper_published_link_disabled_details PaperPublishedLinkDisabledDetails + paper_published_link_view_details PaperPublishedLinkViewDetails + password_change_details PasswordChangeDetails + password_reset_details PasswordResetDetails + password_reset_all_details PasswordResetAllDetails + classification_create_report_details ClassificationCreateReportDetails + classification_create_report_fail_details ClassificationCreateReportFailDetails + emm_create_exceptions_report_details EmmCreateExceptionsReportDetails + emm_create_usage_report_details EmmCreateUsageReportDetails + export_members_report_details ExportMembersReportDetails + export_members_report_fail_details ExportMembersReportFailDetails + external_sharing_create_report_details ExternalSharingCreateReportDetails + external_sharing_report_failed_details ExternalSharingReportFailedDetails + member_access_details_create_report_details MemberAccessDetailsCreateReportDetails + member_access_details_create_report_failed_details MemberAccessDetailsCreateReportFailedDetails + no_expiration_link_gen_create_report_details NoExpirationLinkGenCreateReportDetails + no_expiration_link_gen_report_failed_details NoExpirationLinkGenReportFailedDetails + no_password_link_gen_create_report_details NoPasswordLinkGenCreateReportDetails + no_password_link_gen_report_failed_details NoPasswordLinkGenReportFailedDetails + no_password_link_view_create_report_details NoPasswordLinkViewCreateReportDetails + no_password_link_view_report_failed_details NoPasswordLinkViewReportFailedDetails + outdated_link_view_create_report_details OutdatedLinkViewCreateReportDetails + outdated_link_view_report_failed_details OutdatedLinkViewReportFailedDetails + paper_admin_export_start_details PaperAdminExportStartDetails + ransomware_alert_create_report_details RansomwareAlertCreateReportDetails + ransomware_alert_create_report_failed_details RansomwareAlertCreateReportFailedDetails + shared_folders_create_report_details SharedFoldersCreateReportDetails + shared_folders_create_report_failed_details SharedFoldersCreateReportFailedDetails + smart_sync_create_admin_privilege_report_details SmartSyncCreateAdminPrivilegeReportDetails + team_activity_create_report_details TeamActivityCreateReportDetails + team_activity_create_report_fail_details TeamActivityCreateReportFailDetails + team_folders_create_report_details TeamFoldersCreateReportDetails + team_folders_create_report_failed_details TeamFoldersCreateReportFailedDetails + team_storage_create_report_details TeamStorageCreateReportDetails + team_storage_create_report_failed_details TeamStorageCreateReportFailedDetails + collection_share_details CollectionShareDetails + file_transfers_file_add_details FileTransfersFileAddDetails + file_transfers_transfer_delete_details FileTransfersTransferDeleteDetails + file_transfers_transfer_download_details FileTransfersTransferDownloadDetails + file_transfers_transfer_send_details FileTransfersTransferSendDetails + file_transfers_transfer_view_details FileTransfersTransferViewDetails + note_acl_invite_only_details NoteAclInviteOnlyDetails + note_acl_link_details NoteAclLinkDetails + note_acl_team_link_details NoteAclTeamLinkDetails + note_shared_details NoteSharedDetails + note_share_receive_details NoteShareReceiveDetails + open_note_shared_details OpenNoteSharedDetails + replay_file_shared_link_created_details ReplayFileSharedLinkCreatedDetails + replay_file_shared_link_modified_details ReplayFileSharedLinkModifiedDetails + replay_project_team_add_details ReplayProjectTeamAddDetails + replay_project_team_delete_details ReplayProjectTeamDeleteDetails + send_and_track_file_added_details SendAndTrackFileAddedDetails + send_and_track_file_renamed_details SendAndTrackFileRenamedDetails + send_and_track_file_updated_details SendAndTrackFileUpdatedDetails + send_and_track_link_created_details SendAndTrackLinkCreatedDetails + send_and_track_link_deleted_details SendAndTrackLinkDeletedDetails + send_and_track_link_updated_details SendAndTrackLinkUpdatedDetails + send_and_track_link_viewed_details SendAndTrackLinkViewedDetails + send_and_track_removed_file_and_associated_links_details SendAndTrackRemovedFileAndAssociatedLinksDetails + sf_add_group_details SfAddGroupDetails + sf_allow_non_members_to_view_shared_links_details SfAllowNonMembersToViewSharedLinksDetails + sf_external_invite_warn_details SfExternalInviteWarnDetails + sf_fb_invite_details SfFbInviteDetails + sf_fb_invite_change_role_details SfFbInviteChangeRoleDetails + sf_fb_uninvite_details SfFbUninviteDetails + sf_invite_group_details SfInviteGroupDetails + sf_team_grant_access_details SfTeamGrantAccessDetails + sf_team_invite_details SfTeamInviteDetails + sf_team_invite_change_role_details SfTeamInviteChangeRoleDetails + sf_team_join_details SfTeamJoinDetails + sf_team_join_from_oob_link_details SfTeamJoinFromOobLinkDetails + sf_team_uninvite_details SfTeamUninviteDetails + shared_content_add_invitees_details SharedContentAddInviteesDetails + shared_content_add_link_expiry_details SharedContentAddLinkExpiryDetails + shared_content_add_link_password_details SharedContentAddLinkPasswordDetails + shared_content_add_member_details SharedContentAddMemberDetails + shared_content_change_downloads_policy_details SharedContentChangeDownloadsPolicyDetails + shared_content_change_invitee_role_details SharedContentChangeInviteeRoleDetails + shared_content_change_link_audience_details SharedContentChangeLinkAudienceDetails + shared_content_change_link_expiry_details SharedContentChangeLinkExpiryDetails + shared_content_change_link_password_details SharedContentChangeLinkPasswordDetails + shared_content_change_member_role_details SharedContentChangeMemberRoleDetails + shared_content_change_viewer_info_policy_details SharedContentChangeViewerInfoPolicyDetails + shared_content_claim_invitation_details SharedContentClaimInvitationDetails + shared_content_copy_details SharedContentCopyDetails + shared_content_download_details SharedContentDownloadDetails + shared_content_relinquish_membership_details SharedContentRelinquishMembershipDetails + shared_content_remove_invitees_details SharedContentRemoveInviteesDetails + shared_content_remove_link_expiry_details SharedContentRemoveLinkExpiryDetails + shared_content_remove_link_password_details SharedContentRemoveLinkPasswordDetails + shared_content_remove_member_details SharedContentRemoveMemberDetails + shared_content_request_access_details SharedContentRequestAccessDetails + shared_content_restore_invitees_details SharedContentRestoreInviteesDetails + shared_content_restore_member_details SharedContentRestoreMemberDetails + shared_content_unshare_details SharedContentUnshareDetails + shared_content_view_details SharedContentViewDetails + shared_folder_change_link_policy_details SharedFolderChangeLinkPolicyDetails + shared_folder_change_members_inheritance_policy_details SharedFolderChangeMembersInheritancePolicyDetails + shared_folder_change_members_management_policy_details SharedFolderChangeMembersManagementPolicyDetails + shared_folder_change_members_policy_details SharedFolderChangeMembersPolicyDetails + shared_folder_create_details SharedFolderCreateDetails + shared_folder_decline_invitation_details SharedFolderDeclineInvitationDetails + shared_folder_mount_details SharedFolderMountDetails + shared_folder_nest_details SharedFolderNestDetails + shared_folder_transfer_ownership_details SharedFolderTransferOwnershipDetails + shared_folder_unmount_details SharedFolderUnmountDetails + shared_link_add_expiry_details SharedLinkAddExpiryDetails + shared_link_change_expiry_details SharedLinkChangeExpiryDetails + shared_link_change_visibility_details SharedLinkChangeVisibilityDetails + shared_link_copy_details SharedLinkCopyDetails + shared_link_create_details SharedLinkCreateDetails + shared_link_disable_details SharedLinkDisableDetails + shared_link_download_details SharedLinkDownloadDetails + shared_link_remove_expiry_details SharedLinkRemoveExpiryDetails + shared_link_remove_visitor_details SharedLinkRemoveVisitorDetails + shared_link_settings_add_expiration_details SharedLinkSettingsAddExpirationDetails + shared_link_settings_add_password_details SharedLinkSettingsAddPasswordDetails + shared_link_settings_allow_download_disabled_details SharedLinkSettingsAllowDownloadDisabledDetails + shared_link_settings_allow_download_enabled_details SharedLinkSettingsAllowDownloadEnabledDetails + shared_link_settings_change_audience_details SharedLinkSettingsChangeAudienceDetails + shared_link_settings_change_expiration_details SharedLinkSettingsChangeExpirationDetails + shared_link_settings_change_password_details SharedLinkSettingsChangePasswordDetails + shared_link_settings_remove_expiration_details SharedLinkSettingsRemoveExpirationDetails + shared_link_settings_remove_password_details SharedLinkSettingsRemovePasswordDetails + shared_link_share_details SharedLinkShareDetails + shared_link_view_details SharedLinkViewDetails + shared_note_opened_details SharedNoteOpenedDetails + shmodel_disable_downloads_details ShmodelDisableDownloadsDetails + shmodel_enable_downloads_details ShmodelEnableDownloadsDetails + shmodel_group_share_details ShmodelGroupShareDetails + showcase_access_granted_details ShowcaseAccessGrantedDetails + showcase_add_member_details ShowcaseAddMemberDetails + showcase_archived_details ShowcaseArchivedDetails + showcase_created_details ShowcaseCreatedDetails + showcase_delete_comment_details ShowcaseDeleteCommentDetails + showcase_edited_details ShowcaseEditedDetails + showcase_edit_comment_details ShowcaseEditCommentDetails + showcase_file_added_details ShowcaseFileAddedDetails + showcase_file_download_details ShowcaseFileDownloadDetails + showcase_file_removed_details ShowcaseFileRemovedDetails + showcase_file_view_details ShowcaseFileViewDetails + showcase_permanently_deleted_details ShowcasePermanentlyDeletedDetails + showcase_post_comment_details ShowcasePostCommentDetails + showcase_remove_member_details ShowcaseRemoveMemberDetails + showcase_renamed_details ShowcaseRenamedDetails + showcase_request_access_details ShowcaseRequestAccessDetails + showcase_resolve_comment_details ShowcaseResolveCommentDetails + showcase_restored_details ShowcaseRestoredDetails + showcase_trashed_details ShowcaseTrashedDetails + showcase_trashed_deprecated_details ShowcaseTrashedDeprecatedDetails + showcase_unresolve_comment_details ShowcaseUnresolveCommentDetails + showcase_untrashed_details ShowcaseUntrashedDetails + showcase_untrashed_deprecated_details ShowcaseUntrashedDeprecatedDetails + showcase_view_details ShowcaseViewDetails + sign_signature_request_canceled_details SignSignatureRequestCanceledDetails + sign_signature_request_completed_details SignSignatureRequestCompletedDetails + sign_signature_request_declined_details SignSignatureRequestDeclinedDetails + sign_signature_request_opened_details SignSignatureRequestOpenedDetails + sign_signature_request_reminder_sent_details SignSignatureRequestReminderSentDetails + sign_signature_request_sent_details SignSignatureRequestSentDetails + sign_template_created_details SignTemplateCreatedDetails + sign_template_shared_details SignTemplateSharedDetails + risc_security_event_details RiscSecurityEventDetails + sso_add_cert_details SsoAddCertDetails + sso_add_login_url_details SsoAddLoginUrlDetails + sso_add_logout_url_details SsoAddLogoutUrlDetails + sso_change_cert_details SsoChangeCertDetails + sso_change_login_url_details SsoChangeLoginUrlDetails + sso_change_logout_url_details SsoChangeLogoutUrlDetails + sso_change_saml_identity_mode_details SsoChangeSamlIdentityModeDetails + sso_remove_cert_details SsoRemoveCertDetails + sso_remove_login_url_details SsoRemoveLoginUrlDetails + sso_remove_logout_url_details SsoRemoveLogoutUrlDetails + team_folder_change_status_details TeamFolderChangeStatusDetails + team_folder_create_details TeamFolderCreateDetails + team_folder_downgrade_details TeamFolderDowngradeDetails + team_folder_permanently_delete_details TeamFolderPermanentlyDeleteDetails + team_folder_rename_details TeamFolderRenameDetails + team_selective_sync_settings_changed_details TeamSelectiveSyncSettingsChangedDetails + account_capture_change_policy_details AccountCaptureChangePolicyDetails + admin_email_reminders_changed_details AdminEmailRemindersChangedDetails + ai_third_party_sharing_dropbox_base_policy_changed_details AiThirdPartySharingDropboxBasePolicyChangedDetails + allow_download_disabled_details AllowDownloadDisabledDetails + allow_download_enabled_details AllowDownloadEnabledDetails + apple_login_change_policy_details AppleLoginChangePolicyDetails + app_permissions_changed_details AppPermissionsChangedDetails + camera_uploads_policy_changed_details CameraUploadsPolicyChangedDetails + capture_team_space_policy_changed_details CaptureTeamSpacePolicyChangedDetails + capture_transcript_policy_changed_details CaptureTranscriptPolicyChangedDetails + classification_change_policy_details ClassificationChangePolicyDetails + computer_backup_policy_changed_details ComputerBackupPolicyChangedDetails + content_administration_policy_changed_details ContentAdministrationPolicyChangedDetails + content_deletion_protection_change_policy_details ContentDeletionProtectionChangePolicyDetails + dash_external_sharing_policy_changed_details DashExternalSharingPolicyChangedDetails + data_placement_restriction_change_policy_details DataPlacementRestrictionChangePolicyDetails + data_placement_restriction_satisfy_policy_details DataPlacementRestrictionSatisfyPolicyDetails + device_approvals_add_exception_details DeviceApprovalsAddExceptionDetails + device_approvals_change_desktop_policy_details DeviceApprovalsChangeDesktopPolicyDetails + device_approvals_change_mobile_policy_details DeviceApprovalsChangeMobilePolicyDetails + device_approvals_change_overage_action_details DeviceApprovalsChangeOverageActionDetails + device_approvals_change_unlink_action_details DeviceApprovalsChangeUnlinkActionDetails + device_approvals_remove_exception_details DeviceApprovalsRemoveExceptionDetails + directory_restrictions_add_members_details DirectoryRestrictionsAddMembersDetails + directory_restrictions_remove_members_details DirectoryRestrictionsRemoveMembersDetails + dropbox_passwords_policy_changed_details DropboxPasswordsPolicyChangedDetails + email_ingest_policy_changed_details EmailIngestPolicyChangedDetails + emm_add_exception_details EmmAddExceptionDetails + emm_change_policy_details EmmChangePolicyDetails + emm_remove_exception_details EmmRemoveExceptionDetails + extended_version_history_change_policy_details ExtendedVersionHistoryChangePolicyDetails + external_drive_backup_policy_changed_details ExternalDriveBackupPolicyChangedDetails + file_comments_change_policy_details FileCommentsChangePolicyDetails + file_locking_policy_changed_details FileLockingPolicyChangedDetails + file_provider_migration_policy_changed_details FileProviderMigrationPolicyChangedDetails + file_requests_change_policy_details FileRequestsChangePolicyDetails + file_requests_emails_enabled_details FileRequestsEmailsEnabledDetails + file_requests_emails_restricted_to_team_only_details FileRequestsEmailsRestrictedToTeamOnlyDetails + file_transfers_policy_changed_details FileTransfersPolicyChangedDetails + flexible_file_names_policy_changed_details FlexibleFileNamesPolicyChangedDetails + folder_link_restriction_policy_changed_details FolderLinkRestrictionPolicyChangedDetails + google_sso_change_policy_details GoogleSsoChangePolicyDetails + group_user_management_change_policy_details GroupUserManagementChangePolicyDetails + integration_policy_changed_details IntegrationPolicyChangedDetails + invite_acceptance_email_policy_changed_details InviteAcceptanceEmailPolicyChangedDetails + member_requests_change_policy_details MemberRequestsChangePolicyDetails + member_send_invite_policy_changed_details MemberSendInvitePolicyChangedDetails + member_space_limits_add_exception_details MemberSpaceLimitsAddExceptionDetails + member_space_limits_change_caps_type_policy_details MemberSpaceLimitsChangeCapsTypePolicyDetails + member_space_limits_change_policy_details MemberSpaceLimitsChangePolicyDetails + member_space_limits_remove_exception_details MemberSpaceLimitsRemoveExceptionDetails + member_suggestions_change_policy_details MemberSuggestionsChangePolicyDetails + microsoft_login_change_policy_details MicrosoftLoginChangePolicyDetails + microsoft_office_addin_change_policy_details MicrosoftOfficeAddinChangePolicyDetails + network_control_change_policy_details NetworkControlChangePolicyDetails + paper_change_deployment_policy_details PaperChangeDeploymentPolicyDetails + paper_change_member_link_policy_details PaperChangeMemberLinkPolicyDetails + paper_change_member_policy_details PaperChangeMemberPolicyDetails + paper_change_policy_details PaperChangePolicyDetails + paper_default_folder_policy_changed_details PaperDefaultFolderPolicyChangedDetails + paper_desktop_policy_changed_details PaperDesktopPolicyChangedDetails + paper_enabled_users_group_addition_details PaperEnabledUsersGroupAdditionDetails + paper_enabled_users_group_removal_details PaperEnabledUsersGroupRemovalDetails + passkey_login_policy_changed_details PasskeyLoginPolicyChangedDetails + password_strength_requirements_change_policy_details PasswordStrengthRequirementsChangePolicyDetails + permanent_delete_change_policy_details PermanentDeleteChangePolicyDetails + previews_ai_policy_changed_details PreviewsAiPolicyChangedDetails + replay_adding_people_policy_changed_details ReplayAddingPeoplePolicyChangedDetails + replay_sharing_policy_changed_details ReplaySharingPolicyChangedDetails + reseller_support_change_policy_details ResellerSupportChangePolicyDetails + rewind_policy_changed_details RewindPolicyChangedDetails + send_and_track_policy_changed_details SendAndTrackPolicyChangedDetails + send_external_sharing_policy_changed_details SendExternalSharingPolicyChangedDetails + send_for_signature_policy_changed_details SendForSignaturePolicyChangedDetails + shared_link_default_permissions_policy_changed_details SharedLinkDefaultPermissionsPolicyChangedDetails + sharing_change_folder_join_policy_details SharingChangeFolderJoinPolicyDetails + sharing_change_link_allow_change_expiration_policy_details SharingChangeLinkAllowChangeExpirationPolicyDetails + sharing_change_link_default_expiration_policy_details SharingChangeLinkDefaultExpirationPolicyDetails + sharing_change_link_enforce_password_policy_details SharingChangeLinkEnforcePasswordPolicyDetails + sharing_change_link_policy_details SharingChangeLinkPolicyDetails + sharing_change_member_policy_details SharingChangeMemberPolicyDetails + showcase_change_download_policy_details ShowcaseChangeDownloadPolicyDetails + showcase_change_enabled_policy_details ShowcaseChangeEnabledPolicyDetails + showcase_change_external_sharing_policy_details ShowcaseChangeExternalSharingPolicyDetails + sign_external_sharing_policy_changed_details SignExternalSharingPolicyChangedDetails + sign_template_creation_permission_changed_details SignTemplateCreationPermissionChangedDetails + smarter_smart_sync_policy_changed_details SmarterSmartSyncPolicyChangedDetails + smart_sync_change_policy_details SmartSyncChangePolicyDetails + smart_sync_not_opt_out_details SmartSyncNotOptOutDetails + smart_sync_opt_out_details SmartSyncOptOutDetails + sso_change_policy_details SsoChangePolicyDetails + stack_cross_team_access_policy_changed_details StackCrossTeamAccessPolicyChangedDetails + team_branding_policy_changed_details TeamBrandingPolicyChangedDetails + team_extensions_policy_changed_details TeamExtensionsPolicyChangedDetails + team_member_storage_request_policy_changed_details TeamMemberStorageRequestPolicyChangedDetails + team_selective_sync_policy_changed_details TeamSelectiveSyncPolicyChangedDetails + team_sharing_whitelist_subjects_changed_details TeamSharingWhitelistSubjectsChangedDetails + tfa_add_exception_details TfaAddExceptionDetails + tfa_change_policy_details TfaChangePolicyDetails + tfa_remove_exception_details TfaRemoveExceptionDetails + top_level_content_policy_changed_details TopLevelContentPolicyChangedDetails + two_account_change_policy_details TwoAccountChangePolicyDetails + viewer_info_policy_changed_details ViewerInfoPolicyChangedDetails + watermarking_policy_changed_details WatermarkingPolicyChangedDetails + web_sessions_change_active_session_limit_details WebSessionsChangeActiveSessionLimitDetails + web_sessions_change_fixed_length_policy_details WebSessionsChangeFixedLengthPolicyDetails + web_sessions_change_idle_length_policy_details WebSessionsChangeIdleLengthPolicyDetails + data_residency_migration_request_successful_details DataResidencyMigrationRequestSuccessfulDetails + data_residency_migration_request_unsuccessful_details DataResidencyMigrationRequestUnsuccessfulDetails + team_merge_from_details TeamMergeFromDetails + team_merge_to_details TeamMergeToDetails + team_profile_add_background_details TeamProfileAddBackgroundDetails + team_profile_add_logo_details TeamProfileAddLogoDetails + team_profile_change_background_details TeamProfileChangeBackgroundDetails + team_profile_change_default_language_details TeamProfileChangeDefaultLanguageDetails + team_profile_change_logo_details TeamProfileChangeLogoDetails + team_profile_change_name_details TeamProfileChangeNameDetails + team_profile_remove_background_details TeamProfileRemoveBackgroundDetails + team_profile_remove_logo_details TeamProfileRemoveLogoDetails + passkey_add_details PasskeyAddDetails + passkey_remove_details PasskeyRemoveDetails + tfa_add_backup_phone_details TfaAddBackupPhoneDetails + tfa_add_security_key_details TfaAddSecurityKeyDetails + tfa_change_backup_phone_details TfaChangeBackupPhoneDetails + tfa_change_status_details TfaChangeStatusDetails + tfa_remove_backup_phone_details TfaRemoveBackupPhoneDetails + tfa_remove_security_key_details TfaRemoveSecurityKeyDetails + tfa_reset_details TfaResetDetails + changed_enterprise_admin_role_details ChangedEnterpriseAdminRoleDetails + changed_enterprise_connected_team_status_details ChangedEnterpriseConnectedTeamStatusDetails + ended_enterprise_admin_session_details EndedEnterpriseAdminSessionDetails + ended_enterprise_admin_session_deprecated_details EndedEnterpriseAdminSessionDeprecatedDetails + enterprise_settings_locking_details EnterpriseSettingsLockingDetails + guest_admin_change_status_details GuestAdminChangeStatusDetails + started_enterprise_admin_session_details StartedEnterpriseAdminSessionDetails + team_merge_request_accepted_details TeamMergeRequestAcceptedDetails + team_merge_request_accepted_shown_to_primary_team_details TeamMergeRequestAcceptedShownToPrimaryTeamDetails + team_merge_request_accepted_shown_to_secondary_team_details TeamMergeRequestAcceptedShownToSecondaryTeamDetails + team_merge_request_auto_canceled_details TeamMergeRequestAutoCanceledDetails + team_merge_request_canceled_details TeamMergeRequestCanceledDetails + team_merge_request_canceled_shown_to_primary_team_details TeamMergeRequestCanceledShownToPrimaryTeamDetails + team_merge_request_canceled_shown_to_secondary_team_details TeamMergeRequestCanceledShownToSecondaryTeamDetails + team_merge_request_expired_details TeamMergeRequestExpiredDetails + team_merge_request_expired_shown_to_primary_team_details TeamMergeRequestExpiredShownToPrimaryTeamDetails + team_merge_request_expired_shown_to_secondary_team_details TeamMergeRequestExpiredShownToSecondaryTeamDetails + team_merge_request_rejected_shown_to_primary_team_details TeamMergeRequestRejectedShownToPrimaryTeamDetails + team_merge_request_rejected_shown_to_secondary_team_details TeamMergeRequestRejectedShownToSecondaryTeamDetails + team_merge_request_reminder_details TeamMergeRequestReminderDetails + team_merge_request_reminder_shown_to_primary_team_details TeamMergeRequestReminderShownToPrimaryTeamDetails + team_merge_request_reminder_shown_to_secondary_team_details TeamMergeRequestReminderShownToSecondaryTeamDetails + team_merge_request_revoked_details TeamMergeRequestRevokedDetails + team_merge_request_sent_shown_to_primary_team_details TeamMergeRequestSentShownToPrimaryTeamDetails + team_merge_request_sent_shown_to_secondary_team_details TeamMergeRequestSentShownToSecondaryTeamDetails + missing_details MissingDetails + "Hints that this event was returned with missing details due to an internal error." + + example default + shared_content_download_details = default + +struct AdminAlertingAlertStateChangedType + description String + + example default + description = "(admin_alerting) Changed an alert state" + +struct AdminAlertingChangedAlertConfigType + description String + + example default + description = "(admin_alerting) Changed an alert setting" + +struct AdminAlertingTriggeredAlertType + description String + + example default + description = "(admin_alerting) Triggered security alert" + +struct RansomwareRestoreProcessCompletedType + description String + + example default + description = "(admin_alerting) Completed ransomware restore process" + +struct RansomwareRestoreProcessStartedType + description String + + example default + description = "(admin_alerting) Started ransomware restore process" + +struct AppBlockedByPermissionsType + description String + + example default + description = "(apps) Failed to connect app for member" + +struct AppLinkTeamType + description String + + example default + description = "(apps) Linked app for team" + +struct AppLinkUserType + description String + + example default + description = "(apps) Linked app for member" + +struct AppUnlinkTeamType + description String + + example default + description = "(apps) Unlinked app for team" + +struct AppUnlinkUserType + description String + + example default + description = "(apps) Unlinked app for member" + +struct IntegrationConnectedType + description String + + example default + description = "(apps) Connected integration for member" + +struct IntegrationDisconnectedType + description String + + example default + description = "(apps) Disconnected integration for member" + +struct FileAddCommentType + description String + + example default + description = "(comments) Added file comment" + +struct FileChangeCommentSubscriptionType + description String + + example default + description = "(comments) Subscribed to or unsubscribed from comment notifications for file" + +struct FileDeleteCommentType + description String + + example default + description = "(comments) Deleted file comment" + +struct FileEditCommentType + description String + + example default + description = "(comments) Edited file comment" + +struct FileLikeCommentType + description String + + example default + description = "(comments) Liked file comment (deprecated, no longer logged)" + +struct FileResolveCommentType + description String + + example default + description = "(comments) Resolved file comment" + +struct FileUnlikeCommentType + description String + + example default + description = "(comments) Unliked file comment (deprecated, no longer logged)" + +struct FileUnresolveCommentType + description String + + example default + description = "(comments) Unresolved file comment" + +struct DashAddedCommentToStackType + description String + + example default + description = "(dash) Added a comment to a stack" + +struct DashAddedConnectorType + description String + + example default + description = "(dash) Connected to a user connector" + +struct DashAddedLinkToStackType + description String + + example default + description = "(dash) Added a link to a stack" + +struct DashAddedTeamEmailDomainAllowlistType + description String + + example default + description = "(dash) Admin added an email domain to the team allowlist" + +struct DashAdminAddedOrgWideConnectorType + description String + + example default + description = "(dash) Admin added an admin connector" + +struct DashAdminDisabledConnectorType + description String + + example default + description = "(dash) Admin disabled a user connector" + +struct DashAdminEnabledConnectorType + description String + + example default + description = "(dash) Admin enabled a user connector" + +struct DashAdminRemovedOrgWideConnectorType + description String + + example default + description = "(dash) Admin removed an admin connector" + +struct DashArchivedStackType + description String + + example default + description = "(dash) Archived a stack" + +struct DashChangedAudienceOfSharedLinkToStackType + description String + + example default + description = "(dash) Changed the audience of a shared link to a stack" + +struct DashClonedStackType + description String + + example default + description = "(dash) Cloned stack" + +struct DashConnectorToolsCallType + description String + + example default + description = "(dash) Called a tool on a connector" + +struct DashCreatedStackType + description String + + example default + description = "(dash) Created a stack" + +struct DashDeletedCommentFromStackType + description String + + example default + description = "(dash) Deleted a comment from a stack" + +struct DashDeletedStackType + description String + + example default + description = "(dash) Deleted a stack" + +struct DashEditedCommentInStackType + description String + + example default + description = "(dash) Edited a comment in a stack" + +struct DashExternalUserOpenedStackType + description String + + example default + description = "(dash) External user opened a stack" + +struct DashFirstLaunchedDesktopType + description String + + example default + description = "(dash) Opened the desktop app for the first time" + +struct DashFirstLaunchedExtensionType + description String + + example default + description = "(dash) Opened the extension for the first time" + +struct DashFirstLaunchedWebStartPageType + description String + + example default + description = "(dash) Opened the web Start Page for the first time" + +struct DashOpenedSharedLinkToStackType + description String + + example default + description = "(dash) Checked access permissions to a stack" + +struct DashOpenedStackType + description String + + example default + description = "(dash) Opened a stack" + +struct DashPreviewOptOutStatusChangedType + description String + + example default + description = "(dash) Changed the preview opt-out status" + +struct DashRemovedConnectorType + description String + + example default + description = "(dash) Disconnected a user connector" + +struct DashRemovedLinkFromStackType + description String + + example default + description = "(dash) Removed a link from a stack" + +struct DashRemovedSharedLinkToStackType + description String + + example default + description = "(dash) Removed a shared link to a stack" + +struct DashRemovedTeamEmailDomainAllowlistType + description String + + example default + description = "(dash) Admin removed an email domain from the team allowlist" + +struct DashRenamedStackType + description String + + example default + description = "(dash) Renamed a stack" + +struct DashSharedLinkToStackType + description String + + example default + description = "(dash) Shared a link to a stack" + +struct DashUnarchivedStackType + description String + + example default + description = "(dash) Unarchived a stack" + +struct DashViewedCompanyStackType + description String + + example default + description = "(dash) Member viewed a company stack" + +struct DashViewedExternalAiActivityReportType + description String + + example default + description = "(dash) Admin viewed the external AI activity report" + +struct GovernancePolicyAddFoldersType + description String + + example default + description = "(data_governance) Added folders to policy" + +struct GovernancePolicyAddFolderFailedType + description String + + example default + description = "(data_governance) Couldn't add a folder to a policy" + +struct GovernancePolicyContentDisposedType + description String + + example default + description = "(data_governance) Content disposed" + +struct GovernancePolicyCreateType + description String + + example default + description = "(data_governance) Activated a new policy" + +struct GovernancePolicyDeleteType + description String + + example default + description = "(data_governance) Deleted a policy" + +struct GovernancePolicyEditDetailsType + description String + + example default + description = "(data_governance) Edited policy" + +struct GovernancePolicyEditDurationType + description String + + example default + description = "(data_governance) Changed policy duration" + +struct GovernancePolicyExportCreatedType + description String + + example default + description = "(data_governance) Created a policy download" + +struct GovernancePolicyExportRemovedType + description String + + example default + description = "(data_governance) Removed a policy download" + +struct GovernancePolicyRemoveFoldersType + description String + + example default + description = "(data_governance) Removed folders from policy" + +struct GovernancePolicyReportCreatedType + description String + + example default + description = "(data_governance) Created a summary report for a policy" + +struct GovernancePolicyZipPartDownloadedType + description String + + example default + description = "(data_governance) Downloaded content from a policy" + +struct LegalHoldsActivateAHoldType + description String + + example default + description = "(data_governance) Activated a hold" + +struct LegalHoldsAddMembersType + description String + + example default + description = "(data_governance) Added members to a hold" + +struct LegalHoldsChangeHoldDetailsType + description String + + example default + description = "(data_governance) Edited details for a hold" + +struct LegalHoldsChangeHoldNameType + description String + + example default + description = "(data_governance) Renamed a hold" + +struct LegalHoldsExportAHoldType + description String + + example default + description = "(data_governance) Exported hold" + +struct LegalHoldsExportCancelledType + description String + + example default + description = "(data_governance) Canceled export for a hold" + +struct LegalHoldsExportDownloadedType + description String + + example default + description = "(data_governance) Downloaded export for a hold" + +struct LegalHoldsExportRemovedType + description String + + example default + description = "(data_governance) Removed export for a hold" + +struct LegalHoldsReleaseAHoldType + description String + + example default + description = "(data_governance) Released a hold" + +struct LegalHoldsRemoveMembersType + description String + + example default + description = "(data_governance) Removed members from a hold" + +struct LegalHoldsReportAHoldType + description String + + example default + description = "(data_governance) Created a summary report for a hold" + +struct DeviceChangeIpDesktopType + description String + + example default + description = "(devices) Changed IP address associated with active desktop session" + +struct DeviceChangeIpMobileType + description String + + example default + description = "(devices) Changed IP address associated with active mobile session" + +struct DeviceChangeIpWebType + description String + + example default + description = "(devices) Changed IP address associated with active web session" + +struct DeviceDeleteOnUnlinkFailType + description String + + example default + description = "(devices) Failed to delete all files from unlinked device" + +struct DeviceDeleteOnUnlinkSuccessType + description String + + example default + description = "(devices) Deleted all files from unlinked device" + +struct DeviceLinkFailType + description String + + example default + description = "(devices) Failed to link device" + +struct DeviceLinkSuccessType + description String + + example default + description = "(devices) Linked device" + +struct DeviceManagementDisabledType + description String + + example default + description = "(devices) Disabled device management (deprecated, no longer logged)" + +struct DeviceManagementEnabledType + description String + + example default + description = "(devices) Enabled device management (deprecated, no longer logged)" + +struct DeviceSyncBackupStatusChangedType + description String + + example default + description = "(devices) Enabled/disabled backup for computer" + +struct DeviceUnlinkType + description String + + example default + description = "(devices) Disconnected device" + +struct DropboxPasswordsExportedType + description String + + example default + description = "(devices) Exported passwords" + +struct DropboxPasswordsNewDeviceEnrolledType + description String + + example default + description = "(devices) Enrolled new Dropbox Passwords device" + +struct EmmRefreshAuthTokenType + description String + + example default + description = "(devices) Refreshed auth token used for setting up EMM" + +struct ExternalDriveBackupEligibilityStatusCheckedType + description String + + example default + description = "(devices) Checked external drive backup eligibility status" + +struct ExternalDriveBackupStatusChangedType + description String + + example default + description = "(devices) Modified external drive backup" + +struct AccountCaptureChangeAvailabilityType + description String + + example default + description = "(domains) Granted/revoked option to enable account capture on team domains" + +struct AccountCaptureMigrateAccountType + description String + + example default + description = "(domains) Account-captured user migrated account to team" + +struct AccountCaptureNotificationEmailsSentType + description String + + example default + description = "(domains) Sent account capture email to all unmanaged members" + +struct AccountCaptureRelinquishAccountType + description String + + example default + description = "(domains) Account-captured user changed account email to personal email" + +struct DisabledDomainInvitesType + description String + + example default + description = "(domains) Disabled domain invites (deprecated, no longer logged)" + +struct DomainInvitesApproveRequestToJoinTeamType + description String + + example default + description = "(domains) Approved user's request to join team" + +struct DomainInvitesDeclineRequestToJoinTeamType + description String + + example default + description = "(domains) Declined user's request to join team" + +struct DomainInvitesEmailExistingUsersType + description String + + example default + description = "(domains) Sent domain invites to existing domain accounts (deprecated, no longer logged)" + +struct DomainInvitesRequestToJoinTeamType + description String + + example default + description = "(domains) Requested to join team" + +struct DomainInvitesSetInviteNewUserPrefToNoType + description String + + example default + description = "(domains) Disabled \"Automatically invite new users\" (deprecated, no longer logged)" + +struct DomainInvitesSetInviteNewUserPrefToYesType + description String + + example default + description = "(domains) Enabled \"Automatically invite new users\" (deprecated, no longer logged)" + +struct DomainVerificationAddDomainFailType + description String + + example default + description = "(domains) Failed to verify team domain" + +struct DomainVerificationAddDomainSuccessType + description String + + example default + description = "(domains) Verified team domain" + +struct DomainVerificationRemoveDomainType + description String + + example default + description = "(domains) Removed domain from list of verified team domains" + +struct EnabledDomainInvitesType + description String + + example default + description = "(domains) Enabled domain invites (deprecated, no longer logged)" + +struct EncryptedFolderCancelTeamKeyRotationType + description String + + example default + description = "(encryption) Canceled team key rotation" + +struct EncryptedFolderEnrollBackupKeyType + description String + + example default + description = "(encryption) Added recovery key" + +struct EncryptedFolderEnrollClientType + description String + + example default + description = "(encryption) Enrolled device" + +struct EncryptedFolderEnrollTeamType + description String + + example default + description = "(encryption) Activated team folder encryption" + +struct EncryptedFolderFinishTeamUnenrollmentType + description String + + example default + description = "(encryption) Deactivated team folder encryption" + +struct EncryptedFolderInitTeamKeyRotationType + description String + + example default + description = "(encryption) Initiated team key rotation" + +struct EncryptedFolderInitTeamUnenrollmentType + description String + + example default + description = "(encryption) Initiated deactivation of team folder encryption" + +struct EncryptedFolderRemoveBackupKeyType + description String + + example default + description = "(encryption) Removed recovery key" + +struct EncryptedFolderRotateTeamKeyType + description String + + example default + description = "(encryption) Rotated team key" + +struct EncryptedFolderUnenrollClientType + description String + + example default + description = "(encryption) Unenrolled device" + +struct TeamEncryptionKeyActivateKeyType + description String + + example default + description = "(encryption) Activated team encryption key" + +struct TeamEncryptionKeyCancelKeyDeletionType + description String + + example default + description = "(encryption) Canceled team encryption key deletion" + +struct TeamEncryptionKeyCreateKeyType + description String + + example default + description = "(encryption) Created team encryption key" + +struct TeamEncryptionKeyDeactivateKeyType + description String + + example default + description = "(encryption) Deactivated team encryption key" + +struct TeamEncryptionKeyDeleteKeyType + description String + + example default + description = "(encryption) Deleted team encryption key" + +struct TeamEncryptionKeyDisableKeyType + description String + + example default + description = "(encryption) Disabled team encryption key" + +struct TeamEncryptionKeyEnableKeyType + description String + + example default + description = "(encryption) Enabled team encryption key" + +struct TeamEncryptionKeyRotateKeyType + description String + + example default + description = "(encryption) Rotated team encryption key (deprecated, no longer logged)" + +struct TeamEncryptionKeyScheduleKeyDeletionType + description String + + example default + description = "(encryption) Scheduled encryption key deletion" + +struct ApplyNamingConventionType + description String + + example default + description = "(file_operations) Applied naming convention" + +struct CreateFolderType + description String + + example default + description = "(file_operations) Created folders (deprecated, no longer logged)" + +struct FileAddType + description String + + example default + description = "(file_operations) Added files and/or folders" + +struct FileAddFromAutomationType + description String + + example default + description = "(file_operations) Added files and/or folders from automation" + +struct FileCopyType + description String + + example default + description = "(file_operations) Copied files and/or folders" + +struct FileDeleteType + description String + + example default + description = "(file_operations) Deleted files and/or folders" + +struct FileDownloadType + description String + + example default + description = "(file_operations) Downloaded files and/or folders" + +struct FileEditType + description String + + example default + description = "(file_operations) Edited files" + +struct FileGetCopyReferenceType + description String + + example default + description = "(file_operations) Created copy reference to file/folder" + +struct FileLockingLockStatusChangedType + description String + + example default + description = "(file_operations) Locked/unlocked editing for a file" + +struct FileMoveType + description String + + example default + description = "(file_operations) Moved files and/or folders" + +struct FilePermanentlyDeleteType + description String + + example default + description = "(file_operations) Permanently deleted files and/or folders" + +struct FilePreviewType + description String + + example default + description = "(file_operations) Previewed files and/or folders" + +struct FileRenameType + description String + + example default + description = "(file_operations) Renamed files and/or folders" + +struct FileRestoreType + description String + + example default + description = "(file_operations) Restored deleted files and/or folders" + +struct FileRevertType + description String + + example default + description = "(file_operations) Reverted files to previous version" + +struct FileRollbackChangesType + description String + + example default + description = "(file_operations) Rolled back file actions" + +struct FileSaveCopyReferenceType + description String + + example default + description = "(file_operations) Saved file/folder using copy reference" + +struct FolderOverviewDescriptionChangedType + description String + + example default + description = "(file_operations) Updated folder overview" + +struct FolderOverviewItemPinnedType + description String + + example default + description = "(file_operations) Pinned item to folder overview" + +struct FolderOverviewItemUnpinnedType + description String + + example default + description = "(file_operations) Unpinned item from folder overview" + +struct ObjectLabelAddedType + description String + + example default + description = "(file_operations) Added a label" + +struct ObjectLabelRemovedType + description String + + example default + description = "(file_operations) Removed a label" + +struct ObjectLabelUpdatedValueType + description String + + example default + description = "(file_operations) Updated a label's value" + +struct OrganizeFolderWithTidyType + description String + + example default + description = "(file_operations) Organized a folder with multi-file organize" + +struct ReplayFileDeleteType + description String + + example default + description = "(file_operations) Deleted files in Replay" + +struct ReplayFileDownloadedType + description String + + example default + description = "(file_operations) Downloaded files in Replay" + +struct ReplayTeamProjectCreatedType + description String + + example default + description = "(file_operations) Created a team project in Replay" + +struct RewindFolderType + description String + + example default + description = "(file_operations) Rewound a folder" + +struct UndoNamingConventionType + description String + + example default + description = "(file_operations) Reverted naming convention" + +struct UndoOrganizeFolderWithTidyType + description String + + example default + description = "(file_operations) Removed multi-file organize" + +struct UserTagsAddedType + description String + + example default + description = "(file_operations) Tagged a file" + +struct UserTagsRemovedType + description String + + example default + description = "(file_operations) Removed tags" + +struct EmailIngestReceiveFileType + description String + + example default + description = "(file_requests) Received files via Email to Dropbox" + +struct FileRequestAutoCloseType + description String + + example default + description = "(file_requests) Auto closed file request" + +struct FileRequestChangeType + description String + + example default + description = "(file_requests) Changed file request" + +struct FileRequestCloseType + description String + + example default + description = "(file_requests) Closed file request" + +struct FileRequestCreateType + description String + + example default + description = "(file_requests) Created file request" + +struct FileRequestDeleteType + description String + + example default + description = "(file_requests) Delete file request" + +struct FileRequestReceiveFileType + description String + + example default + description = "(file_requests) Received files for file request" + +struct GroupAddExternalIdType + description String + + example default + description = "(groups) Added external ID for group" + +struct GroupAddMemberType + description String + + example default + description = "(groups) Added team members to group" + +struct GroupChangeExternalIdType + description String + + example default + description = "(groups) Changed external ID for group" + +struct GroupChangeManagementTypeType + description String + + example default + description = "(groups) Changed group management type" + +struct GroupChangeMemberRoleType + description String + + example default + description = "(groups) Changed manager permissions of group member" + +struct GroupCreateType + description String + + example default + description = "(groups) Created group" + +struct GroupDeleteType + description String + + example default + description = "(groups) Deleted group" + +struct GroupDescriptionUpdatedType + description String + + example default + description = "(groups) Updated group (deprecated, no longer logged)" + +struct GroupExternalSharingSettingOverrideChangedType + description String + + example default + description = "(groups) Changed group's external sharing setting" + +struct GroupJoinPolicyUpdatedType + description String + + example default + description = "(groups) Updated group join policy (deprecated, no longer logged)" + +struct GroupMovedType + description String + + example default + description = "(groups) Moved group (deprecated, no longer logged)" + +struct GroupRemoveExternalIdType + description String + + example default + description = "(groups) Removed external ID for group" + +struct GroupRemoveMemberType + description String + + example default + description = "(groups) Removed team members from group" + +struct GroupRenameType + description String + + example default + description = "(groups) Renamed group" + +struct AccountLockOrUnlockedType + description String + + example default + description = "(logins) Unlocked/locked account after failed sign in attempts" + +struct EmmErrorType + description String + + example default + description = "(logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in')" + +struct GuestAdminSignedInViaTrustedTeamsType + description String + + example default + description = "(logins) Started trusted team admin session" + +struct GuestAdminSignedOutViaTrustedTeamsType + description String + + example default + description = "(logins) Ended trusted team admin session" + +struct LoginFailType + description String + + example default + description = "(logins) Failed to sign in" + +struct LoginSuccessType + description String + + example default + description = "(logins) Signed in" + +struct LogoutType + description String + + example default + description = "(logins) Signed out" + +struct ResellerSupportSessionEndType + description String + + example default + description = "(logins) Ended reseller support session" + +struct ResellerSupportSessionStartType + description String + + example default + description = "(logins) Started reseller support session" + +struct SignInAsSessionEndType + description String + + example default + description = "(logins) Ended admin sign-in-as session" + +struct SignInAsSessionStartType + description String + + example default + description = "(logins) Started admin sign-in-as session" + +struct SsoErrorType + description String + + example default + description = "(logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in')" + +struct AddonAssignedType + description String + + example default + description = "(members) Add-on Assigned" + +struct AddonRemovedType + description String + + example default + description = "(members) Add-on Removed" + +struct BackupAdminInvitationSentType + description String + + example default + description = "(members) Invited members to activate Backup" + +struct BackupInvitationOpenedType + description String + + example default + description = "(members) Opened Backup invite" + +struct CreateTeamInviteLinkType + description String + + example default + description = "(members) Created team invite link" + +struct DeleteTeamInviteLinkType + description String + + example default + description = "(members) Deleted team invite link" + +struct MemberAddExternalIdType + description String + + example default + description = "(members) Added an external ID for team member" + +struct MemberAddNameType + description String + + example default + description = "(members) Added team member name" + +struct MemberChangeAdminRoleType + description String + + example default + description = "(members) Changed team member admin role" + +struct MemberChangeEmailType + description String + + example default + description = "(members) Changed team member email" + +struct MemberChangeExternalIdType + description String + + example default + description = "(members) Changed the external ID for team member" + +struct MemberChangeMembershipTypeType + description String + + example default + description = "(members) Changed membership type (limited/full) of member (deprecated, no longer logged)" + +struct MemberChangeNameType + description String + + example default + description = "(members) Changed team member name" + +struct MemberChangeResellerRoleType + description String + + example default + description = "(members) Changed team member reseller role" + +struct MemberChangeStatusType + description String + + example default + description = "(members) Changed member status (invited, joined, suspended, etc.)" + +struct MemberDeleteManualContactsType + description String + + example default + description = "(members) Cleared manually added contacts" + +struct MemberDeleteProfilePhotoType + description String + + example default + description = "(members) Deleted team member profile photo" + +struct MemberPermanentlyDeleteAccountContentsType + description String + + example default + description = "(members) Permanently deleted contents of deleted team member account" + +struct MemberRemoveExternalIdType + description String + + example default + description = "(members) Removed the external ID for team member" + +struct MemberSetProfilePhotoType + description String + + example default + description = "(members) Set team member profile photo" + +struct MemberSpaceLimitsAddCustomQuotaType + description String + + example default + description = "(members) Set custom member space limit" + +struct MemberSpaceLimitsChangeCustomQuotaType + description String + + example default + description = "(members) Changed custom member space limit" + +struct MemberSpaceLimitsChangeStatusType + description String + + example default + description = "(members) Changed space limit status" + +struct MemberSpaceLimitsRemoveCustomQuotaType + description String + + example default + description = "(members) Removed custom member space limit" + +struct MemberSuggestType + description String + + example default + description = "(members) Suggested person to add to team" + +struct MemberTransferAccountContentsType + description String + + example default + description = "(members) Transferred contents of deleted member account to another member" + +struct PendingSecondaryEmailAddedType + description String + + example default + description = "(members) Added pending secondary email" + +struct ProductAssignedToMemberType + description String + + example default + description = "(members) Product assigned to team member" + +struct ProductRemovedFromMemberType + description String + + example default + description = "(members) Product removed from team member" + +struct SecondaryEmailDeletedType + description String + + example default + description = "(members) Deleted secondary email" + +struct SecondaryEmailVerifiedType + description String + + example default + description = "(members) Verified secondary email" + +struct SecondaryMailsPolicyChangedType + description String + + example default + description = "(members) Secondary mails policy changed" + +struct BinderAddPageType + description String + + example default + description = "(paper) Added Binder page (deprecated, replaced by 'Edited files')" + +struct BinderAddSectionType + description String + + example default + description = "(paper) Added Binder section (deprecated, replaced by 'Edited files')" + +struct BinderRemovePageType + description String + + example default + description = "(paper) Removed Binder page (deprecated, replaced by 'Edited files')" + +struct BinderRemoveSectionType + description String + + example default + description = "(paper) Removed Binder section (deprecated, replaced by 'Edited files')" + +struct BinderRenamePageType + description String + + example default + description = "(paper) Renamed Binder page (deprecated, replaced by 'Edited files')" + +struct BinderRenameSectionType + description String + + example default + description = "(paper) Renamed Binder section (deprecated, replaced by 'Edited files')" + +struct BinderReorderPageType + description String + + example default + description = "(paper) Reordered Binder page (deprecated, replaced by 'Edited files')" + +struct BinderReorderSectionType + description String + + example default + description = "(paper) Reordered Binder section (deprecated, replaced by 'Edited files')" + +struct PaperContentAddMemberType + description String + + example default + description = "(paper) Added users and/or groups to Paper doc/folder" + +struct PaperContentAddToFolderType + description String + + example default + description = "(paper) Added Paper doc/folder to folder" + +struct PaperContentArchiveType + description String + + example default + description = "(paper) Archived Paper doc/folder" + +struct PaperContentCreateType + description String + + example default + description = "(paper) Created Paper doc/folder" + +struct PaperContentPermanentlyDeleteType + description String + + example default + description = "(paper) Permanently deleted Paper doc/folder" + +struct PaperContentRemoveFromFolderType + description String + + example default + description = "(paper) Removed Paper doc/folder from folder" + +struct PaperContentRemoveMemberType + description String + + example default + description = "(paper) Removed users and/or groups from Paper doc/folder" + +struct PaperContentRenameType + description String + + example default + description = "(paper) Renamed Paper doc/folder" + +struct PaperContentRestoreType + description String + + example default + description = "(paper) Restored archived Paper doc/folder" + +struct PaperDocAddCommentType + description String + + example default + description = "(paper) Added Paper doc comment" + +struct PaperDocChangeMemberRoleType + description String + + example default + description = "(paper) Changed member permissions for Paper doc" + +struct PaperDocChangeSharingPolicyType + description String + + example default + description = "(paper) Changed sharing setting for Paper doc" + +struct PaperDocChangeSubscriptionType + description String + + example default + description = "(paper) Followed/unfollowed Paper doc" + +struct PaperDocDeletedType + description String + + example default + description = "(paper) Archived Paper doc (deprecated, no longer logged)" + +struct PaperDocDeleteCommentType + description String + + example default + description = "(paper) Deleted Paper doc comment" + +struct PaperDocDownloadType + description String + + example default + description = "(paper) Downloaded Paper doc in specific format" + +struct PaperDocEditType + description String + + example default + description = "(paper) Edited Paper doc" + +struct PaperDocEditCommentType + description String + + example default + description = "(paper) Edited Paper doc comment" + +struct PaperDocFollowedType + description String + + example default + description = "(paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc')" + +struct PaperDocMentionType + description String + + example default + description = "(paper) Mentioned user in Paper doc" + +struct PaperDocOwnershipChangedType + description String + + example default + description = "(paper) Transferred ownership of Paper doc" + +struct PaperDocRequestAccessType + description String + + example default + description = "(paper) Requested access to Paper doc" + +struct PaperDocResolveCommentType + description String + + example default + description = "(paper) Resolved Paper doc comment" + +struct PaperDocRevertType + description String + + example default + description = "(paper) Restored Paper doc to previous version" + +struct PaperDocSlackShareType + description String + + example default + description = "(paper) Shared Paper doc via Slack" + +struct PaperDocTeamInviteType + description String + + example default + description = "(paper) Shared Paper doc with users and/or groups (deprecated, no longer logged)" + +struct PaperDocTrashedType + description String + + example default + description = "(paper) Deleted Paper doc" + +struct PaperDocUnresolveCommentType + description String + + example default + description = "(paper) Unresolved Paper doc comment" + +struct PaperDocUntrashedType + description String + + example default + description = "(paper) Restored Paper doc" + +struct PaperDocViewType + description String + + example default + description = "(paper) Viewed Paper doc" + +struct PaperExternalViewAllowType + description String + + example default + description = "(paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged)" + +struct PaperExternalViewDefaultTeamType + description String + + example default + description = "(paper) Changed Paper external sharing setting to default team (deprecated, no longer logged)" + +struct PaperExternalViewForbidType + description String + + example default + description = "(paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged)" + +struct PaperFolderChangeSubscriptionType + description String + + example default + description = "(paper) Followed/unfollowed Paper folder" + +struct PaperFolderDeletedType + description String + + example default + description = "(paper) Archived Paper folder (deprecated, no longer logged)" + +struct PaperFolderFollowedType + description String + + example default + description = "(paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder')" + +struct PaperFolderTeamInviteType + description String + + example default + description = "(paper) Shared Paper folder with users and/or groups (deprecated, no longer logged)" + +struct PaperPublishedLinkChangePermissionType + description String + + example default + description = "(paper) Changed permissions for published doc" + +struct PaperPublishedLinkCreateType + description String + + example default + description = "(paper) Published doc" + +struct PaperPublishedLinkDisabledType + description String + + example default + description = "(paper) Unpublished doc" + +struct PaperPublishedLinkViewType + description String + + example default + description = "(paper) Viewed published doc" + +struct PasswordChangeType + description String + + example default + description = "(passwords) Changed password" + +struct PasswordResetType + description String + + example default + description = "(passwords) Reset password" + +struct PasswordResetAllType + description String + + example default + description = "(passwords) Reset all team member passwords" + +struct ClassificationCreateReportType + description String + + example default + description = "(reports) Created Classification report" + +struct ClassificationCreateReportFailType + description String + + example default + description = "(reports) Couldn't create Classification report" + +struct EmmCreateExceptionsReportType + description String + + example default + description = "(reports) Created EMM-excluded users report" + +struct EmmCreateUsageReportType + description String + + example default + description = "(reports) Created EMM mobile app usage report" + +struct ExportMembersReportType + description String + + example default + description = "(reports) Created member data report" + +struct ExportMembersReportFailType + description String + + example default + description = "(reports) Failed to create members data report" + +struct ExternalSharingCreateReportType + description String + + example default + description = "(reports) Created External sharing report" + +struct ExternalSharingReportFailedType + description String + + example default + description = "(reports) Couldn't create External sharing report" + +struct MemberAccessDetailsCreateReportType + description String + + example default + description = "(reports) Created member access report" + +struct MemberAccessDetailsCreateReportFailedType + description String + + example default + description = "(reports) Couldn't generate member access report" + +struct NoExpirationLinkGenCreateReportType + description String + + example default + description = "(reports) Report created: Links created with no expiration" + +struct NoExpirationLinkGenReportFailedType + description String + + example default + description = "(reports) Couldn't create report: Links created with no expiration" + +struct NoPasswordLinkGenCreateReportType + description String + + example default + description = "(reports) Report created: Links created without passwords" + +struct NoPasswordLinkGenReportFailedType + description String + + example default + description = "(reports) Couldn't create report: Links created without passwords" + +struct NoPasswordLinkViewCreateReportType + description String + + example default + description = "(reports) Report created: Views of links without passwords" + +struct NoPasswordLinkViewReportFailedType + description String + + example default + description = "(reports) Couldn't create report: Views of links without passwords" + +struct OutdatedLinkViewCreateReportType + description String + + example default + description = "(reports) Report created: Views of old links" + +struct OutdatedLinkViewReportFailedType + description String + + example default + description = "(reports) Couldn't create report: Views of old links" + +struct PaperAdminExportStartType + description String + + example default + description = "(reports) Exported all team Paper docs" + +struct RansomwareAlertCreateReportType + description String + + example default + description = "(reports) Created ransomware report" + +struct RansomwareAlertCreateReportFailedType + description String + + example default + description = "(reports) Couldn't generate ransomware report" + +struct SharedFoldersCreateReportType + description String + + example default + description = "(reports) Created shared folders report" + +struct SharedFoldersCreateReportFailedType + description String + + example default + description = "(reports) Couldn't generate shared folders report" + +struct SmartSyncCreateAdminPrivilegeReportType + description String + + example default + description = "(reports) Created Smart Sync non-admin devices report" + +struct TeamActivityCreateReportType + description String + + example default + description = "(reports) Created team activity report" + +struct TeamActivityCreateReportFailType + description String + + example default + description = "(reports) Couldn't generate team activity report" + +struct TeamFoldersCreateReportType + description String + + example default + description = "(reports) Created team folders report" + +struct TeamFoldersCreateReportFailedType + description String + + example default + description = "(reports) Couldn't generate team folders report" + +struct TeamStorageCreateReportType + description String + + example default + description = "(reports) Created team storage report" + +struct TeamStorageCreateReportFailedType + description String + + example default + description = "(reports) Couldn't generate team storage report" + +struct CollectionShareType + description String + + example default + description = "(sharing) Shared album" + +struct FileTransfersFileAddType + description String + + example default + description = "(sharing) Transfer files added" + +struct FileTransfersTransferDeleteType + description String + + example default + description = "(sharing) Deleted transfer" + +struct FileTransfersTransferDownloadType + description String + + example default + description = "(sharing) Transfer downloaded" + +struct FileTransfersTransferSendType + description String + + example default + description = "(sharing) Sent transfer" + +struct FileTransfersTransferViewType + description String + + example default + description = "(sharing) Viewed transfer" + +struct NoteAclInviteOnlyType + description String + + example default + description = "(sharing) Changed Paper doc to invite-only (deprecated, no longer logged)" + +struct NoteAclLinkType + description String + + example default + description = "(sharing) Changed Paper doc to link-accessible (deprecated, no longer logged)" + +struct NoteAclTeamLinkType + description String + + example default + description = "(sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged)" + +struct NoteSharedType + description String + + example default + description = "(sharing) Shared Paper doc (deprecated, no longer logged)" + +struct NoteShareReceiveType + description String + + example default + description = "(sharing) Shared received Paper doc (deprecated, no longer logged)" + +struct OpenNoteSharedType + description String + + example default + description = "(sharing) Opened shared Paper doc (deprecated, no longer logged)" + +struct ReplayFileSharedLinkCreatedType + description String + + example default + description = "(sharing) Created shared link in Replay" + +struct ReplayFileSharedLinkModifiedType + description String + + example default + description = "(sharing) Changed shared link in Replay" + +struct ReplayProjectTeamAddType + description String + + example default + description = "(sharing) Added member to Replay Project" + +struct ReplayProjectTeamDeleteType + description String + + example default + description = "(sharing) Removed member from Replay Project" + +struct SendAndTrackFileAddedType + description String + + example default + description = "(sharing) File added to Send and Track" + +struct SendAndTrackFileRenamedType + description String + + example default + description = "(sharing) File renamed in Send and Track" + +struct SendAndTrackFileUpdatedType + description String + + example default + description = "(sharing) File updated in Send and Track" + +struct SendAndTrackLinkCreatedType + description String + + example default + description = "(sharing) Link created in Send and Track" + +struct SendAndTrackLinkDeletedType + description String + + example default + description = "(sharing) Link deleted in Send and Track" + +struct SendAndTrackLinkUpdatedType + description String + + example default + description = "(sharing) Send and Track Link Updated" + +struct SendAndTrackLinkViewedType + description String + + example default + description = "(sharing) Send and Track Link Visited" + +struct SendAndTrackRemovedFileAndAssociatedLinksType + description String + + example default + description = "(sharing) Send and Track file and associated links deleted" + +struct SfAddGroupType + description String + + example default + description = "(sharing) Added team to shared folder (deprecated, no longer logged)" + +struct SfAllowNonMembersToViewSharedLinksType + description String + + example default + description = "(sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged)" + +struct SfExternalInviteWarnType + description String + + example default + description = "(sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged)" + +struct SfFbInviteType + description String + + example default + description = "(sharing) Invited Facebook users to shared folder (deprecated, no longer logged)" + +struct SfFbInviteChangeRoleType + description String + + example default + description = "(sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged)" + +struct SfFbUninviteType + description String + + example default + description = "(sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged)" + +struct SfInviteGroupType + description String + + example default + description = "(sharing) Invited group to shared folder (deprecated, no longer logged)" + +struct SfTeamGrantAccessType + description String + + example default + description = "(sharing) Granted access to shared folder (deprecated, no longer logged)" + +struct SfTeamInviteType + description String + + example default + description = "(sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder')" + +struct SfTeamInviteChangeRoleType + description String + + example default + description = "(sharing) Changed team member's role in shared folder (deprecated, no longer logged)" + +struct SfTeamJoinType + description String + + example default + description = "(sharing) Joined team member's shared folder (deprecated, no longer logged)" + +struct SfTeamJoinFromOobLinkType + description String + + example default + description = "(sharing) Joined team member's shared folder from link (deprecated, no longer logged)" + +struct SfTeamUninviteType + description String + + example default + description = "(sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted')" + +struct SharedContentAddInviteesType + description String + + example default + description = "(sharing) Invited user to Dropbox and added them to shared file/folder" + +struct SharedContentAddLinkExpiryType + description String + + example default + description = "(sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged)" + +struct SharedContentAddLinkPasswordType + description String + + example default + description = "(sharing) Added password to link for shared file/folder (deprecated, no longer logged)" + +struct SharedContentAddMemberType + description String + + example default + description = "(sharing) Added users and/or groups to shared file/folder" + +struct SharedContentChangeDownloadsPolicyType + description String + + example default + description = "(sharing) Changed whether members can download shared file/folder (deprecated, no longer logged)" + +struct SharedContentChangeInviteeRoleType + description String + + example default + description = "(sharing) Changed access type of invitee to shared file/folder before invite was accepted" + +struct SharedContentChangeLinkAudienceType + description String + + example default + description = "(sharing) Changed link audience of shared file/folder (deprecated, no longer logged)" + +struct SharedContentChangeLinkExpiryType + description String + + example default + description = "(sharing) Changed link expiration of shared file/folder (deprecated, no longer logged)" + +struct SharedContentChangeLinkPasswordType + description String + + example default + description = "(sharing) Changed link password of shared file/folder (deprecated, no longer logged)" + +struct SharedContentChangeMemberRoleType + description String + + example default + description = "(sharing) Changed access type of shared file/folder member" + +struct SharedContentChangeViewerInfoPolicyType + description String + + example default + description = "(sharing) Changed whether members can see who viewed shared file/folder" + +struct SharedContentClaimInvitationType + description String + + example default + description = "(sharing) Acquired membership of shared file/folder by accepting invite" + +struct SharedContentCopyType + description String + + example default + description = "(sharing) Copied shared file/folder to own Dropbox" + +struct SharedContentDownloadType + description String + + example default + description = "(sharing) Downloaded shared file/folder" + +struct SharedContentRelinquishMembershipType + description String + + example default + description = "(sharing) Left shared file/folder" + +struct SharedContentRemoveInviteesType + description String + + example default + description = "(sharing) Removed invitee from shared file/folder before invite was accepted" + +struct SharedContentRemoveLinkExpiryType + description String + + example default + description = "(sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged)" + +struct SharedContentRemoveLinkPasswordType + description String + + example default + description = "(sharing) Removed link password of shared file/folder (deprecated, no longer logged)" + +struct SharedContentRemoveMemberType + description String + + example default + description = "(sharing) Removed user/group from shared file/folder" + +struct SharedContentRequestAccessType + description String + + example default + description = "(sharing) Requested access to shared file/folder" + +struct SharedContentRestoreInviteesType + description String + + example default + description = "(sharing) Restored shared file/folder invitees" + +struct SharedContentRestoreMemberType + description String + + example default + description = "(sharing) Restored users and/or groups to membership of shared file/folder" + +struct SharedContentUnshareType + description String + + example default + description = "(sharing) Unshared file/folder by clearing membership" + +struct SharedContentViewType + description String + + example default + description = "(sharing) Previewed shared file/folder" + +struct SharedFolderChangeLinkPolicyType + description String + + example default + description = "(sharing) Changed who can access shared folder via link" + +struct SharedFolderChangeMembersInheritancePolicyType + description String + + example default + description = "(sharing) Changed whether shared folder inherits members from parent folder" + +struct SharedFolderChangeMembersManagementPolicyType + description String + + example default + description = "(sharing) Changed who can add/remove members of shared folder" + +struct SharedFolderChangeMembersPolicyType + description String + + example default + description = "(sharing) Changed who can become member of shared folder" + +struct SharedFolderCreateType + description String + + example default + description = "(sharing) Created shared folder" + +struct SharedFolderDeclineInvitationType + description String + + example default + description = "(sharing) Declined team member's invite to shared folder" + +struct SharedFolderMountType + description String + + example default + description = "(sharing) Added shared folder to own Dropbox" + +struct SharedFolderNestType + description String + + example default + description = "(sharing) Changed parent of shared folder" + +struct SharedFolderTransferOwnershipType + description String + + example default + description = "(sharing) Transferred ownership of shared folder to another member" + +struct SharedFolderUnmountType + description String + + example default + description = "(sharing) Deleted shared folder from Dropbox" + +struct SharedLinkAddExpiryType + description String + + example default + description = "(sharing) Added shared link expiration date" + +struct SharedLinkChangeExpiryType + description String + + example default + description = "(sharing) Changed shared link expiration date" + +struct SharedLinkChangeVisibilityType + description String + + example default + description = "(sharing) Changed visibility of shared link" + +struct SharedLinkCopyType + description String + + example default + description = "(sharing) Added file/folder to Dropbox from shared link" + +struct SharedLinkCreateType + description String + + example default + description = "(sharing) Created shared link" + +struct SharedLinkDisableType + description String + + example default + description = "(sharing) Removed shared link" + +struct SharedLinkDownloadType + description String + + example default + description = "(sharing) Downloaded file/folder from shared link" + +struct SharedLinkRemoveExpiryType + description String + + example default + description = "(sharing) Removed shared link expiration date" + +struct SharedLinkRemoveVisitorType + description String + + example default + description = "(sharing) Removed link visitor" + +struct SharedLinkSettingsAddExpirationType + description String + + example default + description = "(sharing) Added an expiration date to the shared link" + +struct SharedLinkSettingsAddPasswordType + description String + + example default + description = "(sharing) Added a password to the shared link" + +struct SharedLinkSettingsAllowDownloadDisabledType + description String + + example default + description = "(sharing) Disabled downloads" + +struct SharedLinkSettingsAllowDownloadEnabledType + description String + + example default + description = "(sharing) Enabled downloads" + +struct SharedLinkSettingsChangeAudienceType + description String + + example default + description = "(sharing) Changed the audience of the shared link" + +struct SharedLinkSettingsChangeExpirationType + description String + + example default + description = "(sharing) Changed the expiration date of the shared link" + +struct SharedLinkSettingsChangePasswordType + description String + + example default + description = "(sharing) Changed the password of the shared link" + +struct SharedLinkSettingsRemoveExpirationType + description String + + example default + description = "(sharing) Removed the expiration date from the shared link" + +struct SharedLinkSettingsRemovePasswordType + description String + + example default + description = "(sharing) Removed the password from the shared link" + +struct SharedLinkShareType + description String + + example default + description = "(sharing) Added members as audience of shared link" + +struct SharedLinkViewType + description String + + example default + description = "(sharing) Opened shared link" + +struct SharedNoteOpenedType + description String + + example default + description = "(sharing) Opened shared Paper doc (deprecated, no longer logged)" + +struct ShmodelDisableDownloadsType + description String + + example default + description = "(sharing) Disabled downloads for link (deprecated, no longer logged)" + +struct ShmodelEnableDownloadsType + description String + + example default + description = "(sharing) Enabled downloads for link (deprecated, no longer logged)" + +struct ShmodelGroupShareType + description String + + example default + description = "(sharing) Shared link with group (deprecated, no longer logged)" + +struct ShowcaseAccessGrantedType + description String + + example default + description = "(showcase) Granted access to showcase" + +struct ShowcaseAddMemberType + description String + + example default + description = "(showcase) Added member to showcase" + +struct ShowcaseArchivedType + description String + + example default + description = "(showcase) Archived showcase" + +struct ShowcaseCreatedType + description String + + example default + description = "(showcase) Created showcase" + +struct ShowcaseDeleteCommentType + description String + + example default + description = "(showcase) Deleted showcase comment" + +struct ShowcaseEditedType + description String + + example default + description = "(showcase) Edited showcase" + +struct ShowcaseEditCommentType + description String + + example default + description = "(showcase) Edited showcase comment" + +struct ShowcaseFileAddedType + description String + + example default + description = "(showcase) Added file to showcase" + +struct ShowcaseFileDownloadType + description String + + example default + description = "(showcase) Downloaded file from showcase" + +struct ShowcaseFileRemovedType + description String + + example default + description = "(showcase) Removed file from showcase" + +struct ShowcaseFileViewType + description String + + example default + description = "(showcase) Viewed file in showcase" + +struct ShowcasePermanentlyDeletedType + description String + + example default + description = "(showcase) Permanently deleted showcase" + +struct ShowcasePostCommentType + description String + + example default + description = "(showcase) Added showcase comment" + +struct ShowcaseRemoveMemberType + description String + + example default + description = "(showcase) Removed member from showcase" + +struct ShowcaseRenamedType + description String + + example default + description = "(showcase) Renamed showcase" + +struct ShowcaseRequestAccessType + description String + + example default + description = "(showcase) Requested access to showcase" + +struct ShowcaseResolveCommentType + description String + + example default + description = "(showcase) Resolved showcase comment" + +struct ShowcaseRestoredType + description String + + example default + description = "(showcase) Unarchived showcase" + +struct ShowcaseTrashedType + description String + + example default + description = "(showcase) Deleted showcase" + +struct ShowcaseTrashedDeprecatedType + description String + + example default + description = "(showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase')" + +struct ShowcaseUnresolveCommentType + description String + + example default + description = "(showcase) Unresolved showcase comment" + +struct ShowcaseUntrashedType + description String + + example default + description = "(showcase) Restored showcase" + +struct ShowcaseUntrashedDeprecatedType + description String + + example default + description = "(showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase')" + +struct ShowcaseViewType + description String + + example default + description = "(showcase) Viewed showcase" + +struct SignSignatureRequestCanceledType + description String + + example default + description = "(signatures) Canceled signature request" + +struct SignSignatureRequestCompletedType + description String + + example default + description = "(signatures) Completed signature request" + +struct SignSignatureRequestDeclinedType + description String + + example default + description = "(signatures) Declined signature request" + +struct SignSignatureRequestOpenedType + description String + + example default + description = "(signatures) Opened signature request" + +struct SignSignatureRequestReminderSentType + description String + + example default + description = "(signatures) Sent signature request reminder" + +struct SignSignatureRequestSentType + description String + + example default + description = "(signatures) Sent signature request" + +struct SignTemplateCreatedType + description String + + example default + description = "(signatures) Created template" + +struct SignTemplateSharedType + description String + + example default + description = "(signatures) Shared template" + +struct RiscSecurityEventType + description String + + example default + description = "(sso) RISC security event received from external provider" + +struct SsoAddCertType + description String + + example default + description = "(sso) Added X.509 certificate for SSO" + +struct SsoAddLoginUrlType + description String + + example default + description = "(sso) Added sign-in URL for SSO" + +struct SsoAddLogoutUrlType + description String + + example default + description = "(sso) Added sign-out URL for SSO" + +struct SsoChangeCertType + description String + + example default + description = "(sso) Changed X.509 certificate for SSO" + +struct SsoChangeLoginUrlType + description String + + example default + description = "(sso) Changed sign-in URL for SSO" + +struct SsoChangeLogoutUrlType + description String + + example default + description = "(sso) Changed sign-out URL for SSO" + +struct SsoChangeSamlIdentityModeType + description String + + example default + description = "(sso) Changed SAML identity mode for SSO" + +struct SsoRemoveCertType + description String + + example default + description = "(sso) Removed X.509 certificate for SSO" + +struct SsoRemoveLoginUrlType + description String + + example default + description = "(sso) Removed sign-in URL for SSO" + +struct SsoRemoveLogoutUrlType + description String + + example default + description = "(sso) Removed sign-out URL for SSO" + +struct TeamFolderChangeStatusType + description String + + example default + description = "(team_folders) Changed archival status of team folder" + +struct TeamFolderCreateType + description String + + example default + description = "(team_folders) Created team folder in active status" + +struct TeamFolderDowngradeType + description String + + example default + description = "(team_folders) Downgraded team folder to regular shared folder" + +struct TeamFolderPermanentlyDeleteType + description String + + example default + description = "(team_folders) Permanently deleted archived team folder" + +struct TeamFolderRenameType + description String + + example default + description = "(team_folders) Renamed active/archived team folder" + +struct TeamSelectiveSyncSettingsChangedType + description String + + example default + description = "(team_folders) Changed sync default" + +struct AccountCaptureChangePolicyType + description String + + example default + description = "(team_policies) Changed account capture setting on team domain" + +struct AdminEmailRemindersChangedType + description String + + example default + description = "(team_policies) Changed admin reminder settings for requests to join the team" + +struct AiThirdPartySharingDropboxBasePolicyChangedType + description String + + example default + description = "(team_policies) Changed AI third party sharing policy for team" + +struct AllowDownloadDisabledType + description String + + example default + description = "(team_policies) Disabled downloads (deprecated, no longer logged)" + +struct AllowDownloadEnabledType + description String + + example default + description = "(team_policies) Enabled downloads (deprecated, no longer logged)" + +struct AppleLoginChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled Apple login for team" + +struct AppPermissionsChangedType + description String + + example default + description = "(team_policies) Changed app permissions" + +struct CameraUploadsPolicyChangedType + description String + + example default + description = "(team_policies) Changed camera uploads setting for team" + +struct CaptureTeamSpacePolicyChangedType + description String + + example default + description = "(team_policies) Changed Capture team space policy for team" + +struct CaptureTranscriptPolicyChangedType + description String + + example default + description = "(team_policies) Changed Capture transcription policy for team" + +struct ClassificationChangePolicyType + description String + + example default + description = "(team_policies) Changed classification policy for team" + +struct ComputerBackupPolicyChangedType + description String + + example default + description = "(team_policies) Changed computer backup policy for team" + +struct ContentAdministrationPolicyChangedType + description String + + example default + description = "(team_policies) Changed content management setting" + +struct ContentDeletionProtectionChangePolicyType + description String + + example default + description = "(team_policies) Changed content deletion protection policy for team" + +struct DashExternalSharingPolicyChangedType + description String + + example default + description = "(team_policies) Changed Dash external sharing policy for team" + +struct DataPlacementRestrictionChangePolicyType + description String + + example default + description = "(team_policies) Set restrictions on data center locations where team data resides" + +struct DataPlacementRestrictionSatisfyPolicyType + description String + + example default + description = "(team_policies) Completed restrictions on data center locations where team data resides" + +struct DeviceApprovalsAddExceptionType + description String + + example default + description = "(team_policies) Added members to device approvals exception list" + +struct DeviceApprovalsChangeDesktopPolicyType + description String + + example default + description = "(team_policies) Set/removed limit on number of computers member can link to team Dropbox account" + +struct DeviceApprovalsChangeMobilePolicyType + description String + + example default + description = "(team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account" + +struct DeviceApprovalsChangeOverageActionType + description String + + example default + description = "(team_policies) Changed device approvals setting when member is over limit" + +struct DeviceApprovalsChangeUnlinkActionType + description String + + example default + description = "(team_policies) Changed device approvals setting when member unlinks approved device" + +struct DeviceApprovalsRemoveExceptionType + description String + + example default + description = "(team_policies) Removed members from device approvals exception list" + +struct DirectoryRestrictionsAddMembersType + description String + + example default + description = "(team_policies) Added members to directory restrictions list" + +struct DirectoryRestrictionsRemoveMembersType + description String + + example default + description = "(team_policies) Removed members from directory restrictions list" + +struct DropboxPasswordsPolicyChangedType + description String + + example default + description = "(team_policies) Changed Dropbox Passwords policy for team" + +struct EmailIngestPolicyChangedType + description String + + example default + description = "(team_policies) Changed email to Dropbox policy for team" + +struct EmmAddExceptionType + description String + + example default + description = "(team_policies) Added members to EMM exception list" + +struct EmmChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled enterprise mobility management for members" + +struct EmmRemoveExceptionType + description String + + example default + description = "(team_policies) Removed members from EMM exception list" + +struct ExtendedVersionHistoryChangePolicyType + description String + + example default + description = "(team_policies) Accepted/opted out of extended version history" + +struct ExternalDriveBackupPolicyChangedType + description String + + example default + description = "(team_policies) Changed external drive backup policy for team" + +struct FileCommentsChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled commenting on team files" + +struct FileLockingPolicyChangedType + description String + + example default + description = "(team_policies) Changed file locking policy for team" + +struct FileProviderMigrationPolicyChangedType + description String + + example default + description = "(team_policies) Changed File Provider Migration policy for team" + +struct FileRequestsChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled file requests" + +struct FileRequestsEmailsEnabledType + description String + + example default + description = "(team_policies) Enabled file request emails for everyone (deprecated, no longer logged)" + +struct FileRequestsEmailsRestrictedToTeamOnlyType + description String + + example default + description = "(team_policies) Enabled file request emails for team (deprecated, no longer logged)" + +struct FileTransfersPolicyChangedType + description String + + example default + description = "(team_policies) Changed file transfers policy for team" + +struct FlexibleFileNamesPolicyChangedType + description String + + example default + description = "(team_policies) Changed flexible file names policy for team" + +struct FolderLinkRestrictionPolicyChangedType + description String + + example default + description = "(team_policies) Changed folder link restrictions policy for team" + +struct GoogleSsoChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled Google single sign-on for team" + +struct GroupUserManagementChangePolicyType + description String + + example default + description = "(team_policies) Changed who can create groups" + +struct IntegrationPolicyChangedType + description String + + example default + description = "(team_policies) Changed integration policy for team" + +struct InviteAcceptanceEmailPolicyChangedType + description String + + example default + description = "(team_policies) Changed invite accept email policy for team" + +struct MemberRequestsChangePolicyType + description String + + example default + description = "(team_policies) Changed whether users can find team when not invited" + +struct MemberSendInvitePolicyChangedType + description String + + example default + description = "(team_policies) Changed member send invite policy for team" + +struct MemberSpaceLimitsAddExceptionType + description String + + example default + description = "(team_policies) Added members to member space limit exception list" + +struct MemberSpaceLimitsChangeCapsTypePolicyType + description String + + example default + description = "(team_policies) Changed member space limit type for team" + +struct MemberSpaceLimitsChangePolicyType + description String + + example default + description = "(team_policies) Changed team default member space limit" + +struct MemberSpaceLimitsRemoveExceptionType + description String + + example default + description = "(team_policies) Removed members from member space limit exception list" + +struct MemberSuggestionsChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled option for team members to suggest people to add to team" + +struct MicrosoftLoginChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled Microsoft login for team" + +struct MicrosoftOfficeAddinChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled Microsoft Office add-in" + +struct NetworkControlChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled network control" + +struct PaperChangeDeploymentPolicyType + description String + + example default + description = "(team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members" + +struct PaperChangeMemberLinkPolicyType + description String + + example default + description = "(team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged)" + +struct PaperChangeMemberPolicyType + description String + + example default + description = "(team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default" + +struct PaperChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled Dropbox Paper for team" + +struct PaperDefaultFolderPolicyChangedType + description String + + example default + description = "(team_policies) Changed Paper Default Folder Policy setting for team" + +struct PaperDesktopPolicyChangedType + description String + + example default + description = "(team_policies) Enabled/disabled Paper Desktop for team" + +struct PaperEnabledUsersGroupAdditionType + description String + + example default + description = "(team_policies) Added users to Paper-enabled users list" + +struct PaperEnabledUsersGroupRemovalType + description String + + example default + description = "(team_policies) Removed users from Paper-enabled users list" + +struct PasskeyLoginPolicyChangedType + description String + + example default + description = "(team_policies) Changed passkey login policy for team" + +struct PasswordStrengthRequirementsChangePolicyType + description String + + example default + description = "(team_policies) Changed team password strength requirements" + +struct PermanentDeleteChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled ability of team members to permanently delete content" + +struct PreviewsAiPolicyChangedType + description String + + example default + description = "(team_policies) Changed Dropbox AI policy for team" + +struct ReplayAddingPeoplePolicyChangedType + description String + + example default + description = "(team_policies) Changed the policy for adding people to Replay content" + +struct ReplaySharingPolicyChangedType + description String + + example default + description = "(team_policies) Changed the policy for sharing Replay content" + +struct ResellerSupportChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled reseller support" + +struct RewindPolicyChangedType + description String + + example default + description = "(team_policies) Changed Rewind policy for team" + +struct SendAndTrackPolicyChangedType + description String + + example default + description = "(team_policies) Changed “Send and track” policy for team" + +struct SendExternalSharingPolicyChangedType + description String + + example default + description = "(team_policies) Changed “Send and track” external sharing policy for team" + +struct SendForSignaturePolicyChangedType + description String + + example default + description = "(team_policies) Changed send for signature policy for team" + +struct SharedLinkDefaultPermissionsPolicyChangedType + description String + + example default + description = "(team_policies) Changed shared link default permissions policy for team" + +struct SharingChangeFolderJoinPolicyType + description String + + example default + description = "(team_policies) Changed whether team members can join shared folders owned outside team" + +struct SharingChangeLinkAllowChangeExpirationPolicyType + description String + + example default + description = "(team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team" + +struct SharingChangeLinkDefaultExpirationPolicyType + description String + + example default + description = "(team_policies) Changed the default expiration for the links shared outside of the team" + +struct SharingChangeLinkEnforcePasswordPolicyType + description String + + example default + description = "(team_policies) Changed the password requirement for the links shared outside of the team" + +struct SharingChangeLinkPolicyType + description String + + example default + description = "(team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default" + +struct SharingChangeMemberPolicyType + description String + + example default + description = "(team_policies) Changed whether members can share files/folders outside team" + +struct ShowcaseChangeDownloadPolicyType + description String + + example default + description = "(team_policies) Enabled/disabled downloading files from Dropbox Showcase for team" + +struct ShowcaseChangeEnabledPolicyType + description String + + example default + description = "(team_policies) Enabled/disabled Dropbox Showcase for team" + +struct ShowcaseChangeExternalSharingPolicyType + description String + + example default + description = "(team_policies) Enabled/disabled sharing Dropbox Showcase externally for team" + +struct SignExternalSharingPolicyChangedType + description String + + example default + description = "(team_policies) Changed Signatures external sharing policy for team" + +struct SignTemplateCreationPermissionChangedType + description String + + example default + description = "(team_policies) Changed template creation permission" + +struct SmarterSmartSyncPolicyChangedType + description String + + example default + description = "(team_policies) Changed automatic Smart Sync setting for team" + +struct SmartSyncChangePolicyType + description String + + example default + description = "(team_policies) Changed default Smart Sync setting for team members" + +struct SmartSyncNotOptOutType + description String + + example default + description = "(team_policies) Opted team into Smart Sync" + +struct SmartSyncOptOutType + description String + + example default + description = "(team_policies) Opted team out of Smart Sync" + +struct SsoChangePolicyType + description String + + example default + description = "(team_policies) Changed single sign-on setting for team" + +struct StackCrossTeamAccessPolicyChangedType + description String + + example default + description = "(team_policies) Changed cross-team Stack access policy for team" + +struct TeamBrandingPolicyChangedType + description String + + example default + description = "(team_policies) Changed team branding policy for team" + +struct TeamExtensionsPolicyChangedType + description String + + example default + description = "(team_policies) Changed App Integrations setting for team" + +struct TeamMemberStorageRequestPolicyChangedType + description String + + example default + description = "(team_policies) Changed team member storage request policy for team" + +struct TeamSelectiveSyncPolicyChangedType + description String + + example default + description = "(team_policies) Enabled/disabled Team Selective Sync for team" + +struct TeamSharingWhitelistSubjectsChangedType + description String + + example default + description = "(team_policies) Edited the approved list for sharing externally" + +struct TfaAddExceptionType + description String + + example default + description = "(team_policies) Added members to two factor authentication exception list" + +struct TfaChangePolicyType + description String + + example default + description = "(team_policies) Changed two-factor authentication setting for team" + +struct TfaRemoveExceptionType + description String + + example default + description = "(team_policies) Removed members from two factor authentication exception list" + +struct TopLevelContentPolicyChangedType + description String + + example default + description = "(team_policies) Changed top level content setting for team" + +struct TwoAccountChangePolicyType + description String + + example default + description = "(team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer" + +struct ViewerInfoPolicyChangedType + description String + + example default + description = "(team_policies) Changed team policy for viewer info" + +struct WatermarkingPolicyChangedType + description String + + example default + description = "(team_policies) Changed watermarking policy for team" + +struct WebSessionsChangeActiveSessionLimitType + description String + + example default + description = "(team_policies) Changed limit on active sessions per member" + +struct WebSessionsChangeFixedLengthPolicyType + description String + + example default + description = "(team_policies) Changed how long members can stay signed in to Dropbox.com" + +struct WebSessionsChangeIdleLengthPolicyType + description String + + example default + description = "(team_policies) Changed how long team members can be idle while signed in to Dropbox.com" + +struct DataResidencyMigrationRequestSuccessfulType + description String + + example default + description = "(team_profile) Requested data residency migration for team data" + +struct DataResidencyMigrationRequestUnsuccessfulType + description String + + example default + description = "(team_profile) Request for data residency migration for team data has failed" + +struct TeamMergeFromType + description String + + example default + description = "(team_profile) Merged another team into this team" + +struct TeamMergeToType + description String + + example default + description = "(team_profile) Merged this team into another team" + +struct TeamProfileAddBackgroundType + description String + + example default + description = "(team_profile) Added team background to display on shared link headers" + +struct TeamProfileAddLogoType + description String + + example default + description = "(team_profile) Added team logo to display on shared link headers" + +struct TeamProfileChangeBackgroundType + description String + + example default + description = "(team_profile) Changed team background displayed on shared link headers" + +struct TeamProfileChangeDefaultLanguageType + description String + + example default + description = "(team_profile) Changed default language for team" + +struct TeamProfileChangeLogoType + description String + + example default + description = "(team_profile) Changed team logo displayed on shared link headers" + +struct TeamProfileChangeNameType + description String + + example default + description = "(team_profile) Changed team name" + +struct TeamProfileRemoveBackgroundType + description String + + example default + description = "(team_profile) Removed team background displayed on shared link headers" + +struct TeamProfileRemoveLogoType + description String + + example default + description = "(team_profile) Removed team logo displayed on shared link headers" + +struct PasskeyAddType + description String + + example default + description = "(tfa) Added passkey for login" + +struct PasskeyRemoveType + description String + + example default + description = "(tfa) Removed passkey for login" + +struct TfaAddBackupPhoneType + description String + + example default + description = "(tfa) Added backup phone for two-factor authentication" + +struct TfaAddSecurityKeyType + description String + + example default + description = "(tfa) Added security key for two-factor authentication" + +struct TfaChangeBackupPhoneType + description String + + example default + description = "(tfa) Changed backup phone for two-factor authentication" + +struct TfaChangeStatusType + description String + + example default + description = "(tfa) Enabled/disabled/changed two-factor authentication setting" + +struct TfaRemoveBackupPhoneType + description String + + example default + description = "(tfa) Removed backup phone for two-factor authentication" + +struct TfaRemoveSecurityKeyType + description String + + example default + description = "(tfa) Removed security key for two-factor authentication" + +struct TfaResetType + description String + + example default + description = "(tfa) Reset two-factor authentication for team member" + +struct ChangedEnterpriseAdminRoleType + description String + + example default + description = "(trusted_teams) Changed enterprise admin role" + +struct ChangedEnterpriseConnectedTeamStatusType + description String + + example default + description = "(trusted_teams) Changed enterprise-connected team status" + +struct EndedEnterpriseAdminSessionType + description String + + example default + description = "(trusted_teams) Ended enterprise admin session" + +struct EndedEnterpriseAdminSessionDeprecatedType + description String + + example default + description = "(trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session')" + +struct EnterpriseSettingsLockingType + description String + + example default + description = "(trusted_teams) Changed who can update a setting" + +struct GuestAdminChangeStatusType + description String + + example default + description = "(trusted_teams) Changed guest team admin status" + +struct StartedEnterpriseAdminSessionType + description String + + example default + description = "(trusted_teams) Started enterprise admin session" + +struct TeamMergeRequestAcceptedType + description String + + example default + description = "(trusted_teams) Accepted a team merge request" + +struct TeamMergeRequestAcceptedShownToPrimaryTeamType + description String + + example default + description = "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" + +struct TeamMergeRequestAcceptedShownToSecondaryTeamType + description String + + example default + description = "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" + +struct TeamMergeRequestAutoCanceledType + description String + + example default + description = "(trusted_teams) Automatically canceled team merge request" + +struct TeamMergeRequestCanceledType + description String + + example default + description = "(trusted_teams) Canceled a team merge request" + +struct TeamMergeRequestCanceledShownToPrimaryTeamType + description String + + example default + description = "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" + +struct TeamMergeRequestCanceledShownToSecondaryTeamType + description String + + example default + description = "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" + +struct TeamMergeRequestExpiredType + description String + + example default + description = "(trusted_teams) Team merge request expired" + +struct TeamMergeRequestExpiredShownToPrimaryTeamType + description String + + example default + description = "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" + +struct TeamMergeRequestExpiredShownToSecondaryTeamType + description String + + example default + description = "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" + +struct TeamMergeRequestRejectedShownToPrimaryTeamType + description String + + example default + description = "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" + +struct TeamMergeRequestRejectedShownToSecondaryTeamType + description String + + example default + description = "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" + +struct TeamMergeRequestReminderType + description String + + example default + description = "(trusted_teams) Sent a team merge request reminder" + +struct TeamMergeRequestReminderShownToPrimaryTeamType + description String + + example default + description = "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" + +struct TeamMergeRequestReminderShownToSecondaryTeamType + description String + + example default + description = "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" + +struct TeamMergeRequestRevokedType + description String + + example default + description = "(trusted_teams) Canceled the team merge" + +struct TeamMergeRequestSentShownToPrimaryTeamType + description String + + example default + description = "(trusted_teams) Requested to merge their Dropbox team into yours" + +struct TeamMergeRequestSentShownToSecondaryTeamType + description String + + example default + description = "(trusted_teams) Requested to merge your team into another Dropbox team" + +union EventType + "The type of the event with description." + admin_alerting_alert_state_changed AdminAlertingAlertStateChangedType + "(admin_alerting) Changed an alert state" + admin_alerting_changed_alert_config AdminAlertingChangedAlertConfigType + "(admin_alerting) Changed an alert setting" + admin_alerting_triggered_alert AdminAlertingTriggeredAlertType + "(admin_alerting) Triggered security alert" + ransomware_restore_process_completed RansomwareRestoreProcessCompletedType + "(admin_alerting) Completed ransomware restore process" + ransomware_restore_process_started RansomwareRestoreProcessStartedType + "(admin_alerting) Started ransomware restore process" + app_blocked_by_permissions AppBlockedByPermissionsType + "(apps) Failed to connect app for member" + app_link_team AppLinkTeamType + "(apps) Linked app for team" + app_link_user AppLinkUserType + "(apps) Linked app for member" + app_unlink_team AppUnlinkTeamType + "(apps) Unlinked app for team" + app_unlink_user AppUnlinkUserType + "(apps) Unlinked app for member" + integration_connected IntegrationConnectedType + "(apps) Connected integration for member" + integration_disconnected IntegrationDisconnectedType + "(apps) Disconnected integration for member" + file_add_comment FileAddCommentType + "(comments) Added file comment" + file_change_comment_subscription FileChangeCommentSubscriptionType + "(comments) Subscribed to or unsubscribed from comment notifications for file" + file_delete_comment FileDeleteCommentType + "(comments) Deleted file comment" + file_edit_comment FileEditCommentType + "(comments) Edited file comment" + file_like_comment FileLikeCommentType + "(comments) Liked file comment (deprecated, no longer logged)" + file_resolve_comment FileResolveCommentType + "(comments) Resolved file comment" + file_unlike_comment FileUnlikeCommentType + "(comments) Unliked file comment (deprecated, no longer logged)" + file_unresolve_comment FileUnresolveCommentType + "(comments) Unresolved file comment" + dash_added_comment_to_stack DashAddedCommentToStackType + "(dash) Added a comment to a stack" + dash_added_connector DashAddedConnectorType + "(dash) Connected to a user connector" + dash_added_link_to_stack DashAddedLinkToStackType + "(dash) Added a link to a stack" + dash_added_team_email_domain_allowlist DashAddedTeamEmailDomainAllowlistType + "(dash) Admin added an email domain to the team allowlist" + dash_admin_added_org_wide_connector DashAdminAddedOrgWideConnectorType + "(dash) Admin added an admin connector" + dash_admin_disabled_connector DashAdminDisabledConnectorType + "(dash) Admin disabled a user connector" + dash_admin_enabled_connector DashAdminEnabledConnectorType + "(dash) Admin enabled a user connector" + dash_admin_removed_org_wide_connector DashAdminRemovedOrgWideConnectorType + "(dash) Admin removed an admin connector" + dash_archived_stack DashArchivedStackType + "(dash) Archived a stack" + dash_changed_audience_of_shared_link_to_stack DashChangedAudienceOfSharedLinkToStackType + "(dash) Changed the audience of a shared link to a stack" + dash_cloned_stack DashClonedStackType + "(dash) Cloned stack" + dash_connector_tools_call DashConnectorToolsCallType + "(dash) Called a tool on a connector" + dash_created_stack DashCreatedStackType + "(dash) Created a stack" + dash_deleted_comment_from_stack DashDeletedCommentFromStackType + "(dash) Deleted a comment from a stack" + dash_deleted_stack DashDeletedStackType + "(dash) Deleted a stack" + dash_edited_comment_in_stack DashEditedCommentInStackType + "(dash) Edited a comment in a stack" + dash_external_user_opened_stack DashExternalUserOpenedStackType + "(dash) External user opened a stack" + dash_first_launched_desktop DashFirstLaunchedDesktopType + "(dash) Opened the desktop app for the first time" + dash_first_launched_extension DashFirstLaunchedExtensionType + "(dash) Opened the extension for the first time" + dash_first_launched_web_start_page DashFirstLaunchedWebStartPageType + "(dash) Opened the web Start Page for the first time" + dash_opened_shared_link_to_stack DashOpenedSharedLinkToStackType + "(dash) Checked access permissions to a stack" + dash_opened_stack DashOpenedStackType + "(dash) Opened a stack" + dash_preview_opt_out_status_changed DashPreviewOptOutStatusChangedType + "(dash) Changed the preview opt-out status" + dash_removed_connector DashRemovedConnectorType + "(dash) Disconnected a user connector" + dash_removed_link_from_stack DashRemovedLinkFromStackType + "(dash) Removed a link from a stack" + dash_removed_shared_link_to_stack DashRemovedSharedLinkToStackType + "(dash) Removed a shared link to a stack" + dash_removed_team_email_domain_allowlist DashRemovedTeamEmailDomainAllowlistType + "(dash) Admin removed an email domain from the team allowlist" + dash_renamed_stack DashRenamedStackType + "(dash) Renamed a stack" + dash_shared_link_to_stack DashSharedLinkToStackType + "(dash) Shared a link to a stack" + dash_unarchived_stack DashUnarchivedStackType + "(dash) Unarchived a stack" + dash_viewed_company_stack DashViewedCompanyStackType + "(dash) Member viewed a company stack" + dash_viewed_external_ai_activity_report DashViewedExternalAiActivityReportType + "(dash) Admin viewed the external AI activity report" + governance_policy_add_folders GovernancePolicyAddFoldersType + "(data_governance) Added folders to policy" + governance_policy_add_folder_failed GovernancePolicyAddFolderFailedType + "(data_governance) Couldn't add a folder to a policy" + governance_policy_content_disposed GovernancePolicyContentDisposedType + "(data_governance) Content disposed" + governance_policy_create GovernancePolicyCreateType + "(data_governance) Activated a new policy" + governance_policy_delete GovernancePolicyDeleteType + "(data_governance) Deleted a policy" + governance_policy_edit_details GovernancePolicyEditDetailsType + "(data_governance) Edited policy" + governance_policy_edit_duration GovernancePolicyEditDurationType + "(data_governance) Changed policy duration" + governance_policy_export_created GovernancePolicyExportCreatedType + "(data_governance) Created a policy download" + governance_policy_export_removed GovernancePolicyExportRemovedType + "(data_governance) Removed a policy download" + governance_policy_remove_folders GovernancePolicyRemoveFoldersType + "(data_governance) Removed folders from policy" + governance_policy_report_created GovernancePolicyReportCreatedType + "(data_governance) Created a summary report for a policy" + governance_policy_zip_part_downloaded GovernancePolicyZipPartDownloadedType + "(data_governance) Downloaded content from a policy" + legal_holds_activate_a_hold LegalHoldsActivateAHoldType + "(data_governance) Activated a hold" + legal_holds_add_members LegalHoldsAddMembersType + "(data_governance) Added members to a hold" + legal_holds_change_hold_details LegalHoldsChangeHoldDetailsType + "(data_governance) Edited details for a hold" + legal_holds_change_hold_name LegalHoldsChangeHoldNameType + "(data_governance) Renamed a hold" + legal_holds_export_a_hold LegalHoldsExportAHoldType + "(data_governance) Exported hold" + legal_holds_export_cancelled LegalHoldsExportCancelledType + "(data_governance) Canceled export for a hold" + legal_holds_export_downloaded LegalHoldsExportDownloadedType + "(data_governance) Downloaded export for a hold" + legal_holds_export_removed LegalHoldsExportRemovedType + "(data_governance) Removed export for a hold" + legal_holds_release_a_hold LegalHoldsReleaseAHoldType + "(data_governance) Released a hold" + legal_holds_remove_members LegalHoldsRemoveMembersType + "(data_governance) Removed members from a hold" + legal_holds_report_a_hold LegalHoldsReportAHoldType + "(data_governance) Created a summary report for a hold" + device_change_ip_desktop DeviceChangeIpDesktopType + "(devices) Changed IP address associated with active desktop session" + device_change_ip_mobile DeviceChangeIpMobileType + "(devices) Changed IP address associated with active mobile session" + device_change_ip_web DeviceChangeIpWebType + "(devices) Changed IP address associated with active web session" + device_delete_on_unlink_fail DeviceDeleteOnUnlinkFailType + "(devices) Failed to delete all files from unlinked device" + device_delete_on_unlink_success DeviceDeleteOnUnlinkSuccessType + "(devices) Deleted all files from unlinked device" + device_link_fail DeviceLinkFailType + "(devices) Failed to link device" + device_link_success DeviceLinkSuccessType + "(devices) Linked device" + device_management_disabled DeviceManagementDisabledType + "(devices) Disabled device management (deprecated, no longer logged)" + device_management_enabled DeviceManagementEnabledType + "(devices) Enabled device management (deprecated, no longer logged)" + device_sync_backup_status_changed DeviceSyncBackupStatusChangedType + "(devices) Enabled/disabled backup for computer" + device_unlink DeviceUnlinkType + "(devices) Disconnected device" + dropbox_passwords_exported DropboxPasswordsExportedType + "(devices) Exported passwords" + dropbox_passwords_new_device_enrolled DropboxPasswordsNewDeviceEnrolledType + "(devices) Enrolled new Dropbox Passwords device" + emm_refresh_auth_token EmmRefreshAuthTokenType + "(devices) Refreshed auth token used for setting up EMM" + external_drive_backup_eligibility_status_checked ExternalDriveBackupEligibilityStatusCheckedType + "(devices) Checked external drive backup eligibility status" + external_drive_backup_status_changed ExternalDriveBackupStatusChangedType + "(devices) Modified external drive backup" + account_capture_change_availability AccountCaptureChangeAvailabilityType + "(domains) Granted/revoked option to enable account capture on team domains" + account_capture_migrate_account AccountCaptureMigrateAccountType + "(domains) Account-captured user migrated account to team" + account_capture_notification_emails_sent AccountCaptureNotificationEmailsSentType + "(domains) Sent account capture email to all unmanaged members" + account_capture_relinquish_account AccountCaptureRelinquishAccountType + "(domains) Account-captured user changed account email to personal email" + disabled_domain_invites DisabledDomainInvitesType + "(domains) Disabled domain invites (deprecated, no longer logged)" + domain_invites_approve_request_to_join_team DomainInvitesApproveRequestToJoinTeamType + "(domains) Approved user's request to join team" + domain_invites_decline_request_to_join_team DomainInvitesDeclineRequestToJoinTeamType + "(domains) Declined user's request to join team" + domain_invites_email_existing_users DomainInvitesEmailExistingUsersType + "(domains) Sent domain invites to existing domain accounts (deprecated, no longer logged)" + domain_invites_request_to_join_team DomainInvitesRequestToJoinTeamType + "(domains) Requested to join team" + domain_invites_set_invite_new_user_pref_to_no DomainInvitesSetInviteNewUserPrefToNoType + "(domains) Disabled \"Automatically invite new users\" (deprecated, no longer logged)" + domain_invites_set_invite_new_user_pref_to_yes DomainInvitesSetInviteNewUserPrefToYesType + "(domains) Enabled \"Automatically invite new users\" (deprecated, no longer logged)" + domain_verification_add_domain_fail DomainVerificationAddDomainFailType + "(domains) Failed to verify team domain" + domain_verification_add_domain_success DomainVerificationAddDomainSuccessType + "(domains) Verified team domain" + domain_verification_remove_domain DomainVerificationRemoveDomainType + "(domains) Removed domain from list of verified team domains" + enabled_domain_invites EnabledDomainInvitesType + "(domains) Enabled domain invites (deprecated, no longer logged)" + encrypted_folder_cancel_team_key_rotation EncryptedFolderCancelTeamKeyRotationType + "(encryption) Canceled team key rotation" + encrypted_folder_enroll_backup_key EncryptedFolderEnrollBackupKeyType + "(encryption) Added recovery key" + encrypted_folder_enroll_client EncryptedFolderEnrollClientType + "(encryption) Enrolled device" + encrypted_folder_enroll_team EncryptedFolderEnrollTeamType + "(encryption) Activated team folder encryption" + encrypted_folder_finish_team_unenrollment EncryptedFolderFinishTeamUnenrollmentType + "(encryption) Deactivated team folder encryption" + encrypted_folder_init_team_key_rotation EncryptedFolderInitTeamKeyRotationType + "(encryption) Initiated team key rotation" + encrypted_folder_init_team_unenrollment EncryptedFolderInitTeamUnenrollmentType + "(encryption) Initiated deactivation of team folder encryption" + encrypted_folder_remove_backup_key EncryptedFolderRemoveBackupKeyType + "(encryption) Removed recovery key" + encrypted_folder_rotate_team_key EncryptedFolderRotateTeamKeyType + "(encryption) Rotated team key" + encrypted_folder_unenroll_client EncryptedFolderUnenrollClientType + "(encryption) Unenrolled device" + team_encryption_key_activate_key TeamEncryptionKeyActivateKeyType + "(encryption) Activated team encryption key" + team_encryption_key_cancel_key_deletion TeamEncryptionKeyCancelKeyDeletionType + "(encryption) Canceled team encryption key deletion" + team_encryption_key_create_key TeamEncryptionKeyCreateKeyType + "(encryption) Created team encryption key" + team_encryption_key_deactivate_key TeamEncryptionKeyDeactivateKeyType + "(encryption) Deactivated team encryption key" + team_encryption_key_delete_key TeamEncryptionKeyDeleteKeyType + "(encryption) Deleted team encryption key" + team_encryption_key_disable_key TeamEncryptionKeyDisableKeyType + "(encryption) Disabled team encryption key" + team_encryption_key_enable_key TeamEncryptionKeyEnableKeyType + "(encryption) Enabled team encryption key" + team_encryption_key_rotate_key TeamEncryptionKeyRotateKeyType + "(encryption) Rotated team encryption key (deprecated, no longer logged)" + team_encryption_key_schedule_key_deletion TeamEncryptionKeyScheduleKeyDeletionType + "(encryption) Scheduled encryption key deletion" + apply_naming_convention ApplyNamingConventionType + "(file_operations) Applied naming convention" + create_folder CreateFolderType + "(file_operations) Created folders (deprecated, no longer logged)" + file_add FileAddType + "(file_operations) Added files and/or folders" + file_add_from_automation FileAddFromAutomationType + "(file_operations) Added files and/or folders from automation" + file_copy FileCopyType + "(file_operations) Copied files and/or folders" + file_delete FileDeleteType + "(file_operations) Deleted files and/or folders" + file_download FileDownloadType + "(file_operations) Downloaded files and/or folders" + file_edit FileEditType + "(file_operations) Edited files" + file_get_copy_reference FileGetCopyReferenceType + "(file_operations) Created copy reference to file/folder" + file_locking_lock_status_changed FileLockingLockStatusChangedType + "(file_operations) Locked/unlocked editing for a file" + file_move FileMoveType + "(file_operations) Moved files and/or folders" + file_permanently_delete FilePermanentlyDeleteType + "(file_operations) Permanently deleted files and/or folders" + file_preview FilePreviewType + "(file_operations) Previewed files and/or folders" + file_rename FileRenameType + "(file_operations) Renamed files and/or folders" + file_restore FileRestoreType + "(file_operations) Restored deleted files and/or folders" + file_revert FileRevertType + "(file_operations) Reverted files to previous version" + file_rollback_changes FileRollbackChangesType + "(file_operations) Rolled back file actions" + file_save_copy_reference FileSaveCopyReferenceType + "(file_operations) Saved file/folder using copy reference" + folder_overview_description_changed FolderOverviewDescriptionChangedType + "(file_operations) Updated folder overview" + folder_overview_item_pinned FolderOverviewItemPinnedType + "(file_operations) Pinned item to folder overview" + folder_overview_item_unpinned FolderOverviewItemUnpinnedType + "(file_operations) Unpinned item from folder overview" + object_label_added ObjectLabelAddedType + "(file_operations) Added a label" + object_label_removed ObjectLabelRemovedType + "(file_operations) Removed a label" + object_label_updated_value ObjectLabelUpdatedValueType + "(file_operations) Updated a label's value" + organize_folder_with_tidy OrganizeFolderWithTidyType + "(file_operations) Organized a folder with multi-file organize" + replay_file_delete ReplayFileDeleteType + "(file_operations) Deleted files in Replay" + replay_file_downloaded ReplayFileDownloadedType + "(file_operations) Downloaded files in Replay" + replay_team_project_created ReplayTeamProjectCreatedType + "(file_operations) Created a team project in Replay" + rewind_folder RewindFolderType + "(file_operations) Rewound a folder" + undo_naming_convention UndoNamingConventionType + "(file_operations) Reverted naming convention" + undo_organize_folder_with_tidy UndoOrganizeFolderWithTidyType + "(file_operations) Removed multi-file organize" + user_tags_added UserTagsAddedType + "(file_operations) Tagged a file" + user_tags_removed UserTagsRemovedType + "(file_operations) Removed tags" + email_ingest_receive_file EmailIngestReceiveFileType + "(file_requests) Received files via Email to Dropbox" + file_request_auto_close FileRequestAutoCloseType + "(file_requests) Auto closed file request" + file_request_change FileRequestChangeType + "(file_requests) Changed file request" + file_request_close FileRequestCloseType + "(file_requests) Closed file request" + file_request_create FileRequestCreateType + "(file_requests) Created file request" + file_request_delete FileRequestDeleteType + "(file_requests) Delete file request" + file_request_receive_file FileRequestReceiveFileType + "(file_requests) Received files for file request" + group_add_external_id GroupAddExternalIdType + "(groups) Added external ID for group" + group_add_member GroupAddMemberType + "(groups) Added team members to group" + group_change_external_id GroupChangeExternalIdType + "(groups) Changed external ID for group" + group_change_management_type GroupChangeManagementTypeType + "(groups) Changed group management type" + group_change_member_role GroupChangeMemberRoleType + "(groups) Changed manager permissions of group member" + group_create GroupCreateType + "(groups) Created group" + group_delete GroupDeleteType + "(groups) Deleted group" + group_description_updated GroupDescriptionUpdatedType + "(groups) Updated group (deprecated, no longer logged)" + group_external_sharing_setting_override_changed GroupExternalSharingSettingOverrideChangedType + "(groups) Changed group's external sharing setting" + group_join_policy_updated GroupJoinPolicyUpdatedType + "(groups) Updated group join policy (deprecated, no longer logged)" + group_moved GroupMovedType + "(groups) Moved group (deprecated, no longer logged)" + group_remove_external_id GroupRemoveExternalIdType + "(groups) Removed external ID for group" + group_remove_member GroupRemoveMemberType + "(groups) Removed team members from group" + group_rename GroupRenameType + "(groups) Renamed group" + account_lock_or_unlocked AccountLockOrUnlockedType + "(logins) Unlocked/locked account after failed sign in attempts" + emm_error EmmErrorType + "(logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in')" + guest_admin_signed_in_via_trusted_teams GuestAdminSignedInViaTrustedTeamsType + "(logins) Started trusted team admin session" + guest_admin_signed_out_via_trusted_teams GuestAdminSignedOutViaTrustedTeamsType + "(logins) Ended trusted team admin session" + login_fail LoginFailType + "(logins) Failed to sign in" + login_success LoginSuccessType + "(logins) Signed in" + logout LogoutType + "(logins) Signed out" + reseller_support_session_end ResellerSupportSessionEndType + "(logins) Ended reseller support session" + reseller_support_session_start ResellerSupportSessionStartType + "(logins) Started reseller support session" + sign_in_as_session_end SignInAsSessionEndType + "(logins) Ended admin sign-in-as session" + sign_in_as_session_start SignInAsSessionStartType + "(logins) Started admin sign-in-as session" + sso_error SsoErrorType + "(logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in')" + addon_assigned AddonAssignedType + "(members) Add-on Assigned" + addon_removed AddonRemovedType + "(members) Add-on Removed" + backup_admin_invitation_sent BackupAdminInvitationSentType + "(members) Invited members to activate Backup" + backup_invitation_opened BackupInvitationOpenedType + "(members) Opened Backup invite" + create_team_invite_link CreateTeamInviteLinkType + "(members) Created team invite link" + delete_team_invite_link DeleteTeamInviteLinkType + "(members) Deleted team invite link" + member_add_external_id MemberAddExternalIdType + "(members) Added an external ID for team member" + member_add_name MemberAddNameType + "(members) Added team member name" + member_change_admin_role MemberChangeAdminRoleType + "(members) Changed team member admin role" + member_change_email MemberChangeEmailType + "(members) Changed team member email" + member_change_external_id MemberChangeExternalIdType + "(members) Changed the external ID for team member" + member_change_membership_type MemberChangeMembershipTypeType + "(members) Changed membership type (limited/full) of member (deprecated, no longer logged)" + member_change_name MemberChangeNameType + "(members) Changed team member name" + member_change_reseller_role MemberChangeResellerRoleType + "(members) Changed team member reseller role" + member_change_status MemberChangeStatusType + "(members) Changed member status (invited, joined, suspended, etc.)" + member_delete_manual_contacts MemberDeleteManualContactsType + "(members) Cleared manually added contacts" + member_delete_profile_photo MemberDeleteProfilePhotoType + "(members) Deleted team member profile photo" + member_permanently_delete_account_contents MemberPermanentlyDeleteAccountContentsType + "(members) Permanently deleted contents of deleted team member account" + member_remove_external_id MemberRemoveExternalIdType + "(members) Removed the external ID for team member" + member_set_profile_photo MemberSetProfilePhotoType + "(members) Set team member profile photo" + member_space_limits_add_custom_quota MemberSpaceLimitsAddCustomQuotaType + "(members) Set custom member space limit" + member_space_limits_change_custom_quota MemberSpaceLimitsChangeCustomQuotaType + "(members) Changed custom member space limit" + member_space_limits_change_status MemberSpaceLimitsChangeStatusType + "(members) Changed space limit status" + member_space_limits_remove_custom_quota MemberSpaceLimitsRemoveCustomQuotaType + "(members) Removed custom member space limit" + member_suggest MemberSuggestType + "(members) Suggested person to add to team" + member_transfer_account_contents MemberTransferAccountContentsType + "(members) Transferred contents of deleted member account to another member" + pending_secondary_email_added PendingSecondaryEmailAddedType + "(members) Added pending secondary email" + product_assigned_to_member ProductAssignedToMemberType + "(members) Product assigned to team member" + product_removed_from_member ProductRemovedFromMemberType + "(members) Product removed from team member" + secondary_email_deleted SecondaryEmailDeletedType + "(members) Deleted secondary email" + secondary_email_verified SecondaryEmailVerifiedType + "(members) Verified secondary email" + secondary_mails_policy_changed SecondaryMailsPolicyChangedType + "(members) Secondary mails policy changed" + binder_add_page BinderAddPageType + "(paper) Added Binder page (deprecated, replaced by 'Edited files')" + binder_add_section BinderAddSectionType + "(paper) Added Binder section (deprecated, replaced by 'Edited files')" + binder_remove_page BinderRemovePageType + "(paper) Removed Binder page (deprecated, replaced by 'Edited files')" + binder_remove_section BinderRemoveSectionType + "(paper) Removed Binder section (deprecated, replaced by 'Edited files')" + binder_rename_page BinderRenamePageType + "(paper) Renamed Binder page (deprecated, replaced by 'Edited files')" + binder_rename_section BinderRenameSectionType + "(paper) Renamed Binder section (deprecated, replaced by 'Edited files')" + binder_reorder_page BinderReorderPageType + "(paper) Reordered Binder page (deprecated, replaced by 'Edited files')" + binder_reorder_section BinderReorderSectionType + "(paper) Reordered Binder section (deprecated, replaced by 'Edited files')" + paper_content_add_member PaperContentAddMemberType + "(paper) Added users and/or groups to Paper doc/folder" + paper_content_add_to_folder PaperContentAddToFolderType + "(paper) Added Paper doc/folder to folder" + paper_content_archive PaperContentArchiveType + "(paper) Archived Paper doc/folder" + paper_content_create PaperContentCreateType + "(paper) Created Paper doc/folder" + paper_content_permanently_delete PaperContentPermanentlyDeleteType + "(paper) Permanently deleted Paper doc/folder" + paper_content_remove_from_folder PaperContentRemoveFromFolderType + "(paper) Removed Paper doc/folder from folder" + paper_content_remove_member PaperContentRemoveMemberType + "(paper) Removed users and/or groups from Paper doc/folder" + paper_content_rename PaperContentRenameType + "(paper) Renamed Paper doc/folder" + paper_content_restore PaperContentRestoreType + "(paper) Restored archived Paper doc/folder" + paper_doc_add_comment PaperDocAddCommentType + "(paper) Added Paper doc comment" + paper_doc_change_member_role PaperDocChangeMemberRoleType + "(paper) Changed member permissions for Paper doc" + paper_doc_change_sharing_policy PaperDocChangeSharingPolicyType + "(paper) Changed sharing setting for Paper doc" + paper_doc_change_subscription PaperDocChangeSubscriptionType + "(paper) Followed/unfollowed Paper doc" + paper_doc_deleted PaperDocDeletedType + "(paper) Archived Paper doc (deprecated, no longer logged)" + paper_doc_delete_comment PaperDocDeleteCommentType + "(paper) Deleted Paper doc comment" + paper_doc_download PaperDocDownloadType + "(paper) Downloaded Paper doc in specific format" + paper_doc_edit PaperDocEditType + "(paper) Edited Paper doc" + paper_doc_edit_comment PaperDocEditCommentType + "(paper) Edited Paper doc comment" + paper_doc_followed PaperDocFollowedType + "(paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc')" + paper_doc_mention PaperDocMentionType + "(paper) Mentioned user in Paper doc" + paper_doc_ownership_changed PaperDocOwnershipChangedType + "(paper) Transferred ownership of Paper doc" + paper_doc_request_access PaperDocRequestAccessType + "(paper) Requested access to Paper doc" + paper_doc_resolve_comment PaperDocResolveCommentType + "(paper) Resolved Paper doc comment" + paper_doc_revert PaperDocRevertType + "(paper) Restored Paper doc to previous version" + paper_doc_slack_share PaperDocSlackShareType + "(paper) Shared Paper doc via Slack" + paper_doc_team_invite PaperDocTeamInviteType + "(paper) Shared Paper doc with users and/or groups (deprecated, no longer logged)" + paper_doc_trashed PaperDocTrashedType + "(paper) Deleted Paper doc" + paper_doc_unresolve_comment PaperDocUnresolveCommentType + "(paper) Unresolved Paper doc comment" + paper_doc_untrashed PaperDocUntrashedType + "(paper) Restored Paper doc" + paper_doc_view PaperDocViewType + "(paper) Viewed Paper doc" + paper_external_view_allow PaperExternalViewAllowType + "(paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged)" + paper_external_view_default_team PaperExternalViewDefaultTeamType + "(paper) Changed Paper external sharing setting to default team (deprecated, no longer logged)" + paper_external_view_forbid PaperExternalViewForbidType + "(paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged)" + paper_folder_change_subscription PaperFolderChangeSubscriptionType + "(paper) Followed/unfollowed Paper folder" + paper_folder_deleted PaperFolderDeletedType + "(paper) Archived Paper folder (deprecated, no longer logged)" + paper_folder_followed PaperFolderFollowedType + "(paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder')" + paper_folder_team_invite PaperFolderTeamInviteType + "(paper) Shared Paper folder with users and/or groups (deprecated, no longer logged)" + paper_published_link_change_permission PaperPublishedLinkChangePermissionType + "(paper) Changed permissions for published doc" + paper_published_link_create PaperPublishedLinkCreateType + "(paper) Published doc" + paper_published_link_disabled PaperPublishedLinkDisabledType + "(paper) Unpublished doc" + paper_published_link_view PaperPublishedLinkViewType + "(paper) Viewed published doc" + password_change PasswordChangeType + "(passwords) Changed password" + password_reset PasswordResetType + "(passwords) Reset password" + password_reset_all PasswordResetAllType + "(passwords) Reset all team member passwords" + classification_create_report ClassificationCreateReportType + "(reports) Created Classification report" + classification_create_report_fail ClassificationCreateReportFailType + "(reports) Couldn't create Classification report" + emm_create_exceptions_report EmmCreateExceptionsReportType + "(reports) Created EMM-excluded users report" + emm_create_usage_report EmmCreateUsageReportType + "(reports) Created EMM mobile app usage report" + export_members_report ExportMembersReportType + "(reports) Created member data report" + export_members_report_fail ExportMembersReportFailType + "(reports) Failed to create members data report" + external_sharing_create_report ExternalSharingCreateReportType + "(reports) Created External sharing report" + external_sharing_report_failed ExternalSharingReportFailedType + "(reports) Couldn't create External sharing report" + member_access_details_create_report MemberAccessDetailsCreateReportType + "(reports) Created member access report" + member_access_details_create_report_failed MemberAccessDetailsCreateReportFailedType + "(reports) Couldn't generate member access report" + no_expiration_link_gen_create_report NoExpirationLinkGenCreateReportType + "(reports) Report created: Links created with no expiration" + no_expiration_link_gen_report_failed NoExpirationLinkGenReportFailedType + "(reports) Couldn't create report: Links created with no expiration" + no_password_link_gen_create_report NoPasswordLinkGenCreateReportType + "(reports) Report created: Links created without passwords" + no_password_link_gen_report_failed NoPasswordLinkGenReportFailedType + "(reports) Couldn't create report: Links created without passwords" + no_password_link_view_create_report NoPasswordLinkViewCreateReportType + "(reports) Report created: Views of links without passwords" + no_password_link_view_report_failed NoPasswordLinkViewReportFailedType + "(reports) Couldn't create report: Views of links without passwords" + outdated_link_view_create_report OutdatedLinkViewCreateReportType + "(reports) Report created: Views of old links" + outdated_link_view_report_failed OutdatedLinkViewReportFailedType + "(reports) Couldn't create report: Views of old links" + paper_admin_export_start PaperAdminExportStartType + "(reports) Exported all team Paper docs" + ransomware_alert_create_report RansomwareAlertCreateReportType + "(reports) Created ransomware report" + ransomware_alert_create_report_failed RansomwareAlertCreateReportFailedType + "(reports) Couldn't generate ransomware report" + shared_folders_create_report SharedFoldersCreateReportType + "(reports) Created shared folders report" + shared_folders_create_report_failed SharedFoldersCreateReportFailedType + "(reports) Couldn't generate shared folders report" + smart_sync_create_admin_privilege_report SmartSyncCreateAdminPrivilegeReportType + "(reports) Created Smart Sync non-admin devices report" + team_activity_create_report TeamActivityCreateReportType + "(reports) Created team activity report" + team_activity_create_report_fail TeamActivityCreateReportFailType + "(reports) Couldn't generate team activity report" + team_folders_create_report TeamFoldersCreateReportType + "(reports) Created team folders report" + team_folders_create_report_failed TeamFoldersCreateReportFailedType + "(reports) Couldn't generate team folders report" + team_storage_create_report TeamStorageCreateReportType + "(reports) Created team storage report" + team_storage_create_report_failed TeamStorageCreateReportFailedType + "(reports) Couldn't generate team storage report" + collection_share CollectionShareType + "(sharing) Shared album" + file_transfers_file_add FileTransfersFileAddType + "(sharing) Transfer files added" + file_transfers_transfer_delete FileTransfersTransferDeleteType + "(sharing) Deleted transfer" + file_transfers_transfer_download FileTransfersTransferDownloadType + "(sharing) Transfer downloaded" + file_transfers_transfer_send FileTransfersTransferSendType + "(sharing) Sent transfer" + file_transfers_transfer_view FileTransfersTransferViewType + "(sharing) Viewed transfer" + note_acl_invite_only NoteAclInviteOnlyType + "(sharing) Changed Paper doc to invite-only (deprecated, no longer logged)" + note_acl_link NoteAclLinkType + "(sharing) Changed Paper doc to link-accessible (deprecated, no longer logged)" + note_acl_team_link NoteAclTeamLinkType + "(sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged)" + note_shared NoteSharedType + "(sharing) Shared Paper doc (deprecated, no longer logged)" + note_share_receive NoteShareReceiveType + "(sharing) Shared received Paper doc (deprecated, no longer logged)" + open_note_shared OpenNoteSharedType + "(sharing) Opened shared Paper doc (deprecated, no longer logged)" + replay_file_shared_link_created ReplayFileSharedLinkCreatedType + "(sharing) Created shared link in Replay" + replay_file_shared_link_modified ReplayFileSharedLinkModifiedType + "(sharing) Changed shared link in Replay" + replay_project_team_add ReplayProjectTeamAddType + "(sharing) Added member to Replay Project" + replay_project_team_delete ReplayProjectTeamDeleteType + "(sharing) Removed member from Replay Project" + send_and_track_file_added SendAndTrackFileAddedType + "(sharing) File added to Send and Track" + send_and_track_file_renamed SendAndTrackFileRenamedType + "(sharing) File renamed in Send and Track" + send_and_track_file_updated SendAndTrackFileUpdatedType + "(sharing) File updated in Send and Track" + send_and_track_link_created SendAndTrackLinkCreatedType + "(sharing) Link created in Send and Track" + send_and_track_link_deleted SendAndTrackLinkDeletedType + "(sharing) Link deleted in Send and Track" + send_and_track_link_updated SendAndTrackLinkUpdatedType + "(sharing) Send and Track Link Updated" + send_and_track_link_viewed SendAndTrackLinkViewedType + "(sharing) Send and Track Link Visited" + send_and_track_removed_file_and_associated_links SendAndTrackRemovedFileAndAssociatedLinksType + "(sharing) Send and Track file and associated links deleted" + sf_add_group SfAddGroupType + "(sharing) Added team to shared folder (deprecated, no longer logged)" + sf_allow_non_members_to_view_shared_links SfAllowNonMembersToViewSharedLinksType + "(sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged)" + sf_external_invite_warn SfExternalInviteWarnType + "(sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged)" + sf_fb_invite SfFbInviteType + "(sharing) Invited Facebook users to shared folder (deprecated, no longer logged)" + sf_fb_invite_change_role SfFbInviteChangeRoleType + "(sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged)" + sf_fb_uninvite SfFbUninviteType + "(sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged)" + sf_invite_group SfInviteGroupType + "(sharing) Invited group to shared folder (deprecated, no longer logged)" + sf_team_grant_access SfTeamGrantAccessType + "(sharing) Granted access to shared folder (deprecated, no longer logged)" + sf_team_invite SfTeamInviteType + "(sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder')" + sf_team_invite_change_role SfTeamInviteChangeRoleType + "(sharing) Changed team member's role in shared folder (deprecated, no longer logged)" + sf_team_join SfTeamJoinType + "(sharing) Joined team member's shared folder (deprecated, no longer logged)" + sf_team_join_from_oob_link SfTeamJoinFromOobLinkType + "(sharing) Joined team member's shared folder from link (deprecated, no longer logged)" + sf_team_uninvite SfTeamUninviteType + "(sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted')" + shared_content_add_invitees SharedContentAddInviteesType + "(sharing) Invited user to Dropbox and added them to shared file/folder" + shared_content_add_link_expiry SharedContentAddLinkExpiryType + "(sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged)" + shared_content_add_link_password SharedContentAddLinkPasswordType + "(sharing) Added password to link for shared file/folder (deprecated, no longer logged)" + shared_content_add_member SharedContentAddMemberType + "(sharing) Added users and/or groups to shared file/folder" + shared_content_change_downloads_policy SharedContentChangeDownloadsPolicyType + "(sharing) Changed whether members can download shared file/folder (deprecated, no longer logged)" + shared_content_change_invitee_role SharedContentChangeInviteeRoleType + "(sharing) Changed access type of invitee to shared file/folder before invite was accepted" + shared_content_change_link_audience SharedContentChangeLinkAudienceType + "(sharing) Changed link audience of shared file/folder (deprecated, no longer logged)" + shared_content_change_link_expiry SharedContentChangeLinkExpiryType + "(sharing) Changed link expiration of shared file/folder (deprecated, no longer logged)" + shared_content_change_link_password SharedContentChangeLinkPasswordType + "(sharing) Changed link password of shared file/folder (deprecated, no longer logged)" + shared_content_change_member_role SharedContentChangeMemberRoleType + "(sharing) Changed access type of shared file/folder member" + shared_content_change_viewer_info_policy SharedContentChangeViewerInfoPolicyType + "(sharing) Changed whether members can see who viewed shared file/folder" + shared_content_claim_invitation SharedContentClaimInvitationType + "(sharing) Acquired membership of shared file/folder by accepting invite" + shared_content_copy SharedContentCopyType + "(sharing) Copied shared file/folder to own Dropbox" + shared_content_download SharedContentDownloadType + "(sharing) Downloaded shared file/folder" + shared_content_relinquish_membership SharedContentRelinquishMembershipType + "(sharing) Left shared file/folder" + shared_content_remove_invitees SharedContentRemoveInviteesType + "(sharing) Removed invitee from shared file/folder before invite was accepted" + shared_content_remove_link_expiry SharedContentRemoveLinkExpiryType + "(sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged)" + shared_content_remove_link_password SharedContentRemoveLinkPasswordType + "(sharing) Removed link password of shared file/folder (deprecated, no longer logged)" + shared_content_remove_member SharedContentRemoveMemberType + "(sharing) Removed user/group from shared file/folder" + shared_content_request_access SharedContentRequestAccessType + "(sharing) Requested access to shared file/folder" + shared_content_restore_invitees SharedContentRestoreInviteesType + "(sharing) Restored shared file/folder invitees" + shared_content_restore_member SharedContentRestoreMemberType + "(sharing) Restored users and/or groups to membership of shared file/folder" + shared_content_unshare SharedContentUnshareType + "(sharing) Unshared file/folder by clearing membership" + shared_content_view SharedContentViewType + "(sharing) Previewed shared file/folder" + shared_folder_change_link_policy SharedFolderChangeLinkPolicyType + "(sharing) Changed who can access shared folder via link" + shared_folder_change_members_inheritance_policy SharedFolderChangeMembersInheritancePolicyType + "(sharing) Changed whether shared folder inherits members from parent folder" + shared_folder_change_members_management_policy SharedFolderChangeMembersManagementPolicyType + "(sharing) Changed who can add/remove members of shared folder" + shared_folder_change_members_policy SharedFolderChangeMembersPolicyType + "(sharing) Changed who can become member of shared folder" + shared_folder_create SharedFolderCreateType + "(sharing) Created shared folder" + shared_folder_decline_invitation SharedFolderDeclineInvitationType + "(sharing) Declined team member's invite to shared folder" + shared_folder_mount SharedFolderMountType + "(sharing) Added shared folder to own Dropbox" + shared_folder_nest SharedFolderNestType + "(sharing) Changed parent of shared folder" + shared_folder_transfer_ownership SharedFolderTransferOwnershipType + "(sharing) Transferred ownership of shared folder to another member" + shared_folder_unmount SharedFolderUnmountType + "(sharing) Deleted shared folder from Dropbox" + shared_link_add_expiry SharedLinkAddExpiryType + "(sharing) Added shared link expiration date" + shared_link_change_expiry SharedLinkChangeExpiryType + "(sharing) Changed shared link expiration date" + shared_link_change_visibility SharedLinkChangeVisibilityType + "(sharing) Changed visibility of shared link" + shared_link_copy SharedLinkCopyType + "(sharing) Added file/folder to Dropbox from shared link" + shared_link_create SharedLinkCreateType + "(sharing) Created shared link" + shared_link_disable SharedLinkDisableType + "(sharing) Removed shared link" + shared_link_download SharedLinkDownloadType + "(sharing) Downloaded file/folder from shared link" + shared_link_remove_expiry SharedLinkRemoveExpiryType + "(sharing) Removed shared link expiration date" + shared_link_remove_visitor SharedLinkRemoveVisitorType + "(sharing) Removed link visitor" + shared_link_settings_add_expiration SharedLinkSettingsAddExpirationType + "(sharing) Added an expiration date to the shared link" + shared_link_settings_add_password SharedLinkSettingsAddPasswordType + "(sharing) Added a password to the shared link" + shared_link_settings_allow_download_disabled SharedLinkSettingsAllowDownloadDisabledType + "(sharing) Disabled downloads" + shared_link_settings_allow_download_enabled SharedLinkSettingsAllowDownloadEnabledType + "(sharing) Enabled downloads" + shared_link_settings_change_audience SharedLinkSettingsChangeAudienceType + "(sharing) Changed the audience of the shared link" + shared_link_settings_change_expiration SharedLinkSettingsChangeExpirationType + "(sharing) Changed the expiration date of the shared link" + shared_link_settings_change_password SharedLinkSettingsChangePasswordType + "(sharing) Changed the password of the shared link" + shared_link_settings_remove_expiration SharedLinkSettingsRemoveExpirationType + "(sharing) Removed the expiration date from the shared link" + shared_link_settings_remove_password SharedLinkSettingsRemovePasswordType + "(sharing) Removed the password from the shared link" + shared_link_share SharedLinkShareType + "(sharing) Added members as audience of shared link" + shared_link_view SharedLinkViewType + "(sharing) Opened shared link" + shared_note_opened SharedNoteOpenedType + "(sharing) Opened shared Paper doc (deprecated, no longer logged)" + shmodel_disable_downloads ShmodelDisableDownloadsType + "(sharing) Disabled downloads for link (deprecated, no longer logged)" + shmodel_enable_downloads ShmodelEnableDownloadsType + "(sharing) Enabled downloads for link (deprecated, no longer logged)" + shmodel_group_share ShmodelGroupShareType + "(sharing) Shared link with group (deprecated, no longer logged)" + showcase_access_granted ShowcaseAccessGrantedType + "(showcase) Granted access to showcase" + showcase_add_member ShowcaseAddMemberType + "(showcase) Added member to showcase" + showcase_archived ShowcaseArchivedType + "(showcase) Archived showcase" + showcase_created ShowcaseCreatedType + "(showcase) Created showcase" + showcase_delete_comment ShowcaseDeleteCommentType + "(showcase) Deleted showcase comment" + showcase_edited ShowcaseEditedType + "(showcase) Edited showcase" + showcase_edit_comment ShowcaseEditCommentType + "(showcase) Edited showcase comment" + showcase_file_added ShowcaseFileAddedType + "(showcase) Added file to showcase" + showcase_file_download ShowcaseFileDownloadType + "(showcase) Downloaded file from showcase" + showcase_file_removed ShowcaseFileRemovedType + "(showcase) Removed file from showcase" + showcase_file_view ShowcaseFileViewType + "(showcase) Viewed file in showcase" + showcase_permanently_deleted ShowcasePermanentlyDeletedType + "(showcase) Permanently deleted showcase" + showcase_post_comment ShowcasePostCommentType + "(showcase) Added showcase comment" + showcase_remove_member ShowcaseRemoveMemberType + "(showcase) Removed member from showcase" + showcase_renamed ShowcaseRenamedType + "(showcase) Renamed showcase" + showcase_request_access ShowcaseRequestAccessType + "(showcase) Requested access to showcase" + showcase_resolve_comment ShowcaseResolveCommentType + "(showcase) Resolved showcase comment" + showcase_restored ShowcaseRestoredType + "(showcase) Unarchived showcase" + showcase_trashed ShowcaseTrashedType + "(showcase) Deleted showcase" + showcase_trashed_deprecated ShowcaseTrashedDeprecatedType + "(showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase')" + showcase_unresolve_comment ShowcaseUnresolveCommentType + "(showcase) Unresolved showcase comment" + showcase_untrashed ShowcaseUntrashedType + "(showcase) Restored showcase" + showcase_untrashed_deprecated ShowcaseUntrashedDeprecatedType + "(showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase')" + showcase_view ShowcaseViewType + "(showcase) Viewed showcase" + sign_signature_request_canceled SignSignatureRequestCanceledType + "(signatures) Canceled signature request" + sign_signature_request_completed SignSignatureRequestCompletedType + "(signatures) Completed signature request" + sign_signature_request_declined SignSignatureRequestDeclinedType + "(signatures) Declined signature request" + sign_signature_request_opened SignSignatureRequestOpenedType + "(signatures) Opened signature request" + sign_signature_request_reminder_sent SignSignatureRequestReminderSentType + "(signatures) Sent signature request reminder" + sign_signature_request_sent SignSignatureRequestSentType + "(signatures) Sent signature request" + sign_template_created SignTemplateCreatedType + "(signatures) Created template" + sign_template_shared SignTemplateSharedType + "(signatures) Shared template" + risc_security_event RiscSecurityEventType + "(sso) RISC security event received from external provider" + sso_add_cert SsoAddCertType + "(sso) Added X.509 certificate for SSO" + sso_add_login_url SsoAddLoginUrlType + "(sso) Added sign-in URL for SSO" + sso_add_logout_url SsoAddLogoutUrlType + "(sso) Added sign-out URL for SSO" + sso_change_cert SsoChangeCertType + "(sso) Changed X.509 certificate for SSO" + sso_change_login_url SsoChangeLoginUrlType + "(sso) Changed sign-in URL for SSO" + sso_change_logout_url SsoChangeLogoutUrlType + "(sso) Changed sign-out URL for SSO" + sso_change_saml_identity_mode SsoChangeSamlIdentityModeType + "(sso) Changed SAML identity mode for SSO" + sso_remove_cert SsoRemoveCertType + "(sso) Removed X.509 certificate for SSO" + sso_remove_login_url SsoRemoveLoginUrlType + "(sso) Removed sign-in URL for SSO" + sso_remove_logout_url SsoRemoveLogoutUrlType + "(sso) Removed sign-out URL for SSO" + team_folder_change_status TeamFolderChangeStatusType + "(team_folders) Changed archival status of team folder" + team_folder_create TeamFolderCreateType + "(team_folders) Created team folder in active status" + team_folder_downgrade TeamFolderDowngradeType + "(team_folders) Downgraded team folder to regular shared folder" + team_folder_permanently_delete TeamFolderPermanentlyDeleteType + "(team_folders) Permanently deleted archived team folder" + team_folder_rename TeamFolderRenameType + "(team_folders) Renamed active/archived team folder" + team_selective_sync_settings_changed TeamSelectiveSyncSettingsChangedType + "(team_folders) Changed sync default" + account_capture_change_policy AccountCaptureChangePolicyType + "(team_policies) Changed account capture setting on team domain" + admin_email_reminders_changed AdminEmailRemindersChangedType + "(team_policies) Changed admin reminder settings for requests to join the team" + ai_third_party_sharing_dropbox_base_policy_changed AiThirdPartySharingDropboxBasePolicyChangedType + "(team_policies) Changed AI third party sharing policy for team" + allow_download_disabled AllowDownloadDisabledType + "(team_policies) Disabled downloads (deprecated, no longer logged)" + allow_download_enabled AllowDownloadEnabledType + "(team_policies) Enabled downloads (deprecated, no longer logged)" + apple_login_change_policy AppleLoginChangePolicyType + "(team_policies) Enabled/disabled Apple login for team" + app_permissions_changed AppPermissionsChangedType + "(team_policies) Changed app permissions" + camera_uploads_policy_changed CameraUploadsPolicyChangedType + "(team_policies) Changed camera uploads setting for team" + capture_team_space_policy_changed CaptureTeamSpacePolicyChangedType + "(team_policies) Changed Capture team space policy for team" + capture_transcript_policy_changed CaptureTranscriptPolicyChangedType + "(team_policies) Changed Capture transcription policy for team" + classification_change_policy ClassificationChangePolicyType + "(team_policies) Changed classification policy for team" + computer_backup_policy_changed ComputerBackupPolicyChangedType + "(team_policies) Changed computer backup policy for team" + content_administration_policy_changed ContentAdministrationPolicyChangedType + "(team_policies) Changed content management setting" + content_deletion_protection_change_policy ContentDeletionProtectionChangePolicyType + "(team_policies) Changed content deletion protection policy for team" + dash_external_sharing_policy_changed DashExternalSharingPolicyChangedType + "(team_policies) Changed Dash external sharing policy for team" + data_placement_restriction_change_policy DataPlacementRestrictionChangePolicyType + "(team_policies) Set restrictions on data center locations where team data resides" + data_placement_restriction_satisfy_policy DataPlacementRestrictionSatisfyPolicyType + "(team_policies) Completed restrictions on data center locations where team data resides" + device_approvals_add_exception DeviceApprovalsAddExceptionType + "(team_policies) Added members to device approvals exception list" + device_approvals_change_desktop_policy DeviceApprovalsChangeDesktopPolicyType + "(team_policies) Set/removed limit on number of computers member can link to team Dropbox account" + device_approvals_change_mobile_policy DeviceApprovalsChangeMobilePolicyType + "(team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account" + device_approvals_change_overage_action DeviceApprovalsChangeOverageActionType + "(team_policies) Changed device approvals setting when member is over limit" + device_approvals_change_unlink_action DeviceApprovalsChangeUnlinkActionType + "(team_policies) Changed device approvals setting when member unlinks approved device" + device_approvals_remove_exception DeviceApprovalsRemoveExceptionType + "(team_policies) Removed members from device approvals exception list" + directory_restrictions_add_members DirectoryRestrictionsAddMembersType + "(team_policies) Added members to directory restrictions list" + directory_restrictions_remove_members DirectoryRestrictionsRemoveMembersType + "(team_policies) Removed members from directory restrictions list" + dropbox_passwords_policy_changed DropboxPasswordsPolicyChangedType + "(team_policies) Changed Dropbox Passwords policy for team" + email_ingest_policy_changed EmailIngestPolicyChangedType + "(team_policies) Changed email to Dropbox policy for team" + emm_add_exception EmmAddExceptionType + "(team_policies) Added members to EMM exception list" + emm_change_policy EmmChangePolicyType + "(team_policies) Enabled/disabled enterprise mobility management for members" + emm_remove_exception EmmRemoveExceptionType + "(team_policies) Removed members from EMM exception list" + extended_version_history_change_policy ExtendedVersionHistoryChangePolicyType + "(team_policies) Accepted/opted out of extended version history" + external_drive_backup_policy_changed ExternalDriveBackupPolicyChangedType + "(team_policies) Changed external drive backup policy for team" + file_comments_change_policy FileCommentsChangePolicyType + "(team_policies) Enabled/disabled commenting on team files" + file_locking_policy_changed FileLockingPolicyChangedType + "(team_policies) Changed file locking policy for team" + file_provider_migration_policy_changed FileProviderMigrationPolicyChangedType + "(team_policies) Changed File Provider Migration policy for team" + file_requests_change_policy FileRequestsChangePolicyType + "(team_policies) Enabled/disabled file requests" + file_requests_emails_enabled FileRequestsEmailsEnabledType + "(team_policies) Enabled file request emails for everyone (deprecated, no longer logged)" + file_requests_emails_restricted_to_team_only FileRequestsEmailsRestrictedToTeamOnlyType + "(team_policies) Enabled file request emails for team (deprecated, no longer logged)" + file_transfers_policy_changed FileTransfersPolicyChangedType + "(team_policies) Changed file transfers policy for team" + flexible_file_names_policy_changed FlexibleFileNamesPolicyChangedType + "(team_policies) Changed flexible file names policy for team" + folder_link_restriction_policy_changed FolderLinkRestrictionPolicyChangedType + "(team_policies) Changed folder link restrictions policy for team" + google_sso_change_policy GoogleSsoChangePolicyType + "(team_policies) Enabled/disabled Google single sign-on for team" + group_user_management_change_policy GroupUserManagementChangePolicyType + "(team_policies) Changed who can create groups" + integration_policy_changed IntegrationPolicyChangedType + "(team_policies) Changed integration policy for team" + invite_acceptance_email_policy_changed InviteAcceptanceEmailPolicyChangedType + "(team_policies) Changed invite accept email policy for team" + member_requests_change_policy MemberRequestsChangePolicyType + "(team_policies) Changed whether users can find team when not invited" + member_send_invite_policy_changed MemberSendInvitePolicyChangedType + "(team_policies) Changed member send invite policy for team" + member_space_limits_add_exception MemberSpaceLimitsAddExceptionType + "(team_policies) Added members to member space limit exception list" + member_space_limits_change_caps_type_policy MemberSpaceLimitsChangeCapsTypePolicyType + "(team_policies) Changed member space limit type for team" + member_space_limits_change_policy MemberSpaceLimitsChangePolicyType + "(team_policies) Changed team default member space limit" + member_space_limits_remove_exception MemberSpaceLimitsRemoveExceptionType + "(team_policies) Removed members from member space limit exception list" + member_suggestions_change_policy MemberSuggestionsChangePolicyType + "(team_policies) Enabled/disabled option for team members to suggest people to add to team" + microsoft_login_change_policy MicrosoftLoginChangePolicyType + "(team_policies) Enabled/disabled Microsoft login for team" + microsoft_office_addin_change_policy MicrosoftOfficeAddinChangePolicyType + "(team_policies) Enabled/disabled Microsoft Office add-in" + network_control_change_policy NetworkControlChangePolicyType + "(team_policies) Enabled/disabled network control" + paper_change_deployment_policy PaperChangeDeploymentPolicyType + "(team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members" + paper_change_member_link_policy PaperChangeMemberLinkPolicyType + "(team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged)" + paper_change_member_policy PaperChangeMemberPolicyType + "(team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default" + paper_change_policy PaperChangePolicyType + "(team_policies) Enabled/disabled Dropbox Paper for team" + paper_default_folder_policy_changed PaperDefaultFolderPolicyChangedType + "(team_policies) Changed Paper Default Folder Policy setting for team" + paper_desktop_policy_changed PaperDesktopPolicyChangedType + "(team_policies) Enabled/disabled Paper Desktop for team" + paper_enabled_users_group_addition PaperEnabledUsersGroupAdditionType + "(team_policies) Added users to Paper-enabled users list" + paper_enabled_users_group_removal PaperEnabledUsersGroupRemovalType + "(team_policies) Removed users from Paper-enabled users list" + passkey_login_policy_changed PasskeyLoginPolicyChangedType + "(team_policies) Changed passkey login policy for team" + password_strength_requirements_change_policy PasswordStrengthRequirementsChangePolicyType + "(team_policies) Changed team password strength requirements" + permanent_delete_change_policy PermanentDeleteChangePolicyType + "(team_policies) Enabled/disabled ability of team members to permanently delete content" + previews_ai_policy_changed PreviewsAiPolicyChangedType + "(team_policies) Changed Dropbox AI policy for team" + replay_adding_people_policy_changed ReplayAddingPeoplePolicyChangedType + "(team_policies) Changed the policy for adding people to Replay content" + replay_sharing_policy_changed ReplaySharingPolicyChangedType + "(team_policies) Changed the policy for sharing Replay content" + reseller_support_change_policy ResellerSupportChangePolicyType + "(team_policies) Enabled/disabled reseller support" + rewind_policy_changed RewindPolicyChangedType + "(team_policies) Changed Rewind policy for team" + send_and_track_policy_changed SendAndTrackPolicyChangedType + "(team_policies) Changed “Send and track” policy for team" + send_external_sharing_policy_changed SendExternalSharingPolicyChangedType + "(team_policies) Changed “Send and track” external sharing policy for team" + send_for_signature_policy_changed SendForSignaturePolicyChangedType + "(team_policies) Changed send for signature policy for team" + shared_link_default_permissions_policy_changed SharedLinkDefaultPermissionsPolicyChangedType + "(team_policies) Changed shared link default permissions policy for team" + sharing_change_folder_join_policy SharingChangeFolderJoinPolicyType + "(team_policies) Changed whether team members can join shared folders owned outside team" + sharing_change_link_allow_change_expiration_policy SharingChangeLinkAllowChangeExpirationPolicyType + "(team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team" + sharing_change_link_default_expiration_policy SharingChangeLinkDefaultExpirationPolicyType + "(team_policies) Changed the default expiration for the links shared outside of the team" + sharing_change_link_enforce_password_policy SharingChangeLinkEnforcePasswordPolicyType + "(team_policies) Changed the password requirement for the links shared outside of the team" + sharing_change_link_policy SharingChangeLinkPolicyType + "(team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default" + sharing_change_member_policy SharingChangeMemberPolicyType + "(team_policies) Changed whether members can share files/folders outside team" + showcase_change_download_policy ShowcaseChangeDownloadPolicyType + "(team_policies) Enabled/disabled downloading files from Dropbox Showcase for team" + showcase_change_enabled_policy ShowcaseChangeEnabledPolicyType + "(team_policies) Enabled/disabled Dropbox Showcase for team" + showcase_change_external_sharing_policy ShowcaseChangeExternalSharingPolicyType + "(team_policies) Enabled/disabled sharing Dropbox Showcase externally for team" + sign_external_sharing_policy_changed SignExternalSharingPolicyChangedType + "(team_policies) Changed Signatures external sharing policy for team" + sign_template_creation_permission_changed SignTemplateCreationPermissionChangedType + "(team_policies) Changed template creation permission" + smarter_smart_sync_policy_changed SmarterSmartSyncPolicyChangedType + "(team_policies) Changed automatic Smart Sync setting for team" + smart_sync_change_policy SmartSyncChangePolicyType + "(team_policies) Changed default Smart Sync setting for team members" + smart_sync_not_opt_out SmartSyncNotOptOutType + "(team_policies) Opted team into Smart Sync" + smart_sync_opt_out SmartSyncOptOutType + "(team_policies) Opted team out of Smart Sync" + sso_change_policy SsoChangePolicyType + "(team_policies) Changed single sign-on setting for team" + stack_cross_team_access_policy_changed StackCrossTeamAccessPolicyChangedType + "(team_policies) Changed cross-team Stack access policy for team" + team_branding_policy_changed TeamBrandingPolicyChangedType + "(team_policies) Changed team branding policy for team" + team_extensions_policy_changed TeamExtensionsPolicyChangedType + "(team_policies) Changed App Integrations setting for team" + team_member_storage_request_policy_changed TeamMemberStorageRequestPolicyChangedType + "(team_policies) Changed team member storage request policy for team" + team_selective_sync_policy_changed TeamSelectiveSyncPolicyChangedType + "(team_policies) Enabled/disabled Team Selective Sync for team" + team_sharing_whitelist_subjects_changed TeamSharingWhitelistSubjectsChangedType + "(team_policies) Edited the approved list for sharing externally" + tfa_add_exception TfaAddExceptionType + "(team_policies) Added members to two factor authentication exception list" + tfa_change_policy TfaChangePolicyType + "(team_policies) Changed two-factor authentication setting for team" + tfa_remove_exception TfaRemoveExceptionType + "(team_policies) Removed members from two factor authentication exception list" + top_level_content_policy_changed TopLevelContentPolicyChangedType + "(team_policies) Changed top level content setting for team" + two_account_change_policy TwoAccountChangePolicyType + "(team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer" + viewer_info_policy_changed ViewerInfoPolicyChangedType + "(team_policies) Changed team policy for viewer info" + watermarking_policy_changed WatermarkingPolicyChangedType + "(team_policies) Changed watermarking policy for team" + web_sessions_change_active_session_limit WebSessionsChangeActiveSessionLimitType + "(team_policies) Changed limit on active sessions per member" + web_sessions_change_fixed_length_policy WebSessionsChangeFixedLengthPolicyType + "(team_policies) Changed how long members can stay signed in to Dropbox.com" + web_sessions_change_idle_length_policy WebSessionsChangeIdleLengthPolicyType + "(team_policies) Changed how long team members can be idle while signed in to Dropbox.com" + data_residency_migration_request_successful DataResidencyMigrationRequestSuccessfulType + "(team_profile) Requested data residency migration for team data" + data_residency_migration_request_unsuccessful DataResidencyMigrationRequestUnsuccessfulType + "(team_profile) Request for data residency migration for team data has failed" + team_merge_from TeamMergeFromType + "(team_profile) Merged another team into this team" + team_merge_to TeamMergeToType + "(team_profile) Merged this team into another team" + team_profile_add_background TeamProfileAddBackgroundType + "(team_profile) Added team background to display on shared link headers" + team_profile_add_logo TeamProfileAddLogoType + "(team_profile) Added team logo to display on shared link headers" + team_profile_change_background TeamProfileChangeBackgroundType + "(team_profile) Changed team background displayed on shared link headers" + team_profile_change_default_language TeamProfileChangeDefaultLanguageType + "(team_profile) Changed default language for team" + team_profile_change_logo TeamProfileChangeLogoType + "(team_profile) Changed team logo displayed on shared link headers" + team_profile_change_name TeamProfileChangeNameType + "(team_profile) Changed team name" + team_profile_remove_background TeamProfileRemoveBackgroundType + "(team_profile) Removed team background displayed on shared link headers" + team_profile_remove_logo TeamProfileRemoveLogoType + "(team_profile) Removed team logo displayed on shared link headers" + passkey_add PasskeyAddType + "(tfa) Added passkey for login" + passkey_remove PasskeyRemoveType + "(tfa) Removed passkey for login" + tfa_add_backup_phone TfaAddBackupPhoneType + "(tfa) Added backup phone for two-factor authentication" + tfa_add_security_key TfaAddSecurityKeyType + "(tfa) Added security key for two-factor authentication" + tfa_change_backup_phone TfaChangeBackupPhoneType + "(tfa) Changed backup phone for two-factor authentication" + tfa_change_status TfaChangeStatusType + "(tfa) Enabled/disabled/changed two-factor authentication setting" + tfa_remove_backup_phone TfaRemoveBackupPhoneType + "(tfa) Removed backup phone for two-factor authentication" + tfa_remove_security_key TfaRemoveSecurityKeyType + "(tfa) Removed security key for two-factor authentication" + tfa_reset TfaResetType + "(tfa) Reset two-factor authentication for team member" + changed_enterprise_admin_role ChangedEnterpriseAdminRoleType + "(trusted_teams) Changed enterprise admin role" + changed_enterprise_connected_team_status ChangedEnterpriseConnectedTeamStatusType + "(trusted_teams) Changed enterprise-connected team status" + ended_enterprise_admin_session EndedEnterpriseAdminSessionType + "(trusted_teams) Ended enterprise admin session" + ended_enterprise_admin_session_deprecated EndedEnterpriseAdminSessionDeprecatedType + "(trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session')" + enterprise_settings_locking EnterpriseSettingsLockingType + "(trusted_teams) Changed who can update a setting" + guest_admin_change_status GuestAdminChangeStatusType + "(trusted_teams) Changed guest team admin status" + started_enterprise_admin_session StartedEnterpriseAdminSessionType + "(trusted_teams) Started enterprise admin session" + team_merge_request_accepted TeamMergeRequestAcceptedType + "(trusted_teams) Accepted a team merge request" + team_merge_request_accepted_shown_to_primary_team TeamMergeRequestAcceptedShownToPrimaryTeamType + "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" + team_merge_request_accepted_shown_to_secondary_team TeamMergeRequestAcceptedShownToSecondaryTeamType + "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" + team_merge_request_auto_canceled TeamMergeRequestAutoCanceledType + "(trusted_teams) Automatically canceled team merge request" + team_merge_request_canceled TeamMergeRequestCanceledType + "(trusted_teams) Canceled a team merge request" + team_merge_request_canceled_shown_to_primary_team TeamMergeRequestCanceledShownToPrimaryTeamType + "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" + team_merge_request_canceled_shown_to_secondary_team TeamMergeRequestCanceledShownToSecondaryTeamType + "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" + team_merge_request_expired TeamMergeRequestExpiredType + "(trusted_teams) Team merge request expired" + team_merge_request_expired_shown_to_primary_team TeamMergeRequestExpiredShownToPrimaryTeamType + "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" + team_merge_request_expired_shown_to_secondary_team TeamMergeRequestExpiredShownToSecondaryTeamType + "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" + team_merge_request_rejected_shown_to_primary_team TeamMergeRequestRejectedShownToPrimaryTeamType + "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" + team_merge_request_rejected_shown_to_secondary_team TeamMergeRequestRejectedShownToSecondaryTeamType + "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" + team_merge_request_reminder TeamMergeRequestReminderType + "(trusted_teams) Sent a team merge request reminder" + team_merge_request_reminder_shown_to_primary_team TeamMergeRequestReminderShownToPrimaryTeamType + "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" + team_merge_request_reminder_shown_to_secondary_team TeamMergeRequestReminderShownToSecondaryTeamType + "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" + team_merge_request_revoked TeamMergeRequestRevokedType + "(trusted_teams) Canceled the team merge" + team_merge_request_sent_shown_to_primary_team TeamMergeRequestSentShownToPrimaryTeamType + "(trusted_teams) Requested to merge their Dropbox team into yours" + team_merge_request_sent_shown_to_secondary_team TeamMergeRequestSentShownToSecondaryTeamType + "(trusted_teams) Requested to merge your team into another Dropbox team" + + example default + shared_content_download = default + +union EventTypeArg + "The type of the event." + admin_alerting_alert_state_changed + "(admin_alerting) Changed an alert state" + admin_alerting_changed_alert_config + "(admin_alerting) Changed an alert setting" + admin_alerting_triggered_alert + "(admin_alerting) Triggered security alert" + ransomware_restore_process_completed + "(admin_alerting) Completed ransomware restore process" + ransomware_restore_process_started + "(admin_alerting) Started ransomware restore process" + app_blocked_by_permissions + "(apps) Failed to connect app for member" + app_link_team + "(apps) Linked app for team" + app_link_user + "(apps) Linked app for member" + app_unlink_team + "(apps) Unlinked app for team" + app_unlink_user + "(apps) Unlinked app for member" + integration_connected + "(apps) Connected integration for member" + integration_disconnected + "(apps) Disconnected integration for member" + file_add_comment + "(comments) Added file comment" + file_change_comment_subscription + "(comments) Subscribed to or unsubscribed from comment notifications for file" + file_delete_comment + "(comments) Deleted file comment" + file_edit_comment + "(comments) Edited file comment" + file_like_comment + "(comments) Liked file comment (deprecated, no longer logged)" + file_resolve_comment + "(comments) Resolved file comment" + file_unlike_comment + "(comments) Unliked file comment (deprecated, no longer logged)" + file_unresolve_comment + "(comments) Unresolved file comment" + dash_added_comment_to_stack + "(dash) Added a comment to a stack" + dash_added_connector + "(dash) Connected to a user connector" + dash_added_link_to_stack + "(dash) Added a link to a stack" + dash_added_team_email_domain_allowlist + "(dash) Admin added an email domain to the team allowlist" + dash_admin_added_org_wide_connector + "(dash) Admin added an admin connector" + dash_admin_disabled_connector + "(dash) Admin disabled a user connector" + dash_admin_enabled_connector + "(dash) Admin enabled a user connector" + dash_admin_removed_org_wide_connector + "(dash) Admin removed an admin connector" + dash_archived_stack + "(dash) Archived a stack" + dash_changed_audience_of_shared_link_to_stack + "(dash) Changed the audience of a shared link to a stack" + dash_cloned_stack + "(dash) Cloned stack" + dash_connector_tools_call + "(dash) Called a tool on a connector" + dash_created_stack + "(dash) Created a stack" + dash_deleted_comment_from_stack + "(dash) Deleted a comment from a stack" + dash_deleted_stack + "(dash) Deleted a stack" + dash_edited_comment_in_stack + "(dash) Edited a comment in a stack" + dash_external_user_opened_stack + "(dash) External user opened a stack" + dash_first_launched_desktop + "(dash) Opened the desktop app for the first time" + dash_first_launched_extension + "(dash) Opened the extension for the first time" + dash_first_launched_web_start_page + "(dash) Opened the web Start Page for the first time" + dash_opened_shared_link_to_stack + "(dash) Checked access permissions to a stack" + dash_opened_stack + "(dash) Opened a stack" + dash_preview_opt_out_status_changed + "(dash) Changed the preview opt-out status" + dash_removed_connector + "(dash) Disconnected a user connector" + dash_removed_link_from_stack + "(dash) Removed a link from a stack" + dash_removed_shared_link_to_stack + "(dash) Removed a shared link to a stack" + dash_removed_team_email_domain_allowlist + "(dash) Admin removed an email domain from the team allowlist" + dash_renamed_stack + "(dash) Renamed a stack" + dash_shared_link_to_stack + "(dash) Shared a link to a stack" + dash_unarchived_stack + "(dash) Unarchived a stack" + dash_viewed_company_stack + "(dash) Member viewed a company stack" + dash_viewed_external_ai_activity_report + "(dash) Admin viewed the external AI activity report" + governance_policy_add_folders + "(data_governance) Added folders to policy" + governance_policy_add_folder_failed + "(data_governance) Couldn't add a folder to a policy" + governance_policy_content_disposed + "(data_governance) Content disposed" + governance_policy_create + "(data_governance) Activated a new policy" + governance_policy_delete + "(data_governance) Deleted a policy" + governance_policy_edit_details + "(data_governance) Edited policy" + governance_policy_edit_duration + "(data_governance) Changed policy duration" + governance_policy_export_created + "(data_governance) Created a policy download" + governance_policy_export_removed + "(data_governance) Removed a policy download" + governance_policy_remove_folders + "(data_governance) Removed folders from policy" + governance_policy_report_created + "(data_governance) Created a summary report for a policy" + governance_policy_zip_part_downloaded + "(data_governance) Downloaded content from a policy" + legal_holds_activate_a_hold + "(data_governance) Activated a hold" + legal_holds_add_members + "(data_governance) Added members to a hold" + legal_holds_change_hold_details + "(data_governance) Edited details for a hold" + legal_holds_change_hold_name + "(data_governance) Renamed a hold" + legal_holds_export_a_hold + "(data_governance) Exported hold" + legal_holds_export_cancelled + "(data_governance) Canceled export for a hold" + legal_holds_export_downloaded + "(data_governance) Downloaded export for a hold" + legal_holds_export_removed + "(data_governance) Removed export for a hold" + legal_holds_release_a_hold + "(data_governance) Released a hold" + legal_holds_remove_members + "(data_governance) Removed members from a hold" + legal_holds_report_a_hold + "(data_governance) Created a summary report for a hold" + device_change_ip_desktop + "(devices) Changed IP address associated with active desktop session" + device_change_ip_mobile + "(devices) Changed IP address associated with active mobile session" + device_change_ip_web + "(devices) Changed IP address associated with active web session" + device_delete_on_unlink_fail + "(devices) Failed to delete all files from unlinked device" + device_delete_on_unlink_success + "(devices) Deleted all files from unlinked device" + device_link_fail + "(devices) Failed to link device" + device_link_success + "(devices) Linked device" + device_management_disabled + "(devices) Disabled device management (deprecated, no longer logged)" + device_management_enabled + "(devices) Enabled device management (deprecated, no longer logged)" + device_sync_backup_status_changed + "(devices) Enabled/disabled backup for computer" + device_unlink + "(devices) Disconnected device" + dropbox_passwords_exported + "(devices) Exported passwords" + dropbox_passwords_new_device_enrolled + "(devices) Enrolled new Dropbox Passwords device" + emm_refresh_auth_token + "(devices) Refreshed auth token used for setting up EMM" + external_drive_backup_eligibility_status_checked + "(devices) Checked external drive backup eligibility status" + external_drive_backup_status_changed + "(devices) Modified external drive backup" + account_capture_change_availability + "(domains) Granted/revoked option to enable account capture on team domains" + account_capture_migrate_account + "(domains) Account-captured user migrated account to team" + account_capture_notification_emails_sent + "(domains) Sent account capture email to all unmanaged members" + account_capture_relinquish_account + "(domains) Account-captured user changed account email to personal email" + disabled_domain_invites + "(domains) Disabled domain invites (deprecated, no longer logged)" + domain_invites_approve_request_to_join_team + "(domains) Approved user's request to join team" + domain_invites_decline_request_to_join_team + "(domains) Declined user's request to join team" + domain_invites_email_existing_users + "(domains) Sent domain invites to existing domain accounts (deprecated, no longer logged)" + domain_invites_request_to_join_team + "(domains) Requested to join team" + domain_invites_set_invite_new_user_pref_to_no + "(domains) Disabled \"Automatically invite new users\" (deprecated, no longer logged)" + domain_invites_set_invite_new_user_pref_to_yes + "(domains) Enabled \"Automatically invite new users\" (deprecated, no longer logged)" + domain_verification_add_domain_fail + "(domains) Failed to verify team domain" + domain_verification_add_domain_success + "(domains) Verified team domain" + domain_verification_remove_domain + "(domains) Removed domain from list of verified team domains" + enabled_domain_invites + "(domains) Enabled domain invites (deprecated, no longer logged)" + encrypted_folder_cancel_team_key_rotation + "(encryption) Canceled team key rotation" + encrypted_folder_enroll_backup_key + "(encryption) Added recovery key" + encrypted_folder_enroll_client + "(encryption) Enrolled device" + encrypted_folder_enroll_team + "(encryption) Activated team folder encryption" + encrypted_folder_finish_team_unenrollment + "(encryption) Deactivated team folder encryption" + encrypted_folder_init_team_key_rotation + "(encryption) Initiated team key rotation" + encrypted_folder_init_team_unenrollment + "(encryption) Initiated deactivation of team folder encryption" + encrypted_folder_remove_backup_key + "(encryption) Removed recovery key" + encrypted_folder_rotate_team_key + "(encryption) Rotated team key" + encrypted_folder_unenroll_client + "(encryption) Unenrolled device" + team_encryption_key_activate_key + "(encryption) Activated team encryption key" + team_encryption_key_cancel_key_deletion + "(encryption) Canceled team encryption key deletion" + team_encryption_key_create_key + "(encryption) Created team encryption key" + team_encryption_key_deactivate_key + "(encryption) Deactivated team encryption key" + team_encryption_key_delete_key + "(encryption) Deleted team encryption key" + team_encryption_key_disable_key + "(encryption) Disabled team encryption key" + team_encryption_key_enable_key + "(encryption) Enabled team encryption key" + team_encryption_key_rotate_key + "(encryption) Rotated team encryption key (deprecated, no longer logged)" + team_encryption_key_schedule_key_deletion + "(encryption) Scheduled encryption key deletion" + apply_naming_convention + "(file_operations) Applied naming convention" + create_folder + "(file_operations) Created folders (deprecated, no longer logged)" + file_add + "(file_operations) Added files and/or folders" + file_add_from_automation + "(file_operations) Added files and/or folders from automation" + file_copy + "(file_operations) Copied files and/or folders" + file_delete + "(file_operations) Deleted files and/or folders" + file_download + "(file_operations) Downloaded files and/or folders" + file_edit + "(file_operations) Edited files" + file_get_copy_reference + "(file_operations) Created copy reference to file/folder" + file_locking_lock_status_changed + "(file_operations) Locked/unlocked editing for a file" + file_move + "(file_operations) Moved files and/or folders" + file_permanently_delete + "(file_operations) Permanently deleted files and/or folders" + file_preview + "(file_operations) Previewed files and/or folders" + file_rename + "(file_operations) Renamed files and/or folders" + file_restore + "(file_operations) Restored deleted files and/or folders" + file_revert + "(file_operations) Reverted files to previous version" + file_rollback_changes + "(file_operations) Rolled back file actions" + file_save_copy_reference + "(file_operations) Saved file/folder using copy reference" + folder_overview_description_changed + "(file_operations) Updated folder overview" + folder_overview_item_pinned + "(file_operations) Pinned item to folder overview" + folder_overview_item_unpinned + "(file_operations) Unpinned item from folder overview" + object_label_added + "(file_operations) Added a label" + object_label_removed + "(file_operations) Removed a label" + object_label_updated_value + "(file_operations) Updated a label's value" + organize_folder_with_tidy + "(file_operations) Organized a folder with multi-file organize" + replay_file_delete + "(file_operations) Deleted files in Replay" + replay_file_downloaded + "(file_operations) Downloaded files in Replay" + replay_team_project_created + "(file_operations) Created a team project in Replay" + rewind_folder + "(file_operations) Rewound a folder" + undo_naming_convention + "(file_operations) Reverted naming convention" + undo_organize_folder_with_tidy + "(file_operations) Removed multi-file organize" + user_tags_added + "(file_operations) Tagged a file" + user_tags_removed + "(file_operations) Removed tags" + email_ingest_receive_file + "(file_requests) Received files via Email to Dropbox" + file_request_auto_close + "(file_requests) Auto closed file request" + file_request_change + "(file_requests) Changed file request" + file_request_close + "(file_requests) Closed file request" + file_request_create + "(file_requests) Created file request" + file_request_delete + "(file_requests) Delete file request" + file_request_receive_file + "(file_requests) Received files for file request" + group_add_external_id + "(groups) Added external ID for group" + group_add_member + "(groups) Added team members to group" + group_change_external_id + "(groups) Changed external ID for group" + group_change_management_type + "(groups) Changed group management type" + group_change_member_role + "(groups) Changed manager permissions of group member" + group_create + "(groups) Created group" + group_delete + "(groups) Deleted group" + group_description_updated + "(groups) Updated group (deprecated, no longer logged)" + group_external_sharing_setting_override_changed + "(groups) Changed group's external sharing setting" + group_join_policy_updated + "(groups) Updated group join policy (deprecated, no longer logged)" + group_moved + "(groups) Moved group (deprecated, no longer logged)" + group_remove_external_id + "(groups) Removed external ID for group" + group_remove_member + "(groups) Removed team members from group" + group_rename + "(groups) Renamed group" + account_lock_or_unlocked + "(logins) Unlocked/locked account after failed sign in attempts" + emm_error + "(logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in')" + guest_admin_signed_in_via_trusted_teams + "(logins) Started trusted team admin session" + guest_admin_signed_out_via_trusted_teams + "(logins) Ended trusted team admin session" + login_fail + "(logins) Failed to sign in" + login_success + "(logins) Signed in" + logout + "(logins) Signed out" + reseller_support_session_end + "(logins) Ended reseller support session" + reseller_support_session_start + "(logins) Started reseller support session" + sign_in_as_session_end + "(logins) Ended admin sign-in-as session" + sign_in_as_session_start + "(logins) Started admin sign-in-as session" + sso_error + "(logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in')" + addon_assigned + "(members) Add-on Assigned" + addon_removed + "(members) Add-on Removed" + backup_admin_invitation_sent + "(members) Invited members to activate Backup" + backup_invitation_opened + "(members) Opened Backup invite" + create_team_invite_link + "(members) Created team invite link" + delete_team_invite_link + "(members) Deleted team invite link" + member_add_external_id + "(members) Added an external ID for team member" + member_add_name + "(members) Added team member name" + member_change_admin_role + "(members) Changed team member admin role" + member_change_email + "(members) Changed team member email" + member_change_external_id + "(members) Changed the external ID for team member" + member_change_membership_type + "(members) Changed membership type (limited/full) of member (deprecated, no longer logged)" + member_change_name + "(members) Changed team member name" + member_change_reseller_role + "(members) Changed team member reseller role" + member_change_status + "(members) Changed member status (invited, joined, suspended, etc.)" + member_delete_manual_contacts + "(members) Cleared manually added contacts" + member_delete_profile_photo + "(members) Deleted team member profile photo" + member_permanently_delete_account_contents + "(members) Permanently deleted contents of deleted team member account" + member_remove_external_id + "(members) Removed the external ID for team member" + member_set_profile_photo + "(members) Set team member profile photo" + member_space_limits_add_custom_quota + "(members) Set custom member space limit" + member_space_limits_change_custom_quota + "(members) Changed custom member space limit" + member_space_limits_change_status + "(members) Changed space limit status" + member_space_limits_remove_custom_quota + "(members) Removed custom member space limit" + member_suggest + "(members) Suggested person to add to team" + member_transfer_account_contents + "(members) Transferred contents of deleted member account to another member" + pending_secondary_email_added + "(members) Added pending secondary email" + product_assigned_to_member + "(members) Product assigned to team member" + product_removed_from_member + "(members) Product removed from team member" + secondary_email_deleted + "(members) Deleted secondary email" + secondary_email_verified + "(members) Verified secondary email" + secondary_mails_policy_changed + "(members) Secondary mails policy changed" + binder_add_page + "(paper) Added Binder page (deprecated, replaced by 'Edited files')" + binder_add_section + "(paper) Added Binder section (deprecated, replaced by 'Edited files')" + binder_remove_page + "(paper) Removed Binder page (deprecated, replaced by 'Edited files')" + binder_remove_section + "(paper) Removed Binder section (deprecated, replaced by 'Edited files')" + binder_rename_page + "(paper) Renamed Binder page (deprecated, replaced by 'Edited files')" + binder_rename_section + "(paper) Renamed Binder section (deprecated, replaced by 'Edited files')" + binder_reorder_page + "(paper) Reordered Binder page (deprecated, replaced by 'Edited files')" + binder_reorder_section + "(paper) Reordered Binder section (deprecated, replaced by 'Edited files')" + paper_content_add_member + "(paper) Added users and/or groups to Paper doc/folder" + paper_content_add_to_folder + "(paper) Added Paper doc/folder to folder" + paper_content_archive + "(paper) Archived Paper doc/folder" + paper_content_create + "(paper) Created Paper doc/folder" + paper_content_permanently_delete + "(paper) Permanently deleted Paper doc/folder" + paper_content_remove_from_folder + "(paper) Removed Paper doc/folder from folder" + paper_content_remove_member + "(paper) Removed users and/or groups from Paper doc/folder" + paper_content_rename + "(paper) Renamed Paper doc/folder" + paper_content_restore + "(paper) Restored archived Paper doc/folder" + paper_doc_add_comment + "(paper) Added Paper doc comment" + paper_doc_change_member_role + "(paper) Changed member permissions for Paper doc" + paper_doc_change_sharing_policy + "(paper) Changed sharing setting for Paper doc" + paper_doc_change_subscription + "(paper) Followed/unfollowed Paper doc" + paper_doc_deleted + "(paper) Archived Paper doc (deprecated, no longer logged)" + paper_doc_delete_comment + "(paper) Deleted Paper doc comment" + paper_doc_download + "(paper) Downloaded Paper doc in specific format" + paper_doc_edit + "(paper) Edited Paper doc" + paper_doc_edit_comment + "(paper) Edited Paper doc comment" + paper_doc_followed + "(paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc')" + paper_doc_mention + "(paper) Mentioned user in Paper doc" + paper_doc_ownership_changed + "(paper) Transferred ownership of Paper doc" + paper_doc_request_access + "(paper) Requested access to Paper doc" + paper_doc_resolve_comment + "(paper) Resolved Paper doc comment" + paper_doc_revert + "(paper) Restored Paper doc to previous version" + paper_doc_slack_share + "(paper) Shared Paper doc via Slack" + paper_doc_team_invite + "(paper) Shared Paper doc with users and/or groups (deprecated, no longer logged)" + paper_doc_trashed + "(paper) Deleted Paper doc" + paper_doc_unresolve_comment + "(paper) Unresolved Paper doc comment" + paper_doc_untrashed + "(paper) Restored Paper doc" + paper_doc_view + "(paper) Viewed Paper doc" + paper_external_view_allow + "(paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged)" + paper_external_view_default_team + "(paper) Changed Paper external sharing setting to default team (deprecated, no longer logged)" + paper_external_view_forbid + "(paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged)" + paper_folder_change_subscription + "(paper) Followed/unfollowed Paper folder" + paper_folder_deleted + "(paper) Archived Paper folder (deprecated, no longer logged)" + paper_folder_followed + "(paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder')" + paper_folder_team_invite + "(paper) Shared Paper folder with users and/or groups (deprecated, no longer logged)" + paper_published_link_change_permission + "(paper) Changed permissions for published doc" + paper_published_link_create + "(paper) Published doc" + paper_published_link_disabled + "(paper) Unpublished doc" + paper_published_link_view + "(paper) Viewed published doc" + password_change + "(passwords) Changed password" + password_reset + "(passwords) Reset password" + password_reset_all + "(passwords) Reset all team member passwords" + classification_create_report + "(reports) Created Classification report" + classification_create_report_fail + "(reports) Couldn't create Classification report" + emm_create_exceptions_report + "(reports) Created EMM-excluded users report" + emm_create_usage_report + "(reports) Created EMM mobile app usage report" + export_members_report + "(reports) Created member data report" + export_members_report_fail + "(reports) Failed to create members data report" + external_sharing_create_report + "(reports) Created External sharing report" + external_sharing_report_failed + "(reports) Couldn't create External sharing report" + member_access_details_create_report + "(reports) Created member access report" + member_access_details_create_report_failed + "(reports) Couldn't generate member access report" + no_expiration_link_gen_create_report + "(reports) Report created: Links created with no expiration" + no_expiration_link_gen_report_failed + "(reports) Couldn't create report: Links created with no expiration" + no_password_link_gen_create_report + "(reports) Report created: Links created without passwords" + no_password_link_gen_report_failed + "(reports) Couldn't create report: Links created without passwords" + no_password_link_view_create_report + "(reports) Report created: Views of links without passwords" + no_password_link_view_report_failed + "(reports) Couldn't create report: Views of links without passwords" + outdated_link_view_create_report + "(reports) Report created: Views of old links" + outdated_link_view_report_failed + "(reports) Couldn't create report: Views of old links" + paper_admin_export_start + "(reports) Exported all team Paper docs" + ransomware_alert_create_report + "(reports) Created ransomware report" + ransomware_alert_create_report_failed + "(reports) Couldn't generate ransomware report" + shared_folders_create_report + "(reports) Created shared folders report" + shared_folders_create_report_failed + "(reports) Couldn't generate shared folders report" + smart_sync_create_admin_privilege_report + "(reports) Created Smart Sync non-admin devices report" + team_activity_create_report + "(reports) Created team activity report" + team_activity_create_report_fail + "(reports) Couldn't generate team activity report" + team_folders_create_report + "(reports) Created team folders report" + team_folders_create_report_failed + "(reports) Couldn't generate team folders report" + team_storage_create_report + "(reports) Created team storage report" + team_storage_create_report_failed + "(reports) Couldn't generate team storage report" + collection_share + "(sharing) Shared album" + file_transfers_file_add + "(sharing) Transfer files added" + file_transfers_transfer_delete + "(sharing) Deleted transfer" + file_transfers_transfer_download + "(sharing) Transfer downloaded" + file_transfers_transfer_send + "(sharing) Sent transfer" + file_transfers_transfer_view + "(sharing) Viewed transfer" + note_acl_invite_only + "(sharing) Changed Paper doc to invite-only (deprecated, no longer logged)" + note_acl_link + "(sharing) Changed Paper doc to link-accessible (deprecated, no longer logged)" + note_acl_team_link + "(sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged)" + note_shared + "(sharing) Shared Paper doc (deprecated, no longer logged)" + note_share_receive + "(sharing) Shared received Paper doc (deprecated, no longer logged)" + open_note_shared + "(sharing) Opened shared Paper doc (deprecated, no longer logged)" + replay_file_shared_link_created + "(sharing) Created shared link in Replay" + replay_file_shared_link_modified + "(sharing) Changed shared link in Replay" + replay_project_team_add + "(sharing) Added member to Replay Project" + replay_project_team_delete + "(sharing) Removed member from Replay Project" + send_and_track_file_added + "(sharing) File added to Send and Track" + send_and_track_file_renamed + "(sharing) File renamed in Send and Track" + send_and_track_file_updated + "(sharing) File updated in Send and Track" + send_and_track_link_created + "(sharing) Link created in Send and Track" + send_and_track_link_deleted + "(sharing) Link deleted in Send and Track" + send_and_track_link_updated + "(sharing) Send and Track Link Updated" + send_and_track_link_viewed + "(sharing) Send and Track Link Visited" + send_and_track_removed_file_and_associated_links + "(sharing) Send and Track file and associated links deleted" + sf_add_group + "(sharing) Added team to shared folder (deprecated, no longer logged)" + sf_allow_non_members_to_view_shared_links + "(sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged)" + sf_external_invite_warn + "(sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged)" + sf_fb_invite + "(sharing) Invited Facebook users to shared folder (deprecated, no longer logged)" + sf_fb_invite_change_role + "(sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged)" + sf_fb_uninvite + "(sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged)" + sf_invite_group + "(sharing) Invited group to shared folder (deprecated, no longer logged)" + sf_team_grant_access + "(sharing) Granted access to shared folder (deprecated, no longer logged)" + sf_team_invite + "(sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder')" + sf_team_invite_change_role + "(sharing) Changed team member's role in shared folder (deprecated, no longer logged)" + sf_team_join + "(sharing) Joined team member's shared folder (deprecated, no longer logged)" + sf_team_join_from_oob_link + "(sharing) Joined team member's shared folder from link (deprecated, no longer logged)" + sf_team_uninvite + "(sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted')" + shared_content_add_invitees + "(sharing) Invited user to Dropbox and added them to shared file/folder" + shared_content_add_link_expiry + "(sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged)" + shared_content_add_link_password + "(sharing) Added password to link for shared file/folder (deprecated, no longer logged)" + shared_content_add_member + "(sharing) Added users and/or groups to shared file/folder" + shared_content_change_downloads_policy + "(sharing) Changed whether members can download shared file/folder (deprecated, no longer logged)" + shared_content_change_invitee_role + "(sharing) Changed access type of invitee to shared file/folder before invite was accepted" + shared_content_change_link_audience + "(sharing) Changed link audience of shared file/folder (deprecated, no longer logged)" + shared_content_change_link_expiry + "(sharing) Changed link expiration of shared file/folder (deprecated, no longer logged)" + shared_content_change_link_password + "(sharing) Changed link password of shared file/folder (deprecated, no longer logged)" + shared_content_change_member_role + "(sharing) Changed access type of shared file/folder member" + shared_content_change_viewer_info_policy + "(sharing) Changed whether members can see who viewed shared file/folder" + shared_content_claim_invitation + "(sharing) Acquired membership of shared file/folder by accepting invite" + shared_content_copy + "(sharing) Copied shared file/folder to own Dropbox" + shared_content_download + "(sharing) Downloaded shared file/folder" + shared_content_relinquish_membership + "(sharing) Left shared file/folder" + shared_content_remove_invitees + "(sharing) Removed invitee from shared file/folder before invite was accepted" + shared_content_remove_link_expiry + "(sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged)" + shared_content_remove_link_password + "(sharing) Removed link password of shared file/folder (deprecated, no longer logged)" + shared_content_remove_member + "(sharing) Removed user/group from shared file/folder" + shared_content_request_access + "(sharing) Requested access to shared file/folder" + shared_content_restore_invitees + "(sharing) Restored shared file/folder invitees" + shared_content_restore_member + "(sharing) Restored users and/or groups to membership of shared file/folder" + shared_content_unshare + "(sharing) Unshared file/folder by clearing membership" + shared_content_view + "(sharing) Previewed shared file/folder" + shared_folder_change_link_policy + "(sharing) Changed who can access shared folder via link" + shared_folder_change_members_inheritance_policy + "(sharing) Changed whether shared folder inherits members from parent folder" + shared_folder_change_members_management_policy + "(sharing) Changed who can add/remove members of shared folder" + shared_folder_change_members_policy + "(sharing) Changed who can become member of shared folder" + shared_folder_create + "(sharing) Created shared folder" + shared_folder_decline_invitation + "(sharing) Declined team member's invite to shared folder" + shared_folder_mount + "(sharing) Added shared folder to own Dropbox" + shared_folder_nest + "(sharing) Changed parent of shared folder" + shared_folder_transfer_ownership + "(sharing) Transferred ownership of shared folder to another member" + shared_folder_unmount + "(sharing) Deleted shared folder from Dropbox" + shared_link_add_expiry + "(sharing) Added shared link expiration date" + shared_link_change_expiry + "(sharing) Changed shared link expiration date" + shared_link_change_visibility + "(sharing) Changed visibility of shared link" + shared_link_copy + "(sharing) Added file/folder to Dropbox from shared link" + shared_link_create + "(sharing) Created shared link" + shared_link_disable + "(sharing) Removed shared link" + shared_link_download + "(sharing) Downloaded file/folder from shared link" + shared_link_remove_expiry + "(sharing) Removed shared link expiration date" + shared_link_remove_visitor + "(sharing) Removed link visitor" + shared_link_settings_add_expiration + "(sharing) Added an expiration date to the shared link" + shared_link_settings_add_password + "(sharing) Added a password to the shared link" + shared_link_settings_allow_download_disabled + "(sharing) Disabled downloads" + shared_link_settings_allow_download_enabled + "(sharing) Enabled downloads" + shared_link_settings_change_audience + "(sharing) Changed the audience of the shared link" + shared_link_settings_change_expiration + "(sharing) Changed the expiration date of the shared link" + shared_link_settings_change_password + "(sharing) Changed the password of the shared link" + shared_link_settings_remove_expiration + "(sharing) Removed the expiration date from the shared link" + shared_link_settings_remove_password + "(sharing) Removed the password from the shared link" + shared_link_share + "(sharing) Added members as audience of shared link" + shared_link_view + "(sharing) Opened shared link" + shared_note_opened + "(sharing) Opened shared Paper doc (deprecated, no longer logged)" + shmodel_disable_downloads + "(sharing) Disabled downloads for link (deprecated, no longer logged)" + shmodel_enable_downloads + "(sharing) Enabled downloads for link (deprecated, no longer logged)" + shmodel_group_share + "(sharing) Shared link with group (deprecated, no longer logged)" + showcase_access_granted + "(showcase) Granted access to showcase" + showcase_add_member + "(showcase) Added member to showcase" + showcase_archived + "(showcase) Archived showcase" + showcase_created + "(showcase) Created showcase" + showcase_delete_comment + "(showcase) Deleted showcase comment" + showcase_edited + "(showcase) Edited showcase" + showcase_edit_comment + "(showcase) Edited showcase comment" + showcase_file_added + "(showcase) Added file to showcase" + showcase_file_download + "(showcase) Downloaded file from showcase" + showcase_file_removed + "(showcase) Removed file from showcase" + showcase_file_view + "(showcase) Viewed file in showcase" + showcase_permanently_deleted + "(showcase) Permanently deleted showcase" + showcase_post_comment + "(showcase) Added showcase comment" + showcase_remove_member + "(showcase) Removed member from showcase" + showcase_renamed + "(showcase) Renamed showcase" + showcase_request_access + "(showcase) Requested access to showcase" + showcase_resolve_comment + "(showcase) Resolved showcase comment" + showcase_restored + "(showcase) Unarchived showcase" + showcase_trashed + "(showcase) Deleted showcase" + showcase_trashed_deprecated + "(showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase')" + showcase_unresolve_comment + "(showcase) Unresolved showcase comment" + showcase_untrashed + "(showcase) Restored showcase" + showcase_untrashed_deprecated + "(showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase')" + showcase_view + "(showcase) Viewed showcase" + sign_signature_request_canceled + "(signatures) Canceled signature request" + sign_signature_request_completed + "(signatures) Completed signature request" + sign_signature_request_declined + "(signatures) Declined signature request" + sign_signature_request_opened + "(signatures) Opened signature request" + sign_signature_request_reminder_sent + "(signatures) Sent signature request reminder" + sign_signature_request_sent + "(signatures) Sent signature request" + sign_template_created + "(signatures) Created template" + sign_template_shared + "(signatures) Shared template" + risc_security_event + "(sso) RISC security event received from external provider" + sso_add_cert + "(sso) Added X.509 certificate for SSO" + sso_add_login_url + "(sso) Added sign-in URL for SSO" + sso_add_logout_url + "(sso) Added sign-out URL for SSO" + sso_change_cert + "(sso) Changed X.509 certificate for SSO" + sso_change_login_url + "(sso) Changed sign-in URL for SSO" + sso_change_logout_url + "(sso) Changed sign-out URL for SSO" + sso_change_saml_identity_mode + "(sso) Changed SAML identity mode for SSO" + sso_remove_cert + "(sso) Removed X.509 certificate for SSO" + sso_remove_login_url + "(sso) Removed sign-in URL for SSO" + sso_remove_logout_url + "(sso) Removed sign-out URL for SSO" + team_folder_change_status + "(team_folders) Changed archival status of team folder" + team_folder_create + "(team_folders) Created team folder in active status" + team_folder_downgrade + "(team_folders) Downgraded team folder to regular shared folder" + team_folder_permanently_delete + "(team_folders) Permanently deleted archived team folder" + team_folder_rename + "(team_folders) Renamed active/archived team folder" + team_selective_sync_settings_changed + "(team_folders) Changed sync default" + account_capture_change_policy + "(team_policies) Changed account capture setting on team domain" + admin_email_reminders_changed + "(team_policies) Changed admin reminder settings for requests to join the team" + ai_third_party_sharing_dropbox_base_policy_changed + "(team_policies) Changed AI third party sharing policy for team" + allow_download_disabled + "(team_policies) Disabled downloads (deprecated, no longer logged)" + allow_download_enabled + "(team_policies) Enabled downloads (deprecated, no longer logged)" + apple_login_change_policy + "(team_policies) Enabled/disabled Apple login for team" + app_permissions_changed + "(team_policies) Changed app permissions" + camera_uploads_policy_changed + "(team_policies) Changed camera uploads setting for team" + capture_team_space_policy_changed + "(team_policies) Changed Capture team space policy for team" + capture_transcript_policy_changed + "(team_policies) Changed Capture transcription policy for team" + classification_change_policy + "(team_policies) Changed classification policy for team" + computer_backup_policy_changed + "(team_policies) Changed computer backup policy for team" + content_administration_policy_changed + "(team_policies) Changed content management setting" + content_deletion_protection_change_policy + "(team_policies) Changed content deletion protection policy for team" + dash_external_sharing_policy_changed + "(team_policies) Changed Dash external sharing policy for team" + data_placement_restriction_change_policy + "(team_policies) Set restrictions on data center locations where team data resides" + data_placement_restriction_satisfy_policy + "(team_policies) Completed restrictions on data center locations where team data resides" + device_approvals_add_exception + "(team_policies) Added members to device approvals exception list" + device_approvals_change_desktop_policy + "(team_policies) Set/removed limit on number of computers member can link to team Dropbox account" + device_approvals_change_mobile_policy + "(team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account" + device_approvals_change_overage_action + "(team_policies) Changed device approvals setting when member is over limit" + device_approvals_change_unlink_action + "(team_policies) Changed device approvals setting when member unlinks approved device" + device_approvals_remove_exception + "(team_policies) Removed members from device approvals exception list" + directory_restrictions_add_members + "(team_policies) Added members to directory restrictions list" + directory_restrictions_remove_members + "(team_policies) Removed members from directory restrictions list" + dropbox_passwords_policy_changed + "(team_policies) Changed Dropbox Passwords policy for team" + email_ingest_policy_changed + "(team_policies) Changed email to Dropbox policy for team" + emm_add_exception + "(team_policies) Added members to EMM exception list" + emm_change_policy + "(team_policies) Enabled/disabled enterprise mobility management for members" + emm_remove_exception + "(team_policies) Removed members from EMM exception list" + extended_version_history_change_policy + "(team_policies) Accepted/opted out of extended version history" + external_drive_backup_policy_changed + "(team_policies) Changed external drive backup policy for team" + file_comments_change_policy + "(team_policies) Enabled/disabled commenting on team files" + file_locking_policy_changed + "(team_policies) Changed file locking policy for team" + file_provider_migration_policy_changed + "(team_policies) Changed File Provider Migration policy for team" + file_requests_change_policy + "(team_policies) Enabled/disabled file requests" + file_requests_emails_enabled + "(team_policies) Enabled file request emails for everyone (deprecated, no longer logged)" + file_requests_emails_restricted_to_team_only + "(team_policies) Enabled file request emails for team (deprecated, no longer logged)" + file_transfers_policy_changed + "(team_policies) Changed file transfers policy for team" + flexible_file_names_policy_changed + "(team_policies) Changed flexible file names policy for team" + folder_link_restriction_policy_changed + "(team_policies) Changed folder link restrictions policy for team" + google_sso_change_policy + "(team_policies) Enabled/disabled Google single sign-on for team" + group_user_management_change_policy + "(team_policies) Changed who can create groups" + integration_policy_changed + "(team_policies) Changed integration policy for team" + invite_acceptance_email_policy_changed + "(team_policies) Changed invite accept email policy for team" + member_requests_change_policy + "(team_policies) Changed whether users can find team when not invited" + member_send_invite_policy_changed + "(team_policies) Changed member send invite policy for team" + member_space_limits_add_exception + "(team_policies) Added members to member space limit exception list" + member_space_limits_change_caps_type_policy + "(team_policies) Changed member space limit type for team" + member_space_limits_change_policy + "(team_policies) Changed team default member space limit" + member_space_limits_remove_exception + "(team_policies) Removed members from member space limit exception list" + member_suggestions_change_policy + "(team_policies) Enabled/disabled option for team members to suggest people to add to team" + microsoft_login_change_policy + "(team_policies) Enabled/disabled Microsoft login for team" + microsoft_office_addin_change_policy + "(team_policies) Enabled/disabled Microsoft Office add-in" + network_control_change_policy + "(team_policies) Enabled/disabled network control" + paper_change_deployment_policy + "(team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members" + paper_change_member_link_policy + "(team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged)" + paper_change_member_policy + "(team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default" + paper_change_policy + "(team_policies) Enabled/disabled Dropbox Paper for team" + paper_default_folder_policy_changed + "(team_policies) Changed Paper Default Folder Policy setting for team" + paper_desktop_policy_changed + "(team_policies) Enabled/disabled Paper Desktop for team" + paper_enabled_users_group_addition + "(team_policies) Added users to Paper-enabled users list" + paper_enabled_users_group_removal + "(team_policies) Removed users from Paper-enabled users list" + passkey_login_policy_changed + "(team_policies) Changed passkey login policy for team" + password_strength_requirements_change_policy + "(team_policies) Changed team password strength requirements" + permanent_delete_change_policy + "(team_policies) Enabled/disabled ability of team members to permanently delete content" + previews_ai_policy_changed + "(team_policies) Changed Dropbox AI policy for team" + replay_adding_people_policy_changed + "(team_policies) Changed the policy for adding people to Replay content" + replay_sharing_policy_changed + "(team_policies) Changed the policy for sharing Replay content" + reseller_support_change_policy + "(team_policies) Enabled/disabled reseller support" + rewind_policy_changed + "(team_policies) Changed Rewind policy for team" + send_and_track_policy_changed + "(team_policies) Changed “Send and track” policy for team" + send_external_sharing_policy_changed + "(team_policies) Changed “Send and track” external sharing policy for team" + send_for_signature_policy_changed + "(team_policies) Changed send for signature policy for team" + shared_link_default_permissions_policy_changed + "(team_policies) Changed shared link default permissions policy for team" + sharing_change_folder_join_policy + "(team_policies) Changed whether team members can join shared folders owned outside team" + sharing_change_link_allow_change_expiration_policy + "(team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team" + sharing_change_link_default_expiration_policy + "(team_policies) Changed the default expiration for the links shared outside of the team" + sharing_change_link_enforce_password_policy + "(team_policies) Changed the password requirement for the links shared outside of the team" + sharing_change_link_policy + "(team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default" + sharing_change_member_policy + "(team_policies) Changed whether members can share files/folders outside team" + showcase_change_download_policy + "(team_policies) Enabled/disabled downloading files from Dropbox Showcase for team" + showcase_change_enabled_policy + "(team_policies) Enabled/disabled Dropbox Showcase for team" + showcase_change_external_sharing_policy + "(team_policies) Enabled/disabled sharing Dropbox Showcase externally for team" + sign_external_sharing_policy_changed + "(team_policies) Changed Signatures external sharing policy for team" + sign_template_creation_permission_changed + "(team_policies) Changed template creation permission" + smarter_smart_sync_policy_changed + "(team_policies) Changed automatic Smart Sync setting for team" + smart_sync_change_policy + "(team_policies) Changed default Smart Sync setting for team members" + smart_sync_not_opt_out + "(team_policies) Opted team into Smart Sync" + smart_sync_opt_out + "(team_policies) Opted team out of Smart Sync" + sso_change_policy + "(team_policies) Changed single sign-on setting for team" + stack_cross_team_access_policy_changed + "(team_policies) Changed cross-team Stack access policy for team" + team_branding_policy_changed + "(team_policies) Changed team branding policy for team" + team_extensions_policy_changed + "(team_policies) Changed App Integrations setting for team" + team_member_storage_request_policy_changed + "(team_policies) Changed team member storage request policy for team" + team_selective_sync_policy_changed + "(team_policies) Enabled/disabled Team Selective Sync for team" + team_sharing_whitelist_subjects_changed + "(team_policies) Edited the approved list for sharing externally" + tfa_add_exception + "(team_policies) Added members to two factor authentication exception list" + tfa_change_policy + "(team_policies) Changed two-factor authentication setting for team" + tfa_remove_exception + "(team_policies) Removed members from two factor authentication exception list" + top_level_content_policy_changed + "(team_policies) Changed top level content setting for team" + two_account_change_policy + "(team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer" + viewer_info_policy_changed + "(team_policies) Changed team policy for viewer info" + watermarking_policy_changed + "(team_policies) Changed watermarking policy for team" + web_sessions_change_active_session_limit + "(team_policies) Changed limit on active sessions per member" + web_sessions_change_fixed_length_policy + "(team_policies) Changed how long members can stay signed in to Dropbox.com" + web_sessions_change_idle_length_policy + "(team_policies) Changed how long team members can be idle while signed in to Dropbox.com" + data_residency_migration_request_successful + "(team_profile) Requested data residency migration for team data" + data_residency_migration_request_unsuccessful + "(team_profile) Request for data residency migration for team data has failed" + team_merge_from + "(team_profile) Merged another team into this team" + team_merge_to + "(team_profile) Merged this team into another team" + team_profile_add_background + "(team_profile) Added team background to display on shared link headers" + team_profile_add_logo + "(team_profile) Added team logo to display on shared link headers" + team_profile_change_background + "(team_profile) Changed team background displayed on shared link headers" + team_profile_change_default_language + "(team_profile) Changed default language for team" + team_profile_change_logo + "(team_profile) Changed team logo displayed on shared link headers" + team_profile_change_name + "(team_profile) Changed team name" + team_profile_remove_background + "(team_profile) Removed team background displayed on shared link headers" + team_profile_remove_logo + "(team_profile) Removed team logo displayed on shared link headers" + passkey_add + "(tfa) Added passkey for login" + passkey_remove + "(tfa) Removed passkey for login" + tfa_add_backup_phone + "(tfa) Added backup phone for two-factor authentication" + tfa_add_security_key + "(tfa) Added security key for two-factor authentication" + tfa_change_backup_phone + "(tfa) Changed backup phone for two-factor authentication" + tfa_change_status + "(tfa) Enabled/disabled/changed two-factor authentication setting" + tfa_remove_backup_phone + "(tfa) Removed backup phone for two-factor authentication" + tfa_remove_security_key + "(tfa) Removed security key for two-factor authentication" + tfa_reset + "(tfa) Reset two-factor authentication for team member" + changed_enterprise_admin_role + "(trusted_teams) Changed enterprise admin role" + changed_enterprise_connected_team_status + "(trusted_teams) Changed enterprise-connected team status" + ended_enterprise_admin_session + "(trusted_teams) Ended enterprise admin session" + ended_enterprise_admin_session_deprecated + "(trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session')" + enterprise_settings_locking + "(trusted_teams) Changed who can update a setting" + guest_admin_change_status + "(trusted_teams) Changed guest team admin status" + started_enterprise_admin_session + "(trusted_teams) Started enterprise admin session" + team_merge_request_accepted + "(trusted_teams) Accepted a team merge request" + team_merge_request_accepted_shown_to_primary_team + "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" + team_merge_request_accepted_shown_to_secondary_team + "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" + team_merge_request_auto_canceled + "(trusted_teams) Automatically canceled team merge request" + team_merge_request_canceled + "(trusted_teams) Canceled a team merge request" + team_merge_request_canceled_shown_to_primary_team + "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" + team_merge_request_canceled_shown_to_secondary_team + "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" + team_merge_request_expired + "(trusted_teams) Team merge request expired" + team_merge_request_expired_shown_to_primary_team + "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" + team_merge_request_expired_shown_to_secondary_team + "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" + team_merge_request_rejected_shown_to_primary_team + "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" + team_merge_request_rejected_shown_to_secondary_team + "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" + team_merge_request_reminder + "(trusted_teams) Sent a team merge request reminder" + team_merge_request_reminder_shown_to_primary_team + "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" + team_merge_request_reminder_shown_to_secondary_team + "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" + team_merge_request_revoked + "(trusted_teams) Canceled the team merge" + team_merge_request_sent_shown_to_primary_team + "(trusted_teams) Requested to merge their Dropbox team into yours" + team_merge_request_sent_shown_to_secondary_team + "(trusted_teams) Requested to merge your team into another Dropbox team" + + example default + shared_content_download = null + +struct TeamEvent + "An audit log event." + timestamp common.DropboxTimestamp + "The Dropbox timestamp representing when the action was taken." + event_category EventCategory + "The category that this type of action belongs to." + actor ActorLogInfo? + "The entity who actually performed the action." + origin OriginLogInfo? + "The origin from which the actor performed the action including information about host, ip address, location, session, etc. If the action was performed programmatically via the API the origin represents the API client." + involve_non_team_member Boolean? + "True if the action involved a non team member either as the actor or as one of the affected users." + context ContextLogInfo? + "The user or team on whose behalf the actor performed the action." + participants List(ParticipantLogInfo)? + "Zero or more users and/or groups that are affected by the action. Note that this list doesn't include any actors or users in context." + assets List(AssetLogInfo)? + "Zero or more content assets involved in the action. Currently these include Dropbox files and folders but in the future we might add other asset types such as Paper documents, folders, projects, etc." + event_type EventType + "The particular type of action taken." + details EventDetails + "The variable event schema applicable to this type of action, instantiated with respect to this particular action." + + example default + details = default + event_type = default + timestamp = "2017-01-25T15:51:30Z" + event_category = tfa + actor = default + origin = default + involve_non_team_member = true + context = default + participants = [default2] + assets = [default2] - attrs - auth = "team" - scope = "events.read" diff --git a/team_log_generated.stone b/team_log_generated.stone deleted file mode 100644 index fb34c8b..0000000 --- a/team_log_generated.stone +++ /dev/null @@ -1,12511 +0,0 @@ -# This file is @generated by code. Do not edit this file directly !! - - -namespace team_log - -import common -import file_requests -import files -import sharing -import team -import team_common -import team_policies -import users_common - -alias FilePath = String -alias NamespaceId = String -alias EmailAddress = String(max_length=255) -alias AppId = String -alias IpAddress = String -alias RequestId = String - - -################### -# QuickActionType -################### - -union QuickActionType - "Quick action type." - - delete_shared_link - reset_password - restore_file_or_folder - unlink_app - unlink_device - unlink_session - - example default - delete_shared_link = null - -######################################## -# Union types that are used by events. -######################################## - -union AccessMethodLogInfo - "Indicates the method in which the action was performed." - - admin_console WebSessionLogInfo - "Admin console session details." - api ApiSessionLogInfo - "Api session details." - content_manager WebSessionLogInfo - "Content manager session details." - end_user SessionLogInfo - "End user session details." - enterprise_console WebSessionLogInfo - "Enterprise console session details." - sign_in_as WebSessionLogInfo - "Sign in as session details." - - example default - end_user = default - - example default2 - end_user = default2 - -union AccountCaptureAvailability - available - unavailable - -union AccountCaptureNotificationType - actionable_notification - proactive_warning_notification - -union AccountCapturePolicy - all_users - disabled - invited_users - prevent_personal_creation - -union AccountState - locked - unlocked - -union ActionDetails - "Additional information indicating the action taken that caused status change." - - remove_action MemberRemoveActionType - "Define how the user was removed from the team." - team_invite_details TeamInviteDetails - "Additional information relevant when someone is invited to the team." - team_join_details JoinTeamDetails - "Additional information relevant when a new member joins the team." - - example default - team_join_details = default - - example default2 - team_join_details = default2 - -struct JoinTeamDetails - "Additional information relevant when a new member joins the team." - - linked_apps List(UserLinkedAppLogInfo) - "Linked applications. (Deprecated) Please use has_linked_apps boolean field instead." - linked_devices List(LinkedDeviceLogInfo) - "Linked devices. (Deprecated) Please use has_linked_devices boolean field instead." - linked_shared_folders List(FolderLogInfo) - "Linked shared folders. (Deprecated) Please use has_linked_shared_folders boolean field instead." - was_linked_apps_truncated Boolean? - "(Deprecated) True if the linked_apps list was truncated to the maximum supported length (50)." - was_linked_devices_truncated Boolean? - "(Deprecated) True if the linked_devices list was truncated to the maximum supported length (50)." - was_linked_shared_folders_truncated Boolean? - "(Deprecated) True if the linked_shared_folders list was truncated to the maximum supported length (50)." - has_linked_apps Boolean? - "True if the user had linked apps at event time." - has_linked_devices Boolean? - "True if the user had linked apps at event time." - has_linked_shared_folders Boolean? - "True if the user had linked shared folders at event time." - - example default - linked_apps = [default] - linked_devices = [default] - linked_shared_folders = [default] - was_linked_apps_truncated = true - was_linked_devices_truncated = true - was_linked_shared_folders_truncated = true - has_linked_apps = true - has_linked_devices = true - has_linked_shared_folders = true - - example default2 - linked_apps = [default2] - linked_devices = [default2] - linked_shared_folders = [default2] - was_linked_apps_truncated = false - was_linked_devices_truncated = false - was_linked_shared_folders_truncated = false - has_linked_apps = false - has_linked_devices = false - has_linked_shared_folders = false - -union LinkedDeviceLogInfo - "The device sessions that user is linked to." - - desktop_device_session DesktopDeviceSessionLogInfo - "desktop device session's details." - legacy_device_session LegacyDeviceSessionLogInfo - "legacy device session's details." - mobile_device_session MobileDeviceSessionLogInfo - "mobile device session's details." - web_device_session WebDeviceSessionLogInfo - "web device session's details." - - example default - mobile_device_session = default - - example default2 - mobile_device_session = default2 - -struct TeamInviteDetails - "Details about team invites" - - invite_method InviteMethod - "How the user was invited to the team." - additional_license_purchase Boolean? - "True if the invitation incurred an additional license purchase." - - example default - invite_method = invite_link - additional_license_purchase = true - - example default2 - invite_method = invite_link - additional_license_purchase = false - -union InviteMethod - auto_approve - invite_link - member_invite - moved_from_another_team - -union MemberRemoveActionType - delete - leave - offboard - offboard_and_retain_team_folders - -union AdminAlertCategoryEnum - "Alert category" - account_takeover - data_loss_protection - information_governance - malware_sharing - massive_file_operation - na - threat_management - -union AdminAlertGeneralStateEnum - "Alert state" - active - dismissed - in_progress - na - resolved - -union AdminAlertSeverityEnum - "Alert severity" - high - info - low - medium - na - -struct AdminAlertingAlertConfiguration - "Alert configurations" - - alert_state AdminAlertingAlertStatePolicy? - "Alert state." - sensitivity_level AdminAlertingAlertSensitivity? - "Sensitivity level." - recipients_settings RecipientsConfiguration? - "Recipient settings." - text String? - "Text." - excluded_file_extensions String? - "Excluded file extensions." - - example default - alert_state = off - sensitivity_level = invalid - recipients_settings = default - text = "abc" - excluded_file_extensions = "abc" - - example default2 - alert_state = off - sensitivity_level = invalid - recipients_settings = default2 - text = "xyz" - excluded_file_extensions = "xyz" - -struct RecipientsConfiguration - "Recipients Configuration" - - recipient_setting_type AlertRecipientsSettingType? - "Recipients setting type." - emails List(EmailAddress)? - "A list of user emails to notify." - groups List(String)? - "A list of groups to notify." - - example default - recipient_setting_type = invalid - emails = ["john_smith@acmecorp.com"] - groups = ["abc"] - - example default2 - recipient_setting_type = invalid - emails = ["jane_smith@acmecorp.com"] - groups = ["xyz"] - -union AlertRecipientsSettingType - "Alert recipients setting type" - custom_list - invalid - none - team_admins - -union AdminAlertingAlertSensitivity - "Alert sensitivity" - high - highest - invalid - low - lowest - medium - -union AdminAlertingAlertStatePolicy - "Policy for controlling whether an alert can be triggered or not" - off - on - -union AdminConsoleAppPermission - default_for_listed_apps - default_for_unlisted_apps - -union AdminConsoleAppPolicy - allow - block - default - -union AdminEmailRemindersPolicy - "Policy for deciding whether team admins receive reminder emails for requests to join the team" - default - disabled - enabled - -union AdminRole - billing_admin - compliance_admin - content_admin - limited_admin - member_only - reporting_admin - security_admin - support_admin - team_admin - user_management_admin - -union BackupStatus - "Backup status" - disabled - enabled - -union CameraUploadsPolicy - "Policy for controlling if team members can activate camera uploads" - disabled - enabled - -union CaptureTranscriptPolicy - "Policy for deciding whether team users can transcription in Capture" - default - disabled - enabled - -struct Certificate - "Certificate details." - - subject String - "Certificate subject." - issuer String - "Certificate issuer." - issue_date String - "Certificate issue date." - expiration_date String - "Certificate expiration date." - serial_number String - "Certificate serial number." - sha1_fingerprint String - "Certificate sha1 fingerprint." - common_name String? - "Certificate common name." - - example default - subject = "abc" - issuer = "abc" - issue_date = "abc" - expiration_date = "abc" - serial_number = "abc" - sha1_fingerprint = "abc" - common_name = "abc" - - example default2 - subject = "xyz" - issuer = "xyz" - issue_date = "xyz" - expiration_date = "xyz" - serial_number = "xyz" - sha1_fingerprint = "xyz" - common_name = "xyz" - -union ChangeLinkExpirationPolicy - "Policy for deciding whether the team's default expiration days policy must be enforced when an externally shared link is updated" - allowed - not_allowed - -union ClassificationPolicyEnumWrapper - "Policy for controlling team access to the classification feature" - disabled - enabled - member_and_team_folders - team_folders - -union ClassificationType - "The type of classification (currently only personal information)" - personal_information - pii - -union ComputerBackupPolicy - "Policy for controlling team access to computer backup feature" - default - disabled - enabled - -union ContentPermanentDeletePolicy - "Policy for pemanent content deletion" - disabled - enabled - -union DefaultLinkExpirationDaysPolicy - "Policy for the default number of days until an externally shared link expires" - day_1 - day_180 - day_3 - day_30 - day_7 - day_90 - none - year_1 - -union DeviceApprovalsPolicy - limited - unlimited - -union DeviceType - desktop - mobile - -union DeviceUnlinkPolicy - keep - remove - -union DispositionActionType - automatic_delete - automatic_permanently_delete - -union DownloadPolicyType - "Shared content downloads policy" - allow - disallow - -union DropboxPasswordsPolicy - "Policy for deciding whether team users can use Dropbox Passwords" - default - disabled - enabled - -union EmailIngestPolicy - "Policy for deciding whether a team can use Email to Dropbox feature" - disabled - enabled - -union EnforceLinkPasswordPolicy - "Policy for deciding whether password must be enforced when an externally shared link is updated" - optional - required - -union ExtendedVersionHistoryPolicy - explicitly_limited - explicitly_unlimited - implicitly_limited - implicitly_unlimited - -union ExternalDriveBackupEligibilityStatus - "External Drive Backup eligibility status" - exceed_license_cap - success - -union ExternalDriveBackupPolicy - "Policy for controlling team access to external drive backup feature" - default - disabled - enabled - -union ExternalDriveBackupStatus - "External Drive Backup status" - broken - created - created_or_broken - deleted - empty - unknown - -struct FailureDetailsLogInfo - "Provides details about a failure" - - user_friendly_message String? - "A user friendly explanation of the error." - technical_error_message String? - "A technical explanation of the error. This is relevant for some errors." - - example default - user_friendly_message = "abc" - technical_error_message = "abc" - - example default2 - user_friendly_message = "xyz" - technical_error_message = "xyz" - -union FedAdminRole - enterprise_admin - not_enterprise_admin - -union FedExtraDetails - "More details about the organization or team." - - organization OrganizationDetails - "More details about the organization." - team TeamDetails - "More details about the team." - - example default - team = default - - example default2 - team = default2 - -struct TeamDetails - "More details about the team." - - team String - "The name of the team." - - example default - team = "My Team" - - example default2 - team = "My Team" - -struct OrganizationDetails - "More details about the organization." - - organization String - "The name of the organization." - - example default - organization = "My Organization" - - example default2 - organization = "My Organization" - -union FedHandshakeAction - accepted_invite - canceled_invite - invite_expired - invited - rejected_invite - removed_team - -union FederationStatusChangeAdditionalInfo - "Additional information about the organization or connected team" - - connected_team_name ConnectedTeamName - "The name of the team." - non_trusted_team_details NonTrustedTeamDetails - "The email to which the request was sent." - organization_name OrganizationName - "The name of the organization." - - example default - connected_team_name = default - - example default2 - connected_team_name = default2 - -struct OrganizationName - "The name of the organization" - - organization String - "The name of the organization." - - example default - organization = "My Organization" - - example default2 - organization = "My Organization" - -struct NonTrustedTeamDetails - "The email to which the request was sent" - - team String - "The email to which the request was sent." - - example default - team = "abc" - - example default2 - team = "xyz" - -struct ConnectedTeamName - "The name of the team" - - team String - "The name of the team." - - example default - team = "My Team" - - example default2 - team = "My Team" - -union FileCommentNotificationPolicy - "Enable or disable file comments notifications" - disabled - enabled - -union FileCommentsPolicy - "File comments policy" - disabled - enabled - -struct FileRequestDetails - "File request details" - - asset_index UInt64 - "Asset position in the Assets list." - deadline FileRequestDeadline? - "File request deadline." - - example default - asset_index = 3 - deadline = default - - example default2 - asset_index = 4 - deadline = default2 - -struct FileRequestDeadline - "File request deadline" - - deadline common.DropboxTimestamp? - "The deadline for this file request. Might be missing due to historical data gap." - allow_late_uploads String? - "If set, allow uploads after the deadline has passed." - - example default - deadline = "2017-01-25T15:51:30Z" - allow_late_uploads = "one_day" - - example default2 - deadline = "2017-01-25T15:51:30Z" - allow_late_uploads = "one_day" - -union FileRequestsPolicy - "File requests policy" - disabled - enabled - -union FileTransfersPolicy - "File transfers policy" - disabled - enabled - -union FolderLinkRestrictionPolicy - "Policy for deciding whether applying link restrictions on all team owned folders" - disabled - enabled - -struct GeoLocationLogInfo - "Geographic location details." - - city String? - "City name." - region String? - "Region name." - country String? - "Country code." - ip_address IpAddress - "IP address." - - example default - city = "San Francisco" - region = "California" - country = "US" - ip_address = "45.56.78.100" - - example default2 - city = "San Francisco" - region = "California" - country = "US" - ip_address = "45.56.78.100" - -union GoogleSsoPolicy - "Google SSO policy" - disabled - enabled - -union GroupJoinPolicy - open - request_to_join - -union IdentifierType - email - facebook_profile_name - -union IntegrationPolicy - "Policy for controlling whether a service integration is enabled for the team." - disabled - enabled - -union InviteAcceptanceEmailPolicy - "Policy for deciding whether team admins receive email when an invitation to join the team is accepted" - disabled - enabled - -union LabelType - "Label type" - personal_information - test_only - user_defined_tag - -union LockStatus - "File lock status" - locked - unlocked - -union LoginMethod - apple_oauth - first_party_token_exchange - google_oauth - lenovo_oauth - password - qr_code - saml - two_factor_authentication - web_session - -union MemberRequestsPolicy - auto_accept - disabled - require_approval - -union MemberSendInvitePolicy - "Policy for controlling whether team members can send team invites" - disabled - everyone - specific_members - -union MemberStatus - active - invited - moved_to_another_team - not_joined - removed - suspended - -union MemberSuggestionsPolicy - "Member suggestions policy" - disabled - enabled - -struct MemberTransferredInternalFields - "Internal only - fields for target team computations" - - source_team_id team_common.TeamId - "Internal only - team user was moved from." - target_team_id team_common.TeamId - "Internal only - team user was moved to." - - example default - source_team_id = "dbtid:AAE3tIYgVuVT1gZork5wQJbXbmlrkBMq26c" - target_team_id = "dbtid:AAE3tIYgVuVT1gZork5wQJbXbmlrkBMq26c" - - example default2 - source_team_id = "dbtid:AAFAqKNLrx_W9MFkS2gWftX0QfTZpo03WsE" - target_team_id = "dbtid:AAFAqKNLrx_W9MFkS2gWftX0QfTZpo03WsE" - -union MicrosoftOfficeAddinPolicy - "Microsoft Office addin policy" - disabled - enabled - -union NetworkControlPolicy - "Network control policy" - disabled - enabled - -union PaperAccessType - commenter - editor - viewer - -union PaperDefaultFolderPolicy - "Policy to set default access for newly created Paper folders." - everyone_in_team - invite_only - -union PaperDesktopPolicy - "Policy for controlling if team members can use Paper Desktop" - disabled - enabled - -union PaperDownloadFormat - docx - html - markdown - pdf - -union PaperMemberPolicy - "Policy for controlling if team members can share Paper documents externally." - anyone_with_link - only_team - team_and_explicitly_shared - -union PassPolicy - allow - disabled - enabled - -union PlacementRestriction - australia_only - europe_only - japan_only - none - uk_only - us_s3_only - -union PolicyType - disposition - retention - -struct RelocateAssetReferencesLogInfo - "Provides the indices of the source asset and the destination asset for a relocate action." - - src_asset_index UInt64 - "Source asset position in the Assets list." - dest_asset_index UInt64 - "Destination asset position in the Assets list." - - example default - src_asset_index = 3 - dest_asset_index = 3 - - example default2 - src_asset_index = 4 - dest_asset_index = 4 - -union ResellerRole - not_reseller - reseller_admin - -union ResellerSupportPolicy - "Policy for controlling if reseller can access the admin console as administrator" - disabled - enabled - -union RewindPolicy - "Policy for controlling whether team members can rewind" - admins_only - everyone - -union SecondaryMailsPolicy - disabled - enabled - -union SendForSignaturePolicy - "Policy for controlling team access to send for signature feature" - disabled - enabled - -union SharedFolderMembersInheritancePolicy - "Specifies if a shared folder inherits its members from the parent folder." - dont_inherit_members - inherit_members - -union SharedLinkAccessLevel - "Shared link access level." - none - reader - writer - -union SharedLinkVisibility - "Defines who has access to a shared link." - no_one - password - public - team_only - -union SharingFolderJoinPolicy - "Policy for controlling if team members can join shared folders owned by non team members." - from_anyone - from_team_only - -union SharingLinkPolicy - "Policy for controlling if team members can share links externally" - default_no_one - default_private - default_public - only_private - -union SharingMemberPolicy - "External sharing policy" - allow - forbid - forbid_with_exclusions - -struct ShowcaseDocumentLogInfo - "Showcase document's logged information." - - showcase_id String - "Showcase document Id." - showcase_title String - "Showcase document title." - - example default - showcase_id = "fvti8SoWq5tdyM1YMXl5z" - showcase_title = "Sample Showcase Proposal" - - example default2 - showcase_id = "fvti8SoWq5tdyM1YMXl5z" - showcase_title = "Sample Showcase Proposal" - -union ShowcaseDownloadPolicy - "Policy for controlling if files can be downloaded from Showcases by team members" - disabled - enabled - -union ShowcaseEnabledPolicy - "Policy for controlling whether Showcase is enabled." - disabled - enabled - -union ShowcaseExternalSharingPolicy - "Policy for controlling if team members can share Showcases externally." - disabled - enabled - -union SmartSyncOptOutPolicy - default - opted_out - -union SpaceCapsType - "Space limit alert policy" - hard - off - soft - -union SpaceLimitsStatus - near_quota - over_quota - within_quota - -union TeamBrandingPolicy - "Policy for controlling team access to setting up branding feature" - disabled - enabled - -union TeamExtensionsPolicy - "Policy for controlling whether App Integrations are enabled for the team." - disabled - enabled - -struct TeamLogInfo - "Team's logged information." - - display_name String - "Team display name." - - example default - display_name = "A Team" - - example default2 - display_name = "A Team" - -union TeamMembershipType - free - full - guest - -union TeamMergeRequestAcceptedExtraDetails - "Team merge request acceptance details" - - primary_team PrimaryTeamRequestAcceptedDetails - "Team merge request accepted details shown to the primary team." - secondary_team SecondaryTeamRequestAcceptedDetails - "Team merge request accepted details shown to the secondary team." - - example default - primary_team = default - - example default2 - primary_team = default2 - -struct SecondaryTeamRequestAcceptedDetails - "Team merge request acceptance details shown to the secondary team" - - primary_team String - "The primary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - primary_team = "IT Department" - sent_by = "Dan Eveninglily" - - example default2 - primary_team = "IT Department" - sent_by = "Dan Eveninglily" - -struct PrimaryTeamRequestAcceptedDetails - "Team merge request acceptance details shown to the primary team" - - secondary_team String - "The secondary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - secondary_team = "IT Department" - sent_by = "Dan Eveninglily" - - example default2 - secondary_team = "IT Department" - sent_by = "Dan Eveninglily" - -union TeamMergeRequestCanceledExtraDetails - "Team merge request cancellation details" - - primary_team PrimaryTeamRequestCanceledDetails - "Team merge request cancellation details shown to the primary team." - secondary_team SecondaryTeamRequestCanceledDetails - "Team merge request cancellation details shown to the secondary team." - - example default - primary_team = default - - example default2 - primary_team = default2 - -struct SecondaryTeamRequestCanceledDetails - "Team merge request cancellation details shown to the secondary team" - - sent_to String - "The email of the primary team admin that the request was sent to." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - sent_to = "admin@it_department.com" - sent_by = "Dan Eveninglily" - - example default2 - sent_to = "admin@it_department.com" - sent_by = "Dan Eveninglily" - -struct PrimaryTeamRequestCanceledDetails - "Team merge request cancellation details shown to the primary team" - - secondary_team String - "The secondary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - secondary_team = "IT Department" - sent_by = "Dan Eveninglily" - - example default2 - secondary_team = "IT Department" - sent_by = "Dan Eveninglily" - -union TeamMergeRequestExpiredExtraDetails - "Team merge request expiration details" - - primary_team PrimaryTeamRequestExpiredDetails - "Team merge request canceled details shown to the primary team." - secondary_team SecondaryTeamRequestExpiredDetails - "Team merge request canceled details shown to the secondary team." - - example default - primary_team = default - - example default2 - primary_team = default2 - -struct SecondaryTeamRequestExpiredDetails - "Team merge request expiration details shown to the secondary team" - - sent_to String - "The email of the primary team admin the request was sent to." - - example default - sent_to = "admin@it_department.com" - - example default2 - sent_to = "admin@it_department.com" - -struct PrimaryTeamRequestExpiredDetails - "Team merge request expiration details shown to the primary team" - - secondary_team String - "The secondary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - secondary_team = "IT Department" - sent_by = "Dan Eveninglily" - - example default2 - secondary_team = "IT Department" - sent_by = "Dan Eveninglily" - -union TeamMergeRequestReminderExtraDetails - "Team merge request reminder details" - - primary_team PrimaryTeamRequestReminderDetails - "Team merge request reminder details shown to the primary team." - secondary_team SecondaryTeamRequestReminderDetails - "Team merge request reminder details shown to the secondary team." - - example default - primary_team = default - - example default2 - primary_team = default2 - -struct SecondaryTeamRequestReminderDetails - "Team merge request reminder details shown to the secondary team" - - sent_to String - "The email of the primary team admin the request was sent to." - - example default - sent_to = "admin@it_department.com" - - example default2 - sent_to = "admin@it_department.com" - -struct PrimaryTeamRequestReminderDetails - "Team merge request reminder details shown to the primary team" - - secondary_team String - "The secondary team name." - sent_to String - "The name of the primary team admin the request was sent to." - - example default - secondary_team = "IT Department" - sent_to = "Dan Eveninglily" - - example default2 - secondary_team = "IT Department" - sent_to = "Dan Eveninglily" - -struct TeamName - "Team name details" - - team_display_name String - "Team's display name." - team_legal_name String - "Team's legal name." - - example default - team_display_name = "abc" - team_legal_name = "abc" - - example default2 - team_display_name = "xyz" - team_legal_name = "xyz" - -union TeamSelectiveSyncPolicy - "Policy for controlling whether team selective sync is enabled for team." - disabled - enabled - -union TfaConfiguration - "Two factor authentication configuration. Note: the enabled option is deprecated." - authenticator - disabled - enabled - sms - -union TimeUnit - days - hours - milliseconds - minutes - months - seconds - weeks - years - -struct TrustedNonTeamMemberLogInfo extends UserLogInfo - "User that is not a member of the team but considered trusted." - - trusted_non_team_member_type TrustedNonTeamMemberType - "Indicates the type of the member of a trusted team." - team TeamLogInfo? - "Details about this user's trusted team." - - example default - account_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" - display_name = "John Smith" - email = "john_smith@acmecorp.com" - trusted_non_team_member_type = multi_instance_admin - team = default - - example default2 - account_id = "dbid:AAGx4oiLtHdvRdNxUpvvJBXYgR4BS19c9kw" - display_name = "Jane Smith" - email = "jane_smith@acmecorp.com" - trusted_non_team_member_type = multi_instance_admin - team = default2 - -union TrustedNonTeamMemberType - enterprise_admin - multi_instance_admin - -union TrustedTeamsRequestAction - accepted - declined - expired - invited - revoked - -union TrustedTeamsRequestState - invited - linked - unlinked - -union TwoAccountPolicy - "Policy for pairing personal account to work account" - disabled - enabled - -struct UserNameLogInfo - "User's name logged information" - - given_name String - "Given name." - surname String - "Surname." - locale String? - "Locale. Might be missing due to historical data gap." - - example default - given_name = "abc" - surname = "abc" - locale = "abc" - - example default2 - given_name = "xyz" - surname = "xyz" - locale = "xyz" - -union WatermarkingPolicy - "Policy for controlling team access to watermarking feature" - disabled - enabled - -union WebSessionsFixedLengthPolicy - "Web sessions fixed length policy." - - defined DurationLogInfo - "Defined fixed session length." - undefined - "Undefined fixed session length." - - example default - defined = default - - example default2 - defined = default2 - -union WebSessionsIdleLengthPolicy - "Web sessions idle length policy." - - defined DurationLogInfo - "Defined idle session length." - undefined - "Undefined idle session length." - - example default - defined = default - - example default2 - defined = default2 - -################## -# Built-in types -################## - -struct ApiSessionLogInfo - "Api session." - - request_id RequestId - "Api request ID." - - example default - request_id = "dbarid:f451ce673cc5da6818aed4c160a3ebaa" - - example default2 - request_id = "dbarid:f451ce673cc5da6818aed4c160a3ebaa" - -struct AppLogInfo - "App's logged information." - union - user_or_team_linked_app UserOrTeamLinkedAppLogInfo - user_linked_app UserLinkedAppLogInfo - team_linked_app TeamLinkedAppLogInfo - - app_id AppId? - "App unique ID." - display_name String? - "App display name." - - example default - team_linked_app = default - - example default2 - team_linked_app = default2 - -struct DesktopSessionLogInfo extends SessionLogInfo - "Desktop session." - - example default - session_id = "dbwsid:123456789012345678901234567890123456789" - - example default2 - session_id = "dbwsid:abcd5678901234567890123456789012345abcd" - -struct DeviceSessionLogInfo - "Device's session logged information." - union - desktop_device_session DesktopDeviceSessionLogInfo - mobile_device_session MobileDeviceSessionLogInfo - web_device_session WebDeviceSessionLogInfo - legacy_device_session LegacyDeviceSessionLogInfo - - ip_address IpAddress? - "The IP address of the last activity from this session." - created common.DropboxTimestamp? - "The time this session was created." - updated common.DropboxTimestamp? - "The time of the last activity from this session." - - example default - desktop_device_session = default - - example default2 - desktop_device_session = default2 - -struct DesktopDeviceSessionLogInfo extends DeviceSessionLogInfo - "Information about linked Dropbox desktop client sessions" - - session_info DesktopSessionLogInfo? - "Desktop session unique id." - host_name String - "Name of the hosting desktop." - client_type team.DesktopPlatform - "The Dropbox desktop client type." - client_version String? - "The Dropbox client version." - platform String - "Information on the hosting platform." - is_delete_on_unlink_supported Boolean - "Whether itu2019s possible to delete all of the account files upon unlinking." - - example default - ip_address = "45.56.78.100" - created = "2017-01-25T15:51:30Z" - updated = "2017-01-25T15:51:30Z" - session_info = default - host_name = "my_desktop" - client_type = other - client_version = "abc" - platform = "abc" - is_delete_on_unlink_supported = true - - example default2 - ip_address = "45.56.78.100" - created = "2017-01-25T15:51:30Z" - updated = "2017-01-25T15:51:30Z" - session_info = default2 - host_name = "my_desktop" - client_type = other - client_version = "xyz" - platform = "xyz" - is_delete_on_unlink_supported = false - -struct MobileDeviceSessionLogInfo extends DeviceSessionLogInfo - "Information about linked Dropbox mobile client sessions" - - session_info MobileSessionLogInfo? - "Mobile session unique id." - device_name String - "The device name." - client_type team.MobileClientPlatform - "The mobile application type." - client_version String? - "The Dropbox client version." - os_version String? - "The hosting OS version." - last_carrier String? - "last carrier used by the device." - - example default - ip_address = "45.56.78.100" - created = "2017-01-25T15:51:30Z" - updated = "2017-01-25T15:51:30Z" - session_info = default - device_name = "abc" - client_type = iphone - client_version = "abc" - os_version = "abc" - last_carrier = "abc" - - example default2 - ip_address = "45.56.78.100" - created = "2017-01-25T15:51:30Z" - updated = "2017-01-25T15:51:30Z" - session_info = default2 - device_name = "xyz" - client_type = iphone - client_version = "xyz" - os_version = "xyz" - last_carrier = "xyz" - -struct WebDeviceSessionLogInfo extends DeviceSessionLogInfo - "Information on active web sessions" - - session_info WebSessionLogInfo? - "Web session unique id." - user_agent String - "Information on the hosting device." - os String - "Information on the hosting operating system." - browser String - "Information on the browser used for this web session." - - example default - ip_address = "45.56.78.100" - created = "2017-01-25T15:51:30Z" - updated = "2017-01-25T15:51:30Z" - session_info = default - user_agent = "abc" - os = "abc" - browser = "abc" - - example default2 - ip_address = "45.56.78.100" - created = "2017-01-25T15:51:30Z" - updated = "2017-01-25T15:51:30Z" - session_info = default2 - user_agent = "xyz" - os = "xyz" - browser = "xyz" - -struct LegacyDeviceSessionLogInfo extends DeviceSessionLogInfo - "Information on sessions, in legacy format" - - session_info SessionLogInfo? - "Session unique id." - display_name String? - "The device name. Might be missing due to historical data gap." - is_emm_managed Boolean? - "Is device managed by emm. Might be missing due to historical data gap." - platform String? - "Information on the hosting platform. Might be missing due to historical data gap." - mac_address IpAddress? - "The mac address of the last activity from this session. Might be missing due to historical data gap." - os_version String? - "The hosting OS version. Might be missing due to historical data gap." - device_type String? - "Information on the hosting device type. Might be missing due to historical data gap." - client_version String? - "The Dropbox client version. Might be missing due to historical data gap." - legacy_uniq_id String? - "Alternative unique device session id, instead of session id field. Might be missing due to historical data gap." - - example default - ip_address = "45.56.78.100" - created = "2017-01-25T15:51:30Z" - updated = "2017-01-25T15:51:30Z" - session_info = default - display_name = "abc" - is_emm_managed = true - platform = "abc" - mac_address = "45.56.78.100" - os_version = "abc" - device_type = "abc" - client_version = "abc" - legacy_uniq_id = "abc" - - example default2 - ip_address = "45.56.78.100" - created = "2017-01-25T15:51:30Z" - updated = "2017-01-25T15:51:30Z" - session_info = default2 - display_name = "xyz" - is_emm_managed = false - platform = "xyz" - mac_address = "45.56.78.100" - os_version = "xyz" - device_type = "xyz" - client_version = "xyz" - legacy_uniq_id = "xyz" - -struct SessionLogInfo - "Session's logged information." - union - web WebSessionLogInfo - desktop DesktopSessionLogInfo - mobile MobileSessionLogInfo - - session_id common.SessionId? - "Session ID." - - example default - desktop = default - - example default2 - desktop = default2 - -struct UserLogInfo - "User's logged information." - union - team_member TeamMemberLogInfo - trusted_non_team_member TrustedNonTeamMemberLogInfo - non_team_member NonTeamMemberLogInfo - - account_id users_common.AccountId? - "User unique ID." - display_name common.DisplayNameLegacy? - "User display name." - email EmailAddress? - "User email address." - - example default - non_team_member = default - - example default2 - non_team_member = default2 - -struct UserLinkedAppLogInfo extends AppLogInfo - "User linked app" - - example default - app_id = "dbaid:AAFhvuxku2OYumUaV17x6ExFhr6OPrwjTKs" - display_name = "abc" - - example default2 - app_id = "dbaid:AAG1NxJeBtby__IZENPAvDGeOssreFpPALE" - display_name = "xyz" - -struct UserOrTeamLinkedAppLogInfo extends AppLogInfo - "User or team linked app. Used when linked type is missing due to historical data gap." - - example default - app_id = "dbaid:AAFhvuxku2OYumUaV17x6ExFhr6OPrwjTKs" - display_name = "abc" - - example default2 - app_id = "dbaid:AAG1NxJeBtby__IZENPAvDGeOssreFpPALE" - display_name = "xyz" - -struct TeamMemberLogInfo extends UserLogInfo - "Team member's logged information." - - team_member_id team_common.TeamMemberId? - "Team member ID." - member_external_id team_common.MemberExternalId? - "Team member external ID." - team TeamLogInfo? - "Details about this user’s team for enterprise event." - - example default - account_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" - display_name = "John Smith" - email = "john_smith@acmecorp.com" - team_member_id = "dbmid:AAFoi-tmvRuQR0jU-3fN4B-9nZo6nHcDO9Q" - member_external_id = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" - team = default - - example default2 - account_id = "dbid:AAGx4oiLtHdvRdNxUpvvJBXYgR4BS19c9kw" - display_name = "Jane Smith" - email = "jane_smith@acmecorp.com" - team_member_id = "dbmid:AAFoi-tmvRuQR0jU-3fN4B-9nZo6nHcDO9Q" - member_external_id = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1225" - team = default2 - -struct TeamLinkedAppLogInfo extends AppLogInfo - "Team linked app" - - example default - app_id = "dbaid:AAFhvuxku2OYumUaV17x6ExFhr6OPrwjTKs" - display_name = "abc" - - example default2 - app_id = "dbaid:AAG1NxJeBtby__IZENPAvDGeOssreFpPALE" - display_name = "xyz" - -struct FileOrFolderLogInfo - "Generic information relevant both for files and folders" - - path PathLogInfo - "Path relative to event context." - display_name String? - "Display name." - file_id String? - "Unique ID." - file_size UInt64? - "File or folder size in bytes." - - example default - path = default - display_name = "reports.xls" - file_id = "id:jQKLsZFQImAAAAAAEZAAQt" - file_size = 3 - - example default2 - path = default2 - display_name = "reports.xls" - file_id = "id:jQKLsZFQImAAAAAAEZAAQt" - file_size = 4 - -struct FileLogInfo extends FileOrFolderLogInfo - "File's logged information." - - example default - path = default - display_name = "reports.xls" - file_id = "id:jQKLsZFQImAAAAAAEZAAQt" - file_size = 3 - - example default2 - path = default2 - display_name = "reports.xls" - file_id = "id:jQKLsZFQImAAAAAAEZAAQt" - file_size = 4 - -struct FolderLogInfo extends FileOrFolderLogInfo - "Folder's logged information." - - file_count UInt64? - "Number of files within the folder." - - example default - path = default - display_name = "reports.xls" - file_id = "id:jQKLsZFQImAAAAAAEZAAQt" - file_size = 3 - file_count = 3 - - example default2 - path = default2 - display_name = "reports.xls" - file_id = "id:jQKLsZFQImAAAAAAEZAAQt" - file_size = 4 - file_count = 4 - -struct GroupLogInfo - "Group's logged information." - - group_id team_common.GroupId? - "The unique id of this group." - display_name String - "The name of this group." - external_id team_common.GroupExternalId? - "External group ID." - - example default - group_id = "g:e2db7665347abcd600000000001a2b3c" - display_name = "abc" - external_id = "some group id" - - example default2 - group_id = "g:hujn7665347abcd600000000001a2b3d" - display_name = "xyz" - external_id = "another group id" - -struct PathLogInfo - "Path's details." - - contextual FilePath? - "Fully qualified path relative to event's context." - namespace_relative NamespaceRelativePathLogInfo - "Path relative to the namespace containing the content." - - example default - contextual = "/Contract Work/Product Design" - namespace_relative = default - - example default2 - contextual = "/Contract Work/Draft" - namespace_relative = default2 - -struct PaperDocumentLogInfo - "Paper document's logged information." - - doc_id String - "Papers document Id." - doc_title String - "Paper document title." - - example default - doc_id = "abc" - doc_title = "abc" - - example default2 - doc_id = "xyz" - doc_title = "xyz" - -struct PaperFolderLogInfo - "Paper folder's logged information." - - folder_id String - "Papers folder Id." - folder_name String - "Paper folder name." - - example default - folder_id = "abc" - folder_name = "abc" - - example default2 - folder_id = "xyz" - folder_name = "xyz" - -struct NonTeamMemberLogInfo extends UserLogInfo - "Non team member's logged information." - - example default - account_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" - display_name = "John Smith" - email = "john_smith@acmecorp.com" - - example default2 - account_id = "dbid:AAGx4oiLtHdvRdNxUpvvJBXYgR4BS19c9kw" - display_name = "Jane Smith" - email = "jane_smith@acmecorp.com" - -struct NamespaceRelativePathLogInfo - "Namespace relative path details." - - ns_id NamespaceId? - "Namespace ID." - relative_path FilePath? - "A path relative to the specified namespace ID." - is_shared_namespace Boolean? - "True if the namespace is shared." - - example default - ns_id = "1234" - relative_path = "/Contract Work/Product Design" - is_shared_namespace = true - - example default2 - ns_id = "1234" - relative_path = "/Contract Work/Draft" - is_shared_namespace = false - -struct WebSessionLogInfo extends SessionLogInfo - "Web session." - - example default - session_id = "dbwsid:123456789012345678901234567890123456789" - - example default2 - session_id = "dbwsid:abcd5678901234567890123456789012345abcd" - -struct MobileSessionLogInfo extends SessionLogInfo - "Mobile session." - - example default - session_id = "dbwsid:123456789012345678901234567890123456789" - - example default2 - session_id = "dbwsid:abcd5678901234567890123456789012345abcd" - -struct ResellerLogInfo - "Reseller information." - - reseller_name String - "Reseller name." - reseller_email EmailAddress - "Reseller email." - - example default - reseller_name = "abc" - reseller_email = "john_smith@acmecorp.com" - - example default2 - reseller_name = "xyz" - reseller_email = "jane_smith@acmecorp.com" - -struct OriginLogInfo - "The origin from which the actor performed the action." - - geo_location GeoLocationLogInfo? - "Geographic location details." - access_method AccessMethodLogInfo - "The method that was used to perform the action." - - example default - geo_location = default - access_method = default - - example default2 - geo_location = default2 - access_method = default2 - -struct DurationLogInfo - "Represents a time duration: unit and amount" - - unit TimeUnit - "Time unit." - amount UInt64 - "Amount of time." - - example default - unit = milliseconds - amount = 3 - - example default2 - unit = milliseconds - amount = 4 - -struct ExternalUserLogInfo - "A user without a Dropbox account." - - user_identifier String - "An external user identifier." - identifier_type IdentifierType - "Identifier type." - - example default - user_identifier = "david@example.com" - identifier_type = email - - example default2 - user_identifier = "david@example.com" - identifier_type = email - -struct MissingDetails - "An indication that an error occurred while retrieving the event. Some attributes of the event may be omitted as a result." - - source_event_fields String? - "All the data that could be retrieved and converted from the source event." - - -union ActorLogInfo - "The entity who performed the action." - - admin UserLogInfo - "The admin who did the action." - anonymous - "Anonymous actor." - app AppLogInfo - "The application who did the action." - dropbox - "Action done by Dropbox." - reseller ResellerLogInfo - "Action done by reseller." - user UserLogInfo - "The user who did the action." - - example default - user = default - - example default2 - user = default2 - -union AssetLogInfo - "Asset details." - - file FileLogInfo - "File's details." - folder FolderLogInfo - "Folder's details." - paper_document PaperDocumentLogInfo - "Paper document's details." - paper_folder PaperFolderLogInfo - "Paper folder's details." - showcase_document ShowcaseDocumentLogInfo - "Showcase document's details." - - example default - file = default - - example default2 - file = default2 - -union ContextLogInfo - "The primary entity on which the action was done." - - anonymous - "Anonymous context." - non_team_member NonTeamMemberLogInfo - "Action was done on behalf of a non team member." - organization_team TeamLogInfo - "Action was done on behalf of a team that's part of an organization." - team - "Action was done on behalf of the team." - team_member TeamMemberLogInfo - "Action was done on behalf of a team member." - trusted_non_team_member TrustedNonTeamMemberLogInfo - "Action was done on behalf of a trusted non team member." - - example default - team_member = default - - example default2 - team_member = default2 - -union ParticipantLogInfo - "A user or group" - - group GroupLogInfo - "Group details." - user UserLogInfo - "A user with a Dropbox account." - - example default - user = default - - example default2 - user = default2 - -union EventCategory - "Category of events in event audit log." - - admin_alerting - "Events that involve team related alerts." - apps - "Events that apply to management of linked apps." - comments - "Events that have to do with comments on files and Paper documents." - data_governance - "Events that involve data governance actions" - devices - "Events that apply to linked devices on mobile, desktop and Web platforms." - domains - "Events that involve domain management feature: domain verification, invite enforcement and account capture." - encryption - "Events that involve encryption." - file_operations - "Events that have to do with filesystem operations on files and folders: copy, move, delete, etc." - file_requests - "Events that apply to the file requests feature." - groups - "Events that involve group management." - logins - "Events that involve users signing in to or out of Dropbox." - members - "Events that involve team member management." - paper - "Events that apply to Dropbox Paper." - passwords - "Events that involve using, changing or resetting passwords." - reports - "Events that concern generation of admin reports, including team activity and device usage." - sharing - "Events that apply to all types of sharing and collaboration." - showcase - "Events that apply to Dropbox Showcase." - sso - "Events that involve using or configuring single sign-on as well as administrative policies concerning single sign-on." - team_folders - "Events that involve team folder management." - team_policies - "Events that involve a change in team-wide policies." - team_profile - "Events that involve a change in the team profile." - tfa - "Events that involve using or configuring two factor authentication as well as administrative policies concerning two factor authentication." - trusted_teams - "Events that apply to cross-team trust establishment." - - example default - sharing = null - -############################# -# Types for specific events -############################# - -struct AdminAlertingAlertStateChangedDetails - "Changed an alert state." - - alert_name String - "Alert name." - alert_severity AdminAlertSeverityEnum - "Alert severity." - alert_category AdminAlertCategoryEnum - "Alert category." - alert_instance_id String - "Alert ID." - previous_value AdminAlertGeneralStateEnum - "Alert state before the change." - new_value AdminAlertGeneralStateEnum - "Alert state after the change." - - example default - alert_name = "abc" - alert_severity = na - alert_category = na - alert_instance_id = "pid_admin_alert:AAgAAOVHYCEuavqE0v3Jj9VDogV4wG9q8F-XZKwYpuYTVBm5" - previous_value = na - new_value = na - -struct AdminAlertingChangedAlertConfigDetails - "Changed an alert setting." - - alert_name String - "Alert Name." - previous_alert_config AdminAlertingAlertConfiguration - "Previous alert configuration." - new_alert_config AdminAlertingAlertConfiguration - "New alert configuration." - - example default - alert_name = "abc" - previous_alert_config = default - new_alert_config = default - -struct AdminAlertingTriggeredAlertDetails - "Triggered security alert." - - alert_name String - "Alert name." - alert_severity AdminAlertSeverityEnum - "Alert severity." - alert_category AdminAlertCategoryEnum - "Alert category." - alert_instance_id String - "Alert ID." - - example default - alert_name = "abc" - alert_severity = na - alert_category = na - alert_instance_id = "pid_admin_alert:AAgAAOVHYCEuavqE0v3Jj9VDogV4wG9q8F-XZKwYpuYTVBm5" - -struct RansomwareRestoreProcessCompletedDetails - "Completed ransomware restore process." - - status String - "The status of the restore process." - restored_files_count Int64 - "Restored files count." - restored_files_failed_count Int64 - "Restored files failed count." - - example default - status = "abc" - restored_files_count = 3 - restored_files_failed_count = 3 - -struct RansomwareRestoreProcessStartedDetails - "Started ransomware restore process." - - extension String - "Ransomware filename extension." - - example default - extension = "abc" - -struct AppBlockedByPermissionsDetails - "Failed to connect app for member." - - app_info AppLogInfo - "Relevant application details." - - example default - app_info = default - -struct AppLinkTeamDetails - "Linked app for team." - - app_info AppLogInfo - "Relevant application details." - - example default - app_info = default - -struct AppLinkUserDetails - "Linked app for member." - - app_info AppLogInfo - "Relevant application details." - - example default - app_info = default - -struct AppUnlinkTeamDetails - "Unlinked app for team." - - app_info AppLogInfo - "Relevant application details." - - example default - app_info = default - -struct AppUnlinkUserDetails - "Unlinked app for member." - - app_info AppLogInfo - "Relevant application details." - - example default - app_info = default - -struct IntegrationConnectedDetails - "Connected integration for member." - - integration_name String - "Name of the third-party integration." - - example default - integration_name = "abc" - -struct IntegrationDisconnectedDetails - "Disconnected integration for member." - - integration_name String - "Name of the third-party integration." - - example default - integration_name = "abc" - -struct FileAddCommentDetails - "Added file comment." - - comment_text String? - "Comment text." - - example default - comment_text = "abc" - -struct FileChangeCommentSubscriptionDetails - "Subscribed to or unsubscribed from comment notifications for file." - - new_value FileCommentNotificationPolicy - "New file comment subscription." - previous_value FileCommentNotificationPolicy? - "Previous file comment subscription. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct FileDeleteCommentDetails - "Deleted file comment." - - comment_text String? - "Comment text." - - example default - comment_text = "abc" - -struct FileEditCommentDetails - "Edited file comment." - - comment_text String? - "Comment text." - previous_comment_text String - "Previous comment text." - - example default - comment_text = "abc" - previous_comment_text = "abc" - -struct FileLikeCommentDetails - "Liked file comment." - - comment_text String? - "Comment text." - - example default - comment_text = "abc" - -struct FileResolveCommentDetails - "Resolved file comment." - - comment_text String? - "Comment text." - - example default - comment_text = "abc" - -struct FileUnlikeCommentDetails - "Unliked file comment." - - comment_text String? - "Comment text." - - example default - comment_text = "abc" - -struct FileUnresolveCommentDetails - "Unresolved file comment." - - comment_text String? - "Comment text." - - example default - comment_text = "abc" - -struct GovernancePolicyAddFoldersDetails - "Added folders to policy." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - folders List(String)? - "Folders." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - folders = ["abc"] - -struct GovernancePolicyAddFolderFailedDetails - "Couldn't add a folder to a policy." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - folder String - "Folder." - reason String? - "Reason." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - folder = "abc" - reason = "abc" - -struct GovernancePolicyContentDisposedDetails - "Content disposed." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - disposition_type DispositionActionType - "Disposition type." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - disposition_type = automatic_delete - -struct GovernancePolicyCreateDetails - "Activated a new policy." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - duration DurationLogInfo - "Duration in days." - folders List(String)? - "Folders." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - duration = default - folders = ["abc"] - -struct GovernancePolicyDeleteDetails - "Deleted a policy." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - -struct GovernancePolicyEditDetailsDetails - "Edited policy." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - attribute String - "Attribute." - previous_value String - "From." - new_value String - "To." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - attribute = "abc" - previous_value = "abc" - new_value = "abc" - -struct GovernancePolicyEditDurationDetails - "Changed policy duration." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - previous_value DurationLogInfo - "From." - new_value DurationLogInfo - "To." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - previous_value = default - new_value = default - -struct GovernancePolicyExportCreatedDetails - "Created a policy download." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - export_name String - "Export name." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - export_name = "abc" - -struct GovernancePolicyExportRemovedDetails - "Removed a policy download." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - export_name String - "Export name." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - export_name = "abc" - -struct GovernancePolicyRemoveFoldersDetails - "Removed folders from policy." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - folders List(String)? - "Folders." - reason String? - "Reason." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - folders = ["abc"] - reason = "abc" - -struct GovernancePolicyReportCreatedDetails - "Created a summary report for a policy." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - -struct GovernancePolicyZipPartDownloadedDetails - "Downloaded content from a policy." - - governance_policy_id String - "Policy ID." - name String - "Policy name." - policy_type PolicyType? - "Policy type." - export_name String - "Export name." - part String? - "Part." - - example default - governance_policy_id = "abc" - name = "abc" - policy_type = retention - export_name = "abc" - part = "abc" - -struct LegalHoldsActivateAHoldDetails - "Activated a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - start_date common.DropboxTimestamp - "Hold start date." - end_date common.DropboxTimestamp? - "Hold end date." - - example default - legal_hold_id = "abc" - name = "abc" - start_date = "2017-01-25T15:51:30Z" - end_date = "2017-01-25T15:51:30Z" - -struct LegalHoldsAddMembersDetails - "Added members to a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - - example default - legal_hold_id = "abc" - name = "abc" - -struct LegalHoldsChangeHoldDetailsDetails - "Edited details for a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - previous_value String - "Previous details." - new_value String - "New details." - - example default - legal_hold_id = "abc" - name = "abc" - previous_value = "abc" - new_value = "abc" - -struct LegalHoldsChangeHoldNameDetails - "Renamed a hold." - - legal_hold_id String - "Hold ID." - previous_value String - "Previous Name." - new_value String - "New Name." - - example default - legal_hold_id = "abc" - previous_value = "abc" - new_value = "abc" - -struct LegalHoldsExportAHoldDetails - "Exported hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - export_name String? - "Export name." - - example default - legal_hold_id = "abc" - name = "abc" - export_name = "abc" - -struct LegalHoldsExportCancelledDetails - "Canceled export for a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - export_name String - "Export name." - - example default - legal_hold_id = "abc" - name = "abc" - export_name = "abc" - -struct LegalHoldsExportDownloadedDetails - "Downloaded export for a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - export_name String - "Export name." - part String? - "Part." - file_name String? - "Filename." - - example default - legal_hold_id = "abc" - name = "abc" - export_name = "abc" - part = "abc" - file_name = "abc" - -struct LegalHoldsExportRemovedDetails - "Removed export for a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - export_name String - "Export name." - - example default - legal_hold_id = "abc" - name = "abc" - export_name = "abc" - -struct LegalHoldsReleaseAHoldDetails - "Released a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - - example default - legal_hold_id = "abc" - name = "abc" - -struct LegalHoldsRemoveMembersDetails - "Removed members from a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - - example default - legal_hold_id = "abc" - name = "abc" - -struct LegalHoldsReportAHoldDetails - "Created a summary report for a hold." - - legal_hold_id String - "Hold ID." - name String - "Hold name." - - example default - legal_hold_id = "abc" - name = "abc" - -struct DeviceChangeIpDesktopDetails - "Changed IP address associated with active desktop session." - - device_session_info DeviceSessionLogInfo - "Device's session logged information." - - example default - device_session_info = default - -struct DeviceChangeIpMobileDetails - "Changed IP address associated with active mobile session." - - device_session_info DeviceSessionLogInfo? - "Device's session logged information." - - example default - device_session_info = default - -struct DeviceChangeIpWebDetails - "Changed IP address associated with active web session." - - user_agent String - "Web browser name." - - example default - user_agent = "abc" - -struct DeviceDeleteOnUnlinkFailDetails - "Failed to delete all files from unlinked device." - - session_info SessionLogInfo? - "Session unique id." - display_name String? - "The device name. Might be missing due to historical data gap." - num_failures Int64 - "The number of times that remote file deletion failed." - - example default - session_info = default - display_name = "abc" - num_failures = 3 - -struct DeviceDeleteOnUnlinkSuccessDetails - "Deleted all files from unlinked device." - - session_info SessionLogInfo? - "Session unique id." - display_name String? - "The device name. Might be missing due to historical data gap." - - example default - session_info = default - display_name = "abc" - -struct DeviceLinkFailDetails - "Failed to link device." - - ip_address IpAddress? - "IP address. Might be missing due to historical data gap." - device_type DeviceType - "A description of the device used while user approval blocked." - - example default - ip_address = "45.56.78.100" - device_type = desktop - -struct DeviceLinkSuccessDetails - "Linked device." - - device_session_info DeviceSessionLogInfo? - "Device's session logged information." - - example default - device_session_info = default - -struct DeviceManagementDisabledDetails - "Disabled device management." - -struct DeviceManagementEnabledDetails - "Enabled device management." - -struct DeviceSyncBackupStatusChangedDetails - "Enabled/disabled backup for computer." - - desktop_device_session_info DesktopDeviceSessionLogInfo - "Device's session logged information." - previous_value BackupStatus - "Previous status of computer backup on the device." - new_value BackupStatus - "Next status of computer backup on the device." - - example default - desktop_device_session_info = default - previous_value = disabled - new_value = disabled - -struct DeviceUnlinkDetails - "Disconnected device." - - session_info SessionLogInfo? - "Session unique id." - display_name String? - "The device name. Might be missing due to historical data gap." - delete_data Boolean - "True if the user requested to delete data after device unlink, false otherwise." - - example default - session_info = default - display_name = "abc" - delete_data = true - -struct DropboxPasswordsExportedDetails - "Exported passwords." - - platform String - "The platform the device runs export." - - example default - platform = "abc" - -struct DropboxPasswordsNewDeviceEnrolledDetails - "Enrolled new Dropbox Passwords device." - - is_first_device Boolean - "Whether it's a first device enrolled." - platform String - "The platform the device is enrolled." - - example default - is_first_device = true - platform = "abc" - -struct EmmRefreshAuthTokenDetails - "Refreshed auth token used for setting up EMM." - -struct ExternalDriveBackupEligibilityStatusCheckedDetails - "Checked external drive backup eligibility status." - - desktop_device_session_info DesktopDeviceSessionLogInfo - "Device's session logged information." - status ExternalDriveBackupEligibilityStatus - "Current eligibility status of external drive backup." - number_of_external_drive_backup UInt64 - "Total number of valid external drive backup for all the team members." - - example default - desktop_device_session_info = default - status = success - number_of_external_drive_backup = 3 - -struct ExternalDriveBackupStatusChangedDetails - "Modified external drive backup." - - desktop_device_session_info DesktopDeviceSessionLogInfo - "Device's session logged information." - previous_value ExternalDriveBackupStatus - "Previous status of this external drive backup." - new_value ExternalDriveBackupStatus - "Next status of this external drive backup." - - example default - desktop_device_session_info = default - previous_value = empty - new_value = empty - -struct AccountCaptureChangeAvailabilityDetails - "Granted/revoked option to enable account capture on team domains." - - new_value AccountCaptureAvailability - "New account capture availabilty value." - previous_value AccountCaptureAvailability? - "Previous account capture availabilty value. Might be missing due to historical data gap." - - example default - new_value = unavailable - previous_value = unavailable - -struct AccountCaptureMigrateAccountDetails - "Account-captured user migrated account to team." - - domain_name String - "Domain name." - - example default - domain_name = "mars.com" - -struct AccountCaptureNotificationEmailsSentDetails - "Sent account capture email to all unmanaged members." - - domain_name String - "Domain name." - notification_type AccountCaptureNotificationType? - "Account-capture email notification type." - - example default - domain_name = "mars.com" - notification_type = proactive_warning_notification - -struct AccountCaptureRelinquishAccountDetails - "Account-captured user changed account email to personal email." - - domain_name String - "Domain name." - - example default - domain_name = "mars.com" - -struct DisabledDomainInvitesDetails - "Disabled domain invites." - -struct DomainInvitesApproveRequestToJoinTeamDetails - "Approved user's request to join team." - -struct DomainInvitesDeclineRequestToJoinTeamDetails - "Declined user's request to join team." - -struct DomainInvitesEmailExistingUsersDetails - "Sent domain invites to existing domain accounts." - - domain_name String - "Domain names." - num_recipients UInt64 - "Number of recipients." - - example default - domain_name = "abc" - num_recipients = 3 - -struct DomainInvitesRequestToJoinTeamDetails - "Requested to join team." - -struct DomainInvitesSetInviteNewUserPrefToNoDetails - "Disabled \"Automatically invite new users\"." - -struct DomainInvitesSetInviteNewUserPrefToYesDetails - "Enabled \"Automatically invite new users\"." - -struct DomainVerificationAddDomainFailDetails - "Failed to verify team domain." - - domain_name String - "Domain name." - verification_method String? - "Domain name verification method. Might be missing due to historical data gap." - - example default - domain_name = "mars.com" - verification_method = "abc" - -struct DomainVerificationAddDomainSuccessDetails - "Verified team domain." - - domain_names List(String) - "Domain names." - verification_method String? - "Domain name verification method. Might be missing due to historical data gap." - - example default - domain_names = ["mars.com"] - verification_method = "abc" - -struct DomainVerificationRemoveDomainDetails - "Removed domain from list of verified team domains." - - domain_names List(String) - "Domain names." - - example default - domain_names = ["mars.com"] - -struct EnabledDomainInvitesDetails - "Enabled domain invites." - -struct TeamEncryptionKeyCancelKeyDeletionDetails - "Canceled team encryption key deletion." - - - example default - -struct TeamEncryptionKeyCreateKeyDetails - "Created team encryption key." - - - example default - -struct TeamEncryptionKeyDeleteKeyDetails - "Deleted team encryption key." - - - example default - -struct TeamEncryptionKeyDisableKeyDetails - "Disabled team encryption key." - - - example default - -struct TeamEncryptionKeyEnableKeyDetails - "Enabled team encryption key." - - - example default - -struct TeamEncryptionKeyRotateKeyDetails - "Rotated team encryption key." - - - example default - -struct TeamEncryptionKeyScheduleKeyDeletionDetails - "Scheduled encryption key deletion." - - - example default - -struct ApplyNamingConventionDetails - "Applied naming convention." - -struct CreateFolderDetails - "Created folders." - -struct FileAddDetails - "Added files and/or folders." - -struct FileAddFromAutomationDetails - "Added files and/or folders from automation." - -struct FileCopyDetails - "Copied files and/or folders." - - relocate_action_details List(RelocateAssetReferencesLogInfo) - "Relocate action details." - - example default - relocate_action_details = [default] - -struct FileDeleteDetails - "Deleted files and/or folders." - -struct FileDownloadDetails - "Downloaded files and/or folders." - -struct FileEditDetails - "Edited files." - -struct FileGetCopyReferenceDetails - "Created copy reference to file/folder." - -struct FileLockingLockStatusChangedDetails - "Locked/unlocked editing for a file." - - previous_value LockStatus - "Previous lock status of the file." - new_value LockStatus - "New lock status of the file." - - example default - previous_value = locked - new_value = locked - -struct FileMoveDetails - "Moved files and/or folders." - - relocate_action_details List(RelocateAssetReferencesLogInfo) - "Relocate action details." - - example default - relocate_action_details = [default] - -struct FilePermanentlyDeleteDetails - "Permanently deleted files and/or folders." - - - example default - -struct FilePreviewDetails - "Previewed files and/or folders." - -struct FileRenameDetails - "Renamed files and/or folders." - - relocate_action_details List(RelocateAssetReferencesLogInfo) - "Relocate action details." - - example default - relocate_action_details = [default] - -struct FileRestoreDetails - "Restored deleted files and/or folders." - -struct FileRevertDetails - "Reverted files to previous version." - -struct FileRollbackChangesDetails - "Rolled back file actions." - -struct FileSaveCopyReferenceDetails - "Saved file/folder using copy reference." - - relocate_action_details List(RelocateAssetReferencesLogInfo) - "Relocate action details." - - example default - relocate_action_details = [default] - -struct FolderOverviewDescriptionChangedDetails - "Updated folder overview." - - folder_overview_location_asset UInt64 - "Folder Overview location position in the Assets list." - - example default - folder_overview_location_asset = 3 - -struct FolderOverviewItemPinnedDetails - "Pinned item to folder overview." - - folder_overview_location_asset UInt64 - "Folder Overview location position in the Assets list." - pinned_items_asset_indices List(UInt64) - "Pinned items positions in the Assets list." - - example default - folder_overview_location_asset = 3 - pinned_items_asset_indices = [3] - -struct FolderOverviewItemUnpinnedDetails - "Unpinned item from folder overview." - - folder_overview_location_asset UInt64 - "Folder Overview location position in the Assets list." - pinned_items_asset_indices List(UInt64) - "Pinned items positions in the Assets list." - - example default - folder_overview_location_asset = 3 - pinned_items_asset_indices = [3] - -struct ObjectLabelAddedDetails - "Added a label." - - label_type LabelType - "Labels mark a file or folder." - - example default - label_type = test_only - -struct ObjectLabelRemovedDetails - "Removed a label." - - label_type LabelType - "Labels mark a file or folder." - - example default - label_type = test_only - -struct ObjectLabelUpdatedValueDetails - "Updated a label's value." - - label_type LabelType - "Labels mark a file or folder." - - example default - label_type = test_only - -struct OrganizeFolderWithTidyDetails - "Organized a folder with multi-file organize." - -struct ReplayFileDeleteDetails - "Deleted files in Replay." - -struct RewindFolderDetails - "Rewound a folder." - - rewind_folder_target_ts_ms common.DropboxTimestamp - "Folder was Rewound to this date." - - example default - rewind_folder_target_ts_ms = "2017-01-25T15:51:30Z" - -struct UndoNamingConventionDetails - "Reverted naming convention." - -struct UndoOrganizeFolderWithTidyDetails - "Removed multi-file organize." - -struct UserTagsAddedDetails - "Tagged a file." - - values List(String) - "values." - - example default - values = ["abc"] - -struct UserTagsRemovedDetails - "Removed tags." - - values List(String) - "values." - - example default - values = ["abc"] - -struct EmailIngestReceiveFileDetails - "Received files via Email to Dropbox." - - inbox_name String - "Inbox name." - attachment_names List(String) - "Submitted file names." - subject String? - "Subject of the email." - from_name common.DisplayNameLegacy? - "The name as provided by the submitter." - from_email EmailAddress? - "The email as provided by the submitter." - - example default - inbox_name = "abc" - attachment_names = ["abc"] - subject = "abc" - from_name = "John Smith" - from_email = "john_smith@acmecorp.com" - -struct FileRequestChangeDetails - "Changed file request." - - file_request_id file_requests.FileRequestId? - "File request id. Might be missing due to historical data gap." - previous_details FileRequestDetails? - "Previous file request details. Might be missing due to historical data gap." - new_details FileRequestDetails - "New file request details." - - example default - file_request_id = "oaCAVmEyrqYnkZX9955Y" - previous_details = default - new_details = default - -struct FileRequestCloseDetails - "Closed file request." - - file_request_id file_requests.FileRequestId? - "File request id. Might be missing due to historical data gap." - previous_details FileRequestDetails? - "Previous file request details. Might be missing due to historical data gap." - - example default - file_request_id = "oaCAVmEyrqYnkZX9955Y" - previous_details = default - -struct FileRequestCreateDetails - "Created file request." - - file_request_id file_requests.FileRequestId? - "File request id. Might be missing due to historical data gap." - request_details FileRequestDetails? - "File request details. Might be missing due to historical data gap." - - example default - file_request_id = "oaCAVmEyrqYnkZX9955Y" - request_details = default - -struct FileRequestDeleteDetails - "Delete file request." - - file_request_id file_requests.FileRequestId? - "File request id. Might be missing due to historical data gap." - previous_details FileRequestDetails? - "Previous file request details. Might be missing due to historical data gap." - - example default - file_request_id = "oaCAVmEyrqYnkZX9955Y" - previous_details = default - -struct FileRequestReceiveFileDetails - "Received files for file request." - - file_request_id file_requests.FileRequestId? - "File request id. Might be missing due to historical data gap." - file_request_details FileRequestDetails? - "File request details. Might be missing due to historical data gap." - submitted_file_names List(String) - "Submitted file names." - submitter_name common.DisplayNameLegacy? - "The name as provided by the submitter." - submitter_email EmailAddress? - "The email as provided by the submitter." - - example default - file_request_id = "oaCAVmEyrqYnkZX9955Y" - file_request_details = default - submitted_file_names = ["abc"] - submitter_name = "John Smith" - submitter_email = "john_smith@acmecorp.com" - -struct GroupAddExternalIdDetails - "Added external ID for group." - - new_value team_common.GroupExternalId - "Current external id." - - example default - new_value = "some group id" - -struct GroupAddMemberDetails - "Added team members to group." - - is_group_owner Boolean - "Is group owner." - - example default - is_group_owner = true - -struct GroupChangeExternalIdDetails - "Changed external ID for group." - - new_value team_common.GroupExternalId - "Current external id." - previous_value team_common.GroupExternalId - "Old external id." - - example default - new_value = "some group id" - previous_value = "some group id" - -struct GroupChangeManagementTypeDetails - "Changed group management type." - - new_value team_common.GroupManagementType - "New group management type." - previous_value team_common.GroupManagementType? - "Previous group management type. Might be missing due to historical data gap." - - example default - new_value = company_managed - previous_value = company_managed - -struct GroupChangeMemberRoleDetails - "Changed manager permissions of group member." - - is_group_owner Boolean - "Is group owner." - - example default - is_group_owner = true - -struct GroupCreateDetails - "Created group." - - is_company_managed Boolean? - "Is company managed group." - join_policy GroupJoinPolicy? - "Group join policy." - - example default - is_company_managed = true - join_policy = request_to_join - -struct GroupDeleteDetails - "Deleted group." - - is_company_managed Boolean? - "Is company managed group." - - example default - is_company_managed = true - -struct GroupDescriptionUpdatedDetails - "Updated group." - -struct GroupJoinPolicyUpdatedDetails - "Updated group join policy." - - is_company_managed Boolean? - "Is company managed group." - join_policy GroupJoinPolicy? - "Group join policy." - - example default - is_company_managed = true - join_policy = request_to_join - -struct GroupMovedDetails - "Moved group." - -struct GroupRemoveExternalIdDetails - "Removed external ID for group." - - previous_value team_common.GroupExternalId - "Old external id." - - example default - previous_value = "some group id" - -struct GroupRemoveMemberDetails - "Removed team members from group." - -struct GroupRenameDetails - "Renamed group." - - previous_value String - "Previous display name." - new_value String - "New display name." - - example default - previous_value = "abc" - new_value = "abc" - -struct AccountLockOrUnlockedDetails - "Unlocked/locked account after failed sign in attempts." - - previous_value AccountState - "The previous account status." - new_value AccountState - "The new account status." - - example default - previous_value = locked - new_value = locked - -struct EmmErrorDetails - "Failed to sign in via EMM." - - error_details FailureDetailsLogInfo - "Error details." - - example default - error_details = default - -struct GuestAdminSignedInViaTrustedTeamsDetails - "Started trusted team admin session." - - team_name String? - "Host team name." - trusted_team_name String? - "Trusted team name." - - example default - team_name = "abc" - trusted_team_name = "abc" - -struct GuestAdminSignedOutViaTrustedTeamsDetails - "Ended trusted team admin session." - - team_name String? - "Host team name." - trusted_team_name String? - "Trusted team name." - - example default - team_name = "abc" - trusted_team_name = "abc" - -struct LoginFailDetails - "Failed to sign in." - - is_emm_managed Boolean? - "Tells if the login device is EMM managed. Might be missing due to historical data gap." - login_method LoginMethod - "Login method." - error_details FailureDetailsLogInfo - "Error details." - - example default - is_emm_managed = true - login_method = password - error_details = default - -struct LoginSuccessDetails - "Signed in." - - is_emm_managed Boolean? - "Tells if the login device is EMM managed. Might be missing due to historical data gap." - login_method LoginMethod - "Login method." - - example default - is_emm_managed = true - login_method = password - -struct LogoutDetails - "Signed out." - - login_id String? - "Login session id." - - example default - login_id = "abc" - -struct ResellerSupportSessionEndDetails - "Ended reseller support session." - -struct ResellerSupportSessionStartDetails - "Started reseller support session." - -struct SignInAsSessionEndDetails - "Ended admin sign-in-as session." - -struct SignInAsSessionStartDetails - "Started admin sign-in-as session." - -struct SsoErrorDetails - "Failed to sign in via SSO." - - error_details FailureDetailsLogInfo - "Error details." - - example default - error_details = default - -struct BackupAdminInvitationSentDetails - "Invited members to activate Backup." - -struct BackupInvitationOpenedDetails - "Opened Backup invite." - -struct CreateTeamInviteLinkDetails - "Created team invite link." - - link_url String - "The invite link url that was created." - expiry_date String - "The expiration date of the invite link." - - example default - link_url = "abc" - expiry_date = "abc" - -struct DeleteTeamInviteLinkDetails - "Deleted team invite link." - - link_url String - "The invite link url that was deleted." - - example default - link_url = "abc" - -struct MemberAddExternalIdDetails - "Added an external ID for team member." - - new_value team_common.MemberExternalId - "Current external id." - - example default - new_value = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" - -struct MemberAddNameDetails - "Added team member name." - - new_value UserNameLogInfo - "New user's name." - - example default - new_value = default - -struct MemberChangeAdminRoleDetails - "Changed team member admin role." - - new_value AdminRole? - "New admin role. This field is relevant when the admin role is changed or whenthe user role changes from no admin rights to with admin rights." - previous_value AdminRole? - "Previous admin role. This field is relevant when the admin role is changed or when the admin role is removed." - - example default - new_value = team_admin - previous_value = team_admin - -struct MemberChangeEmailDetails - "Changed team member email." - - new_value EmailAddress - "New email." - previous_value EmailAddress? - "Previous email. Might be missing due to historical data gap." - - example default - new_value = "john_smith@acmecorp.com" - previous_value = "john_smith@acmecorp.com" - -struct MemberChangeExternalIdDetails - "Changed the external ID for team member." - - new_value team_common.MemberExternalId - "Current external id." - previous_value team_common.MemberExternalId - "Old external id." - - example default - new_value = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" - previous_value = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" - -struct MemberChangeMembershipTypeDetails - "Changed membership type (limited/full) of member." - - prev_value TeamMembershipType - "Previous membership type." - new_value TeamMembershipType - "New membership type." - - example default - prev_value = full - new_value = full - -struct MemberChangeNameDetails - "Changed team member name." - - new_value UserNameLogInfo - "New user's name." - previous_value UserNameLogInfo? - "Previous user's name. Might be missing due to historical data gap." - - example default - new_value = default - previous_value = default - -struct MemberChangeResellerRoleDetails - "Changed team member reseller role." - - new_value ResellerRole - "New reseller role. This field is relevant when the reseller role is changed." - previous_value ResellerRole - "Previous reseller role. This field is relevant when the reseller role is changed or when the reseller role is removed." - - example default - new_value = not_reseller - previous_value = not_reseller - -struct MemberChangeStatusDetails - "Changed member status (invited, joined, suspended, etc.)." - - previous_value MemberStatus? - "Previous member status. Might be missing due to historical data gap." - new_value MemberStatus - "New member status." - action ActionDetails? - "Additional information indicating the action taken -that caused status change." - new_team String? - "The user's new team name. This field is relevant when the user is transferred off the team." - previous_team String? - "The user's previous team name. This field is relevant when the user is transferred onto the team." - - example default - previous_value = not_joined - new_value = not_joined - action = default - new_team = "abc" - previous_team = "abc" - -struct MemberDeleteManualContactsDetails - "Cleared manually added contacts." - -struct MemberDeleteProfilePhotoDetails - "Deleted team member profile photo." - -struct MemberPermanentlyDeleteAccountContentsDetails - "Permanently deleted contents of deleted team member account." - -struct MemberRemoveExternalIdDetails - "Removed the external ID for team member." - - previous_value team_common.MemberExternalId - "Old external id." - - example default - previous_value = "ADSYNC S-1-5-21-1004296348-1135238915-682003432-1224" - -struct MemberSetProfilePhotoDetails - "Set team member profile photo." - -struct MemberSpaceLimitsAddCustomQuotaDetails - "Set custom member space limit." - - new_value UInt64 - "New custom quota value in bytes." - - example default - new_value = 53687091200 - -struct MemberSpaceLimitsChangeCustomQuotaDetails - "Changed custom member space limit." - - previous_value UInt64 - "Previous custom quota value in bytes." - new_value UInt64 - "New custom quota value in bytes." - - example default - previous_value = 42949672960 - new_value = 53687091200 - -struct MemberSpaceLimitsChangeStatusDetails - "Changed space limit status." - - previous_value SpaceLimitsStatus - "Previous storage quota status." - new_value SpaceLimitsStatus - "New storage quota status." - - example default - previous_value = within_quota - new_value = within_quota - -struct MemberSpaceLimitsRemoveCustomQuotaDetails - "Removed custom member space limit." - -struct MemberSuggestDetails - "Suggested person to add to team." - - suggested_members List(EmailAddress) - "suggested users emails." - - example default - suggested_members = ["john_smith@acmecorp.com"] - -struct MemberTransferAccountContentsDetails - "Transferred contents of deleted member account to another member." - -struct PendingSecondaryEmailAddedDetails - "Added pending secondary email." - - secondary_email EmailAddress - "New pending secondary email." - - example default - secondary_email = "john_smith@acmecorp.com" - -struct SecondaryEmailDeletedDetails - "Deleted secondary email." - - secondary_email EmailAddress - "Deleted secondary email." - - example default - secondary_email = "john_smith@acmecorp.com" - -struct SecondaryEmailVerifiedDetails - "Verified secondary email." - - secondary_email EmailAddress - "Verified secondary email." - - example default - secondary_email = "john_smith@acmecorp.com" - -struct SecondaryMailsPolicyChangedDetails - "Secondary mails policy changed." - - previous_value SecondaryMailsPolicy - "Previous secondary mails policy." - new_value SecondaryMailsPolicy - "New secondary mails policy." - - example default - previous_value = disabled - new_value = disabled - -struct BinderAddPageDetails - "Added Binder page." - - event_uuid String - "Event unique identifier." - doc_title String - "Title of the Binder doc." - binder_item_name String - "Name of the Binder page/section." - - example default - event_uuid = "abc" - doc_title = "abc" - binder_item_name = "abc" - -struct BinderAddSectionDetails - "Added Binder section." - - event_uuid String - "Event unique identifier." - doc_title String - "Title of the Binder doc." - binder_item_name String - "Name of the Binder page/section." - - example default - event_uuid = "abc" - doc_title = "abc" - binder_item_name = "abc" - -struct BinderRemovePageDetails - "Removed Binder page." - - event_uuid String - "Event unique identifier." - doc_title String - "Title of the Binder doc." - binder_item_name String - "Name of the Binder page/section." - - example default - event_uuid = "abc" - doc_title = "abc" - binder_item_name = "abc" - -struct BinderRemoveSectionDetails - "Removed Binder section." - - event_uuid String - "Event unique identifier." - doc_title String - "Title of the Binder doc." - binder_item_name String - "Name of the Binder page/section." - - example default - event_uuid = "abc" - doc_title = "abc" - binder_item_name = "abc" - -struct BinderRenamePageDetails - "Renamed Binder page." - - event_uuid String - "Event unique identifier." - doc_title String - "Title of the Binder doc." - binder_item_name String - "Name of the Binder page/section." - previous_binder_item_name String? - "Previous name of the Binder page/section." - - example default - event_uuid = "abc" - doc_title = "abc" - binder_item_name = "abc" - previous_binder_item_name = "abc" - -struct BinderRenameSectionDetails - "Renamed Binder section." - - event_uuid String - "Event unique identifier." - doc_title String - "Title of the Binder doc." - binder_item_name String - "Name of the Binder page/section." - previous_binder_item_name String? - "Previous name of the Binder page/section." - - example default - event_uuid = "abc" - doc_title = "abc" - binder_item_name = "abc" - previous_binder_item_name = "abc" - -struct BinderReorderPageDetails - "Reordered Binder page." - - event_uuid String - "Event unique identifier." - doc_title String - "Title of the Binder doc." - binder_item_name String - "Name of the Binder page/section." - - example default - event_uuid = "abc" - doc_title = "abc" - binder_item_name = "abc" - -struct BinderReorderSectionDetails - "Reordered Binder section." - - event_uuid String - "Event unique identifier." - doc_title String - "Title of the Binder doc." - binder_item_name String - "Name of the Binder page/section." - - example default - event_uuid = "abc" - doc_title = "abc" - binder_item_name = "abc" - -struct PaperContentAddMemberDetails - "Added users and/or groups to Paper doc/folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperContentAddToFolderDetails - "Added Paper doc/folder to folder." - - event_uuid String - "Event unique identifier." - target_asset_index UInt64 - "Target asset position in the Assets list." - parent_asset_index UInt64 - "Parent asset position in the Assets list." - - example default - event_uuid = "abc" - target_asset_index = 3 - parent_asset_index = 3 - -struct PaperContentArchiveDetails - "Archived Paper doc/folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperContentCreateDetails - "Created Paper doc/folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperContentPermanentlyDeleteDetails - "Permanently deleted Paper doc/folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperContentRemoveFromFolderDetails - "Removed Paper doc/folder from folder." - - event_uuid String - "Event unique identifier." - target_asset_index UInt64? - "Target asset position in the Assets list." - parent_asset_index UInt64? - "Parent asset position in the Assets list." - - example default - event_uuid = "abc" - target_asset_index = 3 - parent_asset_index = 3 - -struct PaperContentRemoveMemberDetails - "Removed users and/or groups from Paper doc/folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperContentRenameDetails - "Renamed Paper doc/folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperContentRestoreDetails - "Restored archived Paper doc/folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocAddCommentDetails - "Added Paper doc comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "abc" - -struct PaperDocChangeMemberRoleDetails - "Changed member permissions for Paper doc." - - event_uuid String - "Event unique identifier." - access_type PaperAccessType - "Paper doc access type." - - example default - event_uuid = "abc" - access_type = viewer - -struct PaperDocChangeSharingPolicyDetails - "Changed sharing setting for Paper doc." - - event_uuid String - "Event unique identifier." - public_sharing_policy String? - "Sharing policy with external users." - team_sharing_policy String? - "Sharing policy with team." - - example default - event_uuid = "abc" - public_sharing_policy = "abc" - team_sharing_policy = "abc" - -struct PaperDocChangeSubscriptionDetails - "Followed/unfollowed Paper doc." - - event_uuid String - "Event unique identifier." - new_subscription_level String - "New doc subscription level." - previous_subscription_level String? - "Previous doc subscription level. Might be missing due to historical data gap." - - example default - event_uuid = "abc" - new_subscription_level = "every" - previous_subscription_level = "no_email" - -struct PaperDocDeletedDetails - "Archived Paper doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocDeleteCommentDetails - "Deleted Paper doc comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "abc" - -struct PaperDocDownloadDetails - "Downloaded Paper doc in specific format." - - event_uuid String - "Event unique identifier." - export_file_format PaperDownloadFormat - "Export file format." - - example default - event_uuid = "abc" - export_file_format = docx - -struct PaperDocEditDetails - "Edited Paper doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocEditCommentDetails - "Edited Paper doc comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "abc" - -struct PaperDocFollowedDetails - "Followed Paper doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocMentionDetails - "Mentioned user in Paper doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocOwnershipChangedDetails - "Transferred ownership of Paper doc." - - event_uuid String - "Event unique identifier." - old_owner_user_id users_common.AccountId? - "Previous owner." - new_owner_user_id users_common.AccountId - "New owner." - - example default - event_uuid = "abc" - old_owner_user_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" - new_owner_user_id = "dbid:AAHgR8xsQP48a5DQUGPo-Vxsrjd0OByVmho" - -struct PaperDocRequestAccessDetails - "Requested access to Paper doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocResolveCommentDetails - "Resolved Paper doc comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "abc" - -struct PaperDocRevertDetails - "Restored Paper doc to previous version." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocSlackShareDetails - "Shared Paper doc via Slack." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocTeamInviteDetails - "Shared Paper doc with users and/or groups." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocTrashedDetails - "Deleted Paper doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocUnresolveCommentDetails - "Unresolved Paper doc comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "abc" - -struct PaperDocUntrashedDetails - "Restored Paper doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperDocViewDetails - "Viewed Paper doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperExternalViewAllowDetails - "Changed Paper external sharing setting to anyone." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperExternalViewDefaultTeamDetails - "Changed Paper external sharing setting to default team." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperExternalViewForbidDetails - "Changed Paper external sharing setting to team-only." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperFolderChangeSubscriptionDetails - "Followed/unfollowed Paper folder." - - event_uuid String - "Event unique identifier." - new_subscription_level String - "New folder subscription level." - previous_subscription_level String? - "Previous folder subscription level. Might be missing due to historical data gap." - - example default - event_uuid = "abc" - new_subscription_level = "activity_only" - previous_subscription_level = "weekly_emails" - -struct PaperFolderDeletedDetails - "Archived Paper folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperFolderFollowedDetails - "Followed Paper folder." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperFolderTeamInviteDetails - "Shared Paper folder with users and/or groups." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperPublishedLinkChangePermissionDetails - "Changed permissions for published doc." - - event_uuid String - "Event unique identifier." - new_permission_level String - "New permission level." - previous_permission_level String - "Previous permission level." - - example default - event_uuid = "abc" - new_permission_level = "TEAM_ONLY" - previous_permission_level = "ANYONE_WITH_THE_LINK" - -struct PaperPublishedLinkCreateDetails - "Published doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperPublishedLinkDisabledDetails - "Unpublished doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PaperPublishedLinkViewDetails - "Viewed published doc." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct PasswordChangeDetails - "Changed password." - -struct PasswordResetDetails - "Reset password." - -struct PasswordResetAllDetails - "Reset all team member passwords." - -struct ClassificationCreateReportDetails - "Created Classification report." - -struct ClassificationCreateReportFailDetails - "Couldn't create Classification report." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct EmmCreateExceptionsReportDetails - "Created EMM-excluded users report." - -struct EmmCreateUsageReportDetails - "Created EMM mobile app usage report." - -struct ExportMembersReportDetails - "Created member data report." - -struct ExportMembersReportFailDetails - "Failed to create members data report." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct ExternalSharingCreateReportDetails - "Created External sharing report." - -struct ExternalSharingReportFailedDetails - "Couldn't create External sharing report." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct NoExpirationLinkGenCreateReportDetails - "Report created: Links created with no expiration." - - start_date common.DropboxTimestamp - "Report start date." - end_date common.DropboxTimestamp - "Report end date." - - example default - start_date = "2017-01-25T15:51:30Z" - end_date = "2017-01-25T15:51:30Z" - -struct NoExpirationLinkGenReportFailedDetails - "Couldn't create report: Links created with no expiration." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct NoPasswordLinkGenCreateReportDetails - "Report created: Links created without passwords." - - start_date common.DropboxTimestamp - "Report start date." - end_date common.DropboxTimestamp - "Report end date." - - example default - start_date = "2017-01-25T15:51:30Z" - end_date = "2017-01-25T15:51:30Z" - -struct NoPasswordLinkGenReportFailedDetails - "Couldn't create report: Links created without passwords." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct NoPasswordLinkViewCreateReportDetails - "Report created: Views of links without passwords." - - start_date common.DropboxTimestamp - "Report start date." - end_date common.DropboxTimestamp - "Report end date." - - example default - start_date = "2017-01-25T15:51:30Z" - end_date = "2017-01-25T15:51:30Z" - -struct NoPasswordLinkViewReportFailedDetails - "Couldn't create report: Views of links without passwords." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct OutdatedLinkViewCreateReportDetails - "Report created: Views of old links." - - start_date common.DropboxTimestamp - "Report start date." - end_date common.DropboxTimestamp - "Report end date." - - example default - start_date = "2017-01-25T15:51:30Z" - end_date = "2017-01-25T15:51:30Z" - -struct OutdatedLinkViewReportFailedDetails - "Couldn't create report: Views of old links." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct PaperAdminExportStartDetails - "Exported all team Paper docs." - -struct RansomwareAlertCreateReportDetails - "Created ransomware report." - -struct RansomwareAlertCreateReportFailedDetails - "Couldn't generate ransomware report." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct SmartSyncCreateAdminPrivilegeReportDetails - "Created Smart Sync non-admin devices report." - -struct TeamActivityCreateReportDetails - "Created team activity report." - - start_date common.DropboxTimestamp - "Report start date." - end_date common.DropboxTimestamp - "Report end date." - - example default - start_date = "2017-01-25T15:51:30Z" - end_date = "2017-01-25T15:51:30Z" - -struct TeamActivityCreateReportFailDetails - "Couldn't generate team activity report." - - failure_reason team.TeamReportFailureReason - "Failure reason." - - example default - failure_reason = temporary_error - -struct CollectionShareDetails - "Shared album." - - album_name String - "Album name." - - example default - album_name = "abc" - -struct FileTransfersFileAddDetails - "Transfer files added." - - file_transfer_id String - "Transfer id." - - example default - file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" - -struct FileTransfersTransferDeleteDetails - "Deleted transfer." - - file_transfer_id String - "Transfer id." - - example default - file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" - -struct FileTransfersTransferDownloadDetails - "Transfer downloaded." - - file_transfer_id String - "Transfer id." - - example default - file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" - -struct FileTransfersTransferSendDetails - "Sent transfer." - - file_transfer_id String - "Transfer id." - - example default - file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" - -struct FileTransfersTransferViewDetails - "Viewed transfer." - - file_transfer_id String - "Transfer id." - - example default - file_transfer_id = "cap_pid_ft:AAAAAF_3NOyGMTCqXRUoBWKWY1IUOnLLzTUxOeC36XKqaLtq3LYDy6A" - -struct NoteAclInviteOnlyDetails - "Changed Paper doc to invite-only." - -struct NoteAclLinkDetails - "Changed Paper doc to link-accessible." - -struct NoteAclTeamLinkDetails - "Changed Paper doc to link-accessible for team." - -struct NoteSharedDetails - "Shared Paper doc." - -struct NoteShareReceiveDetails - "Shared received Paper doc." - -struct OpenNoteSharedDetails - "Opened shared Paper doc." - -struct ReplayFileSharedLinkCreatedDetails - "Created shared link in Replay." - -struct ReplayFileSharedLinkModifiedDetails - "Modified shared link in Replay." - -struct ReplayProjectTeamAddDetails - "Added member to Replay Project." - -struct ReplayProjectTeamDeleteDetails - "Removed member from Replay Project." - -struct SfAddGroupDetails - "Added team to shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - sharing_permission String? - "Sharing permission." - team_name String - "Team name." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - sharing_permission = "viewer" - team_name = "abc" - -struct SfAllowNonMembersToViewSharedLinksDetails - "Allowed non-collaborators to view links to files in shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - shared_folder_type String? - "Shared folder type." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - shared_folder_type = "abc" - -struct SfExternalInviteWarnDetails - "Set team members to see warning before sharing folders outside team." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - new_sharing_permission String? - "New sharing permission." - previous_sharing_permission String? - "Previous sharing permission." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - new_sharing_permission = "editor" - previous_sharing_permission = "owner" - -struct SfFbInviteDetails - "Invited Facebook users to shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - sharing_permission String? - "Sharing permission." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - sharing_permission = "viewer" - -struct SfFbInviteChangeRoleDetails - "Changed Facebook user's role in shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - previous_sharing_permission String? - "Previous sharing permission." - new_sharing_permission String? - "New sharing permission." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - previous_sharing_permission = "owner" - new_sharing_permission = "editor" - -struct SfFbUninviteDetails - "Uninvited Facebook user from shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - -struct SfInviteGroupDetails - "Invited group to shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - - example default - target_asset_index = 3 - -struct SfTeamGrantAccessDetails - "Granted access to shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - -struct SfTeamInviteDetails - "Invited team members to shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - sharing_permission String? - "Sharing permission." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - sharing_permission = "viewer" - -struct SfTeamInviteChangeRoleDetails - "Changed team member's role in shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - new_sharing_permission String? - "New sharing permission." - previous_sharing_permission String? - "Previous sharing permission." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - new_sharing_permission = "editor" - previous_sharing_permission = "owner" - -struct SfTeamJoinDetails - "Joined team member's shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - -struct SfTeamJoinFromOobLinkDetails - "Joined team member's shared folder from link." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - token_key String? - "Shared link token key." - sharing_permission String? - "Sharing permission." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - token_key = "abc" - sharing_permission = "viewer" - -struct SfTeamUninviteDetails - "Unshared folder with team member." - - target_asset_index UInt64 - "Target asset position in the Assets list." - original_folder_name String - "Original shared folder name." - - example default - target_asset_index = 3 - original_folder_name = "My pictures" - -struct SharedContentAddInviteesDetails - "Invited user to Dropbox and added them to shared file/folder." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - invitees List(EmailAddress) - "A list of invitees." - - example default - shared_content_access_level = traverse - invitees = ["john_smith@acmecorp.com"] - -struct SharedContentAddLinkExpiryDetails - "Added expiration date to link for shared file/folder." - - new_value common.DropboxTimestamp? - "New shared content link expiration date. Might be missing due to historical data gap." - - example default - new_value = "2017-01-25T15:51:30Z" - -struct SharedContentAddLinkPasswordDetails - "Added password to link for shared file/folder." - -struct SharedContentAddMemberDetails - "Added users and/or groups to shared file/folder." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - - example default - shared_content_access_level = traverse - -struct SharedContentChangeDownloadsPolicyDetails - "Changed whether members can download shared file/folder." - - new_value DownloadPolicyType - "New downloads policy." - previous_value DownloadPolicyType? - "Previous downloads policy. Might be missing due to historical data gap." - - example default - new_value = allow - previous_value = allow - -struct SharedContentChangeInviteeRoleDetails - "Changed access type of invitee to shared file/folder before invite was accepted." - - previous_access_level sharing.AccessLevel? - "Previous access level. Might be missing due to historical data gap." - new_access_level sharing.AccessLevel - "New access level." - invitee EmailAddress - "The invitee whose role was changed." - - example default - previous_access_level = traverse - new_access_level = traverse - invitee = "john_smith@acmecorp.com" - -struct SharedContentChangeLinkAudienceDetails - "Changed link audience of shared file/folder." - - new_value sharing.LinkAudience - "New link audience value." - previous_value sharing.LinkAudience? - "Previous link audience value." - - example default - new_value = public - previous_value = public - -struct SharedContentChangeLinkExpiryDetails - "Changed link expiration of shared file/folder." - - new_value common.DropboxTimestamp? - "New shared content link expiration date. Might be missing due to historical data gap." - previous_value common.DropboxTimestamp? - "Previous shared content link expiration date. Might be missing due to historical data gap." - - example default - new_value = "2017-01-25T15:51:30Z" - previous_value = "2017-01-25T15:51:30Z" - -struct SharedContentChangeLinkPasswordDetails - "Changed link password of shared file/folder." - -struct SharedContentChangeMemberRoleDetails - "Changed access type of shared file/folder member." - - previous_access_level sharing.AccessLevel? - "Previous access level. Might be missing due to historical data gap." - new_access_level sharing.AccessLevel - "New access level." - - example default - previous_access_level = traverse - new_access_level = traverse - -struct SharedContentChangeViewerInfoPolicyDetails - "Changed whether members can see who viewed shared file/folder." - - new_value sharing.ViewerInfoPolicy - "New viewer info policy." - previous_value sharing.ViewerInfoPolicy? - "Previous view info policy." - - example default - new_value = disabled - previous_value = disabled - -struct SharedContentClaimInvitationDetails - "Acquired membership of shared file/folder by accepting invite." - - shared_content_link String? - "Shared content link." - - example default - shared_content_link = "abc" - -struct SharedContentCopyDetails - "Copied shared file/folder to own Dropbox." - - shared_content_link String - "Shared content link." - shared_content_owner UserLogInfo? - "The shared content owner." - shared_content_access_level sharing.AccessLevel - "Shared content access level." - destination_path FilePath - "The path where the member saved the content." - - example default - shared_content_link = "abc" - shared_content_owner = default - shared_content_access_level = traverse - destination_path = "/Contract Work/Product Design" - -struct SharedContentDownloadDetails - "Downloaded shared file/folder." - - shared_content_link String - "Shared content link." - shared_content_owner UserLogInfo? - "The shared content owner." - shared_content_access_level sharing.AccessLevel - "Shared content access level." - - example default - shared_content_link = "abc" - shared_content_owner = default - shared_content_access_level = traverse - -struct SharedContentRelinquishMembershipDetails - "Left shared file/folder." - -struct SharedContentRemoveInviteesDetails - "Removed invitee from shared file/folder before invite was accepted." - - invitees List(EmailAddress) - "A list of invitees." - - example default - invitees = ["john_smith@acmecorp.com"] - -struct SharedContentRemoveLinkExpiryDetails - "Removed link expiration date of shared file/folder." - - previous_value common.DropboxTimestamp? - "Previous shared content link expiration date. Might be missing due to historical data gap." - - example default - previous_value = "2017-01-25T15:51:30Z" - -struct SharedContentRemoveLinkPasswordDetails - "Removed link password of shared file/folder." - -struct SharedContentRemoveMemberDetails - "Removed user/group from shared file/folder." - - shared_content_access_level sharing.AccessLevel? - "Shared content access level." - - example default - shared_content_access_level = traverse - -struct SharedContentRequestAccessDetails - "Requested access to shared file/folder." - - shared_content_link String? - "Shared content link." - - example default - shared_content_link = "abc" - -struct SharedContentRestoreInviteesDetails - "Restored shared file/folder invitees." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - invitees List(EmailAddress) - "A list of invitees." - - example default - shared_content_access_level = traverse - invitees = ["john_smith@acmecorp.com"] - -struct SharedContentRestoreMemberDetails - "Restored users and/or groups to membership of shared file/folder." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - - example default - shared_content_access_level = traverse - -struct SharedContentUnshareDetails - "Unshared file/folder by clearing membership." - - - example default - -struct SharedContentViewDetails - "Previewed shared file/folder." - - shared_content_link String - "Shared content link." - shared_content_owner UserLogInfo? - "The shared content owner." - shared_content_access_level sharing.AccessLevel - "Shared content access level." - - example default - shared_content_link = "abc" - shared_content_owner = default - shared_content_access_level = traverse - -struct SharedFolderChangeLinkPolicyDetails - "Changed who can access shared folder via link." - - new_value sharing.SharedLinkPolicy - "New shared folder link policy." - previous_value sharing.SharedLinkPolicy? - "Previous shared folder link policy. Might be missing due to historical data gap." - - example default - new_value = members - previous_value = members - -struct SharedFolderChangeMembersInheritancePolicyDetails - "Changed whether shared folder inherits members from parent folder." - - new_value SharedFolderMembersInheritancePolicy - "New member inheritance policy." - previous_value SharedFolderMembersInheritancePolicy? - "Previous member inheritance policy. Might be missing due to historical data gap." - - example default - new_value = inherit_members - previous_value = inherit_members - -struct SharedFolderChangeMembersManagementPolicyDetails - "Changed who can add/remove members of shared folder." - - new_value sharing.AclUpdatePolicy - "New members management policy." - previous_value sharing.AclUpdatePolicy? - "Previous members management policy. Might be missing due to historical data gap." - - example default - new_value = owner - previous_value = owner - -struct SharedFolderChangeMembersPolicyDetails - "Changed who can become member of shared folder." - - new_value sharing.MemberPolicy - "New external invite policy." - previous_value sharing.MemberPolicy? - "Previous external invite policy. Might be missing due to historical data gap." - - example default - new_value = team - previous_value = team - -struct SharedFolderCreateDetails - "Created shared folder." - - target_ns_id NamespaceId? - "Target namespace ID." - - example default - target_ns_id = "1234" - -struct SharedFolderDeclineInvitationDetails - "Declined team member's invite to shared folder." - -struct SharedFolderMountDetails - "Added shared folder to own Dropbox." - -struct SharedFolderNestDetails - "Changed parent of shared folder." - - previous_parent_ns_id NamespaceId? - "Previous parent namespace ID." - new_parent_ns_id NamespaceId? - "New parent namespace ID." - previous_ns_path FilePath? - "Previous namespace path." - new_ns_path FilePath? - "New namespace path." - - example default - previous_parent_ns_id = "1234" - new_parent_ns_id = "1234" - previous_ns_path = "/Contract Work/Product Design" - new_ns_path = "/Contract Work/Product Design" - -struct SharedFolderTransferOwnershipDetails - "Transferred ownership of shared folder to another member." - - previous_owner_email EmailAddress? - "The email address of the previous shared folder owner." - new_owner_email EmailAddress - "The email address of the new shared folder owner." - - example default - previous_owner_email = "john_smith@acmecorp.com" - new_owner_email = "john_smith@acmecorp.com" - -struct SharedFolderUnmountDetails - "Deleted shared folder from Dropbox." - -struct SharedLinkAddExpiryDetails - "Added shared link expiration date." - - new_value common.DropboxTimestamp - "New shared link expiration date." - - example default - new_value = "2017-01-25T15:51:30Z" - -struct SharedLinkChangeExpiryDetails - "Changed shared link expiration date." - - new_value common.DropboxTimestamp? - "New shared link expiration date. Might be missing due to historical data gap." - previous_value common.DropboxTimestamp? - "Previous shared link expiration date. Might be missing due to historical data gap." - - example default - new_value = "2017-01-25T15:51:30Z" - previous_value = "2017-01-25T15:51:30Z" - -struct SharedLinkChangeVisibilityDetails - "Changed visibility of shared link." - - new_value SharedLinkVisibility - "New shared link visibility." - previous_value SharedLinkVisibility? - "Previous shared link visibility. Might be missing due to historical data gap." - - example default - new_value = public - previous_value = public - -struct SharedLinkCopyDetails - "Added file/folder to Dropbox from shared link." - - shared_link_owner UserLogInfo? - "Shared link owner details. Might be missing due to historical data gap." - - example default - shared_link_owner = default - -struct SharedLinkCreateDetails - "Created shared link." - - shared_link_access_level SharedLinkAccessLevel? - "Defines who can access the shared link. Might be missing due to historical data gap." - - example default - shared_link_access_level = none - -struct SharedLinkDisableDetails - "Removed shared link." - - shared_link_owner UserLogInfo? - "Shared link owner details. Might be missing due to historical data gap." - - example default - shared_link_owner = default - -struct SharedLinkDownloadDetails - "Downloaded file/folder from shared link." - - shared_link_owner UserLogInfo? - "Shared link owner details. Might be missing due to historical data gap." - - example default - shared_link_owner = default - -struct SharedLinkRemoveExpiryDetails - "Removed shared link expiration date." - - previous_value common.DropboxTimestamp? - "Previous shared link expiration date. Might be missing due to historical data gap." - - example default - previous_value = "2017-01-25T15:51:30Z" - -struct SharedLinkSettingsAddExpirationDetails - "Added an expiration date to the shared link." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - new_value common.DropboxTimestamp? - "New shared content link expiration date. Might be missing due to historical data gap." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - new_value = "2017-01-25T15:51:30Z" - -struct SharedLinkSettingsAddPasswordDetails - "Added a password to the shared link." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - -struct SharedLinkSettingsAllowDownloadDisabledDetails - "Disabled downloads." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - -struct SharedLinkSettingsAllowDownloadEnabledDetails - "Enabled downloads." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - -struct SharedLinkSettingsChangeAudienceDetails - "Changed the audience of the shared link." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - new_value sharing.LinkAudience - "New link audience value." - previous_value sharing.LinkAudience? - "Previous link audience value." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - new_value = no_one - previous_value = no_one - -struct SharedLinkSettingsChangeExpirationDetails - "Changed the expiration date of the shared link." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - new_value common.DropboxTimestamp? - "New shared content link expiration date. Might be missing due to historical data gap." - previous_value common.DropboxTimestamp? - "Previous shared content link expiration date. Might be missing due to historical data gap." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - new_value = "2017-01-25T15:51:30Z" - previous_value = "2017-01-25T15:51:30Z" - -struct SharedLinkSettingsChangePasswordDetails - "Changed the password of the shared link." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - -struct SharedLinkSettingsRemoveExpirationDetails - "Removed the expiration date from the shared link." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - previous_value common.DropboxTimestamp? - "Previous shared link expiration date. Might be missing due to historical data gap." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - previous_value = "2017-01-25T15:51:30Z" - -struct SharedLinkSettingsRemovePasswordDetails - "Removed the password from the shared link." - - shared_content_access_level sharing.AccessLevel - "Shared content access level." - shared_content_link String? - "Shared content link." - - example default - shared_content_access_level = traverse - shared_content_link = "abc" - -struct SharedLinkShareDetails - "Added members as audience of shared link." - - shared_link_owner UserLogInfo? - "Shared link owner details. Might be missing due to historical data gap." - external_users List(ExternalUserLogInfo)? - "Users without a Dropbox account that were added as shared link audience." - - example default - shared_link_owner = default - external_users = [default] - -struct SharedLinkViewDetails - "Opened shared link." - - shared_link_owner UserLogInfo? - "Shared link owner details. Might be missing due to historical data gap." - - example default - shared_link_owner = default - -struct SharedNoteOpenedDetails - "Opened shared Paper doc." - -struct ShmodelDisableDownloadsDetails - "Disabled downloads for link." - - shared_link_owner UserLogInfo? - "Shared link owner details. Might be missing due to historical data gap." - - example default - shared_link_owner = default - -struct ShmodelEnableDownloadsDetails - "Enabled downloads for link." - - shared_link_owner UserLogInfo? - "Shared link owner details. Might be missing due to historical data gap." - - example default - shared_link_owner = default - -struct ShmodelGroupShareDetails - "Shared link with group." - -struct ShowcaseAccessGrantedDetails - "Granted access to showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseAddMemberDetails - "Added member to showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseArchivedDetails - "Archived showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseCreatedDetails - "Created showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseDeleteCommentDetails - "Deleted showcase comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "A comment on showcase" - -struct ShowcaseEditedDetails - "Edited showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseEditCommentDetails - "Edited showcase comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "A comment on showcase" - -struct ShowcaseFileAddedDetails - "Added file to showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseFileDownloadDetails - "Downloaded file from showcase." - - event_uuid String - "Event unique identifier." - download_type String - "Showcase download type." - - example default - event_uuid = "abc" - download_type = "single_embed" - -struct ShowcaseFileRemovedDetails - "Removed file from showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseFileViewDetails - "Viewed file in showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcasePermanentlyDeletedDetails - "Permanently deleted showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcasePostCommentDetails - "Added showcase comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "A comment on showcase" - -struct ShowcaseRemoveMemberDetails - "Removed member from showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseRenamedDetails - "Renamed showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseRequestAccessDetails - "Requested access to showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseResolveCommentDetails - "Resolved showcase comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "A comment on showcase" - -struct ShowcaseRestoredDetails - "Unarchived showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseTrashedDetails - "Deleted showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseTrashedDeprecatedDetails - "Deleted showcase (old version)." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseUnresolveCommentDetails - "Unresolved showcase comment." - - event_uuid String - "Event unique identifier." - comment_text String? - "Comment text." - - example default - event_uuid = "abc" - comment_text = "A comment on showcase" - -struct ShowcaseUntrashedDetails - "Restored showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseUntrashedDeprecatedDetails - "Restored showcase (old version)." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct ShowcaseViewDetails - "Viewed showcase." - - event_uuid String - "Event unique identifier." - - example default - event_uuid = "abc" - -struct SsoAddCertDetails - "Added X.509 certificate for SSO." - - certificate_details Certificate - "SSO certificate details." - - example default - certificate_details = default - -struct SsoAddLoginUrlDetails - "Added sign-in URL for SSO." - - new_value String - "New single sign-on login URL." - - example default - new_value = "abc" - -struct SsoAddLogoutUrlDetails - "Added sign-out URL for SSO." - - new_value String? - "New single sign-on logout URL." - - example default - new_value = "abc" - -struct SsoChangeCertDetails - "Changed X.509 certificate for SSO." - - previous_certificate_details Certificate? - "Previous SSO certificate details. Might be missing due to historical data gap." - new_certificate_details Certificate - "New SSO certificate details." - - example default - previous_certificate_details = default - new_certificate_details = default - -struct SsoChangeLoginUrlDetails - "Changed sign-in URL for SSO." - - previous_value String - "Previous single sign-on login URL." - new_value String - "New single sign-on login URL." - - example default - previous_value = "abc" - new_value = "abc" - -struct SsoChangeLogoutUrlDetails - "Changed sign-out URL for SSO." - - previous_value String? - "Previous single sign-on logout URL. Might be missing due to historical data gap." - new_value String? - "New single sign-on logout URL." - - example default - previous_value = "abc" - new_value = "abc" - -struct SsoChangeSamlIdentityModeDetails - "Changed SAML identity mode for SSO." - - previous_value Int64 - "Previous single sign-on identity mode." - new_value Int64 - "New single sign-on identity mode." - - example default - previous_value = 3 - new_value = 3 - -struct SsoRemoveCertDetails - "Removed X.509 certificate for SSO." - -struct SsoRemoveLoginUrlDetails - "Removed sign-in URL for SSO." - - previous_value String - "Previous single sign-on login URL." - - example default - previous_value = "abc" - -struct SsoRemoveLogoutUrlDetails - "Removed sign-out URL for SSO." - - previous_value String - "Previous single sign-on logout URL." - - example default - previous_value = "abc" - -struct TeamFolderChangeStatusDetails - "Changed archival status of team folder." - - new_value team.TeamFolderStatus - "New team folder status." - previous_value team.TeamFolderStatus? - "Previous team folder status. Might be missing due to historical data gap." - - example default - new_value = active - previous_value = active - -struct TeamFolderCreateDetails - "Created team folder in active status." - -struct TeamFolderDowngradeDetails - "Downgraded team folder to regular shared folder." - - target_asset_index UInt64 - "Target asset position in the Assets list." - - example default - target_asset_index = 3 - -struct TeamFolderPermanentlyDeleteDetails - "Permanently deleted archived team folder." - -struct TeamFolderRenameDetails - "Renamed active/archived team folder." - - previous_folder_name String - "Previous folder name." - new_folder_name String - "New folder name." - - example default - previous_folder_name = "abc" - new_folder_name = "abc" - -struct TeamSelectiveSyncSettingsChangedDetails - "Changed sync default." - - previous_value files.SyncSetting - "Previous value." - new_value files.SyncSetting - "New value." - - example default - previous_value = default - new_value = default - -struct AccountCaptureChangePolicyDetails - "Changed account capture setting on team domain." - - new_value AccountCapturePolicy - "New account capture policy." - previous_value AccountCapturePolicy? - "Previous account capture policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct AdminEmailRemindersChangedDetails - "Changed admin reminder settings for requests to join the team." - - new_value AdminEmailRemindersPolicy - "To." - previous_value AdminEmailRemindersPolicy - "From." - - example default - new_value = default - previous_value = default - -struct AllowDownloadDisabledDetails - "Disabled downloads." - -struct AllowDownloadEnabledDetails - "Enabled downloads." - -struct AppPermissionsChangedDetails - "Changed app permissions." - - app_name String? - "Name of the app." - permission AdminConsoleAppPermission? - "Permission that was changed." - previous_value AdminConsoleAppPolicy - "Previous policy." - new_value AdminConsoleAppPolicy - "New policy." - - example default - app_name = "abc" - permission = default_for_listed_apps - previous_value = default - new_value = default - -struct CameraUploadsPolicyChangedDetails - "Changed camera uploads setting for team." - - new_value CameraUploadsPolicy - "New camera uploads setting." - previous_value CameraUploadsPolicy - "Previous camera uploads setting." - - example default - new_value = disabled - previous_value = disabled - -struct CaptureTranscriptPolicyChangedDetails - "Changed Capture transcription policy for team." - - new_value CaptureTranscriptPolicy - "To." - previous_value CaptureTranscriptPolicy - "From." - - example default - new_value = default - previous_value = default - -struct ClassificationChangePolicyDetails - "Changed classification policy for team." - - previous_value ClassificationPolicyEnumWrapper - "Previous classification policy." - new_value ClassificationPolicyEnumWrapper - "New classification policy." - classification_type ClassificationType - "Policy type." - - example default - previous_value = team_folders - new_value = team_folders - classification_type = pii - -struct ComputerBackupPolicyChangedDetails - "Changed computer backup policy for team." - - new_value ComputerBackupPolicy - "New computer backup policy." - previous_value ComputerBackupPolicy - "Previous computer backup policy." - - example default - new_value = disabled - previous_value = disabled - -struct ContentAdministrationPolicyChangedDetails - "Changed content management setting." - - new_value String - "New content administration policy." - previous_value String - "Previous content administration policy." - - example default - new_value = "abc" - previous_value = "abc" - -struct DataPlacementRestrictionChangePolicyDetails - "Set restrictions on data center locations where team data resides." - - previous_value PlacementRestriction - "Previous placement restriction." - new_value PlacementRestriction - "New placement restriction." - - example default - previous_value = none - new_value = none - -struct DataPlacementRestrictionSatisfyPolicyDetails - "Completed restrictions on data center locations where team data resides." - - placement_restriction PlacementRestriction - "Placement restriction." - - example default - placement_restriction = none - -struct DeviceApprovalsAddExceptionDetails - "Added members to device approvals exception list." - -struct DeviceApprovalsChangeDesktopPolicyDetails - "Set/removed limit on number of computers member can link to team Dropbox account." - - new_value DeviceApprovalsPolicy? - "New desktop device approvals policy. Might be missing due to historical data gap." - previous_value DeviceApprovalsPolicy? - "Previous desktop device approvals policy. Might be missing due to historical data gap." - - example default - new_value = unlimited - previous_value = unlimited - -struct DeviceApprovalsChangeMobilePolicyDetails - "Set/removed limit on number of mobile devices member can link to team Dropbox account." - - new_value DeviceApprovalsPolicy? - "New mobile device approvals policy. Might be missing due to historical data gap." - previous_value DeviceApprovalsPolicy? - "Previous mobile device approvals policy. Might be missing due to historical data gap." - - example default - new_value = unlimited - previous_value = unlimited - -struct DeviceApprovalsChangeOverageActionDetails - "Changed device approvals setting when member is over limit." - - new_value team_policies.RolloutMethod? - "New over the limits policy. Might be missing due to historical data gap." - previous_value team_policies.RolloutMethod? - "Previous over the limit policy. Might be missing due to historical data gap." - - example default - new_value = unlink_all - previous_value = unlink_all - -struct DeviceApprovalsChangeUnlinkActionDetails - "Changed device approvals setting when member unlinks approved device." - - new_value DeviceUnlinkPolicy? - "New device unlink policy. Might be missing due to historical data gap." - previous_value DeviceUnlinkPolicy? - "Previous device unlink policy. Might be missing due to historical data gap." - - example default - new_value = remove - previous_value = remove - -struct DeviceApprovalsRemoveExceptionDetails - "Removed members from device approvals exception list." - -struct DirectoryRestrictionsAddMembersDetails - "Added members to directory restrictions list." - -struct DirectoryRestrictionsRemoveMembersDetails - "Removed members from directory restrictions list." - -struct DropboxPasswordsPolicyChangedDetails - "Changed Dropbox Passwords policy for team." - - new_value DropboxPasswordsPolicy - "To." - previous_value DropboxPasswordsPolicy - "From." - - example default - new_value = default - previous_value = default - -struct EmailIngestPolicyChangedDetails - "Changed email to Dropbox policy for team." - - new_value EmailIngestPolicy - "To." - previous_value EmailIngestPolicy - "From." - - example default - new_value = disabled - previous_value = disabled - -struct EmmAddExceptionDetails - "Added members to EMM exception list." - -struct EmmChangePolicyDetails - "Enabled/disabled enterprise mobility management for members." - - new_value team_policies.EmmState - "New enterprise mobility management policy." - previous_value team_policies.EmmState? - "Previous enterprise mobility management policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct EmmRemoveExceptionDetails - "Removed members from EMM exception list." - -struct ExtendedVersionHistoryChangePolicyDetails - "Accepted/opted out of extended version history." - - new_value ExtendedVersionHistoryPolicy - "New extended version history policy." - previous_value ExtendedVersionHistoryPolicy? - "Previous extended version history policy. Might be missing due to historical data gap." - - example default - new_value = implicitly_limited - previous_value = implicitly_limited - -struct ExternalDriveBackupPolicyChangedDetails - "Changed external drive backup policy for team." - - new_value ExternalDriveBackupPolicy - "New external drive backup policy." - previous_value ExternalDriveBackupPolicy - "Previous external drive backup policy." - - example default - new_value = default - previous_value = default - -struct FileCommentsChangePolicyDetails - "Enabled/disabled commenting on team files." - - new_value FileCommentsPolicy - "New commenting on team files policy." - previous_value FileCommentsPolicy? - "Previous commenting on team files policy. Might be missing due to historical data gap." - - example default - new_value = enabled - previous_value = enabled - -struct FileLockingPolicyChangedDetails - "Changed file locking policy for team." - - new_value team_policies.FileLockingPolicyState - "New file locking policy." - previous_value team_policies.FileLockingPolicyState - "Previous file locking policy." - - example default - new_value = disabled - previous_value = disabled - -struct FileProviderMigrationPolicyChangedDetails - "Changed File Provider Migration policy for team." - - new_value team_policies.FileProviderMigrationPolicyState - "To." - previous_value team_policies.FileProviderMigrationPolicyState - "From." - - example default - new_value = default - previous_value = default - -struct FileRequestsChangePolicyDetails - "Enabled/disabled file requests." - - new_value FileRequestsPolicy - "New file requests policy." - previous_value FileRequestsPolicy? - "Previous file requests policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct FileRequestsEmailsEnabledDetails - "Enabled file request emails for everyone." - -struct FileRequestsEmailsRestrictedToTeamOnlyDetails - "Enabled file request emails for team." - -struct FileTransfersPolicyChangedDetails - "Changed file transfers policy for team." - - new_value FileTransfersPolicy - "New file transfers policy." - previous_value FileTransfersPolicy - "Previous file transfers policy." - - example default - new_value = disabled - previous_value = disabled - -struct FolderLinkRestrictionPolicyChangedDetails - "Changed folder link restrictions policy for team." - - new_value FolderLinkRestrictionPolicy - "To." - previous_value FolderLinkRestrictionPolicy - "From." - - example default - new_value = disabled - previous_value = disabled - -struct GoogleSsoChangePolicyDetails - "Enabled/disabled Google single sign-on for team." - - new_value GoogleSsoPolicy - "New Google single sign-on policy." - previous_value GoogleSsoPolicy? - "Previous Google single sign-on policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct GroupUserManagementChangePolicyDetails - "Changed who can create groups." - - new_value team_policies.GroupCreation - "New group users management policy." - previous_value team_policies.GroupCreation? - "Previous group users management policy. Might be missing due to historical data gap." - - example default - new_value = admins_and_members - previous_value = admins_and_members - -struct IntegrationPolicyChangedDetails - "Changed integration policy for team." - - integration_name String - "Name of the third-party integration." - new_value IntegrationPolicy - "New integration policy." - previous_value IntegrationPolicy - "Previous integration policy." - - example default - integration_name = "abc" - new_value = disabled - previous_value = disabled - -struct InviteAcceptanceEmailPolicyChangedDetails - "Changed invite accept email policy for team." - - new_value InviteAcceptanceEmailPolicy - "To." - previous_value InviteAcceptanceEmailPolicy - "From." - - example default - new_value = disabled - previous_value = disabled - -struct MemberRequestsChangePolicyDetails - "Changed whether users can find team when not invited." - - new_value MemberRequestsPolicy - "New member change requests policy." - previous_value MemberRequestsPolicy? - "Previous member change requests policy. Might be missing due to historical data gap." - - example default - new_value = require_approval - previous_value = require_approval - -struct MemberSendInvitePolicyChangedDetails - "Changed member send invite policy for team." - - new_value MemberSendInvitePolicy - "New team member send invite policy." - previous_value MemberSendInvitePolicy - "Previous team member send invite policy." - - example default - new_value = disabled - previous_value = disabled - -struct MemberSpaceLimitsAddExceptionDetails - "Added members to member space limit exception list." - -struct MemberSpaceLimitsChangeCapsTypePolicyDetails - "Changed member space limit type for team." - - previous_value SpaceCapsType - "Previous space limit type." - new_value SpaceCapsType - "New space limit type." - - example default - previous_value = hard - new_value = hard - -struct MemberSpaceLimitsChangePolicyDetails - "Changed team default member space limit." - - previous_value UInt64? - "Previous team default limit value in bytes. Might be missing due to historical data gap." - new_value UInt64? - "New team default limit value in bytes. Might be missing due to historical data gap." - - example default - previous_value = 3 - new_value = 3 - -struct MemberSpaceLimitsRemoveExceptionDetails - "Removed members from member space limit exception list." - -struct MemberSuggestionsChangePolicyDetails - "Enabled/disabled option for team members to suggest people to add to team." - - new_value MemberSuggestionsPolicy - "New team member suggestions policy." - previous_value MemberSuggestionsPolicy? - "Previous team member suggestions policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct MicrosoftOfficeAddinChangePolicyDetails - "Enabled/disabled Microsoft Office add-in." - - new_value MicrosoftOfficeAddinPolicy - "New Microsoft Office addin policy." - previous_value MicrosoftOfficeAddinPolicy? - "Previous Microsoft Office addin policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct NetworkControlChangePolicyDetails - "Enabled/disabled network control." - - new_value NetworkControlPolicy - "New network control policy." - previous_value NetworkControlPolicy? - "Previous network control policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct PaperChangeDeploymentPolicyDetails - "Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members." - - new_value team_policies.PaperDeploymentPolicy - "New Dropbox Paper deployment policy." - previous_value team_policies.PaperDeploymentPolicy? - "Previous Dropbox Paper deployment policy. Might be missing due to historical data gap." - - example default - new_value = full - previous_value = full - -struct PaperChangeMemberLinkPolicyDetails - "Changed whether non-members can view Paper docs with link." - - new_value PaperMemberPolicy - "New paper external link accessibility policy." - - example default - new_value = only_team - -struct PaperChangeMemberPolicyDetails - "Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default." - - new_value PaperMemberPolicy - "New paper external accessibility policy." - previous_value PaperMemberPolicy? - "Previous paper external accessibility policy. Might be missing due to historical data gap." - - example default - new_value = only_team - previous_value = only_team - -struct PaperChangePolicyDetails - "Enabled/disabled Dropbox Paper for team." - - new_value team_policies.PaperEnabledPolicy - "New Dropbox Paper policy." - previous_value team_policies.PaperEnabledPolicy? - "Previous Dropbox Paper policy. Might be missing due to historical data gap." - - example default - new_value = unspecified - previous_value = unspecified - -struct PaperDefaultFolderPolicyChangedDetails - "Changed Paper Default Folder Policy setting for team." - - new_value PaperDefaultFolderPolicy - "New Paper Default Folder Policy." - previous_value PaperDefaultFolderPolicy - "Previous Paper Default Folder Policy." - - example default - new_value = everyone_in_team - previous_value = everyone_in_team - -struct PaperDesktopPolicyChangedDetails - "Enabled/disabled Paper Desktop for team." - - new_value PaperDesktopPolicy - "New Paper Desktop policy." - previous_value PaperDesktopPolicy - "Previous Paper Desktop policy." - - example default - new_value = disabled - previous_value = disabled - -struct PaperEnabledUsersGroupAdditionDetails - "Added users to Paper-enabled users list." - -struct PaperEnabledUsersGroupRemovalDetails - "Removed users from Paper-enabled users list." - -struct PasswordStrengthRequirementsChangePolicyDetails - "Changed team password strength requirements." - - previous_value team_policies.PasswordStrengthPolicy - "Old password strength policy." - new_value team_policies.PasswordStrengthPolicy - "New password strength policy." - - example default - previous_value = minimal_requirements - new_value = minimal_requirements - -struct PermanentDeleteChangePolicyDetails - "Enabled/disabled ability of team members to permanently delete content." - - new_value ContentPermanentDeletePolicy - "New permanent delete content policy." - previous_value ContentPermanentDeletePolicy? - "Previous permanent delete content policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct ResellerSupportChangePolicyDetails - "Enabled/disabled reseller support." - - new_value ResellerSupportPolicy - "New Reseller support policy." - previous_value ResellerSupportPolicy - "Previous Reseller support policy." - - example default - new_value = disabled - previous_value = disabled - -struct RewindPolicyChangedDetails - "Changed Rewind policy for team." - - new_value RewindPolicy - "New Dropbox Rewind policy." - previous_value RewindPolicy - "Previous Dropbox Rewind policy." - - example default - new_value = admins_only - previous_value = admins_only - -struct SendForSignaturePolicyChangedDetails - "Changed send for signature policy for team." - - new_value SendForSignaturePolicy - "New send for signature policy." - previous_value SendForSignaturePolicy - "Previous send for signature policy." - - example default - new_value = disabled - previous_value = disabled - -struct SharingChangeFolderJoinPolicyDetails - "Changed whether team members can join shared folders owned outside team." - - new_value SharingFolderJoinPolicy - "New external join policy." - previous_value SharingFolderJoinPolicy? - "Previous external join policy. Might be missing due to historical data gap." - - example default - new_value = from_anyone - previous_value = from_anyone - -struct SharingChangeLinkAllowChangeExpirationPolicyDetails - "Changed the allow remove or change expiration policy for the links shared outside of the team." - - new_value EnforceLinkPasswordPolicy - "To." - previous_value EnforceLinkPasswordPolicy? - "From." - - example default - new_value = optional - previous_value = optional - -struct SharingChangeLinkDefaultExpirationPolicyDetails - "Changed the default expiration for the links shared outside of the team." - - new_value DefaultLinkExpirationDaysPolicy - "To." - previous_value DefaultLinkExpirationDaysPolicy? - "From." - - example default - new_value = none - previous_value = none - -struct SharingChangeLinkEnforcePasswordPolicyDetails - "Changed the password requirement for the links shared outside of the team." - - new_value ChangeLinkExpirationPolicy - "To." - previous_value ChangeLinkExpirationPolicy? - "From." - - example default - new_value = allowed - previous_value = allowed - -struct SharingChangeLinkPolicyDetails - "Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default." - - new_value SharingLinkPolicy - "New external link accessibility policy." - previous_value SharingLinkPolicy? - "Previous external link accessibility policy. Might be missing due to historical data gap." - - example default - new_value = default_public - previous_value = default_public - -struct SharingChangeMemberPolicyDetails - "Changed whether members can share files/folders outside team." - - new_value SharingMemberPolicy - "New external invite policy." - previous_value SharingMemberPolicy? - "Previous external invite policy. Might be missing due to historical data gap." - - example default - new_value = allow - previous_value = allow - -struct ShowcaseChangeDownloadPolicyDetails - "Enabled/disabled downloading files from Dropbox Showcase for team." - - new_value ShowcaseDownloadPolicy - "New Dropbox Showcase download policy." - previous_value ShowcaseDownloadPolicy - "Previous Dropbox Showcase download policy." - - example default - new_value = disabled - previous_value = disabled - -struct ShowcaseChangeEnabledPolicyDetails - "Enabled/disabled Dropbox Showcase for team." - - new_value ShowcaseEnabledPolicy - "New Dropbox Showcase policy." - previous_value ShowcaseEnabledPolicy - "Previous Dropbox Showcase policy." - - example default - new_value = disabled - previous_value = disabled - -struct ShowcaseChangeExternalSharingPolicyDetails - "Enabled/disabled sharing Dropbox Showcase externally for team." - - new_value ShowcaseExternalSharingPolicy - "New Dropbox Showcase external sharing policy." - previous_value ShowcaseExternalSharingPolicy - "Previous Dropbox Showcase external sharing policy." - - example default - new_value = disabled - previous_value = disabled - -struct SmarterSmartSyncPolicyChangedDetails - "Changed automatic Smart Sync setting for team." - - previous_value team_policies.SmarterSmartSyncPolicyState - "Previous automatic Smart Sync setting." - new_value team_policies.SmarterSmartSyncPolicyState - "New automatic Smart Sync setting." - - example default - previous_value = disabled - new_value = disabled - -struct SmartSyncChangePolicyDetails - "Changed default Smart Sync setting for team members." - - new_value team_policies.SmartSyncPolicy? - "New smart sync policy." - previous_value team_policies.SmartSyncPolicy? - "Previous smart sync policy." - - example default - new_value = local - previous_value = local - -struct SmartSyncNotOptOutDetails - "Opted team into Smart Sync." - - previous_value SmartSyncOptOutPolicy - "Previous Smart Sync opt out policy." - new_value SmartSyncOptOutPolicy - "New Smart Sync opt out policy." - - example default - previous_value = default - new_value = default - -struct SmartSyncOptOutDetails - "Opted team out of Smart Sync." - - previous_value SmartSyncOptOutPolicy - "Previous Smart Sync opt out policy." - new_value SmartSyncOptOutPolicy - "New Smart Sync opt out policy." - - example default - previous_value = default - new_value = default - -struct SsoChangePolicyDetails - "Changed single sign-on setting for team." - - new_value team_policies.SsoPolicy - "New single sign-on policy." - previous_value team_policies.SsoPolicy? - "Previous single sign-on policy. Might be missing due to historical data gap." - - example default - new_value = disabled - previous_value = disabled - -struct TeamBrandingPolicyChangedDetails - "Changed team branding policy for team." - - new_value TeamBrandingPolicy - "New team branding policy." - previous_value TeamBrandingPolicy - "Previous team branding policy." - - example default - new_value = disabled - previous_value = disabled - -struct TeamExtensionsPolicyChangedDetails - "Changed App Integrations setting for team." - - new_value TeamExtensionsPolicy - "New Extensions policy." - previous_value TeamExtensionsPolicy - "Previous Extensions policy." - - example default - new_value = disabled - previous_value = disabled - -struct TeamSelectiveSyncPolicyChangedDetails - "Enabled/disabled Team Selective Sync for team." - - new_value TeamSelectiveSyncPolicy - "New Team Selective Sync policy." - previous_value TeamSelectiveSyncPolicy - "Previous Team Selective Sync policy." - - example default - new_value = disabled - previous_value = disabled - -struct TeamSharingWhitelistSubjectsChangedDetails - "Edited the approved list for sharing externally." - - added_whitelist_subjects List(String) - "Domains or emails added to the approved list for sharing externally." - removed_whitelist_subjects List(String) - "Domains or emails removed from the approved list for sharing externally." - - example default - added_whitelist_subjects = ["example.com"] - removed_whitelist_subjects = ["example.com"] - -struct TfaAddExceptionDetails - "Added members to two factor authentication exception list." - -struct TfaChangePolicyDetails - "Changed two-step verification setting for team." - - new_value team_policies.TwoStepVerificationPolicy - "New change policy." - previous_value team_policies.TwoStepVerificationPolicy? - "Previous change policy. Might be missing due to historical data gap." - - example default - new_value = require_tfa_disable - previous_value = require_tfa_disable - -struct TfaRemoveExceptionDetails - "Removed members from two factor authentication exception list." - -struct TwoAccountChangePolicyDetails - "Enabled/disabled option for members to link personal Dropbox account and team account to same computer." - - new_value TwoAccountPolicy - "New two account policy." - previous_value TwoAccountPolicy? - "Previous two account policy. Might be missing due to historical data gap." - - example default - new_value = enabled - previous_value = enabled - -struct ViewerInfoPolicyChangedDetails - "Changed team policy for viewer info." - - previous_value PassPolicy - "Previous Viewer Info policy." - new_value PassPolicy - "New Viewer Info policy." - - example default - previous_value = enabled - new_value = enabled - -struct WatermarkingPolicyChangedDetails - "Changed watermarking policy for team." - - new_value WatermarkingPolicy - "New watermarking policy." - previous_value WatermarkingPolicy - "Previous watermarking policy." - - example default - new_value = disabled - previous_value = disabled - -struct WebSessionsChangeActiveSessionLimitDetails - "Changed limit on active sessions per member." - - previous_value String - "Previous max number of concurrent active sessions policy." - new_value String - "New max number of concurrent active sessions policy." - - example default - previous_value = "abc" - new_value = "abc" - -struct WebSessionsChangeFixedLengthPolicyDetails - "Changed how long members can stay signed in to Dropbox.com." - - new_value WebSessionsFixedLengthPolicy? - "New session length policy. Might be missing due to historical data gap." - previous_value WebSessionsFixedLengthPolicy? - "Previous session length policy. Might be missing due to historical data gap." - - example default - new_value = default - previous_value = default - -struct WebSessionsChangeIdleLengthPolicyDetails - "Changed how long team members can be idle while signed in to Dropbox.com." - - new_value WebSessionsIdleLengthPolicy? - "New idle length policy. Might be missing due to historical data gap." - previous_value WebSessionsIdleLengthPolicy? - "Previous idle length policy. Might be missing due to historical data gap." - - example default - new_value = default - previous_value = default - -struct DataResidencyMigrationRequestSuccessfulDetails - "Requested data residency migration for team data." - -struct DataResidencyMigrationRequestUnsuccessfulDetails - "Request for data residency migration for team data has failed." - -struct TeamMergeFromDetails - "Merged another team into this team." - - team_name String - "The name of the team that was merged into this team." - - example default - team_name = "abc" - -struct TeamMergeToDetails - "Merged this team into another team." - - team_name String - "The name of the team that this team was merged into." - - example default - team_name = "abc" - -struct TeamProfileAddBackgroundDetails - "Added team background to display on shared link headers." - -struct TeamProfileAddLogoDetails - "Added team logo to display on shared link headers." - -struct TeamProfileChangeBackgroundDetails - "Changed team background displayed on shared link headers." - -struct TeamProfileChangeDefaultLanguageDetails - "Changed default language for team." - - new_value common.LanguageCode - "New team's default language." - previous_value common.LanguageCode - "Previous team's default language." - - example default - new_value = "en_GB" - previous_value = "en" - -struct TeamProfileChangeLogoDetails - "Changed team logo displayed on shared link headers." - -struct TeamProfileChangeNameDetails - "Changed team name." - - previous_value TeamName? - "Previous teams name. Might be missing due to historical data gap." - new_value TeamName - "New team name." - - example default - previous_value = default - new_value = default - -struct TeamProfileRemoveBackgroundDetails - "Removed team background displayed on shared link headers." - -struct TeamProfileRemoveLogoDetails - "Removed team logo displayed on shared link headers." - -struct TfaAddBackupPhoneDetails - "Added backup phone for two-step verification." - -struct TfaAddSecurityKeyDetails - "Added security key for two-step verification." - -struct TfaChangeBackupPhoneDetails - "Changed backup phone for two-step verification." - -struct TfaChangeStatusDetails - "Enabled/disabled/changed two-step verification setting." - - new_value TfaConfiguration - "The new two factor authentication configuration." - previous_value TfaConfiguration? - "The previous two factor authentication configuration. Might be missing due to historical data gap." - used_rescue_code Boolean? - "Used two factor authentication rescue code. This flag is relevant when the two factor authentication configuration is disabled." - - example default - new_value = disabled - previous_value = disabled - used_rescue_code = true - -struct TfaRemoveBackupPhoneDetails - "Removed backup phone for two-step verification." - -struct TfaRemoveSecurityKeyDetails - "Removed security key for two-step verification." - -struct TfaResetDetails - "Reset two-step verification for team member." - -struct ChangedEnterpriseAdminRoleDetails - "Changed enterprise admin role." - - previous_value FedAdminRole - "The member’s previous enterprise admin role." - new_value FedAdminRole - "The member’s new enterprise admin role." - team_name String - "The name of the member’s team." - - example default - previous_value = not_enterprise_admin - new_value = not_enterprise_admin - team_name = "IT Department" - -struct ChangedEnterpriseConnectedTeamStatusDetails - "Changed enterprise-connected team status." - - action FedHandshakeAction - "The preformed change in the team’s connection status." - additional_info FederationStatusChangeAdditionalInfo - "Additional information about the organization or team." - previous_value TrustedTeamsRequestState - "Previous request state." - new_value TrustedTeamsRequestState - "New request state." - - example default - action = invited - additional_info = default - previous_value = invited - new_value = invited - -struct EndedEnterpriseAdminSessionDetails - "Ended enterprise admin session." - -struct EndedEnterpriseAdminSessionDeprecatedDetails - "Ended enterprise admin session." - - federation_extra_details FedExtraDetails - "More information about the organization or team." - - example default - federation_extra_details = default - -struct EnterpriseSettingsLockingDetails - "Changed who can update a setting." - - team_name String - "The secondary team name." - settings_page_name String - "Settings page name." - previous_settings_page_locking_state String - "Previous locked settings page state." - new_settings_page_locking_state String - "New locked settings page state." - - example default - team_name = "abc" - settings_page_name = "abc" - previous_settings_page_locking_state = "abc" - new_settings_page_locking_state = "abc" - -struct GuestAdminChangeStatusDetails - "Changed guest team admin status." - - is_guest Boolean - "True for guest, false for host." - guest_team_name String? - "The name of the guest team." - host_team_name String? - "The name of the host team." - previous_value TrustedTeamsRequestState - "Previous request state." - new_value TrustedTeamsRequestState - "New request state." - action_details TrustedTeamsRequestAction - "Action details." - - example default - is_guest = true - guest_team_name = "abc" - host_team_name = "abc" - previous_value = invited - new_value = invited - action_details = invited - -struct StartedEnterpriseAdminSessionDetails - "Started enterprise admin session." - - federation_extra_details FedExtraDetails - "More information about the organization or team." - - example default - federation_extra_details = default - -struct TeamMergeRequestAcceptedDetails - "Accepted a team merge request." - - request_accepted_details TeamMergeRequestAcceptedExtraDetails - "Team merge request acceptance details." - - example default - request_accepted_details = default - -struct TeamMergeRequestAcceptedShownToPrimaryTeamDetails - "Accepted a team merge request." - - secondary_team String - "The secondary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - secondary_team = "abc" - sent_by = "abc" - -struct TeamMergeRequestAcceptedShownToSecondaryTeamDetails - "Accepted a team merge request." - - primary_team String - "The primary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - primary_team = "abc" - sent_by = "abc" - -struct TeamMergeRequestAutoCanceledDetails - "Automatically canceled team merge request." - - details String? - "The cancellation reason." - - example default - details = "Canceled by Dropbox Support" - -struct TeamMergeRequestCanceledDetails - "Canceled a team merge request." - - request_canceled_details TeamMergeRequestCanceledExtraDetails - "Team merge request cancellation details." - - example default - request_canceled_details = default - -struct TeamMergeRequestCanceledShownToPrimaryTeamDetails - "Canceled a team merge request." - - secondary_team String - "The secondary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - secondary_team = "abc" - sent_by = "abc" - -struct TeamMergeRequestCanceledShownToSecondaryTeamDetails - "Canceled a team merge request." - - sent_to String - "The email of the primary team admin that the request was sent to." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - sent_to = "abc" - sent_by = "abc" - -struct TeamMergeRequestExpiredDetails - "Team merge request expired." - - request_expired_details TeamMergeRequestExpiredExtraDetails - "Team merge request expiration details." - - example default - request_expired_details = default - -struct TeamMergeRequestExpiredShownToPrimaryTeamDetails - "Team merge request expired." - - secondary_team String - "The secondary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - secondary_team = "abc" - sent_by = "abc" - -struct TeamMergeRequestExpiredShownToSecondaryTeamDetails - "Team merge request expired." - - sent_to String - "The email of the primary team admin the request was sent to." - - example default - sent_to = "abc" - -struct TeamMergeRequestRejectedShownToPrimaryTeamDetails - "Rejected a team merge request." - - secondary_team String - "The secondary team name." - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - secondary_team = "abc" - sent_by = "abc" - -struct TeamMergeRequestRejectedShownToSecondaryTeamDetails - "Rejected a team merge request." - - sent_by String - "The name of the secondary team admin who sent the request originally." - - example default - sent_by = "abc" - -struct TeamMergeRequestReminderDetails - "Sent a team merge request reminder." - - request_reminder_details TeamMergeRequestReminderExtraDetails - "Team merge request reminder details." - - example default - request_reminder_details = default - -struct TeamMergeRequestReminderShownToPrimaryTeamDetails - "Sent a team merge request reminder." - - secondary_team String - "The secondary team name." - sent_to String - "The name of the primary team admin the request was sent to." - - example default - secondary_team = "abc" - sent_to = "abc" - -struct TeamMergeRequestReminderShownToSecondaryTeamDetails - "Sent a team merge request reminder." - - sent_to String - "The email of the primary team admin the request was sent to." - - example default - sent_to = "abc" - -struct TeamMergeRequestRevokedDetails - "Canceled the team merge." - - team String - "The name of the other team." - - example default - team = "IT Department" - -struct TeamMergeRequestSentShownToPrimaryTeamDetails - "Requested to merge their Dropbox team into yours." - - secondary_team String - "The secondary team name." - sent_to String - "The name of the primary team admin the request was sent to." - - example default - secondary_team = "BAU IT Department" - sent_to = "Saffron Eveninglily" - -struct TeamMergeRequestSentShownToSecondaryTeamDetails - "Requested to merge your team into another Dropbox team." - - sent_to String - "The email of the primary team admin the request was sent to." - - example default - sent_to = "admin@it_department.com" - -################# -# Event Details -################# - -union EventDetails - "Additional fields depending on the event type." - - admin_alerting_alert_state_changed_details AdminAlertingAlertStateChangedDetails - admin_alerting_changed_alert_config_details AdminAlertingChangedAlertConfigDetails - admin_alerting_triggered_alert_details AdminAlertingTriggeredAlertDetails - ransomware_restore_process_completed_details RansomwareRestoreProcessCompletedDetails - ransomware_restore_process_started_details RansomwareRestoreProcessStartedDetails - app_blocked_by_permissions_details AppBlockedByPermissionsDetails - app_link_team_details AppLinkTeamDetails - app_link_user_details AppLinkUserDetails - app_unlink_team_details AppUnlinkTeamDetails - app_unlink_user_details AppUnlinkUserDetails - integration_connected_details IntegrationConnectedDetails - integration_disconnected_details IntegrationDisconnectedDetails - file_add_comment_details FileAddCommentDetails - file_change_comment_subscription_details FileChangeCommentSubscriptionDetails - file_delete_comment_details FileDeleteCommentDetails - file_edit_comment_details FileEditCommentDetails - file_like_comment_details FileLikeCommentDetails - file_resolve_comment_details FileResolveCommentDetails - file_unlike_comment_details FileUnlikeCommentDetails - file_unresolve_comment_details FileUnresolveCommentDetails - governance_policy_add_folders_details GovernancePolicyAddFoldersDetails - governance_policy_add_folder_failed_details GovernancePolicyAddFolderFailedDetails - governance_policy_content_disposed_details GovernancePolicyContentDisposedDetails - governance_policy_create_details GovernancePolicyCreateDetails - governance_policy_delete_details GovernancePolicyDeleteDetails - governance_policy_edit_details_details GovernancePolicyEditDetailsDetails - governance_policy_edit_duration_details GovernancePolicyEditDurationDetails - governance_policy_export_created_details GovernancePolicyExportCreatedDetails - governance_policy_export_removed_details GovernancePolicyExportRemovedDetails - governance_policy_remove_folders_details GovernancePolicyRemoveFoldersDetails - governance_policy_report_created_details GovernancePolicyReportCreatedDetails - governance_policy_zip_part_downloaded_details GovernancePolicyZipPartDownloadedDetails - legal_holds_activate_a_hold_details LegalHoldsActivateAHoldDetails - legal_holds_add_members_details LegalHoldsAddMembersDetails - legal_holds_change_hold_details_details LegalHoldsChangeHoldDetailsDetails - legal_holds_change_hold_name_details LegalHoldsChangeHoldNameDetails - legal_holds_export_a_hold_details LegalHoldsExportAHoldDetails - legal_holds_export_cancelled_details LegalHoldsExportCancelledDetails - legal_holds_export_downloaded_details LegalHoldsExportDownloadedDetails - legal_holds_export_removed_details LegalHoldsExportRemovedDetails - legal_holds_release_a_hold_details LegalHoldsReleaseAHoldDetails - legal_holds_remove_members_details LegalHoldsRemoveMembersDetails - legal_holds_report_a_hold_details LegalHoldsReportAHoldDetails - device_change_ip_desktop_details DeviceChangeIpDesktopDetails - device_change_ip_mobile_details DeviceChangeIpMobileDetails - device_change_ip_web_details DeviceChangeIpWebDetails - device_delete_on_unlink_fail_details DeviceDeleteOnUnlinkFailDetails - device_delete_on_unlink_success_details DeviceDeleteOnUnlinkSuccessDetails - device_link_fail_details DeviceLinkFailDetails - device_link_success_details DeviceLinkSuccessDetails - device_management_disabled_details DeviceManagementDisabledDetails - device_management_enabled_details DeviceManagementEnabledDetails - device_sync_backup_status_changed_details DeviceSyncBackupStatusChangedDetails - device_unlink_details DeviceUnlinkDetails - dropbox_passwords_exported_details DropboxPasswordsExportedDetails - dropbox_passwords_new_device_enrolled_details DropboxPasswordsNewDeviceEnrolledDetails - emm_refresh_auth_token_details EmmRefreshAuthTokenDetails - external_drive_backup_eligibility_status_checked_details ExternalDriveBackupEligibilityStatusCheckedDetails - external_drive_backup_status_changed_details ExternalDriveBackupStatusChangedDetails - account_capture_change_availability_details AccountCaptureChangeAvailabilityDetails - account_capture_migrate_account_details AccountCaptureMigrateAccountDetails - account_capture_notification_emails_sent_details AccountCaptureNotificationEmailsSentDetails - account_capture_relinquish_account_details AccountCaptureRelinquishAccountDetails - disabled_domain_invites_details DisabledDomainInvitesDetails - domain_invites_approve_request_to_join_team_details DomainInvitesApproveRequestToJoinTeamDetails - domain_invites_decline_request_to_join_team_details DomainInvitesDeclineRequestToJoinTeamDetails - domain_invites_email_existing_users_details DomainInvitesEmailExistingUsersDetails - domain_invites_request_to_join_team_details DomainInvitesRequestToJoinTeamDetails - domain_invites_set_invite_new_user_pref_to_no_details DomainInvitesSetInviteNewUserPrefToNoDetails - domain_invites_set_invite_new_user_pref_to_yes_details DomainInvitesSetInviteNewUserPrefToYesDetails - domain_verification_add_domain_fail_details DomainVerificationAddDomainFailDetails - domain_verification_add_domain_success_details DomainVerificationAddDomainSuccessDetails - domain_verification_remove_domain_details DomainVerificationRemoveDomainDetails - enabled_domain_invites_details EnabledDomainInvitesDetails - team_encryption_key_cancel_key_deletion_details TeamEncryptionKeyCancelKeyDeletionDetails - team_encryption_key_create_key_details TeamEncryptionKeyCreateKeyDetails - team_encryption_key_delete_key_details TeamEncryptionKeyDeleteKeyDetails - team_encryption_key_disable_key_details TeamEncryptionKeyDisableKeyDetails - team_encryption_key_enable_key_details TeamEncryptionKeyEnableKeyDetails - team_encryption_key_rotate_key_details TeamEncryptionKeyRotateKeyDetails - team_encryption_key_schedule_key_deletion_details TeamEncryptionKeyScheduleKeyDeletionDetails - apply_naming_convention_details ApplyNamingConventionDetails - create_folder_details CreateFolderDetails - file_add_details FileAddDetails - file_add_from_automation_details FileAddFromAutomationDetails - file_copy_details FileCopyDetails - file_delete_details FileDeleteDetails - file_download_details FileDownloadDetails - file_edit_details FileEditDetails - file_get_copy_reference_details FileGetCopyReferenceDetails - file_locking_lock_status_changed_details FileLockingLockStatusChangedDetails - file_move_details FileMoveDetails - file_permanently_delete_details FilePermanentlyDeleteDetails - file_preview_details FilePreviewDetails - file_rename_details FileRenameDetails - file_restore_details FileRestoreDetails - file_revert_details FileRevertDetails - file_rollback_changes_details FileRollbackChangesDetails - file_save_copy_reference_details FileSaveCopyReferenceDetails - folder_overview_description_changed_details FolderOverviewDescriptionChangedDetails - folder_overview_item_pinned_details FolderOverviewItemPinnedDetails - folder_overview_item_unpinned_details FolderOverviewItemUnpinnedDetails - object_label_added_details ObjectLabelAddedDetails - object_label_removed_details ObjectLabelRemovedDetails - object_label_updated_value_details ObjectLabelUpdatedValueDetails - organize_folder_with_tidy_details OrganizeFolderWithTidyDetails - replay_file_delete_details ReplayFileDeleteDetails - rewind_folder_details RewindFolderDetails - undo_naming_convention_details UndoNamingConventionDetails - undo_organize_folder_with_tidy_details UndoOrganizeFolderWithTidyDetails - user_tags_added_details UserTagsAddedDetails - user_tags_removed_details UserTagsRemovedDetails - email_ingest_receive_file_details EmailIngestReceiveFileDetails - file_request_change_details FileRequestChangeDetails - file_request_close_details FileRequestCloseDetails - file_request_create_details FileRequestCreateDetails - file_request_delete_details FileRequestDeleteDetails - file_request_receive_file_details FileRequestReceiveFileDetails - group_add_external_id_details GroupAddExternalIdDetails - group_add_member_details GroupAddMemberDetails - group_change_external_id_details GroupChangeExternalIdDetails - group_change_management_type_details GroupChangeManagementTypeDetails - group_change_member_role_details GroupChangeMemberRoleDetails - group_create_details GroupCreateDetails - group_delete_details GroupDeleteDetails - group_description_updated_details GroupDescriptionUpdatedDetails - group_join_policy_updated_details GroupJoinPolicyUpdatedDetails - group_moved_details GroupMovedDetails - group_remove_external_id_details GroupRemoveExternalIdDetails - group_remove_member_details GroupRemoveMemberDetails - group_rename_details GroupRenameDetails - account_lock_or_unlocked_details AccountLockOrUnlockedDetails - emm_error_details EmmErrorDetails - guest_admin_signed_in_via_trusted_teams_details GuestAdminSignedInViaTrustedTeamsDetails - guest_admin_signed_out_via_trusted_teams_details GuestAdminSignedOutViaTrustedTeamsDetails - login_fail_details LoginFailDetails - login_success_details LoginSuccessDetails - logout_details LogoutDetails - reseller_support_session_end_details ResellerSupportSessionEndDetails - reseller_support_session_start_details ResellerSupportSessionStartDetails - sign_in_as_session_end_details SignInAsSessionEndDetails - sign_in_as_session_start_details SignInAsSessionStartDetails - sso_error_details SsoErrorDetails - backup_admin_invitation_sent_details BackupAdminInvitationSentDetails - backup_invitation_opened_details BackupInvitationOpenedDetails - create_team_invite_link_details CreateTeamInviteLinkDetails - delete_team_invite_link_details DeleteTeamInviteLinkDetails - member_add_external_id_details MemberAddExternalIdDetails - member_add_name_details MemberAddNameDetails - member_change_admin_role_details MemberChangeAdminRoleDetails - member_change_email_details MemberChangeEmailDetails - member_change_external_id_details MemberChangeExternalIdDetails - member_change_membership_type_details MemberChangeMembershipTypeDetails - member_change_name_details MemberChangeNameDetails - member_change_reseller_role_details MemberChangeResellerRoleDetails - member_change_status_details MemberChangeStatusDetails - member_delete_manual_contacts_details MemberDeleteManualContactsDetails - member_delete_profile_photo_details MemberDeleteProfilePhotoDetails - member_permanently_delete_account_contents_details MemberPermanentlyDeleteAccountContentsDetails - member_remove_external_id_details MemberRemoveExternalIdDetails - member_set_profile_photo_details MemberSetProfilePhotoDetails - member_space_limits_add_custom_quota_details MemberSpaceLimitsAddCustomQuotaDetails - member_space_limits_change_custom_quota_details MemberSpaceLimitsChangeCustomQuotaDetails - member_space_limits_change_status_details MemberSpaceLimitsChangeStatusDetails - member_space_limits_remove_custom_quota_details MemberSpaceLimitsRemoveCustomQuotaDetails - member_suggest_details MemberSuggestDetails - member_transfer_account_contents_details MemberTransferAccountContentsDetails - pending_secondary_email_added_details PendingSecondaryEmailAddedDetails - secondary_email_deleted_details SecondaryEmailDeletedDetails - secondary_email_verified_details SecondaryEmailVerifiedDetails - secondary_mails_policy_changed_details SecondaryMailsPolicyChangedDetails - binder_add_page_details BinderAddPageDetails - binder_add_section_details BinderAddSectionDetails - binder_remove_page_details BinderRemovePageDetails - binder_remove_section_details BinderRemoveSectionDetails - binder_rename_page_details BinderRenamePageDetails - binder_rename_section_details BinderRenameSectionDetails - binder_reorder_page_details BinderReorderPageDetails - binder_reorder_section_details BinderReorderSectionDetails - paper_content_add_member_details PaperContentAddMemberDetails - paper_content_add_to_folder_details PaperContentAddToFolderDetails - paper_content_archive_details PaperContentArchiveDetails - paper_content_create_details PaperContentCreateDetails - paper_content_permanently_delete_details PaperContentPermanentlyDeleteDetails - paper_content_remove_from_folder_details PaperContentRemoveFromFolderDetails - paper_content_remove_member_details PaperContentRemoveMemberDetails - paper_content_rename_details PaperContentRenameDetails - paper_content_restore_details PaperContentRestoreDetails - paper_doc_add_comment_details PaperDocAddCommentDetails - paper_doc_change_member_role_details PaperDocChangeMemberRoleDetails - paper_doc_change_sharing_policy_details PaperDocChangeSharingPolicyDetails - paper_doc_change_subscription_details PaperDocChangeSubscriptionDetails - paper_doc_deleted_details PaperDocDeletedDetails - paper_doc_delete_comment_details PaperDocDeleteCommentDetails - paper_doc_download_details PaperDocDownloadDetails - paper_doc_edit_details PaperDocEditDetails - paper_doc_edit_comment_details PaperDocEditCommentDetails - paper_doc_followed_details PaperDocFollowedDetails - paper_doc_mention_details PaperDocMentionDetails - paper_doc_ownership_changed_details PaperDocOwnershipChangedDetails - paper_doc_request_access_details PaperDocRequestAccessDetails - paper_doc_resolve_comment_details PaperDocResolveCommentDetails - paper_doc_revert_details PaperDocRevertDetails - paper_doc_slack_share_details PaperDocSlackShareDetails - paper_doc_team_invite_details PaperDocTeamInviteDetails - paper_doc_trashed_details PaperDocTrashedDetails - paper_doc_unresolve_comment_details PaperDocUnresolveCommentDetails - paper_doc_untrashed_details PaperDocUntrashedDetails - paper_doc_view_details PaperDocViewDetails - paper_external_view_allow_details PaperExternalViewAllowDetails - paper_external_view_default_team_details PaperExternalViewDefaultTeamDetails - paper_external_view_forbid_details PaperExternalViewForbidDetails - paper_folder_change_subscription_details PaperFolderChangeSubscriptionDetails - paper_folder_deleted_details PaperFolderDeletedDetails - paper_folder_followed_details PaperFolderFollowedDetails - paper_folder_team_invite_details PaperFolderTeamInviteDetails - paper_published_link_change_permission_details PaperPublishedLinkChangePermissionDetails - paper_published_link_create_details PaperPublishedLinkCreateDetails - paper_published_link_disabled_details PaperPublishedLinkDisabledDetails - paper_published_link_view_details PaperPublishedLinkViewDetails - password_change_details PasswordChangeDetails - password_reset_details PasswordResetDetails - password_reset_all_details PasswordResetAllDetails - classification_create_report_details ClassificationCreateReportDetails - classification_create_report_fail_details ClassificationCreateReportFailDetails - emm_create_exceptions_report_details EmmCreateExceptionsReportDetails - emm_create_usage_report_details EmmCreateUsageReportDetails - export_members_report_details ExportMembersReportDetails - export_members_report_fail_details ExportMembersReportFailDetails - external_sharing_create_report_details ExternalSharingCreateReportDetails - external_sharing_report_failed_details ExternalSharingReportFailedDetails - no_expiration_link_gen_create_report_details NoExpirationLinkGenCreateReportDetails - no_expiration_link_gen_report_failed_details NoExpirationLinkGenReportFailedDetails - no_password_link_gen_create_report_details NoPasswordLinkGenCreateReportDetails - no_password_link_gen_report_failed_details NoPasswordLinkGenReportFailedDetails - no_password_link_view_create_report_details NoPasswordLinkViewCreateReportDetails - no_password_link_view_report_failed_details NoPasswordLinkViewReportFailedDetails - outdated_link_view_create_report_details OutdatedLinkViewCreateReportDetails - outdated_link_view_report_failed_details OutdatedLinkViewReportFailedDetails - paper_admin_export_start_details PaperAdminExportStartDetails - ransomware_alert_create_report_details RansomwareAlertCreateReportDetails - ransomware_alert_create_report_failed_details RansomwareAlertCreateReportFailedDetails - smart_sync_create_admin_privilege_report_details SmartSyncCreateAdminPrivilegeReportDetails - team_activity_create_report_details TeamActivityCreateReportDetails - team_activity_create_report_fail_details TeamActivityCreateReportFailDetails - collection_share_details CollectionShareDetails - file_transfers_file_add_details FileTransfersFileAddDetails - file_transfers_transfer_delete_details FileTransfersTransferDeleteDetails - file_transfers_transfer_download_details FileTransfersTransferDownloadDetails - file_transfers_transfer_send_details FileTransfersTransferSendDetails - file_transfers_transfer_view_details FileTransfersTransferViewDetails - note_acl_invite_only_details NoteAclInviteOnlyDetails - note_acl_link_details NoteAclLinkDetails - note_acl_team_link_details NoteAclTeamLinkDetails - note_shared_details NoteSharedDetails - note_share_receive_details NoteShareReceiveDetails - open_note_shared_details OpenNoteSharedDetails - replay_file_shared_link_created_details ReplayFileSharedLinkCreatedDetails - replay_file_shared_link_modified_details ReplayFileSharedLinkModifiedDetails - replay_project_team_add_details ReplayProjectTeamAddDetails - replay_project_team_delete_details ReplayProjectTeamDeleteDetails - sf_add_group_details SfAddGroupDetails - sf_allow_non_members_to_view_shared_links_details SfAllowNonMembersToViewSharedLinksDetails - sf_external_invite_warn_details SfExternalInviteWarnDetails - sf_fb_invite_details SfFbInviteDetails - sf_fb_invite_change_role_details SfFbInviteChangeRoleDetails - sf_fb_uninvite_details SfFbUninviteDetails - sf_invite_group_details SfInviteGroupDetails - sf_team_grant_access_details SfTeamGrantAccessDetails - sf_team_invite_details SfTeamInviteDetails - sf_team_invite_change_role_details SfTeamInviteChangeRoleDetails - sf_team_join_details SfTeamJoinDetails - sf_team_join_from_oob_link_details SfTeamJoinFromOobLinkDetails - sf_team_uninvite_details SfTeamUninviteDetails - shared_content_add_invitees_details SharedContentAddInviteesDetails - shared_content_add_link_expiry_details SharedContentAddLinkExpiryDetails - shared_content_add_link_password_details SharedContentAddLinkPasswordDetails - shared_content_add_member_details SharedContentAddMemberDetails - shared_content_change_downloads_policy_details SharedContentChangeDownloadsPolicyDetails - shared_content_change_invitee_role_details SharedContentChangeInviteeRoleDetails - shared_content_change_link_audience_details SharedContentChangeLinkAudienceDetails - shared_content_change_link_expiry_details SharedContentChangeLinkExpiryDetails - shared_content_change_link_password_details SharedContentChangeLinkPasswordDetails - shared_content_change_member_role_details SharedContentChangeMemberRoleDetails - shared_content_change_viewer_info_policy_details SharedContentChangeViewerInfoPolicyDetails - shared_content_claim_invitation_details SharedContentClaimInvitationDetails - shared_content_copy_details SharedContentCopyDetails - shared_content_download_details SharedContentDownloadDetails - shared_content_relinquish_membership_details SharedContentRelinquishMembershipDetails - shared_content_remove_invitees_details SharedContentRemoveInviteesDetails - shared_content_remove_link_expiry_details SharedContentRemoveLinkExpiryDetails - shared_content_remove_link_password_details SharedContentRemoveLinkPasswordDetails - shared_content_remove_member_details SharedContentRemoveMemberDetails - shared_content_request_access_details SharedContentRequestAccessDetails - shared_content_restore_invitees_details SharedContentRestoreInviteesDetails - shared_content_restore_member_details SharedContentRestoreMemberDetails - shared_content_unshare_details SharedContentUnshareDetails - shared_content_view_details SharedContentViewDetails - shared_folder_change_link_policy_details SharedFolderChangeLinkPolicyDetails - shared_folder_change_members_inheritance_policy_details SharedFolderChangeMembersInheritancePolicyDetails - shared_folder_change_members_management_policy_details SharedFolderChangeMembersManagementPolicyDetails - shared_folder_change_members_policy_details SharedFolderChangeMembersPolicyDetails - shared_folder_create_details SharedFolderCreateDetails - shared_folder_decline_invitation_details SharedFolderDeclineInvitationDetails - shared_folder_mount_details SharedFolderMountDetails - shared_folder_nest_details SharedFolderNestDetails - shared_folder_transfer_ownership_details SharedFolderTransferOwnershipDetails - shared_folder_unmount_details SharedFolderUnmountDetails - shared_link_add_expiry_details SharedLinkAddExpiryDetails - shared_link_change_expiry_details SharedLinkChangeExpiryDetails - shared_link_change_visibility_details SharedLinkChangeVisibilityDetails - shared_link_copy_details SharedLinkCopyDetails - shared_link_create_details SharedLinkCreateDetails - shared_link_disable_details SharedLinkDisableDetails - shared_link_download_details SharedLinkDownloadDetails - shared_link_remove_expiry_details SharedLinkRemoveExpiryDetails - shared_link_settings_add_expiration_details SharedLinkSettingsAddExpirationDetails - shared_link_settings_add_password_details SharedLinkSettingsAddPasswordDetails - shared_link_settings_allow_download_disabled_details SharedLinkSettingsAllowDownloadDisabledDetails - shared_link_settings_allow_download_enabled_details SharedLinkSettingsAllowDownloadEnabledDetails - shared_link_settings_change_audience_details SharedLinkSettingsChangeAudienceDetails - shared_link_settings_change_expiration_details SharedLinkSettingsChangeExpirationDetails - shared_link_settings_change_password_details SharedLinkSettingsChangePasswordDetails - shared_link_settings_remove_expiration_details SharedLinkSettingsRemoveExpirationDetails - shared_link_settings_remove_password_details SharedLinkSettingsRemovePasswordDetails - shared_link_share_details SharedLinkShareDetails - shared_link_view_details SharedLinkViewDetails - shared_note_opened_details SharedNoteOpenedDetails - shmodel_disable_downloads_details ShmodelDisableDownloadsDetails - shmodel_enable_downloads_details ShmodelEnableDownloadsDetails - shmodel_group_share_details ShmodelGroupShareDetails - showcase_access_granted_details ShowcaseAccessGrantedDetails - showcase_add_member_details ShowcaseAddMemberDetails - showcase_archived_details ShowcaseArchivedDetails - showcase_created_details ShowcaseCreatedDetails - showcase_delete_comment_details ShowcaseDeleteCommentDetails - showcase_edited_details ShowcaseEditedDetails - showcase_edit_comment_details ShowcaseEditCommentDetails - showcase_file_added_details ShowcaseFileAddedDetails - showcase_file_download_details ShowcaseFileDownloadDetails - showcase_file_removed_details ShowcaseFileRemovedDetails - showcase_file_view_details ShowcaseFileViewDetails - showcase_permanently_deleted_details ShowcasePermanentlyDeletedDetails - showcase_post_comment_details ShowcasePostCommentDetails - showcase_remove_member_details ShowcaseRemoveMemberDetails - showcase_renamed_details ShowcaseRenamedDetails - showcase_request_access_details ShowcaseRequestAccessDetails - showcase_resolve_comment_details ShowcaseResolveCommentDetails - showcase_restored_details ShowcaseRestoredDetails - showcase_trashed_details ShowcaseTrashedDetails - showcase_trashed_deprecated_details ShowcaseTrashedDeprecatedDetails - showcase_unresolve_comment_details ShowcaseUnresolveCommentDetails - showcase_untrashed_details ShowcaseUntrashedDetails - showcase_untrashed_deprecated_details ShowcaseUntrashedDeprecatedDetails - showcase_view_details ShowcaseViewDetails - sso_add_cert_details SsoAddCertDetails - sso_add_login_url_details SsoAddLoginUrlDetails - sso_add_logout_url_details SsoAddLogoutUrlDetails - sso_change_cert_details SsoChangeCertDetails - sso_change_login_url_details SsoChangeLoginUrlDetails - sso_change_logout_url_details SsoChangeLogoutUrlDetails - sso_change_saml_identity_mode_details SsoChangeSamlIdentityModeDetails - sso_remove_cert_details SsoRemoveCertDetails - sso_remove_login_url_details SsoRemoveLoginUrlDetails - sso_remove_logout_url_details SsoRemoveLogoutUrlDetails - team_folder_change_status_details TeamFolderChangeStatusDetails - team_folder_create_details TeamFolderCreateDetails - team_folder_downgrade_details TeamFolderDowngradeDetails - team_folder_permanently_delete_details TeamFolderPermanentlyDeleteDetails - team_folder_rename_details TeamFolderRenameDetails - team_selective_sync_settings_changed_details TeamSelectiveSyncSettingsChangedDetails - account_capture_change_policy_details AccountCaptureChangePolicyDetails - admin_email_reminders_changed_details AdminEmailRemindersChangedDetails - allow_download_disabled_details AllowDownloadDisabledDetails - allow_download_enabled_details AllowDownloadEnabledDetails - app_permissions_changed_details AppPermissionsChangedDetails - camera_uploads_policy_changed_details CameraUploadsPolicyChangedDetails - capture_transcript_policy_changed_details CaptureTranscriptPolicyChangedDetails - classification_change_policy_details ClassificationChangePolicyDetails - computer_backup_policy_changed_details ComputerBackupPolicyChangedDetails - content_administration_policy_changed_details ContentAdministrationPolicyChangedDetails - data_placement_restriction_change_policy_details DataPlacementRestrictionChangePolicyDetails - data_placement_restriction_satisfy_policy_details DataPlacementRestrictionSatisfyPolicyDetails - device_approvals_add_exception_details DeviceApprovalsAddExceptionDetails - device_approvals_change_desktop_policy_details DeviceApprovalsChangeDesktopPolicyDetails - device_approvals_change_mobile_policy_details DeviceApprovalsChangeMobilePolicyDetails - device_approvals_change_overage_action_details DeviceApprovalsChangeOverageActionDetails - device_approvals_change_unlink_action_details DeviceApprovalsChangeUnlinkActionDetails - device_approvals_remove_exception_details DeviceApprovalsRemoveExceptionDetails - directory_restrictions_add_members_details DirectoryRestrictionsAddMembersDetails - directory_restrictions_remove_members_details DirectoryRestrictionsRemoveMembersDetails - dropbox_passwords_policy_changed_details DropboxPasswordsPolicyChangedDetails - email_ingest_policy_changed_details EmailIngestPolicyChangedDetails - emm_add_exception_details EmmAddExceptionDetails - emm_change_policy_details EmmChangePolicyDetails - emm_remove_exception_details EmmRemoveExceptionDetails - extended_version_history_change_policy_details ExtendedVersionHistoryChangePolicyDetails - external_drive_backup_policy_changed_details ExternalDriveBackupPolicyChangedDetails - file_comments_change_policy_details FileCommentsChangePolicyDetails - file_locking_policy_changed_details FileLockingPolicyChangedDetails - file_provider_migration_policy_changed_details FileProviderMigrationPolicyChangedDetails - file_requests_change_policy_details FileRequestsChangePolicyDetails - file_requests_emails_enabled_details FileRequestsEmailsEnabledDetails - file_requests_emails_restricted_to_team_only_details FileRequestsEmailsRestrictedToTeamOnlyDetails - file_transfers_policy_changed_details FileTransfersPolicyChangedDetails - folder_link_restriction_policy_changed_details FolderLinkRestrictionPolicyChangedDetails - google_sso_change_policy_details GoogleSsoChangePolicyDetails - group_user_management_change_policy_details GroupUserManagementChangePolicyDetails - integration_policy_changed_details IntegrationPolicyChangedDetails - invite_acceptance_email_policy_changed_details InviteAcceptanceEmailPolicyChangedDetails - member_requests_change_policy_details MemberRequestsChangePolicyDetails - member_send_invite_policy_changed_details MemberSendInvitePolicyChangedDetails - member_space_limits_add_exception_details MemberSpaceLimitsAddExceptionDetails - member_space_limits_change_caps_type_policy_details MemberSpaceLimitsChangeCapsTypePolicyDetails - member_space_limits_change_policy_details MemberSpaceLimitsChangePolicyDetails - member_space_limits_remove_exception_details MemberSpaceLimitsRemoveExceptionDetails - member_suggestions_change_policy_details MemberSuggestionsChangePolicyDetails - microsoft_office_addin_change_policy_details MicrosoftOfficeAddinChangePolicyDetails - network_control_change_policy_details NetworkControlChangePolicyDetails - paper_change_deployment_policy_details PaperChangeDeploymentPolicyDetails - paper_change_member_link_policy_details PaperChangeMemberLinkPolicyDetails - paper_change_member_policy_details PaperChangeMemberPolicyDetails - paper_change_policy_details PaperChangePolicyDetails - paper_default_folder_policy_changed_details PaperDefaultFolderPolicyChangedDetails - paper_desktop_policy_changed_details PaperDesktopPolicyChangedDetails - paper_enabled_users_group_addition_details PaperEnabledUsersGroupAdditionDetails - paper_enabled_users_group_removal_details PaperEnabledUsersGroupRemovalDetails - password_strength_requirements_change_policy_details PasswordStrengthRequirementsChangePolicyDetails - permanent_delete_change_policy_details PermanentDeleteChangePolicyDetails - reseller_support_change_policy_details ResellerSupportChangePolicyDetails - rewind_policy_changed_details RewindPolicyChangedDetails - send_for_signature_policy_changed_details SendForSignaturePolicyChangedDetails - sharing_change_folder_join_policy_details SharingChangeFolderJoinPolicyDetails - sharing_change_link_allow_change_expiration_policy_details SharingChangeLinkAllowChangeExpirationPolicyDetails - sharing_change_link_default_expiration_policy_details SharingChangeLinkDefaultExpirationPolicyDetails - sharing_change_link_enforce_password_policy_details SharingChangeLinkEnforcePasswordPolicyDetails - sharing_change_link_policy_details SharingChangeLinkPolicyDetails - sharing_change_member_policy_details SharingChangeMemberPolicyDetails - showcase_change_download_policy_details ShowcaseChangeDownloadPolicyDetails - showcase_change_enabled_policy_details ShowcaseChangeEnabledPolicyDetails - showcase_change_external_sharing_policy_details ShowcaseChangeExternalSharingPolicyDetails - smarter_smart_sync_policy_changed_details SmarterSmartSyncPolicyChangedDetails - smart_sync_change_policy_details SmartSyncChangePolicyDetails - smart_sync_not_opt_out_details SmartSyncNotOptOutDetails - smart_sync_opt_out_details SmartSyncOptOutDetails - sso_change_policy_details SsoChangePolicyDetails - team_branding_policy_changed_details TeamBrandingPolicyChangedDetails - team_extensions_policy_changed_details TeamExtensionsPolicyChangedDetails - team_selective_sync_policy_changed_details TeamSelectiveSyncPolicyChangedDetails - team_sharing_whitelist_subjects_changed_details TeamSharingWhitelistSubjectsChangedDetails - tfa_add_exception_details TfaAddExceptionDetails - tfa_change_policy_details TfaChangePolicyDetails - tfa_remove_exception_details TfaRemoveExceptionDetails - two_account_change_policy_details TwoAccountChangePolicyDetails - viewer_info_policy_changed_details ViewerInfoPolicyChangedDetails - watermarking_policy_changed_details WatermarkingPolicyChangedDetails - web_sessions_change_active_session_limit_details WebSessionsChangeActiveSessionLimitDetails - web_sessions_change_fixed_length_policy_details WebSessionsChangeFixedLengthPolicyDetails - web_sessions_change_idle_length_policy_details WebSessionsChangeIdleLengthPolicyDetails - data_residency_migration_request_successful_details DataResidencyMigrationRequestSuccessfulDetails - data_residency_migration_request_unsuccessful_details DataResidencyMigrationRequestUnsuccessfulDetails - team_merge_from_details TeamMergeFromDetails - team_merge_to_details TeamMergeToDetails - team_profile_add_background_details TeamProfileAddBackgroundDetails - team_profile_add_logo_details TeamProfileAddLogoDetails - team_profile_change_background_details TeamProfileChangeBackgroundDetails - team_profile_change_default_language_details TeamProfileChangeDefaultLanguageDetails - team_profile_change_logo_details TeamProfileChangeLogoDetails - team_profile_change_name_details TeamProfileChangeNameDetails - team_profile_remove_background_details TeamProfileRemoveBackgroundDetails - team_profile_remove_logo_details TeamProfileRemoveLogoDetails - tfa_add_backup_phone_details TfaAddBackupPhoneDetails - tfa_add_security_key_details TfaAddSecurityKeyDetails - tfa_change_backup_phone_details TfaChangeBackupPhoneDetails - tfa_change_status_details TfaChangeStatusDetails - tfa_remove_backup_phone_details TfaRemoveBackupPhoneDetails - tfa_remove_security_key_details TfaRemoveSecurityKeyDetails - tfa_reset_details TfaResetDetails - changed_enterprise_admin_role_details ChangedEnterpriseAdminRoleDetails - changed_enterprise_connected_team_status_details ChangedEnterpriseConnectedTeamStatusDetails - ended_enterprise_admin_session_details EndedEnterpriseAdminSessionDetails - ended_enterprise_admin_session_deprecated_details EndedEnterpriseAdminSessionDeprecatedDetails - enterprise_settings_locking_details EnterpriseSettingsLockingDetails - guest_admin_change_status_details GuestAdminChangeStatusDetails - started_enterprise_admin_session_details StartedEnterpriseAdminSessionDetails - team_merge_request_accepted_details TeamMergeRequestAcceptedDetails - team_merge_request_accepted_shown_to_primary_team_details TeamMergeRequestAcceptedShownToPrimaryTeamDetails - team_merge_request_accepted_shown_to_secondary_team_details TeamMergeRequestAcceptedShownToSecondaryTeamDetails - team_merge_request_auto_canceled_details TeamMergeRequestAutoCanceledDetails - team_merge_request_canceled_details TeamMergeRequestCanceledDetails - team_merge_request_canceled_shown_to_primary_team_details TeamMergeRequestCanceledShownToPrimaryTeamDetails - team_merge_request_canceled_shown_to_secondary_team_details TeamMergeRequestCanceledShownToSecondaryTeamDetails - team_merge_request_expired_details TeamMergeRequestExpiredDetails - team_merge_request_expired_shown_to_primary_team_details TeamMergeRequestExpiredShownToPrimaryTeamDetails - team_merge_request_expired_shown_to_secondary_team_details TeamMergeRequestExpiredShownToSecondaryTeamDetails - team_merge_request_rejected_shown_to_primary_team_details TeamMergeRequestRejectedShownToPrimaryTeamDetails - team_merge_request_rejected_shown_to_secondary_team_details TeamMergeRequestRejectedShownToSecondaryTeamDetails - team_merge_request_reminder_details TeamMergeRequestReminderDetails - team_merge_request_reminder_shown_to_primary_team_details TeamMergeRequestReminderShownToPrimaryTeamDetails - team_merge_request_reminder_shown_to_secondary_team_details TeamMergeRequestReminderShownToSecondaryTeamDetails - team_merge_request_revoked_details TeamMergeRequestRevokedDetails - team_merge_request_sent_shown_to_primary_team_details TeamMergeRequestSentShownToPrimaryTeamDetails - team_merge_request_sent_shown_to_secondary_team_details TeamMergeRequestSentShownToSecondaryTeamDetails - missing_details MissingDetails - "Hints that this event was returned with missing details due to an internal error." - - example default - shared_content_download_details = default - - -############## -# Event Type -############## - -struct AdminAlertingAlertStateChangedType - description String - - example default - description = "(admin_alerting) Changed an alert state" - -struct AdminAlertingChangedAlertConfigType - description String - - example default - description = "(admin_alerting) Changed an alert setting" - -struct AdminAlertingTriggeredAlertType - description String - - example default - description = "(admin_alerting) Triggered security alert" - -struct RansomwareRestoreProcessCompletedType - description String - - example default - description = "(admin_alerting) Completed ransomware restore process" - -struct RansomwareRestoreProcessStartedType - description String - - example default - description = "(admin_alerting) Started ransomware restore process" - -struct AppBlockedByPermissionsType - description String - - example default - description = "(apps) Failed to connect app for member" - -struct AppLinkTeamType - description String - - example default - description = "(apps) Linked app for team" - -struct AppLinkUserType - description String - - example default - description = "(apps) Linked app for member" - -struct AppUnlinkTeamType - description String - - example default - description = "(apps) Unlinked app for team" - -struct AppUnlinkUserType - description String - - example default - description = "(apps) Unlinked app for member" - -struct IntegrationConnectedType - description String - - example default - description = "(apps) Connected integration for member" - -struct IntegrationDisconnectedType - description String - - example default - description = "(apps) Disconnected integration for member" - -struct FileAddCommentType - description String - - example default - description = "(comments) Added file comment" - -struct FileChangeCommentSubscriptionType - description String - - example default - description = "(comments) Subscribed to or unsubscribed from comment notifications for file" - -struct FileDeleteCommentType - description String - - example default - description = "(comments) Deleted file comment" - -struct FileEditCommentType - description String - - example default - description = "(comments) Edited file comment" - -struct FileLikeCommentType - description String - - example default - description = "(comments) Liked file comment (deprecated, no longer logged)" - -struct FileResolveCommentType - description String - - example default - description = "(comments) Resolved file comment" - -struct FileUnlikeCommentType - description String - - example default - description = "(comments) Unliked file comment (deprecated, no longer logged)" - -struct FileUnresolveCommentType - description String - - example default - description = "(comments) Unresolved file comment" - -struct GovernancePolicyAddFoldersType - description String - - example default - description = "(data_governance) Added folders to policy" - -struct GovernancePolicyAddFolderFailedType - description String - - example default - description = "(data_governance) Couldn't add a folder to a policy" - -struct GovernancePolicyContentDisposedType - description String - - example default - description = "(data_governance) Content disposed" - -struct GovernancePolicyCreateType - description String - - example default - description = "(data_governance) Activated a new policy" - -struct GovernancePolicyDeleteType - description String - - example default - description = "(data_governance) Deleted a policy" - -struct GovernancePolicyEditDetailsType - description String - - example default - description = "(data_governance) Edited policy" - -struct GovernancePolicyEditDurationType - description String - - example default - description = "(data_governance) Changed policy duration" - -struct GovernancePolicyExportCreatedType - description String - - example default - description = "(data_governance) Created a policy download" - -struct GovernancePolicyExportRemovedType - description String - - example default - description = "(data_governance) Removed a policy download" - -struct GovernancePolicyRemoveFoldersType - description String - - example default - description = "(data_governance) Removed folders from policy" - -struct GovernancePolicyReportCreatedType - description String - - example default - description = "(data_governance) Created a summary report for a policy" - -struct GovernancePolicyZipPartDownloadedType - description String - - example default - description = "(data_governance) Downloaded content from a policy" - -struct LegalHoldsActivateAHoldType - description String - - example default - description = "(data_governance) Activated a hold" - -struct LegalHoldsAddMembersType - description String - - example default - description = "(data_governance) Added members to a hold" - -struct LegalHoldsChangeHoldDetailsType - description String - - example default - description = "(data_governance) Edited details for a hold" - -struct LegalHoldsChangeHoldNameType - description String - - example default - description = "(data_governance) Renamed a hold" - -struct LegalHoldsExportAHoldType - description String - - example default - description = "(data_governance) Exported hold" - -struct LegalHoldsExportCancelledType - description String - - example default - description = "(data_governance) Canceled export for a hold" - -struct LegalHoldsExportDownloadedType - description String - - example default - description = "(data_governance) Downloaded export for a hold" - -struct LegalHoldsExportRemovedType - description String - - example default - description = "(data_governance) Removed export for a hold" - -struct LegalHoldsReleaseAHoldType - description String - - example default - description = "(data_governance) Released a hold" - -struct LegalHoldsRemoveMembersType - description String - - example default - description = "(data_governance) Removed members from a hold" - -struct LegalHoldsReportAHoldType - description String - - example default - description = "(data_governance) Created a summary report for a hold" - -struct DeviceChangeIpDesktopType - description String - - example default - description = "(devices) Changed IP address associated with active desktop session" - -struct DeviceChangeIpMobileType - description String - - example default - description = "(devices) Changed IP address associated with active mobile session" - -struct DeviceChangeIpWebType - description String - - example default - description = "(devices) Changed IP address associated with active web session" - -struct DeviceDeleteOnUnlinkFailType - description String - - example default - description = "(devices) Failed to delete all files from unlinked device" - -struct DeviceDeleteOnUnlinkSuccessType - description String - - example default - description = "(devices) Deleted all files from unlinked device" - -struct DeviceLinkFailType - description String - - example default - description = "(devices) Failed to link device" - -struct DeviceLinkSuccessType - description String - - example default - description = "(devices) Linked device" - -struct DeviceManagementDisabledType - description String - - example default - description = "(devices) Disabled device management (deprecated, no longer logged)" - -struct DeviceManagementEnabledType - description String - - example default - description = "(devices) Enabled device management (deprecated, no longer logged)" - -struct DeviceSyncBackupStatusChangedType - description String - - example default - description = "(devices) Enabled/disabled backup for computer" - -struct DeviceUnlinkType - description String - - example default - description = "(devices) Disconnected device" - -struct DropboxPasswordsExportedType - description String - - example default - description = "(devices) Exported passwords" - -struct DropboxPasswordsNewDeviceEnrolledType - description String - - example default - description = "(devices) Enrolled new Dropbox Passwords device" - -struct EmmRefreshAuthTokenType - description String - - example default - description = "(devices) Refreshed auth token used for setting up EMM" - -struct ExternalDriveBackupEligibilityStatusCheckedType - description String - - example default - description = "(devices) Checked external drive backup eligibility status" - -struct ExternalDriveBackupStatusChangedType - description String - - example default - description = "(devices) Modified external drive backup" - -struct AccountCaptureChangeAvailabilityType - description String - - example default - description = "(domains) Granted/revoked option to enable account capture on team domains" - -struct AccountCaptureMigrateAccountType - description String - - example default - description = "(domains) Account-captured user migrated account to team" - -struct AccountCaptureNotificationEmailsSentType - description String - - example default - description = "(domains) Sent account capture email to all unmanaged members" - -struct AccountCaptureRelinquishAccountType - description String - - example default - description = "(domains) Account-captured user changed account email to personal email" - -struct DisabledDomainInvitesType - description String - - example default - description = "(domains) Disabled domain invites (deprecated, no longer logged)" - -struct DomainInvitesApproveRequestToJoinTeamType - description String - - example default - description = "(domains) Approved user's request to join team" - -struct DomainInvitesDeclineRequestToJoinTeamType - description String - - example default - description = "(domains) Declined user's request to join team" - -struct DomainInvitesEmailExistingUsersType - description String - - example default - description = "(domains) Sent domain invites to existing domain accounts (deprecated, no longer logged)" - -struct DomainInvitesRequestToJoinTeamType - description String - - example default - description = "(domains) Requested to join team" - -struct DomainInvitesSetInviteNewUserPrefToNoType - description String - - example default - description = "(domains) Disabled \"Automatically invite new users\" (deprecated, no longer logged)" - -struct DomainInvitesSetInviteNewUserPrefToYesType - description String - - example default - description = "(domains) Enabled \"Automatically invite new users\" (deprecated, no longer logged)" - -struct DomainVerificationAddDomainFailType - description String - - example default - description = "(domains) Failed to verify team domain" - -struct DomainVerificationAddDomainSuccessType - description String - - example default - description = "(domains) Verified team domain" - -struct DomainVerificationRemoveDomainType - description String - - example default - description = "(domains) Removed domain from list of verified team domains" - -struct EnabledDomainInvitesType - description String - - example default - description = "(domains) Enabled domain invites (deprecated, no longer logged)" - -struct TeamEncryptionKeyCancelKeyDeletionType - description String - - example default - description = "(encryption) Canceled team encryption key deletion" - -struct TeamEncryptionKeyCreateKeyType - description String - - example default - description = "(encryption) Created team encryption key" - -struct TeamEncryptionKeyDeleteKeyType - description String - - example default - description = "(encryption) Deleted team encryption key" - -struct TeamEncryptionKeyDisableKeyType - description String - - example default - description = "(encryption) Disabled team encryption key" - -struct TeamEncryptionKeyEnableKeyType - description String - - example default - description = "(encryption) Enabled team encryption key" - -struct TeamEncryptionKeyRotateKeyType - description String - - example default - description = "(encryption) Rotated team encryption key (deprecated, no longer logged)" - -struct TeamEncryptionKeyScheduleKeyDeletionType - description String - - example default - description = "(encryption) Scheduled encryption key deletion" - -struct ApplyNamingConventionType - description String - - example default - description = "(file_operations) Applied naming convention" - -struct CreateFolderType - description String - - example default - description = "(file_operations) Created folders (deprecated, no longer logged)" - -struct FileAddType - description String - - example default - description = "(file_operations) Added files and/or folders" - -struct FileAddFromAutomationType - description String - - example default - description = "(file_operations) Added files and/or folders from automation" - -struct FileCopyType - description String - - example default - description = "(file_operations) Copied files and/or folders" - -struct FileDeleteType - description String - - example default - description = "(file_operations) Deleted files and/or folders" - -struct FileDownloadType - description String - - example default - description = "(file_operations) Downloaded files and/or folders" - -struct FileEditType - description String - - example default - description = "(file_operations) Edited files" - -struct FileGetCopyReferenceType - description String - - example default - description = "(file_operations) Created copy reference to file/folder" - -struct FileLockingLockStatusChangedType - description String - - example default - description = "(file_operations) Locked/unlocked editing for a file" - -struct FileMoveType - description String - - example default - description = "(file_operations) Moved files and/or folders" - -struct FilePermanentlyDeleteType - description String - - example default - description = "(file_operations) Permanently deleted files and/or folders" - -struct FilePreviewType - description String - - example default - description = "(file_operations) Previewed files and/or folders" - -struct FileRenameType - description String - - example default - description = "(file_operations) Renamed files and/or folders" - -struct FileRestoreType - description String - - example default - description = "(file_operations) Restored deleted files and/or folders" - -struct FileRevertType - description String - - example default - description = "(file_operations) Reverted files to previous version" - -struct FileRollbackChangesType - description String - - example default - description = "(file_operations) Rolled back file actions" - -struct FileSaveCopyReferenceType - description String - - example default - description = "(file_operations) Saved file/folder using copy reference" - -struct FolderOverviewDescriptionChangedType - description String - - example default - description = "(file_operations) Updated folder overview" - -struct FolderOverviewItemPinnedType - description String - - example default - description = "(file_operations) Pinned item to folder overview" - -struct FolderOverviewItemUnpinnedType - description String - - example default - description = "(file_operations) Unpinned item from folder overview" - -struct ObjectLabelAddedType - description String - - example default - description = "(file_operations) Added a label" - -struct ObjectLabelRemovedType - description String - - example default - description = "(file_operations) Removed a label" - -struct ObjectLabelUpdatedValueType - description String - - example default - description = "(file_operations) Updated a label's value" - -struct OrganizeFolderWithTidyType - description String - - example default - description = "(file_operations) Organized a folder with multi-file organize" - -struct ReplayFileDeleteType - description String - - example default - description = "(file_operations) Deleted files in Replay" - -struct RewindFolderType - description String - - example default - description = "(file_operations) Rewound a folder" - -struct UndoNamingConventionType - description String - - example default - description = "(file_operations) Reverted naming convention" - -struct UndoOrganizeFolderWithTidyType - description String - - example default - description = "(file_operations) Removed multi-file organize" - -struct UserTagsAddedType - description String - - example default - description = "(file_operations) Tagged a file" - -struct UserTagsRemovedType - description String - - example default - description = "(file_operations) Removed tags" - -struct EmailIngestReceiveFileType - description String - - example default - description = "(file_requests) Received files via Email to Dropbox" - -struct FileRequestChangeType - description String - - example default - description = "(file_requests) Changed file request" - -struct FileRequestCloseType - description String - - example default - description = "(file_requests) Closed file request" - -struct FileRequestCreateType - description String - - example default - description = "(file_requests) Created file request" - -struct FileRequestDeleteType - description String - - example default - description = "(file_requests) Delete file request" - -struct FileRequestReceiveFileType - description String - - example default - description = "(file_requests) Received files for file request" - -struct GroupAddExternalIdType - description String - - example default - description = "(groups) Added external ID for group" - -struct GroupAddMemberType - description String - - example default - description = "(groups) Added team members to group" - -struct GroupChangeExternalIdType - description String - - example default - description = "(groups) Changed external ID for group" - -struct GroupChangeManagementTypeType - description String - - example default - description = "(groups) Changed group management type" - -struct GroupChangeMemberRoleType - description String - - example default - description = "(groups) Changed manager permissions of group member" - -struct GroupCreateType - description String - - example default - description = "(groups) Created group" - -struct GroupDeleteType - description String - - example default - description = "(groups) Deleted group" - -struct GroupDescriptionUpdatedType - description String - - example default - description = "(groups) Updated group (deprecated, no longer logged)" - -struct GroupJoinPolicyUpdatedType - description String - - example default - description = "(groups) Updated group join policy (deprecated, no longer logged)" - -struct GroupMovedType - description String - - example default - description = "(groups) Moved group (deprecated, no longer logged)" - -struct GroupRemoveExternalIdType - description String - - example default - description = "(groups) Removed external ID for group" - -struct GroupRemoveMemberType - description String - - example default - description = "(groups) Removed team members from group" - -struct GroupRenameType - description String - - example default - description = "(groups) Renamed group" - -struct AccountLockOrUnlockedType - description String - - example default - description = "(logins) Unlocked/locked account after failed sign in attempts" - -struct EmmErrorType - description String - - example default - description = "(logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in')" - -struct GuestAdminSignedInViaTrustedTeamsType - description String - - example default - description = "(logins) Started trusted team admin session" - -struct GuestAdminSignedOutViaTrustedTeamsType - description String - - example default - description = "(logins) Ended trusted team admin session" - -struct LoginFailType - description String - - example default - description = "(logins) Failed to sign in" - -struct LoginSuccessType - description String - - example default - description = "(logins) Signed in" - -struct LogoutType - description String - - example default - description = "(logins) Signed out" - -struct ResellerSupportSessionEndType - description String - - example default - description = "(logins) Ended reseller support session" - -struct ResellerSupportSessionStartType - description String - - example default - description = "(logins) Started reseller support session" - -struct SignInAsSessionEndType - description String - - example default - description = "(logins) Ended admin sign-in-as session" - -struct SignInAsSessionStartType - description String - - example default - description = "(logins) Started admin sign-in-as session" - -struct SsoErrorType - description String - - example default - description = "(logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in')" - -struct BackupAdminInvitationSentType - description String - - example default - description = "(members) Invited members to activate Backup" - -struct BackupInvitationOpenedType - description String - - example default - description = "(members) Opened Backup invite" - -struct CreateTeamInviteLinkType - description String - - example default - description = "(members) Created team invite link" - -struct DeleteTeamInviteLinkType - description String - - example default - description = "(members) Deleted team invite link" - -struct MemberAddExternalIdType - description String - - example default - description = "(members) Added an external ID for team member" - -struct MemberAddNameType - description String - - example default - description = "(members) Added team member name" - -struct MemberChangeAdminRoleType - description String - - example default - description = "(members) Changed team member admin role" - -struct MemberChangeEmailType - description String - - example default - description = "(members) Changed team member email" - -struct MemberChangeExternalIdType - description String - - example default - description = "(members) Changed the external ID for team member" - -struct MemberChangeMembershipTypeType - description String - - example default - description = "(members) Changed membership type (limited/full) of member (deprecated, no longer logged)" - -struct MemberChangeNameType - description String - - example default - description = "(members) Changed team member name" - -struct MemberChangeResellerRoleType - description String - - example default - description = "(members) Changed team member reseller role" - -struct MemberChangeStatusType - description String - - example default - description = "(members) Changed member status (invited, joined, suspended, etc.)" - -struct MemberDeleteManualContactsType - description String - - example default - description = "(members) Cleared manually added contacts" - -struct MemberDeleteProfilePhotoType - description String - - example default - description = "(members) Deleted team member profile photo" - -struct MemberPermanentlyDeleteAccountContentsType - description String - - example default - description = "(members) Permanently deleted contents of deleted team member account" - -struct MemberRemoveExternalIdType - description String - - example default - description = "(members) Removed the external ID for team member" - -struct MemberSetProfilePhotoType - description String - - example default - description = "(members) Set team member profile photo" - -struct MemberSpaceLimitsAddCustomQuotaType - description String - - example default - description = "(members) Set custom member space limit" - -struct MemberSpaceLimitsChangeCustomQuotaType - description String - - example default - description = "(members) Changed custom member space limit" - -struct MemberSpaceLimitsChangeStatusType - description String - - example default - description = "(members) Changed space limit status" - -struct MemberSpaceLimitsRemoveCustomQuotaType - description String - - example default - description = "(members) Removed custom member space limit" - -struct MemberSuggestType - description String - - example default - description = "(members) Suggested person to add to team" - -struct MemberTransferAccountContentsType - description String - - example default - description = "(members) Transferred contents of deleted member account to another member" - -struct PendingSecondaryEmailAddedType - description String - - example default - description = "(members) Added pending secondary email" - -struct SecondaryEmailDeletedType - description String - - example default - description = "(members) Deleted secondary email" - -struct SecondaryEmailVerifiedType - description String - - example default - description = "(members) Verified secondary email" - -struct SecondaryMailsPolicyChangedType - description String - - example default - description = "(members) Secondary mails policy changed" - -struct BinderAddPageType - description String - - example default - description = "(paper) Added Binder page (deprecated, replaced by 'Edited files')" - -struct BinderAddSectionType - description String - - example default - description = "(paper) Added Binder section (deprecated, replaced by 'Edited files')" - -struct BinderRemovePageType - description String - - example default - description = "(paper) Removed Binder page (deprecated, replaced by 'Edited files')" - -struct BinderRemoveSectionType - description String - - example default - description = "(paper) Removed Binder section (deprecated, replaced by 'Edited files')" - -struct BinderRenamePageType - description String - - example default - description = "(paper) Renamed Binder page (deprecated, replaced by 'Edited files')" - -struct BinderRenameSectionType - description String - - example default - description = "(paper) Renamed Binder section (deprecated, replaced by 'Edited files')" - -struct BinderReorderPageType - description String - - example default - description = "(paper) Reordered Binder page (deprecated, replaced by 'Edited files')" - -struct BinderReorderSectionType - description String - - example default - description = "(paper) Reordered Binder section (deprecated, replaced by 'Edited files')" - -struct PaperContentAddMemberType - description String - - example default - description = "(paper) Added users and/or groups to Paper doc/folder" - -struct PaperContentAddToFolderType - description String - - example default - description = "(paper) Added Paper doc/folder to folder" - -struct PaperContentArchiveType - description String - - example default - description = "(paper) Archived Paper doc/folder" - -struct PaperContentCreateType - description String - - example default - description = "(paper) Created Paper doc/folder" - -struct PaperContentPermanentlyDeleteType - description String - - example default - description = "(paper) Permanently deleted Paper doc/folder" - -struct PaperContentRemoveFromFolderType - description String - - example default - description = "(paper) Removed Paper doc/folder from folder" - -struct PaperContentRemoveMemberType - description String - - example default - description = "(paper) Removed users and/or groups from Paper doc/folder" - -struct PaperContentRenameType - description String - - example default - description = "(paper) Renamed Paper doc/folder" - -struct PaperContentRestoreType - description String - - example default - description = "(paper) Restored archived Paper doc/folder" - -struct PaperDocAddCommentType - description String - - example default - description = "(paper) Added Paper doc comment" - -struct PaperDocChangeMemberRoleType - description String - - example default - description = "(paper) Changed member permissions for Paper doc" - -struct PaperDocChangeSharingPolicyType - description String - - example default - description = "(paper) Changed sharing setting for Paper doc" - -struct PaperDocChangeSubscriptionType - description String - - example default - description = "(paper) Followed/unfollowed Paper doc" - -struct PaperDocDeletedType - description String - - example default - description = "(paper) Archived Paper doc (deprecated, no longer logged)" - -struct PaperDocDeleteCommentType - description String - - example default - description = "(paper) Deleted Paper doc comment" - -struct PaperDocDownloadType - description String - - example default - description = "(paper) Downloaded Paper doc in specific format" - -struct PaperDocEditType - description String - - example default - description = "(paper) Edited Paper doc" - -struct PaperDocEditCommentType - description String - - example default - description = "(paper) Edited Paper doc comment" - -struct PaperDocFollowedType - description String - - example default - description = "(paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc')" - -struct PaperDocMentionType - description String - - example default - description = "(paper) Mentioned user in Paper doc" - -struct PaperDocOwnershipChangedType - description String - - example default - description = "(paper) Transferred ownership of Paper doc" - -struct PaperDocRequestAccessType - description String - - example default - description = "(paper) Requested access to Paper doc" - -struct PaperDocResolveCommentType - description String - - example default - description = "(paper) Resolved Paper doc comment" - -struct PaperDocRevertType - description String - - example default - description = "(paper) Restored Paper doc to previous version" - -struct PaperDocSlackShareType - description String - - example default - description = "(paper) Shared Paper doc via Slack" - -struct PaperDocTeamInviteType - description String - - example default - description = "(paper) Shared Paper doc with users and/or groups (deprecated, no longer logged)" - -struct PaperDocTrashedType - description String - - example default - description = "(paper) Deleted Paper doc" - -struct PaperDocUnresolveCommentType - description String - - example default - description = "(paper) Unresolved Paper doc comment" - -struct PaperDocUntrashedType - description String - - example default - description = "(paper) Restored Paper doc" - -struct PaperDocViewType - description String - - example default - description = "(paper) Viewed Paper doc" - -struct PaperExternalViewAllowType - description String - - example default - description = "(paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged)" - -struct PaperExternalViewDefaultTeamType - description String - - example default - description = "(paper) Changed Paper external sharing setting to default team (deprecated, no longer logged)" - -struct PaperExternalViewForbidType - description String - - example default - description = "(paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged)" - -struct PaperFolderChangeSubscriptionType - description String - - example default - description = "(paper) Followed/unfollowed Paper folder" - -struct PaperFolderDeletedType - description String - - example default - description = "(paper) Archived Paper folder (deprecated, no longer logged)" - -struct PaperFolderFollowedType - description String - - example default - description = "(paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder')" - -struct PaperFolderTeamInviteType - description String - - example default - description = "(paper) Shared Paper folder with users and/or groups (deprecated, no longer logged)" - -struct PaperPublishedLinkChangePermissionType - description String - - example default - description = "(paper) Changed permissions for published doc" - -struct PaperPublishedLinkCreateType - description String - - example default - description = "(paper) Published doc" - -struct PaperPublishedLinkDisabledType - description String - - example default - description = "(paper) Unpublished doc" - -struct PaperPublishedLinkViewType - description String - - example default - description = "(paper) Viewed published doc" - -struct PasswordChangeType - description String - - example default - description = "(passwords) Changed password" - -struct PasswordResetType - description String - - example default - description = "(passwords) Reset password" - -struct PasswordResetAllType - description String - - example default - description = "(passwords) Reset all team member passwords" - -struct ClassificationCreateReportType - description String - - example default - description = "(reports) Created Classification report" - -struct ClassificationCreateReportFailType - description String - - example default - description = "(reports) Couldn't create Classification report" - -struct EmmCreateExceptionsReportType - description String - - example default - description = "(reports) Created EMM-excluded users report" - -struct EmmCreateUsageReportType - description String - - example default - description = "(reports) Created EMM mobile app usage report" - -struct ExportMembersReportType - description String - - example default - description = "(reports) Created member data report" - -struct ExportMembersReportFailType - description String - - example default - description = "(reports) Failed to create members data report" - -struct ExternalSharingCreateReportType - description String - - example default - description = "(reports) Created External sharing report" - -struct ExternalSharingReportFailedType - description String - - example default - description = "(reports) Couldn't create External sharing report" - -struct NoExpirationLinkGenCreateReportType - description String - - example default - description = "(reports) Report created: Links created with no expiration" - -struct NoExpirationLinkGenReportFailedType - description String - - example default - description = "(reports) Couldn't create report: Links created with no expiration" - -struct NoPasswordLinkGenCreateReportType - description String - - example default - description = "(reports) Report created: Links created without passwords" - -struct NoPasswordLinkGenReportFailedType - description String - - example default - description = "(reports) Couldn't create report: Links created without passwords" - -struct NoPasswordLinkViewCreateReportType - description String - - example default - description = "(reports) Report created: Views of links without passwords" - -struct NoPasswordLinkViewReportFailedType - description String - - example default - description = "(reports) Couldn't create report: Views of links without passwords" - -struct OutdatedLinkViewCreateReportType - description String - - example default - description = "(reports) Report created: Views of old links" - -struct OutdatedLinkViewReportFailedType - description String - - example default - description = "(reports) Couldn't create report: Views of old links" - -struct PaperAdminExportStartType - description String - - example default - description = "(reports) Exported all team Paper docs" - -struct RansomwareAlertCreateReportType - description String - - example default - description = "(reports) Created ransomware report" - -struct RansomwareAlertCreateReportFailedType - description String - - example default - description = "(reports) Couldn't generate ransomware report" - -struct SmartSyncCreateAdminPrivilegeReportType - description String - - example default - description = "(reports) Created Smart Sync non-admin devices report" - -struct TeamActivityCreateReportType - description String - - example default - description = "(reports) Created team activity report" - -struct TeamActivityCreateReportFailType - description String - - example default - description = "(reports) Couldn't generate team activity report" - -struct CollectionShareType - description String - - example default - description = "(sharing) Shared album" - -struct FileTransfersFileAddType - description String - - example default - description = "(sharing) Transfer files added" - -struct FileTransfersTransferDeleteType - description String - - example default - description = "(sharing) Deleted transfer" - -struct FileTransfersTransferDownloadType - description String - - example default - description = "(sharing) Transfer downloaded" - -struct FileTransfersTransferSendType - description String - - example default - description = "(sharing) Sent transfer" - -struct FileTransfersTransferViewType - description String - - example default - description = "(sharing) Viewed transfer" - -struct NoteAclInviteOnlyType - description String - - example default - description = "(sharing) Changed Paper doc to invite-only (deprecated, no longer logged)" - -struct NoteAclLinkType - description String - - example default - description = "(sharing) Changed Paper doc to link-accessible (deprecated, no longer logged)" - -struct NoteAclTeamLinkType - description String - - example default - description = "(sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged)" - -struct NoteSharedType - description String - - example default - description = "(sharing) Shared Paper doc (deprecated, no longer logged)" - -struct NoteShareReceiveType - description String - - example default - description = "(sharing) Shared received Paper doc (deprecated, no longer logged)" - -struct OpenNoteSharedType - description String - - example default - description = "(sharing) Opened shared Paper doc (deprecated, no longer logged)" - -struct ReplayFileSharedLinkCreatedType - description String - - example default - description = "(sharing) Created shared link in Replay" - -struct ReplayFileSharedLinkModifiedType - description String - - example default - description = "(sharing) Modified shared link in Replay" - -struct ReplayProjectTeamAddType - description String - - example default - description = "(sharing) Added member to Replay Project" - -struct ReplayProjectTeamDeleteType - description String - - example default - description = "(sharing) Removed member from Replay Project" - -struct SfAddGroupType - description String - - example default - description = "(sharing) Added team to shared folder (deprecated, no longer logged)" - -struct SfAllowNonMembersToViewSharedLinksType - description String - - example default - description = "(sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged)" - -struct SfExternalInviteWarnType - description String - - example default - description = "(sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged)" - -struct SfFbInviteType - description String - - example default - description = "(sharing) Invited Facebook users to shared folder (deprecated, no longer logged)" - -struct SfFbInviteChangeRoleType - description String - - example default - description = "(sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged)" - -struct SfFbUninviteType - description String - - example default - description = "(sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged)" - -struct SfInviteGroupType - description String - - example default - description = "(sharing) Invited group to shared folder (deprecated, no longer logged)" - -struct SfTeamGrantAccessType - description String - - example default - description = "(sharing) Granted access to shared folder (deprecated, no longer logged)" - -struct SfTeamInviteType - description String - - example default - description = "(sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder')" - -struct SfTeamInviteChangeRoleType - description String - - example default - description = "(sharing) Changed team member's role in shared folder (deprecated, no longer logged)" - -struct SfTeamJoinType - description String - - example default - description = "(sharing) Joined team member's shared folder (deprecated, no longer logged)" - -struct SfTeamJoinFromOobLinkType - description String - - example default - description = "(sharing) Joined team member's shared folder from link (deprecated, no longer logged)" - -struct SfTeamUninviteType - description String - - example default - description = "(sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted')" - -struct SharedContentAddInviteesType - description String - - example default - description = "(sharing) Invited user to Dropbox and added them to shared file/folder" - -struct SharedContentAddLinkExpiryType - description String - - example default - description = "(sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged)" - -struct SharedContentAddLinkPasswordType - description String - - example default - description = "(sharing) Added password to link for shared file/folder (deprecated, no longer logged)" - -struct SharedContentAddMemberType - description String - - example default - description = "(sharing) Added users and/or groups to shared file/folder" - -struct SharedContentChangeDownloadsPolicyType - description String - - example default - description = "(sharing) Changed whether members can download shared file/folder (deprecated, no longer logged)" - -struct SharedContentChangeInviteeRoleType - description String - - example default - description = "(sharing) Changed access type of invitee to shared file/folder before invite was accepted" - -struct SharedContentChangeLinkAudienceType - description String - - example default - description = "(sharing) Changed link audience of shared file/folder (deprecated, no longer logged)" - -struct SharedContentChangeLinkExpiryType - description String - - example default - description = "(sharing) Changed link expiration of shared file/folder (deprecated, no longer logged)" - -struct SharedContentChangeLinkPasswordType - description String - - example default - description = "(sharing) Changed link password of shared file/folder (deprecated, no longer logged)" - -struct SharedContentChangeMemberRoleType - description String - - example default - description = "(sharing) Changed access type of shared file/folder member" - -struct SharedContentChangeViewerInfoPolicyType - description String - - example default - description = "(sharing) Changed whether members can see who viewed shared file/folder" - -struct SharedContentClaimInvitationType - description String - - example default - description = "(sharing) Acquired membership of shared file/folder by accepting invite" - -struct SharedContentCopyType - description String - - example default - description = "(sharing) Copied shared file/folder to own Dropbox" - -struct SharedContentDownloadType - description String - - example default - description = "(sharing) Downloaded shared file/folder" - -struct SharedContentRelinquishMembershipType - description String - - example default - description = "(sharing) Left shared file/folder" - -struct SharedContentRemoveInviteesType - description String - - example default - description = "(sharing) Removed invitee from shared file/folder before invite was accepted" - -struct SharedContentRemoveLinkExpiryType - description String - - example default - description = "(sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged)" - -struct SharedContentRemoveLinkPasswordType - description String - - example default - description = "(sharing) Removed link password of shared file/folder (deprecated, no longer logged)" - -struct SharedContentRemoveMemberType - description String - - example default - description = "(sharing) Removed user/group from shared file/folder" - -struct SharedContentRequestAccessType - description String - - example default - description = "(sharing) Requested access to shared file/folder" - -struct SharedContentRestoreInviteesType - description String - - example default - description = "(sharing) Restored shared file/folder invitees" - -struct SharedContentRestoreMemberType - description String - - example default - description = "(sharing) Restored users and/or groups to membership of shared file/folder" - -struct SharedContentUnshareType - description String - - example default - description = "(sharing) Unshared file/folder by clearing membership" - -struct SharedContentViewType - description String - - example default - description = "(sharing) Previewed shared file/folder" - -struct SharedFolderChangeLinkPolicyType - description String - - example default - description = "(sharing) Changed who can access shared folder via link" - -struct SharedFolderChangeMembersInheritancePolicyType - description String - - example default - description = "(sharing) Changed whether shared folder inherits members from parent folder" - -struct SharedFolderChangeMembersManagementPolicyType - description String - - example default - description = "(sharing) Changed who can add/remove members of shared folder" - -struct SharedFolderChangeMembersPolicyType - description String - - example default - description = "(sharing) Changed who can become member of shared folder" - -struct SharedFolderCreateType - description String - - example default - description = "(sharing) Created shared folder" - -struct SharedFolderDeclineInvitationType - description String - - example default - description = "(sharing) Declined team member's invite to shared folder" - -struct SharedFolderMountType - description String - - example default - description = "(sharing) Added shared folder to own Dropbox" - -struct SharedFolderNestType - description String - - example default - description = "(sharing) Changed parent of shared folder" - -struct SharedFolderTransferOwnershipType - description String - - example default - description = "(sharing) Transferred ownership of shared folder to another member" - -struct SharedFolderUnmountType - description String - - example default - description = "(sharing) Deleted shared folder from Dropbox" - -struct SharedLinkAddExpiryType - description String - - example default - description = "(sharing) Added shared link expiration date" - -struct SharedLinkChangeExpiryType - description String - - example default - description = "(sharing) Changed shared link expiration date" - -struct SharedLinkChangeVisibilityType - description String - - example default - description = "(sharing) Changed visibility of shared link" - -struct SharedLinkCopyType - description String - - example default - description = "(sharing) Added file/folder to Dropbox from shared link" - -struct SharedLinkCreateType - description String - - example default - description = "(sharing) Created shared link" - -struct SharedLinkDisableType - description String - - example default - description = "(sharing) Removed shared link" - -struct SharedLinkDownloadType - description String - - example default - description = "(sharing) Downloaded file/folder from shared link" - -struct SharedLinkRemoveExpiryType - description String - - example default - description = "(sharing) Removed shared link expiration date" - -struct SharedLinkSettingsAddExpirationType - description String - - example default - description = "(sharing) Added an expiration date to the shared link" - -struct SharedLinkSettingsAddPasswordType - description String - - example default - description = "(sharing) Added a password to the shared link" - -struct SharedLinkSettingsAllowDownloadDisabledType - description String - - example default - description = "(sharing) Disabled downloads" - -struct SharedLinkSettingsAllowDownloadEnabledType - description String - - example default - description = "(sharing) Enabled downloads" - -struct SharedLinkSettingsChangeAudienceType - description String - - example default - description = "(sharing) Changed the audience of the shared link" - -struct SharedLinkSettingsChangeExpirationType - description String - - example default - description = "(sharing) Changed the expiration date of the shared link" - -struct SharedLinkSettingsChangePasswordType - description String - - example default - description = "(sharing) Changed the password of the shared link" - -struct SharedLinkSettingsRemoveExpirationType - description String - - example default - description = "(sharing) Removed the expiration date from the shared link" - -struct SharedLinkSettingsRemovePasswordType - description String - - example default - description = "(sharing) Removed the password from the shared link" - -struct SharedLinkShareType - description String - - example default - description = "(sharing) Added members as audience of shared link" - -struct SharedLinkViewType - description String - - example default - description = "(sharing) Opened shared link" - -struct SharedNoteOpenedType - description String - - example default - description = "(sharing) Opened shared Paper doc (deprecated, no longer logged)" - -struct ShmodelDisableDownloadsType - description String - - example default - description = "(sharing) Disabled downloads for link (deprecated, no longer logged)" - -struct ShmodelEnableDownloadsType - description String - - example default - description = "(sharing) Enabled downloads for link (deprecated, no longer logged)" - -struct ShmodelGroupShareType - description String - - example default - description = "(sharing) Shared link with group (deprecated, no longer logged)" - -struct ShowcaseAccessGrantedType - description String - - example default - description = "(showcase) Granted access to showcase" - -struct ShowcaseAddMemberType - description String - - example default - description = "(showcase) Added member to showcase" - -struct ShowcaseArchivedType - description String - - example default - description = "(showcase) Archived showcase" - -struct ShowcaseCreatedType - description String - - example default - description = "(showcase) Created showcase" - -struct ShowcaseDeleteCommentType - description String - - example default - description = "(showcase) Deleted showcase comment" - -struct ShowcaseEditedType - description String - - example default - description = "(showcase) Edited showcase" - -struct ShowcaseEditCommentType - description String - - example default - description = "(showcase) Edited showcase comment" - -struct ShowcaseFileAddedType - description String - - example default - description = "(showcase) Added file to showcase" - -struct ShowcaseFileDownloadType - description String - - example default - description = "(showcase) Downloaded file from showcase" - -struct ShowcaseFileRemovedType - description String - - example default - description = "(showcase) Removed file from showcase" - -struct ShowcaseFileViewType - description String - - example default - description = "(showcase) Viewed file in showcase" - -struct ShowcasePermanentlyDeletedType - description String - - example default - description = "(showcase) Permanently deleted showcase" - -struct ShowcasePostCommentType - description String - - example default - description = "(showcase) Added showcase comment" - -struct ShowcaseRemoveMemberType - description String - - example default - description = "(showcase) Removed member from showcase" - -struct ShowcaseRenamedType - description String - - example default - description = "(showcase) Renamed showcase" - -struct ShowcaseRequestAccessType - description String - - example default - description = "(showcase) Requested access to showcase" - -struct ShowcaseResolveCommentType - description String - - example default - description = "(showcase) Resolved showcase comment" - -struct ShowcaseRestoredType - description String - - example default - description = "(showcase) Unarchived showcase" - -struct ShowcaseTrashedType - description String - - example default - description = "(showcase) Deleted showcase" - -struct ShowcaseTrashedDeprecatedType - description String - - example default - description = "(showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase')" - -struct ShowcaseUnresolveCommentType - description String - - example default - description = "(showcase) Unresolved showcase comment" - -struct ShowcaseUntrashedType - description String - - example default - description = "(showcase) Restored showcase" - -struct ShowcaseUntrashedDeprecatedType - description String - - example default - description = "(showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase')" - -struct ShowcaseViewType - description String - - example default - description = "(showcase) Viewed showcase" - -struct SsoAddCertType - description String - - example default - description = "(sso) Added X.509 certificate for SSO" - -struct SsoAddLoginUrlType - description String - - example default - description = "(sso) Added sign-in URL for SSO" - -struct SsoAddLogoutUrlType - description String - - example default - description = "(sso) Added sign-out URL for SSO" - -struct SsoChangeCertType - description String - - example default - description = "(sso) Changed X.509 certificate for SSO" - -struct SsoChangeLoginUrlType - description String - - example default - description = "(sso) Changed sign-in URL for SSO" - -struct SsoChangeLogoutUrlType - description String - - example default - description = "(sso) Changed sign-out URL for SSO" - -struct SsoChangeSamlIdentityModeType - description String - - example default - description = "(sso) Changed SAML identity mode for SSO" - -struct SsoRemoveCertType - description String - - example default - description = "(sso) Removed X.509 certificate for SSO" - -struct SsoRemoveLoginUrlType - description String - - example default - description = "(sso) Removed sign-in URL for SSO" - -struct SsoRemoveLogoutUrlType - description String - - example default - description = "(sso) Removed sign-out URL for SSO" - -struct TeamFolderChangeStatusType - description String - - example default - description = "(team_folders) Changed archival status of team folder" - -struct TeamFolderCreateType - description String - - example default - description = "(team_folders) Created team folder in active status" - -struct TeamFolderDowngradeType - description String - - example default - description = "(team_folders) Downgraded team folder to regular shared folder" - -struct TeamFolderPermanentlyDeleteType - description String - - example default - description = "(team_folders) Permanently deleted archived team folder" - -struct TeamFolderRenameType - description String - - example default - description = "(team_folders) Renamed active/archived team folder" - -struct TeamSelectiveSyncSettingsChangedType - description String - - example default - description = "(team_folders) Changed sync default" - -struct AccountCaptureChangePolicyType - description String - - example default - description = "(team_policies) Changed account capture setting on team domain" - -struct AdminEmailRemindersChangedType - description String - - example default - description = "(team_policies) Changed admin reminder settings for requests to join the team" - -struct AllowDownloadDisabledType - description String - - example default - description = "(team_policies) Disabled downloads (deprecated, no longer logged)" - -struct AllowDownloadEnabledType - description String - - example default - description = "(team_policies) Enabled downloads (deprecated, no longer logged)" - -struct AppPermissionsChangedType - description String - - example default - description = "(team_policies) Changed app permissions" - -struct CameraUploadsPolicyChangedType - description String - - example default - description = "(team_policies) Changed camera uploads setting for team" - -struct CaptureTranscriptPolicyChangedType - description String - - example default - description = "(team_policies) Changed Capture transcription policy for team" - -struct ClassificationChangePolicyType - description String - - example default - description = "(team_policies) Changed classification policy for team" - -struct ComputerBackupPolicyChangedType - description String - - example default - description = "(team_policies) Changed computer backup policy for team" - -struct ContentAdministrationPolicyChangedType - description String - - example default - description = "(team_policies) Changed content management setting" - -struct DataPlacementRestrictionChangePolicyType - description String - - example default - description = "(team_policies) Set restrictions on data center locations where team data resides" - -struct DataPlacementRestrictionSatisfyPolicyType - description String - - example default - description = "(team_policies) Completed restrictions on data center locations where team data resides" - -struct DeviceApprovalsAddExceptionType - description String - - example default - description = "(team_policies) Added members to device approvals exception list" - -struct DeviceApprovalsChangeDesktopPolicyType - description String - - example default - description = "(team_policies) Set/removed limit on number of computers member can link to team Dropbox account" - -struct DeviceApprovalsChangeMobilePolicyType - description String - - example default - description = "(team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account" - -struct DeviceApprovalsChangeOverageActionType - description String - - example default - description = "(team_policies) Changed device approvals setting when member is over limit" - -struct DeviceApprovalsChangeUnlinkActionType - description String - - example default - description = "(team_policies) Changed device approvals setting when member unlinks approved device" - -struct DeviceApprovalsRemoveExceptionType - description String - - example default - description = "(team_policies) Removed members from device approvals exception list" - -struct DirectoryRestrictionsAddMembersType - description String - - example default - description = "(team_policies) Added members to directory restrictions list" - -struct DirectoryRestrictionsRemoveMembersType - description String - - example default - description = "(team_policies) Removed members from directory restrictions list" - -struct DropboxPasswordsPolicyChangedType - description String - - example default - description = "(team_policies) Changed Dropbox Passwords policy for team" - -struct EmailIngestPolicyChangedType - description String - - example default - description = "(team_policies) Changed email to Dropbox policy for team" - -struct EmmAddExceptionType - description String - - example default - description = "(team_policies) Added members to EMM exception list" - -struct EmmChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled enterprise mobility management for members" - -struct EmmRemoveExceptionType - description String - - example default - description = "(team_policies) Removed members from EMM exception list" - -struct ExtendedVersionHistoryChangePolicyType - description String - - example default - description = "(team_policies) Accepted/opted out of extended version history" - -struct ExternalDriveBackupPolicyChangedType - description String - - example default - description = "(team_policies) Changed external drive backup policy for team" - -struct FileCommentsChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled commenting on team files" - -struct FileLockingPolicyChangedType - description String - - example default - description = "(team_policies) Changed file locking policy for team" - -struct FileProviderMigrationPolicyChangedType - description String - - example default - description = "(team_policies) Changed File Provider Migration policy for team" - -struct FileRequestsChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled file requests" - -struct FileRequestsEmailsEnabledType - description String - - example default - description = "(team_policies) Enabled file request emails for everyone (deprecated, no longer logged)" - -struct FileRequestsEmailsRestrictedToTeamOnlyType - description String - - example default - description = "(team_policies) Enabled file request emails for team (deprecated, no longer logged)" - -struct FileTransfersPolicyChangedType - description String - - example default - description = "(team_policies) Changed file transfers policy for team" - -struct FolderLinkRestrictionPolicyChangedType - description String - - example default - description = "(team_policies) Changed folder link restrictions policy for team" - -struct GoogleSsoChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled Google single sign-on for team" - -struct GroupUserManagementChangePolicyType - description String - - example default - description = "(team_policies) Changed who can create groups" - -struct IntegrationPolicyChangedType - description String - - example default - description = "(team_policies) Changed integration policy for team" - -struct InviteAcceptanceEmailPolicyChangedType - description String - - example default - description = "(team_policies) Changed invite accept email policy for team" - -struct MemberRequestsChangePolicyType - description String - - example default - description = "(team_policies) Changed whether users can find team when not invited" - -struct MemberSendInvitePolicyChangedType - description String - - example default - description = "(team_policies) Changed member send invite policy for team" - -struct MemberSpaceLimitsAddExceptionType - description String - - example default - description = "(team_policies) Added members to member space limit exception list" - -struct MemberSpaceLimitsChangeCapsTypePolicyType - description String - - example default - description = "(team_policies) Changed member space limit type for team" - -struct MemberSpaceLimitsChangePolicyType - description String - - example default - description = "(team_policies) Changed team default member space limit" - -struct MemberSpaceLimitsRemoveExceptionType - description String - - example default - description = "(team_policies) Removed members from member space limit exception list" - -struct MemberSuggestionsChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled option for team members to suggest people to add to team" - -struct MicrosoftOfficeAddinChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled Microsoft Office add-in" - -struct NetworkControlChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled network control" - -struct PaperChangeDeploymentPolicyType - description String - - example default - description = "(team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members" - -struct PaperChangeMemberLinkPolicyType - description String - - example default - description = "(team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged)" - -struct PaperChangeMemberPolicyType - description String - - example default - description = "(team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default" - -struct PaperChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled Dropbox Paper for team" - -struct PaperDefaultFolderPolicyChangedType - description String - - example default - description = "(team_policies) Changed Paper Default Folder Policy setting for team" - -struct PaperDesktopPolicyChangedType - description String - - example default - description = "(team_policies) Enabled/disabled Paper Desktop for team" - -struct PaperEnabledUsersGroupAdditionType - description String - - example default - description = "(team_policies) Added users to Paper-enabled users list" - -struct PaperEnabledUsersGroupRemovalType - description String - - example default - description = "(team_policies) Removed users from Paper-enabled users list" - -struct PasswordStrengthRequirementsChangePolicyType - description String - - example default - description = "(team_policies) Changed team password strength requirements" - -struct PermanentDeleteChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled ability of team members to permanently delete content" - -struct ResellerSupportChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled reseller support" - -struct RewindPolicyChangedType - description String - - example default - description = "(team_policies) Changed Rewind policy for team" - -struct SendForSignaturePolicyChangedType - description String - - example default - description = "(team_policies) Changed send for signature policy for team" - -struct SharingChangeFolderJoinPolicyType - description String - - example default - description = "(team_policies) Changed whether team members can join shared folders owned outside team" - -struct SharingChangeLinkAllowChangeExpirationPolicyType - description String - - example default - description = "(team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team" - -struct SharingChangeLinkDefaultExpirationPolicyType - description String - - example default - description = "(team_policies) Changed the default expiration for the links shared outside of the team" - -struct SharingChangeLinkEnforcePasswordPolicyType - description String - - example default - description = "(team_policies) Changed the password requirement for the links shared outside of the team" - -struct SharingChangeLinkPolicyType - description String - - example default - description = "(team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default" - -struct SharingChangeMemberPolicyType - description String - - example default - description = "(team_policies) Changed whether members can share files/folders outside team" - -struct ShowcaseChangeDownloadPolicyType - description String - - example default - description = "(team_policies) Enabled/disabled downloading files from Dropbox Showcase for team" - -struct ShowcaseChangeEnabledPolicyType - description String - - example default - description = "(team_policies) Enabled/disabled Dropbox Showcase for team" - -struct ShowcaseChangeExternalSharingPolicyType - description String - - example default - description = "(team_policies) Enabled/disabled sharing Dropbox Showcase externally for team" - -struct SmarterSmartSyncPolicyChangedType - description String - - example default - description = "(team_policies) Changed automatic Smart Sync setting for team" - -struct SmartSyncChangePolicyType - description String - - example default - description = "(team_policies) Changed default Smart Sync setting for team members" - -struct SmartSyncNotOptOutType - description String - - example default - description = "(team_policies) Opted team into Smart Sync" - -struct SmartSyncOptOutType - description String - - example default - description = "(team_policies) Opted team out of Smart Sync" - -struct SsoChangePolicyType - description String - - example default - description = "(team_policies) Changed single sign-on setting for team" - -struct TeamBrandingPolicyChangedType - description String - - example default - description = "(team_policies) Changed team branding policy for team" - -struct TeamExtensionsPolicyChangedType - description String - - example default - description = "(team_policies) Changed App Integrations setting for team" - -struct TeamSelectiveSyncPolicyChangedType - description String - - example default - description = "(team_policies) Enabled/disabled Team Selective Sync for team" - -struct TeamSharingWhitelistSubjectsChangedType - description String - - example default - description = "(team_policies) Edited the approved list for sharing externally" - -struct TfaAddExceptionType - description String - - example default - description = "(team_policies) Added members to two factor authentication exception list" - -struct TfaChangePolicyType - description String - - example default - description = "(team_policies) Changed two-step verification setting for team" - -struct TfaRemoveExceptionType - description String - - example default - description = "(team_policies) Removed members from two factor authentication exception list" - -struct TwoAccountChangePolicyType - description String - - example default - description = "(team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer" - -struct ViewerInfoPolicyChangedType - description String - - example default - description = "(team_policies) Changed team policy for viewer info" - -struct WatermarkingPolicyChangedType - description String - - example default - description = "(team_policies) Changed watermarking policy for team" - -struct WebSessionsChangeActiveSessionLimitType - description String - - example default - description = "(team_policies) Changed limit on active sessions per member" - -struct WebSessionsChangeFixedLengthPolicyType - description String - - example default - description = "(team_policies) Changed how long members can stay signed in to Dropbox.com" - -struct WebSessionsChangeIdleLengthPolicyType - description String - - example default - description = "(team_policies) Changed how long team members can be idle while signed in to Dropbox.com" - -struct DataResidencyMigrationRequestSuccessfulType - description String - - example default - description = "(team_profile) Requested data residency migration for team data" - -struct DataResidencyMigrationRequestUnsuccessfulType - description String - - example default - description = "(team_profile) Request for data residency migration for team data has failed" - -struct TeamMergeFromType - description String - - example default - description = "(team_profile) Merged another team into this team" - -struct TeamMergeToType - description String - - example default - description = "(team_profile) Merged this team into another team" - -struct TeamProfileAddBackgroundType - description String - - example default - description = "(team_profile) Added team background to display on shared link headers" - -struct TeamProfileAddLogoType - description String - - example default - description = "(team_profile) Added team logo to display on shared link headers" - -struct TeamProfileChangeBackgroundType - description String - - example default - description = "(team_profile) Changed team background displayed on shared link headers" - -struct TeamProfileChangeDefaultLanguageType - description String - - example default - description = "(team_profile) Changed default language for team" - -struct TeamProfileChangeLogoType - description String - - example default - description = "(team_profile) Changed team logo displayed on shared link headers" - -struct TeamProfileChangeNameType - description String - - example default - description = "(team_profile) Changed team name" - -struct TeamProfileRemoveBackgroundType - description String - - example default - description = "(team_profile) Removed team background displayed on shared link headers" - -struct TeamProfileRemoveLogoType - description String - - example default - description = "(team_profile) Removed team logo displayed on shared link headers" - -struct TfaAddBackupPhoneType - description String - - example default - description = "(tfa) Added backup phone for two-step verification" - -struct TfaAddSecurityKeyType - description String - - example default - description = "(tfa) Added security key for two-step verification" - -struct TfaChangeBackupPhoneType - description String - - example default - description = "(tfa) Changed backup phone for two-step verification" - -struct TfaChangeStatusType - description String - - example default - description = "(tfa) Enabled/disabled/changed two-step verification setting" - -struct TfaRemoveBackupPhoneType - description String - - example default - description = "(tfa) Removed backup phone for two-step verification" - -struct TfaRemoveSecurityKeyType - description String - - example default - description = "(tfa) Removed security key for two-step verification" - -struct TfaResetType - description String - - example default - description = "(tfa) Reset two-step verification for team member" - -struct ChangedEnterpriseAdminRoleType - description String - - example default - description = "(trusted_teams) Changed enterprise admin role" - -struct ChangedEnterpriseConnectedTeamStatusType - description String - - example default - description = "(trusted_teams) Changed enterprise-connected team status" - -struct EndedEnterpriseAdminSessionType - description String - - example default - description = "(trusted_teams) Ended enterprise admin session" - -struct EndedEnterpriseAdminSessionDeprecatedType - description String - - example default - description = "(trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session')" - -struct EnterpriseSettingsLockingType - description String - - example default - description = "(trusted_teams) Changed who can update a setting" - -struct GuestAdminChangeStatusType - description String - - example default - description = "(trusted_teams) Changed guest team admin status" - -struct StartedEnterpriseAdminSessionType - description String - - example default - description = "(trusted_teams) Started enterprise admin session" - -struct TeamMergeRequestAcceptedType - description String - - example default - description = "(trusted_teams) Accepted a team merge request" - -struct TeamMergeRequestAcceptedShownToPrimaryTeamType - description String - - example default - description = "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" - -struct TeamMergeRequestAcceptedShownToSecondaryTeamType - description String - - example default - description = "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" - -struct TeamMergeRequestAutoCanceledType - description String - - example default - description = "(trusted_teams) Automatically canceled team merge request" - -struct TeamMergeRequestCanceledType - description String - - example default - description = "(trusted_teams) Canceled a team merge request" - -struct TeamMergeRequestCanceledShownToPrimaryTeamType - description String - - example default - description = "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" - -struct TeamMergeRequestCanceledShownToSecondaryTeamType - description String - - example default - description = "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" - -struct TeamMergeRequestExpiredType - description String - - example default - description = "(trusted_teams) Team merge request expired" - -struct TeamMergeRequestExpiredShownToPrimaryTeamType - description String - - example default - description = "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" - -struct TeamMergeRequestExpiredShownToSecondaryTeamType - description String - - example default - description = "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" - -struct TeamMergeRequestRejectedShownToPrimaryTeamType - description String - - example default - description = "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" - -struct TeamMergeRequestRejectedShownToSecondaryTeamType - description String - - example default - description = "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" - -struct TeamMergeRequestReminderType - description String - - example default - description = "(trusted_teams) Sent a team merge request reminder" - -struct TeamMergeRequestReminderShownToPrimaryTeamType - description String - - example default - description = "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" - -struct TeamMergeRequestReminderShownToSecondaryTeamType - description String - - example default - description = "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" - -struct TeamMergeRequestRevokedType - description String - - example default - description = "(trusted_teams) Canceled the team merge" - -struct TeamMergeRequestSentShownToPrimaryTeamType - description String - - example default - description = "(trusted_teams) Requested to merge their Dropbox team into yours" - -struct TeamMergeRequestSentShownToSecondaryTeamType - description String - - example default - description = "(trusted_teams) Requested to merge your team into another Dropbox team" - - -union EventType - "The type of the event with description." - - admin_alerting_alert_state_changed AdminAlertingAlertStateChangedType - "(admin_alerting) Changed an alert state" - admin_alerting_changed_alert_config AdminAlertingChangedAlertConfigType - "(admin_alerting) Changed an alert setting" - admin_alerting_triggered_alert AdminAlertingTriggeredAlertType - "(admin_alerting) Triggered security alert" - ransomware_restore_process_completed RansomwareRestoreProcessCompletedType - "(admin_alerting) Completed ransomware restore process" - ransomware_restore_process_started RansomwareRestoreProcessStartedType - "(admin_alerting) Started ransomware restore process" - app_blocked_by_permissions AppBlockedByPermissionsType - "(apps) Failed to connect app for member" - app_link_team AppLinkTeamType - "(apps) Linked app for team" - app_link_user AppLinkUserType - "(apps) Linked app for member" - app_unlink_team AppUnlinkTeamType - "(apps) Unlinked app for team" - app_unlink_user AppUnlinkUserType - "(apps) Unlinked app for member" - integration_connected IntegrationConnectedType - "(apps) Connected integration for member" - integration_disconnected IntegrationDisconnectedType - "(apps) Disconnected integration for member" - file_add_comment FileAddCommentType - "(comments) Added file comment" - file_change_comment_subscription FileChangeCommentSubscriptionType - "(comments) Subscribed to or unsubscribed from comment notifications for file" - file_delete_comment FileDeleteCommentType - "(comments) Deleted file comment" - file_edit_comment FileEditCommentType - "(comments) Edited file comment" - file_like_comment FileLikeCommentType - "(comments) Liked file comment (deprecated, no longer logged)" - file_resolve_comment FileResolveCommentType - "(comments) Resolved file comment" - file_unlike_comment FileUnlikeCommentType - "(comments) Unliked file comment (deprecated, no longer logged)" - file_unresolve_comment FileUnresolveCommentType - "(comments) Unresolved file comment" - governance_policy_add_folders GovernancePolicyAddFoldersType - "(data_governance) Added folders to policy" - governance_policy_add_folder_failed GovernancePolicyAddFolderFailedType - "(data_governance) Couldn't add a folder to a policy" - governance_policy_content_disposed GovernancePolicyContentDisposedType - "(data_governance) Content disposed" - governance_policy_create GovernancePolicyCreateType - "(data_governance) Activated a new policy" - governance_policy_delete GovernancePolicyDeleteType - "(data_governance) Deleted a policy" - governance_policy_edit_details GovernancePolicyEditDetailsType - "(data_governance) Edited policy" - governance_policy_edit_duration GovernancePolicyEditDurationType - "(data_governance) Changed policy duration" - governance_policy_export_created GovernancePolicyExportCreatedType - "(data_governance) Created a policy download" - governance_policy_export_removed GovernancePolicyExportRemovedType - "(data_governance) Removed a policy download" - governance_policy_remove_folders GovernancePolicyRemoveFoldersType - "(data_governance) Removed folders from policy" - governance_policy_report_created GovernancePolicyReportCreatedType - "(data_governance) Created a summary report for a policy" - governance_policy_zip_part_downloaded GovernancePolicyZipPartDownloadedType - "(data_governance) Downloaded content from a policy" - legal_holds_activate_a_hold LegalHoldsActivateAHoldType - "(data_governance) Activated a hold" - legal_holds_add_members LegalHoldsAddMembersType - "(data_governance) Added members to a hold" - legal_holds_change_hold_details LegalHoldsChangeHoldDetailsType - "(data_governance) Edited details for a hold" - legal_holds_change_hold_name LegalHoldsChangeHoldNameType - "(data_governance) Renamed a hold" - legal_holds_export_a_hold LegalHoldsExportAHoldType - "(data_governance) Exported hold" - legal_holds_export_cancelled LegalHoldsExportCancelledType - "(data_governance) Canceled export for a hold" - legal_holds_export_downloaded LegalHoldsExportDownloadedType - "(data_governance) Downloaded export for a hold" - legal_holds_export_removed LegalHoldsExportRemovedType - "(data_governance) Removed export for a hold" - legal_holds_release_a_hold LegalHoldsReleaseAHoldType - "(data_governance) Released a hold" - legal_holds_remove_members LegalHoldsRemoveMembersType - "(data_governance) Removed members from a hold" - legal_holds_report_a_hold LegalHoldsReportAHoldType - "(data_governance) Created a summary report for a hold" - device_change_ip_desktop DeviceChangeIpDesktopType - "(devices) Changed IP address associated with active desktop session" - device_change_ip_mobile DeviceChangeIpMobileType - "(devices) Changed IP address associated with active mobile session" - device_change_ip_web DeviceChangeIpWebType - "(devices) Changed IP address associated with active web session" - device_delete_on_unlink_fail DeviceDeleteOnUnlinkFailType - "(devices) Failed to delete all files from unlinked device" - device_delete_on_unlink_success DeviceDeleteOnUnlinkSuccessType - "(devices) Deleted all files from unlinked device" - device_link_fail DeviceLinkFailType - "(devices) Failed to link device" - device_link_success DeviceLinkSuccessType - "(devices) Linked device" - device_management_disabled DeviceManagementDisabledType - "(devices) Disabled device management (deprecated, no longer logged)" - device_management_enabled DeviceManagementEnabledType - "(devices) Enabled device management (deprecated, no longer logged)" - device_sync_backup_status_changed DeviceSyncBackupStatusChangedType - "(devices) Enabled/disabled backup for computer" - device_unlink DeviceUnlinkType - "(devices) Disconnected device" - dropbox_passwords_exported DropboxPasswordsExportedType - "(devices) Exported passwords" - dropbox_passwords_new_device_enrolled DropboxPasswordsNewDeviceEnrolledType - "(devices) Enrolled new Dropbox Passwords device" - emm_refresh_auth_token EmmRefreshAuthTokenType - "(devices) Refreshed auth token used for setting up EMM" - external_drive_backup_eligibility_status_checked ExternalDriveBackupEligibilityStatusCheckedType - "(devices) Checked external drive backup eligibility status" - external_drive_backup_status_changed ExternalDriveBackupStatusChangedType - "(devices) Modified external drive backup" - account_capture_change_availability AccountCaptureChangeAvailabilityType - "(domains) Granted/revoked option to enable account capture on team domains" - account_capture_migrate_account AccountCaptureMigrateAccountType - "(domains) Account-captured user migrated account to team" - account_capture_notification_emails_sent AccountCaptureNotificationEmailsSentType - "(domains) Sent account capture email to all unmanaged members" - account_capture_relinquish_account AccountCaptureRelinquishAccountType - "(domains) Account-captured user changed account email to personal email" - disabled_domain_invites DisabledDomainInvitesType - "(domains) Disabled domain invites (deprecated, no longer logged)" - domain_invites_approve_request_to_join_team DomainInvitesApproveRequestToJoinTeamType - "(domains) Approved user's request to join team" - domain_invites_decline_request_to_join_team DomainInvitesDeclineRequestToJoinTeamType - "(domains) Declined user's request to join team" - domain_invites_email_existing_users DomainInvitesEmailExistingUsersType - "(domains) Sent domain invites to existing domain accounts (deprecated, no longer logged)" - domain_invites_request_to_join_team DomainInvitesRequestToJoinTeamType - "(domains) Requested to join team" - domain_invites_set_invite_new_user_pref_to_no DomainInvitesSetInviteNewUserPrefToNoType - "(domains) Disabled \"Automatically invite new users\" (deprecated, no longer logged)" - domain_invites_set_invite_new_user_pref_to_yes DomainInvitesSetInviteNewUserPrefToYesType - "(domains) Enabled \"Automatically invite new users\" (deprecated, no longer logged)" - domain_verification_add_domain_fail DomainVerificationAddDomainFailType - "(domains) Failed to verify team domain" - domain_verification_add_domain_success DomainVerificationAddDomainSuccessType - "(domains) Verified team domain" - domain_verification_remove_domain DomainVerificationRemoveDomainType - "(domains) Removed domain from list of verified team domains" - enabled_domain_invites EnabledDomainInvitesType - "(domains) Enabled domain invites (deprecated, no longer logged)" - team_encryption_key_cancel_key_deletion TeamEncryptionKeyCancelKeyDeletionType - "(encryption) Canceled team encryption key deletion" - team_encryption_key_create_key TeamEncryptionKeyCreateKeyType - "(encryption) Created team encryption key" - team_encryption_key_delete_key TeamEncryptionKeyDeleteKeyType - "(encryption) Deleted team encryption key" - team_encryption_key_disable_key TeamEncryptionKeyDisableKeyType - "(encryption) Disabled team encryption key" - team_encryption_key_enable_key TeamEncryptionKeyEnableKeyType - "(encryption) Enabled team encryption key" - team_encryption_key_rotate_key TeamEncryptionKeyRotateKeyType - "(encryption) Rotated team encryption key (deprecated, no longer logged)" - team_encryption_key_schedule_key_deletion TeamEncryptionKeyScheduleKeyDeletionType - "(encryption) Scheduled encryption key deletion" - apply_naming_convention ApplyNamingConventionType - "(file_operations) Applied naming convention" - create_folder CreateFolderType - "(file_operations) Created folders (deprecated, no longer logged)" - file_add FileAddType - "(file_operations) Added files and/or folders" - file_add_from_automation FileAddFromAutomationType - "(file_operations) Added files and/or folders from automation" - file_copy FileCopyType - "(file_operations) Copied files and/or folders" - file_delete FileDeleteType - "(file_operations) Deleted files and/or folders" - file_download FileDownloadType - "(file_operations) Downloaded files and/or folders" - file_edit FileEditType - "(file_operations) Edited files" - file_get_copy_reference FileGetCopyReferenceType - "(file_operations) Created copy reference to file/folder" - file_locking_lock_status_changed FileLockingLockStatusChangedType - "(file_operations) Locked/unlocked editing for a file" - file_move FileMoveType - "(file_operations) Moved files and/or folders" - file_permanently_delete FilePermanentlyDeleteType - "(file_operations) Permanently deleted files and/or folders" - file_preview FilePreviewType - "(file_operations) Previewed files and/or folders" - file_rename FileRenameType - "(file_operations) Renamed files and/or folders" - file_restore FileRestoreType - "(file_operations) Restored deleted files and/or folders" - file_revert FileRevertType - "(file_operations) Reverted files to previous version" - file_rollback_changes FileRollbackChangesType - "(file_operations) Rolled back file actions" - file_save_copy_reference FileSaveCopyReferenceType - "(file_operations) Saved file/folder using copy reference" - folder_overview_description_changed FolderOverviewDescriptionChangedType - "(file_operations) Updated folder overview" - folder_overview_item_pinned FolderOverviewItemPinnedType - "(file_operations) Pinned item to folder overview" - folder_overview_item_unpinned FolderOverviewItemUnpinnedType - "(file_operations) Unpinned item from folder overview" - object_label_added ObjectLabelAddedType - "(file_operations) Added a label" - object_label_removed ObjectLabelRemovedType - "(file_operations) Removed a label" - object_label_updated_value ObjectLabelUpdatedValueType - "(file_operations) Updated a label's value" - organize_folder_with_tidy OrganizeFolderWithTidyType - "(file_operations) Organized a folder with multi-file organize" - replay_file_delete ReplayFileDeleteType - "(file_operations) Deleted files in Replay" - rewind_folder RewindFolderType - "(file_operations) Rewound a folder" - undo_naming_convention UndoNamingConventionType - "(file_operations) Reverted naming convention" - undo_organize_folder_with_tidy UndoOrganizeFolderWithTidyType - "(file_operations) Removed multi-file organize" - user_tags_added UserTagsAddedType - "(file_operations) Tagged a file" - user_tags_removed UserTagsRemovedType - "(file_operations) Removed tags" - email_ingest_receive_file EmailIngestReceiveFileType - "(file_requests) Received files via Email to Dropbox" - file_request_change FileRequestChangeType - "(file_requests) Changed file request" - file_request_close FileRequestCloseType - "(file_requests) Closed file request" - file_request_create FileRequestCreateType - "(file_requests) Created file request" - file_request_delete FileRequestDeleteType - "(file_requests) Delete file request" - file_request_receive_file FileRequestReceiveFileType - "(file_requests) Received files for file request" - group_add_external_id GroupAddExternalIdType - "(groups) Added external ID for group" - group_add_member GroupAddMemberType - "(groups) Added team members to group" - group_change_external_id GroupChangeExternalIdType - "(groups) Changed external ID for group" - group_change_management_type GroupChangeManagementTypeType - "(groups) Changed group management type" - group_change_member_role GroupChangeMemberRoleType - "(groups) Changed manager permissions of group member" - group_create GroupCreateType - "(groups) Created group" - group_delete GroupDeleteType - "(groups) Deleted group" - group_description_updated GroupDescriptionUpdatedType - "(groups) Updated group (deprecated, no longer logged)" - group_join_policy_updated GroupJoinPolicyUpdatedType - "(groups) Updated group join policy (deprecated, no longer logged)" - group_moved GroupMovedType - "(groups) Moved group (deprecated, no longer logged)" - group_remove_external_id GroupRemoveExternalIdType - "(groups) Removed external ID for group" - group_remove_member GroupRemoveMemberType - "(groups) Removed team members from group" - group_rename GroupRenameType - "(groups) Renamed group" - account_lock_or_unlocked AccountLockOrUnlockedType - "(logins) Unlocked/locked account after failed sign in attempts" - emm_error EmmErrorType - "(logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in')" - guest_admin_signed_in_via_trusted_teams GuestAdminSignedInViaTrustedTeamsType - "(logins) Started trusted team admin session" - guest_admin_signed_out_via_trusted_teams GuestAdminSignedOutViaTrustedTeamsType - "(logins) Ended trusted team admin session" - login_fail LoginFailType - "(logins) Failed to sign in" - login_success LoginSuccessType - "(logins) Signed in" - logout LogoutType - "(logins) Signed out" - reseller_support_session_end ResellerSupportSessionEndType - "(logins) Ended reseller support session" - reseller_support_session_start ResellerSupportSessionStartType - "(logins) Started reseller support session" - sign_in_as_session_end SignInAsSessionEndType - "(logins) Ended admin sign-in-as session" - sign_in_as_session_start SignInAsSessionStartType - "(logins) Started admin sign-in-as session" - sso_error SsoErrorType - "(logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in')" - backup_admin_invitation_sent BackupAdminInvitationSentType - "(members) Invited members to activate Backup" - backup_invitation_opened BackupInvitationOpenedType - "(members) Opened Backup invite" - create_team_invite_link CreateTeamInviteLinkType - "(members) Created team invite link" - delete_team_invite_link DeleteTeamInviteLinkType - "(members) Deleted team invite link" - member_add_external_id MemberAddExternalIdType - "(members) Added an external ID for team member" - member_add_name MemberAddNameType - "(members) Added team member name" - member_change_admin_role MemberChangeAdminRoleType - "(members) Changed team member admin role" - member_change_email MemberChangeEmailType - "(members) Changed team member email" - member_change_external_id MemberChangeExternalIdType - "(members) Changed the external ID for team member" - member_change_membership_type MemberChangeMembershipTypeType - "(members) Changed membership type (limited/full) of member (deprecated, no longer logged)" - member_change_name MemberChangeNameType - "(members) Changed team member name" - member_change_reseller_role MemberChangeResellerRoleType - "(members) Changed team member reseller role" - member_change_status MemberChangeStatusType - "(members) Changed member status (invited, joined, suspended, etc.)" - member_delete_manual_contacts MemberDeleteManualContactsType - "(members) Cleared manually added contacts" - member_delete_profile_photo MemberDeleteProfilePhotoType - "(members) Deleted team member profile photo" - member_permanently_delete_account_contents MemberPermanentlyDeleteAccountContentsType - "(members) Permanently deleted contents of deleted team member account" - member_remove_external_id MemberRemoveExternalIdType - "(members) Removed the external ID for team member" - member_set_profile_photo MemberSetProfilePhotoType - "(members) Set team member profile photo" - member_space_limits_add_custom_quota MemberSpaceLimitsAddCustomQuotaType - "(members) Set custom member space limit" - member_space_limits_change_custom_quota MemberSpaceLimitsChangeCustomQuotaType - "(members) Changed custom member space limit" - member_space_limits_change_status MemberSpaceLimitsChangeStatusType - "(members) Changed space limit status" - member_space_limits_remove_custom_quota MemberSpaceLimitsRemoveCustomQuotaType - "(members) Removed custom member space limit" - member_suggest MemberSuggestType - "(members) Suggested person to add to team" - member_transfer_account_contents MemberTransferAccountContentsType - "(members) Transferred contents of deleted member account to another member" - pending_secondary_email_added PendingSecondaryEmailAddedType - "(members) Added pending secondary email" - secondary_email_deleted SecondaryEmailDeletedType - "(members) Deleted secondary email" - secondary_email_verified SecondaryEmailVerifiedType - "(members) Verified secondary email" - secondary_mails_policy_changed SecondaryMailsPolicyChangedType - "(members) Secondary mails policy changed" - binder_add_page BinderAddPageType - "(paper) Added Binder page (deprecated, replaced by 'Edited files')" - binder_add_section BinderAddSectionType - "(paper) Added Binder section (deprecated, replaced by 'Edited files')" - binder_remove_page BinderRemovePageType - "(paper) Removed Binder page (deprecated, replaced by 'Edited files')" - binder_remove_section BinderRemoveSectionType - "(paper) Removed Binder section (deprecated, replaced by 'Edited files')" - binder_rename_page BinderRenamePageType - "(paper) Renamed Binder page (deprecated, replaced by 'Edited files')" - binder_rename_section BinderRenameSectionType - "(paper) Renamed Binder section (deprecated, replaced by 'Edited files')" - binder_reorder_page BinderReorderPageType - "(paper) Reordered Binder page (deprecated, replaced by 'Edited files')" - binder_reorder_section BinderReorderSectionType - "(paper) Reordered Binder section (deprecated, replaced by 'Edited files')" - paper_content_add_member PaperContentAddMemberType - "(paper) Added users and/or groups to Paper doc/folder" - paper_content_add_to_folder PaperContentAddToFolderType - "(paper) Added Paper doc/folder to folder" - paper_content_archive PaperContentArchiveType - "(paper) Archived Paper doc/folder" - paper_content_create PaperContentCreateType - "(paper) Created Paper doc/folder" - paper_content_permanently_delete PaperContentPermanentlyDeleteType - "(paper) Permanently deleted Paper doc/folder" - paper_content_remove_from_folder PaperContentRemoveFromFolderType - "(paper) Removed Paper doc/folder from folder" - paper_content_remove_member PaperContentRemoveMemberType - "(paper) Removed users and/or groups from Paper doc/folder" - paper_content_rename PaperContentRenameType - "(paper) Renamed Paper doc/folder" - paper_content_restore PaperContentRestoreType - "(paper) Restored archived Paper doc/folder" - paper_doc_add_comment PaperDocAddCommentType - "(paper) Added Paper doc comment" - paper_doc_change_member_role PaperDocChangeMemberRoleType - "(paper) Changed member permissions for Paper doc" - paper_doc_change_sharing_policy PaperDocChangeSharingPolicyType - "(paper) Changed sharing setting for Paper doc" - paper_doc_change_subscription PaperDocChangeSubscriptionType - "(paper) Followed/unfollowed Paper doc" - paper_doc_deleted PaperDocDeletedType - "(paper) Archived Paper doc (deprecated, no longer logged)" - paper_doc_delete_comment PaperDocDeleteCommentType - "(paper) Deleted Paper doc comment" - paper_doc_download PaperDocDownloadType - "(paper) Downloaded Paper doc in specific format" - paper_doc_edit PaperDocEditType - "(paper) Edited Paper doc" - paper_doc_edit_comment PaperDocEditCommentType - "(paper) Edited Paper doc comment" - paper_doc_followed PaperDocFollowedType - "(paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc')" - paper_doc_mention PaperDocMentionType - "(paper) Mentioned user in Paper doc" - paper_doc_ownership_changed PaperDocOwnershipChangedType - "(paper) Transferred ownership of Paper doc" - paper_doc_request_access PaperDocRequestAccessType - "(paper) Requested access to Paper doc" - paper_doc_resolve_comment PaperDocResolveCommentType - "(paper) Resolved Paper doc comment" - paper_doc_revert PaperDocRevertType - "(paper) Restored Paper doc to previous version" - paper_doc_slack_share PaperDocSlackShareType - "(paper) Shared Paper doc via Slack" - paper_doc_team_invite PaperDocTeamInviteType - "(paper) Shared Paper doc with users and/or groups (deprecated, no longer logged)" - paper_doc_trashed PaperDocTrashedType - "(paper) Deleted Paper doc" - paper_doc_unresolve_comment PaperDocUnresolveCommentType - "(paper) Unresolved Paper doc comment" - paper_doc_untrashed PaperDocUntrashedType - "(paper) Restored Paper doc" - paper_doc_view PaperDocViewType - "(paper) Viewed Paper doc" - paper_external_view_allow PaperExternalViewAllowType - "(paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged)" - paper_external_view_default_team PaperExternalViewDefaultTeamType - "(paper) Changed Paper external sharing setting to default team (deprecated, no longer logged)" - paper_external_view_forbid PaperExternalViewForbidType - "(paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged)" - paper_folder_change_subscription PaperFolderChangeSubscriptionType - "(paper) Followed/unfollowed Paper folder" - paper_folder_deleted PaperFolderDeletedType - "(paper) Archived Paper folder (deprecated, no longer logged)" - paper_folder_followed PaperFolderFollowedType - "(paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder')" - paper_folder_team_invite PaperFolderTeamInviteType - "(paper) Shared Paper folder with users and/or groups (deprecated, no longer logged)" - paper_published_link_change_permission PaperPublishedLinkChangePermissionType - "(paper) Changed permissions for published doc" - paper_published_link_create PaperPublishedLinkCreateType - "(paper) Published doc" - paper_published_link_disabled PaperPublishedLinkDisabledType - "(paper) Unpublished doc" - paper_published_link_view PaperPublishedLinkViewType - "(paper) Viewed published doc" - password_change PasswordChangeType - "(passwords) Changed password" - password_reset PasswordResetType - "(passwords) Reset password" - password_reset_all PasswordResetAllType - "(passwords) Reset all team member passwords" - classification_create_report ClassificationCreateReportType - "(reports) Created Classification report" - classification_create_report_fail ClassificationCreateReportFailType - "(reports) Couldn't create Classification report" - emm_create_exceptions_report EmmCreateExceptionsReportType - "(reports) Created EMM-excluded users report" - emm_create_usage_report EmmCreateUsageReportType - "(reports) Created EMM mobile app usage report" - export_members_report ExportMembersReportType - "(reports) Created member data report" - export_members_report_fail ExportMembersReportFailType - "(reports) Failed to create members data report" - external_sharing_create_report ExternalSharingCreateReportType - "(reports) Created External sharing report" - external_sharing_report_failed ExternalSharingReportFailedType - "(reports) Couldn't create External sharing report" - no_expiration_link_gen_create_report NoExpirationLinkGenCreateReportType - "(reports) Report created: Links created with no expiration" - no_expiration_link_gen_report_failed NoExpirationLinkGenReportFailedType - "(reports) Couldn't create report: Links created with no expiration" - no_password_link_gen_create_report NoPasswordLinkGenCreateReportType - "(reports) Report created: Links created without passwords" - no_password_link_gen_report_failed NoPasswordLinkGenReportFailedType - "(reports) Couldn't create report: Links created without passwords" - no_password_link_view_create_report NoPasswordLinkViewCreateReportType - "(reports) Report created: Views of links without passwords" - no_password_link_view_report_failed NoPasswordLinkViewReportFailedType - "(reports) Couldn't create report: Views of links without passwords" - outdated_link_view_create_report OutdatedLinkViewCreateReportType - "(reports) Report created: Views of old links" - outdated_link_view_report_failed OutdatedLinkViewReportFailedType - "(reports) Couldn't create report: Views of old links" - paper_admin_export_start PaperAdminExportStartType - "(reports) Exported all team Paper docs" - ransomware_alert_create_report RansomwareAlertCreateReportType - "(reports) Created ransomware report" - ransomware_alert_create_report_failed RansomwareAlertCreateReportFailedType - "(reports) Couldn't generate ransomware report" - smart_sync_create_admin_privilege_report SmartSyncCreateAdminPrivilegeReportType - "(reports) Created Smart Sync non-admin devices report" - team_activity_create_report TeamActivityCreateReportType - "(reports) Created team activity report" - team_activity_create_report_fail TeamActivityCreateReportFailType - "(reports) Couldn't generate team activity report" - collection_share CollectionShareType - "(sharing) Shared album" - file_transfers_file_add FileTransfersFileAddType - "(sharing) Transfer files added" - file_transfers_transfer_delete FileTransfersTransferDeleteType - "(sharing) Deleted transfer" - file_transfers_transfer_download FileTransfersTransferDownloadType - "(sharing) Transfer downloaded" - file_transfers_transfer_send FileTransfersTransferSendType - "(sharing) Sent transfer" - file_transfers_transfer_view FileTransfersTransferViewType - "(sharing) Viewed transfer" - note_acl_invite_only NoteAclInviteOnlyType - "(sharing) Changed Paper doc to invite-only (deprecated, no longer logged)" - note_acl_link NoteAclLinkType - "(sharing) Changed Paper doc to link-accessible (deprecated, no longer logged)" - note_acl_team_link NoteAclTeamLinkType - "(sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged)" - note_shared NoteSharedType - "(sharing) Shared Paper doc (deprecated, no longer logged)" - note_share_receive NoteShareReceiveType - "(sharing) Shared received Paper doc (deprecated, no longer logged)" - open_note_shared OpenNoteSharedType - "(sharing) Opened shared Paper doc (deprecated, no longer logged)" - replay_file_shared_link_created ReplayFileSharedLinkCreatedType - "(sharing) Created shared link in Replay" - replay_file_shared_link_modified ReplayFileSharedLinkModifiedType - "(sharing) Modified shared link in Replay" - replay_project_team_add ReplayProjectTeamAddType - "(sharing) Added member to Replay Project" - replay_project_team_delete ReplayProjectTeamDeleteType - "(sharing) Removed member from Replay Project" - sf_add_group SfAddGroupType - "(sharing) Added team to shared folder (deprecated, no longer logged)" - sf_allow_non_members_to_view_shared_links SfAllowNonMembersToViewSharedLinksType - "(sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged)" - sf_external_invite_warn SfExternalInviteWarnType - "(sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged)" - sf_fb_invite SfFbInviteType - "(sharing) Invited Facebook users to shared folder (deprecated, no longer logged)" - sf_fb_invite_change_role SfFbInviteChangeRoleType - "(sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged)" - sf_fb_uninvite SfFbUninviteType - "(sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged)" - sf_invite_group SfInviteGroupType - "(sharing) Invited group to shared folder (deprecated, no longer logged)" - sf_team_grant_access SfTeamGrantAccessType - "(sharing) Granted access to shared folder (deprecated, no longer logged)" - sf_team_invite SfTeamInviteType - "(sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder')" - sf_team_invite_change_role SfTeamInviteChangeRoleType - "(sharing) Changed team member's role in shared folder (deprecated, no longer logged)" - sf_team_join SfTeamJoinType - "(sharing) Joined team member's shared folder (deprecated, no longer logged)" - sf_team_join_from_oob_link SfTeamJoinFromOobLinkType - "(sharing) Joined team member's shared folder from link (deprecated, no longer logged)" - sf_team_uninvite SfTeamUninviteType - "(sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted')" - shared_content_add_invitees SharedContentAddInviteesType - "(sharing) Invited user to Dropbox and added them to shared file/folder" - shared_content_add_link_expiry SharedContentAddLinkExpiryType - "(sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged)" - shared_content_add_link_password SharedContentAddLinkPasswordType - "(sharing) Added password to link for shared file/folder (deprecated, no longer logged)" - shared_content_add_member SharedContentAddMemberType - "(sharing) Added users and/or groups to shared file/folder" - shared_content_change_downloads_policy SharedContentChangeDownloadsPolicyType - "(sharing) Changed whether members can download shared file/folder (deprecated, no longer logged)" - shared_content_change_invitee_role SharedContentChangeInviteeRoleType - "(sharing) Changed access type of invitee to shared file/folder before invite was accepted" - shared_content_change_link_audience SharedContentChangeLinkAudienceType - "(sharing) Changed link audience of shared file/folder (deprecated, no longer logged)" - shared_content_change_link_expiry SharedContentChangeLinkExpiryType - "(sharing) Changed link expiration of shared file/folder (deprecated, no longer logged)" - shared_content_change_link_password SharedContentChangeLinkPasswordType - "(sharing) Changed link password of shared file/folder (deprecated, no longer logged)" - shared_content_change_member_role SharedContentChangeMemberRoleType - "(sharing) Changed access type of shared file/folder member" - shared_content_change_viewer_info_policy SharedContentChangeViewerInfoPolicyType - "(sharing) Changed whether members can see who viewed shared file/folder" - shared_content_claim_invitation SharedContentClaimInvitationType - "(sharing) Acquired membership of shared file/folder by accepting invite" - shared_content_copy SharedContentCopyType - "(sharing) Copied shared file/folder to own Dropbox" - shared_content_download SharedContentDownloadType - "(sharing) Downloaded shared file/folder" - shared_content_relinquish_membership SharedContentRelinquishMembershipType - "(sharing) Left shared file/folder" - shared_content_remove_invitees SharedContentRemoveInviteesType - "(sharing) Removed invitee from shared file/folder before invite was accepted" - shared_content_remove_link_expiry SharedContentRemoveLinkExpiryType - "(sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged)" - shared_content_remove_link_password SharedContentRemoveLinkPasswordType - "(sharing) Removed link password of shared file/folder (deprecated, no longer logged)" - shared_content_remove_member SharedContentRemoveMemberType - "(sharing) Removed user/group from shared file/folder" - shared_content_request_access SharedContentRequestAccessType - "(sharing) Requested access to shared file/folder" - shared_content_restore_invitees SharedContentRestoreInviteesType - "(sharing) Restored shared file/folder invitees" - shared_content_restore_member SharedContentRestoreMemberType - "(sharing) Restored users and/or groups to membership of shared file/folder" - shared_content_unshare SharedContentUnshareType - "(sharing) Unshared file/folder by clearing membership" - shared_content_view SharedContentViewType - "(sharing) Previewed shared file/folder" - shared_folder_change_link_policy SharedFolderChangeLinkPolicyType - "(sharing) Changed who can access shared folder via link" - shared_folder_change_members_inheritance_policy SharedFolderChangeMembersInheritancePolicyType - "(sharing) Changed whether shared folder inherits members from parent folder" - shared_folder_change_members_management_policy SharedFolderChangeMembersManagementPolicyType - "(sharing) Changed who can add/remove members of shared folder" - shared_folder_change_members_policy SharedFolderChangeMembersPolicyType - "(sharing) Changed who can become member of shared folder" - shared_folder_create SharedFolderCreateType - "(sharing) Created shared folder" - shared_folder_decline_invitation SharedFolderDeclineInvitationType - "(sharing) Declined team member's invite to shared folder" - shared_folder_mount SharedFolderMountType - "(sharing) Added shared folder to own Dropbox" - shared_folder_nest SharedFolderNestType - "(sharing) Changed parent of shared folder" - shared_folder_transfer_ownership SharedFolderTransferOwnershipType - "(sharing) Transferred ownership of shared folder to another member" - shared_folder_unmount SharedFolderUnmountType - "(sharing) Deleted shared folder from Dropbox" - shared_link_add_expiry SharedLinkAddExpiryType - "(sharing) Added shared link expiration date" - shared_link_change_expiry SharedLinkChangeExpiryType - "(sharing) Changed shared link expiration date" - shared_link_change_visibility SharedLinkChangeVisibilityType - "(sharing) Changed visibility of shared link" - shared_link_copy SharedLinkCopyType - "(sharing) Added file/folder to Dropbox from shared link" - shared_link_create SharedLinkCreateType - "(sharing) Created shared link" - shared_link_disable SharedLinkDisableType - "(sharing) Removed shared link" - shared_link_download SharedLinkDownloadType - "(sharing) Downloaded file/folder from shared link" - shared_link_remove_expiry SharedLinkRemoveExpiryType - "(sharing) Removed shared link expiration date" - shared_link_settings_add_expiration SharedLinkSettingsAddExpirationType - "(sharing) Added an expiration date to the shared link" - shared_link_settings_add_password SharedLinkSettingsAddPasswordType - "(sharing) Added a password to the shared link" - shared_link_settings_allow_download_disabled SharedLinkSettingsAllowDownloadDisabledType - "(sharing) Disabled downloads" - shared_link_settings_allow_download_enabled SharedLinkSettingsAllowDownloadEnabledType - "(sharing) Enabled downloads" - shared_link_settings_change_audience SharedLinkSettingsChangeAudienceType - "(sharing) Changed the audience of the shared link" - shared_link_settings_change_expiration SharedLinkSettingsChangeExpirationType - "(sharing) Changed the expiration date of the shared link" - shared_link_settings_change_password SharedLinkSettingsChangePasswordType - "(sharing) Changed the password of the shared link" - shared_link_settings_remove_expiration SharedLinkSettingsRemoveExpirationType - "(sharing) Removed the expiration date from the shared link" - shared_link_settings_remove_password SharedLinkSettingsRemovePasswordType - "(sharing) Removed the password from the shared link" - shared_link_share SharedLinkShareType - "(sharing) Added members as audience of shared link" - shared_link_view SharedLinkViewType - "(sharing) Opened shared link" - shared_note_opened SharedNoteOpenedType - "(sharing) Opened shared Paper doc (deprecated, no longer logged)" - shmodel_disable_downloads ShmodelDisableDownloadsType - "(sharing) Disabled downloads for link (deprecated, no longer logged)" - shmodel_enable_downloads ShmodelEnableDownloadsType - "(sharing) Enabled downloads for link (deprecated, no longer logged)" - shmodel_group_share ShmodelGroupShareType - "(sharing) Shared link with group (deprecated, no longer logged)" - showcase_access_granted ShowcaseAccessGrantedType - "(showcase) Granted access to showcase" - showcase_add_member ShowcaseAddMemberType - "(showcase) Added member to showcase" - showcase_archived ShowcaseArchivedType - "(showcase) Archived showcase" - showcase_created ShowcaseCreatedType - "(showcase) Created showcase" - showcase_delete_comment ShowcaseDeleteCommentType - "(showcase) Deleted showcase comment" - showcase_edited ShowcaseEditedType - "(showcase) Edited showcase" - showcase_edit_comment ShowcaseEditCommentType - "(showcase) Edited showcase comment" - showcase_file_added ShowcaseFileAddedType - "(showcase) Added file to showcase" - showcase_file_download ShowcaseFileDownloadType - "(showcase) Downloaded file from showcase" - showcase_file_removed ShowcaseFileRemovedType - "(showcase) Removed file from showcase" - showcase_file_view ShowcaseFileViewType - "(showcase) Viewed file in showcase" - showcase_permanently_deleted ShowcasePermanentlyDeletedType - "(showcase) Permanently deleted showcase" - showcase_post_comment ShowcasePostCommentType - "(showcase) Added showcase comment" - showcase_remove_member ShowcaseRemoveMemberType - "(showcase) Removed member from showcase" - showcase_renamed ShowcaseRenamedType - "(showcase) Renamed showcase" - showcase_request_access ShowcaseRequestAccessType - "(showcase) Requested access to showcase" - showcase_resolve_comment ShowcaseResolveCommentType - "(showcase) Resolved showcase comment" - showcase_restored ShowcaseRestoredType - "(showcase) Unarchived showcase" - showcase_trashed ShowcaseTrashedType - "(showcase) Deleted showcase" - showcase_trashed_deprecated ShowcaseTrashedDeprecatedType - "(showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase')" - showcase_unresolve_comment ShowcaseUnresolveCommentType - "(showcase) Unresolved showcase comment" - showcase_untrashed ShowcaseUntrashedType - "(showcase) Restored showcase" - showcase_untrashed_deprecated ShowcaseUntrashedDeprecatedType - "(showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase')" - showcase_view ShowcaseViewType - "(showcase) Viewed showcase" - sso_add_cert SsoAddCertType - "(sso) Added X.509 certificate for SSO" - sso_add_login_url SsoAddLoginUrlType - "(sso) Added sign-in URL for SSO" - sso_add_logout_url SsoAddLogoutUrlType - "(sso) Added sign-out URL for SSO" - sso_change_cert SsoChangeCertType - "(sso) Changed X.509 certificate for SSO" - sso_change_login_url SsoChangeLoginUrlType - "(sso) Changed sign-in URL for SSO" - sso_change_logout_url SsoChangeLogoutUrlType - "(sso) Changed sign-out URL for SSO" - sso_change_saml_identity_mode SsoChangeSamlIdentityModeType - "(sso) Changed SAML identity mode for SSO" - sso_remove_cert SsoRemoveCertType - "(sso) Removed X.509 certificate for SSO" - sso_remove_login_url SsoRemoveLoginUrlType - "(sso) Removed sign-in URL for SSO" - sso_remove_logout_url SsoRemoveLogoutUrlType - "(sso) Removed sign-out URL for SSO" - team_folder_change_status TeamFolderChangeStatusType - "(team_folders) Changed archival status of team folder" - team_folder_create TeamFolderCreateType - "(team_folders) Created team folder in active status" - team_folder_downgrade TeamFolderDowngradeType - "(team_folders) Downgraded team folder to regular shared folder" - team_folder_permanently_delete TeamFolderPermanentlyDeleteType - "(team_folders) Permanently deleted archived team folder" - team_folder_rename TeamFolderRenameType - "(team_folders) Renamed active/archived team folder" - team_selective_sync_settings_changed TeamSelectiveSyncSettingsChangedType - "(team_folders) Changed sync default" - account_capture_change_policy AccountCaptureChangePolicyType - "(team_policies) Changed account capture setting on team domain" - admin_email_reminders_changed AdminEmailRemindersChangedType - "(team_policies) Changed admin reminder settings for requests to join the team" - allow_download_disabled AllowDownloadDisabledType - "(team_policies) Disabled downloads (deprecated, no longer logged)" - allow_download_enabled AllowDownloadEnabledType - "(team_policies) Enabled downloads (deprecated, no longer logged)" - app_permissions_changed AppPermissionsChangedType - "(team_policies) Changed app permissions" - camera_uploads_policy_changed CameraUploadsPolicyChangedType - "(team_policies) Changed camera uploads setting for team" - capture_transcript_policy_changed CaptureTranscriptPolicyChangedType - "(team_policies) Changed Capture transcription policy for team" - classification_change_policy ClassificationChangePolicyType - "(team_policies) Changed classification policy for team" - computer_backup_policy_changed ComputerBackupPolicyChangedType - "(team_policies) Changed computer backup policy for team" - content_administration_policy_changed ContentAdministrationPolicyChangedType - "(team_policies) Changed content management setting" - data_placement_restriction_change_policy DataPlacementRestrictionChangePolicyType - "(team_policies) Set restrictions on data center locations where team data resides" - data_placement_restriction_satisfy_policy DataPlacementRestrictionSatisfyPolicyType - "(team_policies) Completed restrictions on data center locations where team data resides" - device_approvals_add_exception DeviceApprovalsAddExceptionType - "(team_policies) Added members to device approvals exception list" - device_approvals_change_desktop_policy DeviceApprovalsChangeDesktopPolicyType - "(team_policies) Set/removed limit on number of computers member can link to team Dropbox account" - device_approvals_change_mobile_policy DeviceApprovalsChangeMobilePolicyType - "(team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account" - device_approvals_change_overage_action DeviceApprovalsChangeOverageActionType - "(team_policies) Changed device approvals setting when member is over limit" - device_approvals_change_unlink_action DeviceApprovalsChangeUnlinkActionType - "(team_policies) Changed device approvals setting when member unlinks approved device" - device_approvals_remove_exception DeviceApprovalsRemoveExceptionType - "(team_policies) Removed members from device approvals exception list" - directory_restrictions_add_members DirectoryRestrictionsAddMembersType - "(team_policies) Added members to directory restrictions list" - directory_restrictions_remove_members DirectoryRestrictionsRemoveMembersType - "(team_policies) Removed members from directory restrictions list" - dropbox_passwords_policy_changed DropboxPasswordsPolicyChangedType - "(team_policies) Changed Dropbox Passwords policy for team" - email_ingest_policy_changed EmailIngestPolicyChangedType - "(team_policies) Changed email to Dropbox policy for team" - emm_add_exception EmmAddExceptionType - "(team_policies) Added members to EMM exception list" - emm_change_policy EmmChangePolicyType - "(team_policies) Enabled/disabled enterprise mobility management for members" - emm_remove_exception EmmRemoveExceptionType - "(team_policies) Removed members from EMM exception list" - extended_version_history_change_policy ExtendedVersionHistoryChangePolicyType - "(team_policies) Accepted/opted out of extended version history" - external_drive_backup_policy_changed ExternalDriveBackupPolicyChangedType - "(team_policies) Changed external drive backup policy for team" - file_comments_change_policy FileCommentsChangePolicyType - "(team_policies) Enabled/disabled commenting on team files" - file_locking_policy_changed FileLockingPolicyChangedType - "(team_policies) Changed file locking policy for team" - file_provider_migration_policy_changed FileProviderMigrationPolicyChangedType - "(team_policies) Changed File Provider Migration policy for team" - file_requests_change_policy FileRequestsChangePolicyType - "(team_policies) Enabled/disabled file requests" - file_requests_emails_enabled FileRequestsEmailsEnabledType - "(team_policies) Enabled file request emails for everyone (deprecated, no longer logged)" - file_requests_emails_restricted_to_team_only FileRequestsEmailsRestrictedToTeamOnlyType - "(team_policies) Enabled file request emails for team (deprecated, no longer logged)" - file_transfers_policy_changed FileTransfersPolicyChangedType - "(team_policies) Changed file transfers policy for team" - folder_link_restriction_policy_changed FolderLinkRestrictionPolicyChangedType - "(team_policies) Changed folder link restrictions policy for team" - google_sso_change_policy GoogleSsoChangePolicyType - "(team_policies) Enabled/disabled Google single sign-on for team" - group_user_management_change_policy GroupUserManagementChangePolicyType - "(team_policies) Changed who can create groups" - integration_policy_changed IntegrationPolicyChangedType - "(team_policies) Changed integration policy for team" - invite_acceptance_email_policy_changed InviteAcceptanceEmailPolicyChangedType - "(team_policies) Changed invite accept email policy for team" - member_requests_change_policy MemberRequestsChangePolicyType - "(team_policies) Changed whether users can find team when not invited" - member_send_invite_policy_changed MemberSendInvitePolicyChangedType - "(team_policies) Changed member send invite policy for team" - member_space_limits_add_exception MemberSpaceLimitsAddExceptionType - "(team_policies) Added members to member space limit exception list" - member_space_limits_change_caps_type_policy MemberSpaceLimitsChangeCapsTypePolicyType - "(team_policies) Changed member space limit type for team" - member_space_limits_change_policy MemberSpaceLimitsChangePolicyType - "(team_policies) Changed team default member space limit" - member_space_limits_remove_exception MemberSpaceLimitsRemoveExceptionType - "(team_policies) Removed members from member space limit exception list" - member_suggestions_change_policy MemberSuggestionsChangePolicyType - "(team_policies) Enabled/disabled option for team members to suggest people to add to team" - microsoft_office_addin_change_policy MicrosoftOfficeAddinChangePolicyType - "(team_policies) Enabled/disabled Microsoft Office add-in" - network_control_change_policy NetworkControlChangePolicyType - "(team_policies) Enabled/disabled network control" - paper_change_deployment_policy PaperChangeDeploymentPolicyType - "(team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members" - paper_change_member_link_policy PaperChangeMemberLinkPolicyType - "(team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged)" - paper_change_member_policy PaperChangeMemberPolicyType - "(team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default" - paper_change_policy PaperChangePolicyType - "(team_policies) Enabled/disabled Dropbox Paper for team" - paper_default_folder_policy_changed PaperDefaultFolderPolicyChangedType - "(team_policies) Changed Paper Default Folder Policy setting for team" - paper_desktop_policy_changed PaperDesktopPolicyChangedType - "(team_policies) Enabled/disabled Paper Desktop for team" - paper_enabled_users_group_addition PaperEnabledUsersGroupAdditionType - "(team_policies) Added users to Paper-enabled users list" - paper_enabled_users_group_removal PaperEnabledUsersGroupRemovalType - "(team_policies) Removed users from Paper-enabled users list" - password_strength_requirements_change_policy PasswordStrengthRequirementsChangePolicyType - "(team_policies) Changed team password strength requirements" - permanent_delete_change_policy PermanentDeleteChangePolicyType - "(team_policies) Enabled/disabled ability of team members to permanently delete content" - reseller_support_change_policy ResellerSupportChangePolicyType - "(team_policies) Enabled/disabled reseller support" - rewind_policy_changed RewindPolicyChangedType - "(team_policies) Changed Rewind policy for team" - send_for_signature_policy_changed SendForSignaturePolicyChangedType - "(team_policies) Changed send for signature policy for team" - sharing_change_folder_join_policy SharingChangeFolderJoinPolicyType - "(team_policies) Changed whether team members can join shared folders owned outside team" - sharing_change_link_allow_change_expiration_policy SharingChangeLinkAllowChangeExpirationPolicyType - "(team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team" - sharing_change_link_default_expiration_policy SharingChangeLinkDefaultExpirationPolicyType - "(team_policies) Changed the default expiration for the links shared outside of the team" - sharing_change_link_enforce_password_policy SharingChangeLinkEnforcePasswordPolicyType - "(team_policies) Changed the password requirement for the links shared outside of the team" - sharing_change_link_policy SharingChangeLinkPolicyType - "(team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default" - sharing_change_member_policy SharingChangeMemberPolicyType - "(team_policies) Changed whether members can share files/folders outside team" - showcase_change_download_policy ShowcaseChangeDownloadPolicyType - "(team_policies) Enabled/disabled downloading files from Dropbox Showcase for team" - showcase_change_enabled_policy ShowcaseChangeEnabledPolicyType - "(team_policies) Enabled/disabled Dropbox Showcase for team" - showcase_change_external_sharing_policy ShowcaseChangeExternalSharingPolicyType - "(team_policies) Enabled/disabled sharing Dropbox Showcase externally for team" - smarter_smart_sync_policy_changed SmarterSmartSyncPolicyChangedType - "(team_policies) Changed automatic Smart Sync setting for team" - smart_sync_change_policy SmartSyncChangePolicyType - "(team_policies) Changed default Smart Sync setting for team members" - smart_sync_not_opt_out SmartSyncNotOptOutType - "(team_policies) Opted team into Smart Sync" - smart_sync_opt_out SmartSyncOptOutType - "(team_policies) Opted team out of Smart Sync" - sso_change_policy SsoChangePolicyType - "(team_policies) Changed single sign-on setting for team" - team_branding_policy_changed TeamBrandingPolicyChangedType - "(team_policies) Changed team branding policy for team" - team_extensions_policy_changed TeamExtensionsPolicyChangedType - "(team_policies) Changed App Integrations setting for team" - team_selective_sync_policy_changed TeamSelectiveSyncPolicyChangedType - "(team_policies) Enabled/disabled Team Selective Sync for team" - team_sharing_whitelist_subjects_changed TeamSharingWhitelistSubjectsChangedType - "(team_policies) Edited the approved list for sharing externally" - tfa_add_exception TfaAddExceptionType - "(team_policies) Added members to two factor authentication exception list" - tfa_change_policy TfaChangePolicyType - "(team_policies) Changed two-step verification setting for team" - tfa_remove_exception TfaRemoveExceptionType - "(team_policies) Removed members from two factor authentication exception list" - two_account_change_policy TwoAccountChangePolicyType - "(team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer" - viewer_info_policy_changed ViewerInfoPolicyChangedType - "(team_policies) Changed team policy for viewer info" - watermarking_policy_changed WatermarkingPolicyChangedType - "(team_policies) Changed watermarking policy for team" - web_sessions_change_active_session_limit WebSessionsChangeActiveSessionLimitType - "(team_policies) Changed limit on active sessions per member" - web_sessions_change_fixed_length_policy WebSessionsChangeFixedLengthPolicyType - "(team_policies) Changed how long members can stay signed in to Dropbox.com" - web_sessions_change_idle_length_policy WebSessionsChangeIdleLengthPolicyType - "(team_policies) Changed how long team members can be idle while signed in to Dropbox.com" - data_residency_migration_request_successful DataResidencyMigrationRequestSuccessfulType - "(team_profile) Requested data residency migration for team data" - data_residency_migration_request_unsuccessful DataResidencyMigrationRequestUnsuccessfulType - "(team_profile) Request for data residency migration for team data has failed" - team_merge_from TeamMergeFromType - "(team_profile) Merged another team into this team" - team_merge_to TeamMergeToType - "(team_profile) Merged this team into another team" - team_profile_add_background TeamProfileAddBackgroundType - "(team_profile) Added team background to display on shared link headers" - team_profile_add_logo TeamProfileAddLogoType - "(team_profile) Added team logo to display on shared link headers" - team_profile_change_background TeamProfileChangeBackgroundType - "(team_profile) Changed team background displayed on shared link headers" - team_profile_change_default_language TeamProfileChangeDefaultLanguageType - "(team_profile) Changed default language for team" - team_profile_change_logo TeamProfileChangeLogoType - "(team_profile) Changed team logo displayed on shared link headers" - team_profile_change_name TeamProfileChangeNameType - "(team_profile) Changed team name" - team_profile_remove_background TeamProfileRemoveBackgroundType - "(team_profile) Removed team background displayed on shared link headers" - team_profile_remove_logo TeamProfileRemoveLogoType - "(team_profile) Removed team logo displayed on shared link headers" - tfa_add_backup_phone TfaAddBackupPhoneType - "(tfa) Added backup phone for two-step verification" - tfa_add_security_key TfaAddSecurityKeyType - "(tfa) Added security key for two-step verification" - tfa_change_backup_phone TfaChangeBackupPhoneType - "(tfa) Changed backup phone for two-step verification" - tfa_change_status TfaChangeStatusType - "(tfa) Enabled/disabled/changed two-step verification setting" - tfa_remove_backup_phone TfaRemoveBackupPhoneType - "(tfa) Removed backup phone for two-step verification" - tfa_remove_security_key TfaRemoveSecurityKeyType - "(tfa) Removed security key for two-step verification" - tfa_reset TfaResetType - "(tfa) Reset two-step verification for team member" - changed_enterprise_admin_role ChangedEnterpriseAdminRoleType - "(trusted_teams) Changed enterprise admin role" - changed_enterprise_connected_team_status ChangedEnterpriseConnectedTeamStatusType - "(trusted_teams) Changed enterprise-connected team status" - ended_enterprise_admin_session EndedEnterpriseAdminSessionType - "(trusted_teams) Ended enterprise admin session" - ended_enterprise_admin_session_deprecated EndedEnterpriseAdminSessionDeprecatedType - "(trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session')" - enterprise_settings_locking EnterpriseSettingsLockingType - "(trusted_teams) Changed who can update a setting" - guest_admin_change_status GuestAdminChangeStatusType - "(trusted_teams) Changed guest team admin status" - started_enterprise_admin_session StartedEnterpriseAdminSessionType - "(trusted_teams) Started enterprise admin session" - team_merge_request_accepted TeamMergeRequestAcceptedType - "(trusted_teams) Accepted a team merge request" - team_merge_request_accepted_shown_to_primary_team TeamMergeRequestAcceptedShownToPrimaryTeamType - "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" - team_merge_request_accepted_shown_to_secondary_team TeamMergeRequestAcceptedShownToSecondaryTeamType - "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" - team_merge_request_auto_canceled TeamMergeRequestAutoCanceledType - "(trusted_teams) Automatically canceled team merge request" - team_merge_request_canceled TeamMergeRequestCanceledType - "(trusted_teams) Canceled a team merge request" - team_merge_request_canceled_shown_to_primary_team TeamMergeRequestCanceledShownToPrimaryTeamType - "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" - team_merge_request_canceled_shown_to_secondary_team TeamMergeRequestCanceledShownToSecondaryTeamType - "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" - team_merge_request_expired TeamMergeRequestExpiredType - "(trusted_teams) Team merge request expired" - team_merge_request_expired_shown_to_primary_team TeamMergeRequestExpiredShownToPrimaryTeamType - "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" - team_merge_request_expired_shown_to_secondary_team TeamMergeRequestExpiredShownToSecondaryTeamType - "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" - team_merge_request_rejected_shown_to_primary_team TeamMergeRequestRejectedShownToPrimaryTeamType - "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" - team_merge_request_rejected_shown_to_secondary_team TeamMergeRequestRejectedShownToSecondaryTeamType - "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" - team_merge_request_reminder TeamMergeRequestReminderType - "(trusted_teams) Sent a team merge request reminder" - team_merge_request_reminder_shown_to_primary_team TeamMergeRequestReminderShownToPrimaryTeamType - "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" - team_merge_request_reminder_shown_to_secondary_team TeamMergeRequestReminderShownToSecondaryTeamType - "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" - team_merge_request_revoked TeamMergeRequestRevokedType - "(trusted_teams) Canceled the team merge" - team_merge_request_sent_shown_to_primary_team TeamMergeRequestSentShownToPrimaryTeamType - "(trusted_teams) Requested to merge their Dropbox team into yours" - team_merge_request_sent_shown_to_secondary_team TeamMergeRequestSentShownToSecondaryTeamType - "(trusted_teams) Requested to merge your team into another Dropbox team" - - example default - shared_content_download = default - - -union EventTypeArg - "The type of the event." - - admin_alerting_alert_state_changed - "(admin_alerting) Changed an alert state" - admin_alerting_changed_alert_config - "(admin_alerting) Changed an alert setting" - admin_alerting_triggered_alert - "(admin_alerting) Triggered security alert" - ransomware_restore_process_completed - "(admin_alerting) Completed ransomware restore process" - ransomware_restore_process_started - "(admin_alerting) Started ransomware restore process" - app_blocked_by_permissions - "(apps) Failed to connect app for member" - app_link_team - "(apps) Linked app for team" - app_link_user - "(apps) Linked app for member" - app_unlink_team - "(apps) Unlinked app for team" - app_unlink_user - "(apps) Unlinked app for member" - integration_connected - "(apps) Connected integration for member" - integration_disconnected - "(apps) Disconnected integration for member" - file_add_comment - "(comments) Added file comment" - file_change_comment_subscription - "(comments) Subscribed to or unsubscribed from comment notifications for file" - file_delete_comment - "(comments) Deleted file comment" - file_edit_comment - "(comments) Edited file comment" - file_like_comment - "(comments) Liked file comment (deprecated, no longer logged)" - file_resolve_comment - "(comments) Resolved file comment" - file_unlike_comment - "(comments) Unliked file comment (deprecated, no longer logged)" - file_unresolve_comment - "(comments) Unresolved file comment" - governance_policy_add_folders - "(data_governance) Added folders to policy" - governance_policy_add_folder_failed - "(data_governance) Couldn't add a folder to a policy" - governance_policy_content_disposed - "(data_governance) Content disposed" - governance_policy_create - "(data_governance) Activated a new policy" - governance_policy_delete - "(data_governance) Deleted a policy" - governance_policy_edit_details - "(data_governance) Edited policy" - governance_policy_edit_duration - "(data_governance) Changed policy duration" - governance_policy_export_created - "(data_governance) Created a policy download" - governance_policy_export_removed - "(data_governance) Removed a policy download" - governance_policy_remove_folders - "(data_governance) Removed folders from policy" - governance_policy_report_created - "(data_governance) Created a summary report for a policy" - governance_policy_zip_part_downloaded - "(data_governance) Downloaded content from a policy" - legal_holds_activate_a_hold - "(data_governance) Activated a hold" - legal_holds_add_members - "(data_governance) Added members to a hold" - legal_holds_change_hold_details - "(data_governance) Edited details for a hold" - legal_holds_change_hold_name - "(data_governance) Renamed a hold" - legal_holds_export_a_hold - "(data_governance) Exported hold" - legal_holds_export_cancelled - "(data_governance) Canceled export for a hold" - legal_holds_export_downloaded - "(data_governance) Downloaded export for a hold" - legal_holds_export_removed - "(data_governance) Removed export for a hold" - legal_holds_release_a_hold - "(data_governance) Released a hold" - legal_holds_remove_members - "(data_governance) Removed members from a hold" - legal_holds_report_a_hold - "(data_governance) Created a summary report for a hold" - device_change_ip_desktop - "(devices) Changed IP address associated with active desktop session" - device_change_ip_mobile - "(devices) Changed IP address associated with active mobile session" - device_change_ip_web - "(devices) Changed IP address associated with active web session" - device_delete_on_unlink_fail - "(devices) Failed to delete all files from unlinked device" - device_delete_on_unlink_success - "(devices) Deleted all files from unlinked device" - device_link_fail - "(devices) Failed to link device" - device_link_success - "(devices) Linked device" - device_management_disabled - "(devices) Disabled device management (deprecated, no longer logged)" - device_management_enabled - "(devices) Enabled device management (deprecated, no longer logged)" - device_sync_backup_status_changed - "(devices) Enabled/disabled backup for computer" - device_unlink - "(devices) Disconnected device" - dropbox_passwords_exported - "(devices) Exported passwords" - dropbox_passwords_new_device_enrolled - "(devices) Enrolled new Dropbox Passwords device" - emm_refresh_auth_token - "(devices) Refreshed auth token used for setting up EMM" - external_drive_backup_eligibility_status_checked - "(devices) Checked external drive backup eligibility status" - external_drive_backup_status_changed - "(devices) Modified external drive backup" - account_capture_change_availability - "(domains) Granted/revoked option to enable account capture on team domains" - account_capture_migrate_account - "(domains) Account-captured user migrated account to team" - account_capture_notification_emails_sent - "(domains) Sent account capture email to all unmanaged members" - account_capture_relinquish_account - "(domains) Account-captured user changed account email to personal email" - disabled_domain_invites - "(domains) Disabled domain invites (deprecated, no longer logged)" - domain_invites_approve_request_to_join_team - "(domains) Approved user's request to join team" - domain_invites_decline_request_to_join_team - "(domains) Declined user's request to join team" - domain_invites_email_existing_users - "(domains) Sent domain invites to existing domain accounts (deprecated, no longer logged)" - domain_invites_request_to_join_team - "(domains) Requested to join team" - domain_invites_set_invite_new_user_pref_to_no - "(domains) Disabled \"Automatically invite new users\" (deprecated, no longer logged)" - domain_invites_set_invite_new_user_pref_to_yes - "(domains) Enabled \"Automatically invite new users\" (deprecated, no longer logged)" - domain_verification_add_domain_fail - "(domains) Failed to verify team domain" - domain_verification_add_domain_success - "(domains) Verified team domain" - domain_verification_remove_domain - "(domains) Removed domain from list of verified team domains" - enabled_domain_invites - "(domains) Enabled domain invites (deprecated, no longer logged)" - team_encryption_key_cancel_key_deletion - "(encryption) Canceled team encryption key deletion" - team_encryption_key_create_key - "(encryption) Created team encryption key" - team_encryption_key_delete_key - "(encryption) Deleted team encryption key" - team_encryption_key_disable_key - "(encryption) Disabled team encryption key" - team_encryption_key_enable_key - "(encryption) Enabled team encryption key" - team_encryption_key_rotate_key - "(encryption) Rotated team encryption key (deprecated, no longer logged)" - team_encryption_key_schedule_key_deletion - "(encryption) Scheduled encryption key deletion" - apply_naming_convention - "(file_operations) Applied naming convention" - create_folder - "(file_operations) Created folders (deprecated, no longer logged)" - file_add - "(file_operations) Added files and/or folders" - file_add_from_automation - "(file_operations) Added files and/or folders from automation" - file_copy - "(file_operations) Copied files and/or folders" - file_delete - "(file_operations) Deleted files and/or folders" - file_download - "(file_operations) Downloaded files and/or folders" - file_edit - "(file_operations) Edited files" - file_get_copy_reference - "(file_operations) Created copy reference to file/folder" - file_locking_lock_status_changed - "(file_operations) Locked/unlocked editing for a file" - file_move - "(file_operations) Moved files and/or folders" - file_permanently_delete - "(file_operations) Permanently deleted files and/or folders" - file_preview - "(file_operations) Previewed files and/or folders" - file_rename - "(file_operations) Renamed files and/or folders" - file_restore - "(file_operations) Restored deleted files and/or folders" - file_revert - "(file_operations) Reverted files to previous version" - file_rollback_changes - "(file_operations) Rolled back file actions" - file_save_copy_reference - "(file_operations) Saved file/folder using copy reference" - folder_overview_description_changed - "(file_operations) Updated folder overview" - folder_overview_item_pinned - "(file_operations) Pinned item to folder overview" - folder_overview_item_unpinned - "(file_operations) Unpinned item from folder overview" - object_label_added - "(file_operations) Added a label" - object_label_removed - "(file_operations) Removed a label" - object_label_updated_value - "(file_operations) Updated a label's value" - organize_folder_with_tidy - "(file_operations) Organized a folder with multi-file organize" - replay_file_delete - "(file_operations) Deleted files in Replay" - rewind_folder - "(file_operations) Rewound a folder" - undo_naming_convention - "(file_operations) Reverted naming convention" - undo_organize_folder_with_tidy - "(file_operations) Removed multi-file organize" - user_tags_added - "(file_operations) Tagged a file" - user_tags_removed - "(file_operations) Removed tags" - email_ingest_receive_file - "(file_requests) Received files via Email to Dropbox" - file_request_change - "(file_requests) Changed file request" - file_request_close - "(file_requests) Closed file request" - file_request_create - "(file_requests) Created file request" - file_request_delete - "(file_requests) Delete file request" - file_request_receive_file - "(file_requests) Received files for file request" - group_add_external_id - "(groups) Added external ID for group" - group_add_member - "(groups) Added team members to group" - group_change_external_id - "(groups) Changed external ID for group" - group_change_management_type - "(groups) Changed group management type" - group_change_member_role - "(groups) Changed manager permissions of group member" - group_create - "(groups) Created group" - group_delete - "(groups) Deleted group" - group_description_updated - "(groups) Updated group (deprecated, no longer logged)" - group_join_policy_updated - "(groups) Updated group join policy (deprecated, no longer logged)" - group_moved - "(groups) Moved group (deprecated, no longer logged)" - group_remove_external_id - "(groups) Removed external ID for group" - group_remove_member - "(groups) Removed team members from group" - group_rename - "(groups) Renamed group" - account_lock_or_unlocked - "(logins) Unlocked/locked account after failed sign in attempts" - emm_error - "(logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in')" - guest_admin_signed_in_via_trusted_teams - "(logins) Started trusted team admin session" - guest_admin_signed_out_via_trusted_teams - "(logins) Ended trusted team admin session" - login_fail - "(logins) Failed to sign in" - login_success - "(logins) Signed in" - logout - "(logins) Signed out" - reseller_support_session_end - "(logins) Ended reseller support session" - reseller_support_session_start - "(logins) Started reseller support session" - sign_in_as_session_end - "(logins) Ended admin sign-in-as session" - sign_in_as_session_start - "(logins) Started admin sign-in-as session" - sso_error - "(logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in')" - backup_admin_invitation_sent - "(members) Invited members to activate Backup" - backup_invitation_opened - "(members) Opened Backup invite" - create_team_invite_link - "(members) Created team invite link" - delete_team_invite_link - "(members) Deleted team invite link" - member_add_external_id - "(members) Added an external ID for team member" - member_add_name - "(members) Added team member name" - member_change_admin_role - "(members) Changed team member admin role" - member_change_email - "(members) Changed team member email" - member_change_external_id - "(members) Changed the external ID for team member" - member_change_membership_type - "(members) Changed membership type (limited/full) of member (deprecated, no longer logged)" - member_change_name - "(members) Changed team member name" - member_change_reseller_role - "(members) Changed team member reseller role" - member_change_status - "(members) Changed member status (invited, joined, suspended, etc.)" - member_delete_manual_contacts - "(members) Cleared manually added contacts" - member_delete_profile_photo - "(members) Deleted team member profile photo" - member_permanently_delete_account_contents - "(members) Permanently deleted contents of deleted team member account" - member_remove_external_id - "(members) Removed the external ID for team member" - member_set_profile_photo - "(members) Set team member profile photo" - member_space_limits_add_custom_quota - "(members) Set custom member space limit" - member_space_limits_change_custom_quota - "(members) Changed custom member space limit" - member_space_limits_change_status - "(members) Changed space limit status" - member_space_limits_remove_custom_quota - "(members) Removed custom member space limit" - member_suggest - "(members) Suggested person to add to team" - member_transfer_account_contents - "(members) Transferred contents of deleted member account to another member" - pending_secondary_email_added - "(members) Added pending secondary email" - secondary_email_deleted - "(members) Deleted secondary email" - secondary_email_verified - "(members) Verified secondary email" - secondary_mails_policy_changed - "(members) Secondary mails policy changed" - binder_add_page - "(paper) Added Binder page (deprecated, replaced by 'Edited files')" - binder_add_section - "(paper) Added Binder section (deprecated, replaced by 'Edited files')" - binder_remove_page - "(paper) Removed Binder page (deprecated, replaced by 'Edited files')" - binder_remove_section - "(paper) Removed Binder section (deprecated, replaced by 'Edited files')" - binder_rename_page - "(paper) Renamed Binder page (deprecated, replaced by 'Edited files')" - binder_rename_section - "(paper) Renamed Binder section (deprecated, replaced by 'Edited files')" - binder_reorder_page - "(paper) Reordered Binder page (deprecated, replaced by 'Edited files')" - binder_reorder_section - "(paper) Reordered Binder section (deprecated, replaced by 'Edited files')" - paper_content_add_member - "(paper) Added users and/or groups to Paper doc/folder" - paper_content_add_to_folder - "(paper) Added Paper doc/folder to folder" - paper_content_archive - "(paper) Archived Paper doc/folder" - paper_content_create - "(paper) Created Paper doc/folder" - paper_content_permanently_delete - "(paper) Permanently deleted Paper doc/folder" - paper_content_remove_from_folder - "(paper) Removed Paper doc/folder from folder" - paper_content_remove_member - "(paper) Removed users and/or groups from Paper doc/folder" - paper_content_rename - "(paper) Renamed Paper doc/folder" - paper_content_restore - "(paper) Restored archived Paper doc/folder" - paper_doc_add_comment - "(paper) Added Paper doc comment" - paper_doc_change_member_role - "(paper) Changed member permissions for Paper doc" - paper_doc_change_sharing_policy - "(paper) Changed sharing setting for Paper doc" - paper_doc_change_subscription - "(paper) Followed/unfollowed Paper doc" - paper_doc_deleted - "(paper) Archived Paper doc (deprecated, no longer logged)" - paper_doc_delete_comment - "(paper) Deleted Paper doc comment" - paper_doc_download - "(paper) Downloaded Paper doc in specific format" - paper_doc_edit - "(paper) Edited Paper doc" - paper_doc_edit_comment - "(paper) Edited Paper doc comment" - paper_doc_followed - "(paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc')" - paper_doc_mention - "(paper) Mentioned user in Paper doc" - paper_doc_ownership_changed - "(paper) Transferred ownership of Paper doc" - paper_doc_request_access - "(paper) Requested access to Paper doc" - paper_doc_resolve_comment - "(paper) Resolved Paper doc comment" - paper_doc_revert - "(paper) Restored Paper doc to previous version" - paper_doc_slack_share - "(paper) Shared Paper doc via Slack" - paper_doc_team_invite - "(paper) Shared Paper doc with users and/or groups (deprecated, no longer logged)" - paper_doc_trashed - "(paper) Deleted Paper doc" - paper_doc_unresolve_comment - "(paper) Unresolved Paper doc comment" - paper_doc_untrashed - "(paper) Restored Paper doc" - paper_doc_view - "(paper) Viewed Paper doc" - paper_external_view_allow - "(paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged)" - paper_external_view_default_team - "(paper) Changed Paper external sharing setting to default team (deprecated, no longer logged)" - paper_external_view_forbid - "(paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged)" - paper_folder_change_subscription - "(paper) Followed/unfollowed Paper folder" - paper_folder_deleted - "(paper) Archived Paper folder (deprecated, no longer logged)" - paper_folder_followed - "(paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder')" - paper_folder_team_invite - "(paper) Shared Paper folder with users and/or groups (deprecated, no longer logged)" - paper_published_link_change_permission - "(paper) Changed permissions for published doc" - paper_published_link_create - "(paper) Published doc" - paper_published_link_disabled - "(paper) Unpublished doc" - paper_published_link_view - "(paper) Viewed published doc" - password_change - "(passwords) Changed password" - password_reset - "(passwords) Reset password" - password_reset_all - "(passwords) Reset all team member passwords" - classification_create_report - "(reports) Created Classification report" - classification_create_report_fail - "(reports) Couldn't create Classification report" - emm_create_exceptions_report - "(reports) Created EMM-excluded users report" - emm_create_usage_report - "(reports) Created EMM mobile app usage report" - export_members_report - "(reports) Created member data report" - export_members_report_fail - "(reports) Failed to create members data report" - external_sharing_create_report - "(reports) Created External sharing report" - external_sharing_report_failed - "(reports) Couldn't create External sharing report" - no_expiration_link_gen_create_report - "(reports) Report created: Links created with no expiration" - no_expiration_link_gen_report_failed - "(reports) Couldn't create report: Links created with no expiration" - no_password_link_gen_create_report - "(reports) Report created: Links created without passwords" - no_password_link_gen_report_failed - "(reports) Couldn't create report: Links created without passwords" - no_password_link_view_create_report - "(reports) Report created: Views of links without passwords" - no_password_link_view_report_failed - "(reports) Couldn't create report: Views of links without passwords" - outdated_link_view_create_report - "(reports) Report created: Views of old links" - outdated_link_view_report_failed - "(reports) Couldn't create report: Views of old links" - paper_admin_export_start - "(reports) Exported all team Paper docs" - ransomware_alert_create_report - "(reports) Created ransomware report" - ransomware_alert_create_report_failed - "(reports) Couldn't generate ransomware report" - smart_sync_create_admin_privilege_report - "(reports) Created Smart Sync non-admin devices report" - team_activity_create_report - "(reports) Created team activity report" - team_activity_create_report_fail - "(reports) Couldn't generate team activity report" - collection_share - "(sharing) Shared album" - file_transfers_file_add - "(sharing) Transfer files added" - file_transfers_transfer_delete - "(sharing) Deleted transfer" - file_transfers_transfer_download - "(sharing) Transfer downloaded" - file_transfers_transfer_send - "(sharing) Sent transfer" - file_transfers_transfer_view - "(sharing) Viewed transfer" - note_acl_invite_only - "(sharing) Changed Paper doc to invite-only (deprecated, no longer logged)" - note_acl_link - "(sharing) Changed Paper doc to link-accessible (deprecated, no longer logged)" - note_acl_team_link - "(sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged)" - note_shared - "(sharing) Shared Paper doc (deprecated, no longer logged)" - note_share_receive - "(sharing) Shared received Paper doc (deprecated, no longer logged)" - open_note_shared - "(sharing) Opened shared Paper doc (deprecated, no longer logged)" - replay_file_shared_link_created - "(sharing) Created shared link in Replay" - replay_file_shared_link_modified - "(sharing) Modified shared link in Replay" - replay_project_team_add - "(sharing) Added member to Replay Project" - replay_project_team_delete - "(sharing) Removed member from Replay Project" - sf_add_group - "(sharing) Added team to shared folder (deprecated, no longer logged)" - sf_allow_non_members_to_view_shared_links - "(sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged)" - sf_external_invite_warn - "(sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged)" - sf_fb_invite - "(sharing) Invited Facebook users to shared folder (deprecated, no longer logged)" - sf_fb_invite_change_role - "(sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged)" - sf_fb_uninvite - "(sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged)" - sf_invite_group - "(sharing) Invited group to shared folder (deprecated, no longer logged)" - sf_team_grant_access - "(sharing) Granted access to shared folder (deprecated, no longer logged)" - sf_team_invite - "(sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added them to shared file/folder')" - sf_team_invite_change_role - "(sharing) Changed team member's role in shared folder (deprecated, no longer logged)" - sf_team_join - "(sharing) Joined team member's shared folder (deprecated, no longer logged)" - sf_team_join_from_oob_link - "(sharing) Joined team member's shared folder from link (deprecated, no longer logged)" - sf_team_uninvite - "(sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder before invite was accepted')" - shared_content_add_invitees - "(sharing) Invited user to Dropbox and added them to shared file/folder" - shared_content_add_link_expiry - "(sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged)" - shared_content_add_link_password - "(sharing) Added password to link for shared file/folder (deprecated, no longer logged)" - shared_content_add_member - "(sharing) Added users and/or groups to shared file/folder" - shared_content_change_downloads_policy - "(sharing) Changed whether members can download shared file/folder (deprecated, no longer logged)" - shared_content_change_invitee_role - "(sharing) Changed access type of invitee to shared file/folder before invite was accepted" - shared_content_change_link_audience - "(sharing) Changed link audience of shared file/folder (deprecated, no longer logged)" - shared_content_change_link_expiry - "(sharing) Changed link expiration of shared file/folder (deprecated, no longer logged)" - shared_content_change_link_password - "(sharing) Changed link password of shared file/folder (deprecated, no longer logged)" - shared_content_change_member_role - "(sharing) Changed access type of shared file/folder member" - shared_content_change_viewer_info_policy - "(sharing) Changed whether members can see who viewed shared file/folder" - shared_content_claim_invitation - "(sharing) Acquired membership of shared file/folder by accepting invite" - shared_content_copy - "(sharing) Copied shared file/folder to own Dropbox" - shared_content_download - "(sharing) Downloaded shared file/folder" - shared_content_relinquish_membership - "(sharing) Left shared file/folder" - shared_content_remove_invitees - "(sharing) Removed invitee from shared file/folder before invite was accepted" - shared_content_remove_link_expiry - "(sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged)" - shared_content_remove_link_password - "(sharing) Removed link password of shared file/folder (deprecated, no longer logged)" - shared_content_remove_member - "(sharing) Removed user/group from shared file/folder" - shared_content_request_access - "(sharing) Requested access to shared file/folder" - shared_content_restore_invitees - "(sharing) Restored shared file/folder invitees" - shared_content_restore_member - "(sharing) Restored users and/or groups to membership of shared file/folder" - shared_content_unshare - "(sharing) Unshared file/folder by clearing membership" - shared_content_view - "(sharing) Previewed shared file/folder" - shared_folder_change_link_policy - "(sharing) Changed who can access shared folder via link" - shared_folder_change_members_inheritance_policy - "(sharing) Changed whether shared folder inherits members from parent folder" - shared_folder_change_members_management_policy - "(sharing) Changed who can add/remove members of shared folder" - shared_folder_change_members_policy - "(sharing) Changed who can become member of shared folder" - shared_folder_create - "(sharing) Created shared folder" - shared_folder_decline_invitation - "(sharing) Declined team member's invite to shared folder" - shared_folder_mount - "(sharing) Added shared folder to own Dropbox" - shared_folder_nest - "(sharing) Changed parent of shared folder" - shared_folder_transfer_ownership - "(sharing) Transferred ownership of shared folder to another member" - shared_folder_unmount - "(sharing) Deleted shared folder from Dropbox" - shared_link_add_expiry - "(sharing) Added shared link expiration date" - shared_link_change_expiry - "(sharing) Changed shared link expiration date" - shared_link_change_visibility - "(sharing) Changed visibility of shared link" - shared_link_copy - "(sharing) Added file/folder to Dropbox from shared link" - shared_link_create - "(sharing) Created shared link" - shared_link_disable - "(sharing) Removed shared link" - shared_link_download - "(sharing) Downloaded file/folder from shared link" - shared_link_remove_expiry - "(sharing) Removed shared link expiration date" - shared_link_settings_add_expiration - "(sharing) Added an expiration date to the shared link" - shared_link_settings_add_password - "(sharing) Added a password to the shared link" - shared_link_settings_allow_download_disabled - "(sharing) Disabled downloads" - shared_link_settings_allow_download_enabled - "(sharing) Enabled downloads" - shared_link_settings_change_audience - "(sharing) Changed the audience of the shared link" - shared_link_settings_change_expiration - "(sharing) Changed the expiration date of the shared link" - shared_link_settings_change_password - "(sharing) Changed the password of the shared link" - shared_link_settings_remove_expiration - "(sharing) Removed the expiration date from the shared link" - shared_link_settings_remove_password - "(sharing) Removed the password from the shared link" - shared_link_share - "(sharing) Added members as audience of shared link" - shared_link_view - "(sharing) Opened shared link" - shared_note_opened - "(sharing) Opened shared Paper doc (deprecated, no longer logged)" - shmodel_disable_downloads - "(sharing) Disabled downloads for link (deprecated, no longer logged)" - shmodel_enable_downloads - "(sharing) Enabled downloads for link (deprecated, no longer logged)" - shmodel_group_share - "(sharing) Shared link with group (deprecated, no longer logged)" - showcase_access_granted - "(showcase) Granted access to showcase" - showcase_add_member - "(showcase) Added member to showcase" - showcase_archived - "(showcase) Archived showcase" - showcase_created - "(showcase) Created showcase" - showcase_delete_comment - "(showcase) Deleted showcase comment" - showcase_edited - "(showcase) Edited showcase" - showcase_edit_comment - "(showcase) Edited showcase comment" - showcase_file_added - "(showcase) Added file to showcase" - showcase_file_download - "(showcase) Downloaded file from showcase" - showcase_file_removed - "(showcase) Removed file from showcase" - showcase_file_view - "(showcase) Viewed file in showcase" - showcase_permanently_deleted - "(showcase) Permanently deleted showcase" - showcase_post_comment - "(showcase) Added showcase comment" - showcase_remove_member - "(showcase) Removed member from showcase" - showcase_renamed - "(showcase) Renamed showcase" - showcase_request_access - "(showcase) Requested access to showcase" - showcase_resolve_comment - "(showcase) Resolved showcase comment" - showcase_restored - "(showcase) Unarchived showcase" - showcase_trashed - "(showcase) Deleted showcase" - showcase_trashed_deprecated - "(showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase')" - showcase_unresolve_comment - "(showcase) Unresolved showcase comment" - showcase_untrashed - "(showcase) Restored showcase" - showcase_untrashed_deprecated - "(showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase')" - showcase_view - "(showcase) Viewed showcase" - sso_add_cert - "(sso) Added X.509 certificate for SSO" - sso_add_login_url - "(sso) Added sign-in URL for SSO" - sso_add_logout_url - "(sso) Added sign-out URL for SSO" - sso_change_cert - "(sso) Changed X.509 certificate for SSO" - sso_change_login_url - "(sso) Changed sign-in URL for SSO" - sso_change_logout_url - "(sso) Changed sign-out URL for SSO" - sso_change_saml_identity_mode - "(sso) Changed SAML identity mode for SSO" - sso_remove_cert - "(sso) Removed X.509 certificate for SSO" - sso_remove_login_url - "(sso) Removed sign-in URL for SSO" - sso_remove_logout_url - "(sso) Removed sign-out URL for SSO" - team_folder_change_status - "(team_folders) Changed archival status of team folder" - team_folder_create - "(team_folders) Created team folder in active status" - team_folder_downgrade - "(team_folders) Downgraded team folder to regular shared folder" - team_folder_permanently_delete - "(team_folders) Permanently deleted archived team folder" - team_folder_rename - "(team_folders) Renamed active/archived team folder" - team_selective_sync_settings_changed - "(team_folders) Changed sync default" - account_capture_change_policy - "(team_policies) Changed account capture setting on team domain" - admin_email_reminders_changed - "(team_policies) Changed admin reminder settings for requests to join the team" - allow_download_disabled - "(team_policies) Disabled downloads (deprecated, no longer logged)" - allow_download_enabled - "(team_policies) Enabled downloads (deprecated, no longer logged)" - app_permissions_changed - "(team_policies) Changed app permissions" - camera_uploads_policy_changed - "(team_policies) Changed camera uploads setting for team" - capture_transcript_policy_changed - "(team_policies) Changed Capture transcription policy for team" - classification_change_policy - "(team_policies) Changed classification policy for team" - computer_backup_policy_changed - "(team_policies) Changed computer backup policy for team" - content_administration_policy_changed - "(team_policies) Changed content management setting" - data_placement_restriction_change_policy - "(team_policies) Set restrictions on data center locations where team data resides" - data_placement_restriction_satisfy_policy - "(team_policies) Completed restrictions on data center locations where team data resides" - device_approvals_add_exception - "(team_policies) Added members to device approvals exception list" - device_approvals_change_desktop_policy - "(team_policies) Set/removed limit on number of computers member can link to team Dropbox account" - device_approvals_change_mobile_policy - "(team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account" - device_approvals_change_overage_action - "(team_policies) Changed device approvals setting when member is over limit" - device_approvals_change_unlink_action - "(team_policies) Changed device approvals setting when member unlinks approved device" - device_approvals_remove_exception - "(team_policies) Removed members from device approvals exception list" - directory_restrictions_add_members - "(team_policies) Added members to directory restrictions list" - directory_restrictions_remove_members - "(team_policies) Removed members from directory restrictions list" - dropbox_passwords_policy_changed - "(team_policies) Changed Dropbox Passwords policy for team" - email_ingest_policy_changed - "(team_policies) Changed email to Dropbox policy for team" - emm_add_exception - "(team_policies) Added members to EMM exception list" - emm_change_policy - "(team_policies) Enabled/disabled enterprise mobility management for members" - emm_remove_exception - "(team_policies) Removed members from EMM exception list" - extended_version_history_change_policy - "(team_policies) Accepted/opted out of extended version history" - external_drive_backup_policy_changed - "(team_policies) Changed external drive backup policy for team" - file_comments_change_policy - "(team_policies) Enabled/disabled commenting on team files" - file_locking_policy_changed - "(team_policies) Changed file locking policy for team" - file_provider_migration_policy_changed - "(team_policies) Changed File Provider Migration policy for team" - file_requests_change_policy - "(team_policies) Enabled/disabled file requests" - file_requests_emails_enabled - "(team_policies) Enabled file request emails for everyone (deprecated, no longer logged)" - file_requests_emails_restricted_to_team_only - "(team_policies) Enabled file request emails for team (deprecated, no longer logged)" - file_transfers_policy_changed - "(team_policies) Changed file transfers policy for team" - folder_link_restriction_policy_changed - "(team_policies) Changed folder link restrictions policy for team" - google_sso_change_policy - "(team_policies) Enabled/disabled Google single sign-on for team" - group_user_management_change_policy - "(team_policies) Changed who can create groups" - integration_policy_changed - "(team_policies) Changed integration policy for team" - invite_acceptance_email_policy_changed - "(team_policies) Changed invite accept email policy for team" - member_requests_change_policy - "(team_policies) Changed whether users can find team when not invited" - member_send_invite_policy_changed - "(team_policies) Changed member send invite policy for team" - member_space_limits_add_exception - "(team_policies) Added members to member space limit exception list" - member_space_limits_change_caps_type_policy - "(team_policies) Changed member space limit type for team" - member_space_limits_change_policy - "(team_policies) Changed team default member space limit" - member_space_limits_remove_exception - "(team_policies) Removed members from member space limit exception list" - member_suggestions_change_policy - "(team_policies) Enabled/disabled option for team members to suggest people to add to team" - microsoft_office_addin_change_policy - "(team_policies) Enabled/disabled Microsoft Office add-in" - network_control_change_policy - "(team_policies) Enabled/disabled network control" - paper_change_deployment_policy - "(team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members" - paper_change_member_link_policy - "(team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged)" - paper_change_member_policy - "(team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or anyone by default" - paper_change_policy - "(team_policies) Enabled/disabled Dropbox Paper for team" - paper_default_folder_policy_changed - "(team_policies) Changed Paper Default Folder Policy setting for team" - paper_desktop_policy_changed - "(team_policies) Enabled/disabled Paper Desktop for team" - paper_enabled_users_group_addition - "(team_policies) Added users to Paper-enabled users list" - paper_enabled_users_group_removal - "(team_policies) Removed users from Paper-enabled users list" - password_strength_requirements_change_policy - "(team_policies) Changed team password strength requirements" - permanent_delete_change_policy - "(team_policies) Enabled/disabled ability of team members to permanently delete content" - reseller_support_change_policy - "(team_policies) Enabled/disabled reseller support" - rewind_policy_changed - "(team_policies) Changed Rewind policy for team" - send_for_signature_policy_changed - "(team_policies) Changed send for signature policy for team" - sharing_change_folder_join_policy - "(team_policies) Changed whether team members can join shared folders owned outside team" - sharing_change_link_allow_change_expiration_policy - "(team_policies) Changed the allow remove or change expiration policy for the links shared outside of the team" - sharing_change_link_default_expiration_policy - "(team_policies) Changed the default expiration for the links shared outside of the team" - sharing_change_link_enforce_password_policy - "(team_policies) Changed the password requirement for the links shared outside of the team" - sharing_change_link_policy - "(team_policies) Changed whether members can share links outside team, and if links are accessible only by team members or anyone by default" - sharing_change_member_policy - "(team_policies) Changed whether members can share files/folders outside team" - showcase_change_download_policy - "(team_policies) Enabled/disabled downloading files from Dropbox Showcase for team" - showcase_change_enabled_policy - "(team_policies) Enabled/disabled Dropbox Showcase for team" - showcase_change_external_sharing_policy - "(team_policies) Enabled/disabled sharing Dropbox Showcase externally for team" - smarter_smart_sync_policy_changed - "(team_policies) Changed automatic Smart Sync setting for team" - smart_sync_change_policy - "(team_policies) Changed default Smart Sync setting for team members" - smart_sync_not_opt_out - "(team_policies) Opted team into Smart Sync" - smart_sync_opt_out - "(team_policies) Opted team out of Smart Sync" - sso_change_policy - "(team_policies) Changed single sign-on setting for team" - team_branding_policy_changed - "(team_policies) Changed team branding policy for team" - team_extensions_policy_changed - "(team_policies) Changed App Integrations setting for team" - team_selective_sync_policy_changed - "(team_policies) Enabled/disabled Team Selective Sync for team" - team_sharing_whitelist_subjects_changed - "(team_policies) Edited the approved list for sharing externally" - tfa_add_exception - "(team_policies) Added members to two factor authentication exception list" - tfa_change_policy - "(team_policies) Changed two-step verification setting for team" - tfa_remove_exception - "(team_policies) Removed members from two factor authentication exception list" - two_account_change_policy - "(team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to same computer" - viewer_info_policy_changed - "(team_policies) Changed team policy for viewer info" - watermarking_policy_changed - "(team_policies) Changed watermarking policy for team" - web_sessions_change_active_session_limit - "(team_policies) Changed limit on active sessions per member" - web_sessions_change_fixed_length_policy - "(team_policies) Changed how long members can stay signed in to Dropbox.com" - web_sessions_change_idle_length_policy - "(team_policies) Changed how long team members can be idle while signed in to Dropbox.com" - data_residency_migration_request_successful - "(team_profile) Requested data residency migration for team data" - data_residency_migration_request_unsuccessful - "(team_profile) Request for data residency migration for team data has failed" - team_merge_from - "(team_profile) Merged another team into this team" - team_merge_to - "(team_profile) Merged this team into another team" - team_profile_add_background - "(team_profile) Added team background to display on shared link headers" - team_profile_add_logo - "(team_profile) Added team logo to display on shared link headers" - team_profile_change_background - "(team_profile) Changed team background displayed on shared link headers" - team_profile_change_default_language - "(team_profile) Changed default language for team" - team_profile_change_logo - "(team_profile) Changed team logo displayed on shared link headers" - team_profile_change_name - "(team_profile) Changed team name" - team_profile_remove_background - "(team_profile) Removed team background displayed on shared link headers" - team_profile_remove_logo - "(team_profile) Removed team logo displayed on shared link headers" - tfa_add_backup_phone - "(tfa) Added backup phone for two-step verification" - tfa_add_security_key - "(tfa) Added security key for two-step verification" - tfa_change_backup_phone - "(tfa) Changed backup phone for two-step verification" - tfa_change_status - "(tfa) Enabled/disabled/changed two-step verification setting" - tfa_remove_backup_phone - "(tfa) Removed backup phone for two-step verification" - tfa_remove_security_key - "(tfa) Removed security key for two-step verification" - tfa_reset - "(tfa) Reset two-step verification for team member" - changed_enterprise_admin_role - "(trusted_teams) Changed enterprise admin role" - changed_enterprise_connected_team_status - "(trusted_teams) Changed enterprise-connected team status" - ended_enterprise_admin_session - "(trusted_teams) Ended enterprise admin session" - ended_enterprise_admin_session_deprecated - "(trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session')" - enterprise_settings_locking - "(trusted_teams) Changed who can update a setting" - guest_admin_change_status - "(trusted_teams) Changed guest team admin status" - started_enterprise_admin_session - "(trusted_teams) Started enterprise admin session" - team_merge_request_accepted - "(trusted_teams) Accepted a team merge request" - team_merge_request_accepted_shown_to_primary_team - "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" - team_merge_request_accepted_shown_to_secondary_team - "(trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request')" - team_merge_request_auto_canceled - "(trusted_teams) Automatically canceled team merge request" - team_merge_request_canceled - "(trusted_teams) Canceled a team merge request" - team_merge_request_canceled_shown_to_primary_team - "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" - team_merge_request_canceled_shown_to_secondary_team - "(trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request')" - team_merge_request_expired - "(trusted_teams) Team merge request expired" - team_merge_request_expired_shown_to_primary_team - "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" - team_merge_request_expired_shown_to_secondary_team - "(trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired')" - team_merge_request_rejected_shown_to_primary_team - "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" - team_merge_request_rejected_shown_to_secondary_team - "(trusted_teams) Rejected a team merge request (deprecated, no longer logged)" - team_merge_request_reminder - "(trusted_teams) Sent a team merge request reminder" - team_merge_request_reminder_shown_to_primary_team - "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" - team_merge_request_reminder_shown_to_secondary_team - "(trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request reminder')" - team_merge_request_revoked - "(trusted_teams) Canceled the team merge" - team_merge_request_sent_shown_to_primary_team - "(trusted_teams) Requested to merge their Dropbox team into yours" - team_merge_request_sent_shown_to_secondary_team - "(trusted_teams) Requested to merge your team into another Dropbox team" - - example default - shared_content_download = null - - -struct TeamEvent - "An audit log event." - - timestamp common.DropboxTimestamp - "The Dropbox timestamp representing when the action was taken." - event_category EventCategory - "The category that this type of action belongs to." - actor ActorLogInfo? - "The entity who actually performed the action. Might be missing due to historical data gap." - origin OriginLogInfo? - "The origin from which the actor performed the action including information about host, ip address, location, session, etc. If the action was performed programmatically via the API the origin represents the API client." - involve_non_team_member Boolean? - "True if the action involved a non team member either as the actor or as one of the affected users. Might be missing due to historical data gap." - context ContextLogInfo? - "The user or team on whose behalf the actor performed the action. Might be missing due to historical data gap." - participants List(ParticipantLogInfo)? - "Zero or more users and/or groups that are affected by the action. Note that this list doesn't include any actors or users in context." - assets List(AssetLogInfo)? - "Zero or more content assets involved in the action. Currently these include Dropbox files and folders but in the future we might add other asset types such as Paper documents, folders, projects, etc." - event_type EventType - "The particular type of action taken." - details EventDetails - "The variable event schema applicable to this type of action, instantiated with respect to this particular action." - - example default - details = default - event_type = default - timestamp = "2017-01-25T15:51:30Z" - event_category = tfa - actor = default - origin = default - involve_non_team_member = true - context = default - participants = [default2] - assets = [default2] diff --git a/team_member_space_limits.stone b/team_member_space_limits.stone deleted file mode 100644 index 5ea11e2..0000000 --- a/team_member_space_limits.stone +++ /dev/null @@ -1,223 +0,0 @@ -namespace team - - -alias UserQuota = UInt32(min_value=15) - - -struct UserCustomQuotaArg - "User and their required custom quota in GB (1 TB = 1024 GB)." - user UserSelectorArg - quota_gb UserQuota - - example default - user=default - quota_gb=30 - - -struct UserCustomQuotaResult - "User and their custom quota in GB (1 TB = 1024 GB). - No quota returns if the user has no custom quota set." - user UserSelectorArg - quota_gb UserQuota? - - -struct SetCustomQuotaArg - users_and_quotas List(UserCustomQuotaArg) - "List of users and their custom quotas." - - example default - users_and_quotas=[default] - - -union CustomQuotaError - "Error returned when getting member custom quota." - - too_many_users - "A maximum of 1000 users can be set for a single call." - - -union SetCustomQuotaError extends CustomQuotaError - "Error returned when setting member custom quota." - - some_users_are_excluded - "Some of the users are on the excluded users list and can't have custom quota set." - - -union CustomQuotaResult - "User custom quota." - - success UserCustomQuotaResult - "User's custom quota." - invalid_user UserSelectorArg - "Invalid user (not in team)." - - -struct CustomQuotaUsersArg - users List(UserSelectorArg) - "List of users." - - example default - users=[default] - - -union RemoveCustomQuotaResult - "User result for setting member custom quota." - - success UserSelectorArg - "Successfully removed user." - invalid_user UserSelectorArg - "Invalid user (not in team)." - - -route member_space_limits/set_custom_quota(SetCustomQuotaArg, List(CustomQuotaResult), SetCustomQuotaError) - "Set users custom quota. Custom quota has to be at least 15GB. - A maximum of 1000 members can be specified in a single call. - Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. - (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space)." - - attrs - auth = "team" - scope = "members.read" - - -route member_space_limits/remove_custom_quota(CustomQuotaUsersArg, List(RemoveCustomQuotaResult), CustomQuotaError) - "Remove users custom quota. - A maximum of 1000 members can be specified in a single call. - Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. - (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space)." - - attrs - auth = "team" - scope = "members.write" - - -route member_space_limits/get_custom_quota(CustomQuotaUsersArg, List(CustomQuotaResult), CustomQuotaError) - "Get users custom quota. - A maximum of 1000 members can be specified in a single call. - Note: to apply a custom space limit, a team admin needs to set a member space limit for the team first. - (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space)." - - attrs - auth = "team" - scope = "members.read" - - -struct ExcludedUsersUpdateArg - "Argument of excluded users update operation. - Should include a list of users to add/remove (according to endpoint), - Maximum size of the list is 1000 users." - - users List(UserSelectorArg)? - "List of users to be added/removed." - - example default - users = [default] - - -union ExcludedUsersUpdateError - "Excluded users update error." - - users_not_in_team - "At least one of the users is not part of your team." - too_many_users - "A maximum of 1000 users for each of addition/removal can be supplied." - - -struct ExcludedUsersListArg - "Excluded users list argument." - - limit UInt32(min_value=1, max_value=1000) = 1000 - "Number of results to return per call." - - example default - limit = 100 - - -struct ExcludedUsersListContinueArg - "Excluded users list continue argument." - - cursor String - "Indicates from what point to get the next set of users." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - - -struct ExcludedUsersListResult - "Excluded users list result." - - users List(MemberProfile) - cursor String? - "Pass the cursor into :route:`member_space_limits/excluded_users/list/continue` to obtain - additional excluded users." - has_more Boolean - "Is true if there are additional excluded users that have not been returned - yet. An additional call to :route:`member_space_limits/excluded_users/list/continue` can - retrieve them." - - example default - users = [] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = false - - -union ExcludedUsersUpdateStatus - "Excluded users update operation status." - - success - "Update successful." - - -struct ExcludedUsersUpdateResult - "Excluded users update result." - - status ExcludedUsersUpdateStatus - "Update status." - - example default - status = success - - -union ExcludedUsersListError - "Excluded users list error." - - list_error - "An error occurred." - - -union ExcludedUsersListContinueError - "Excluded users list continue error." - - invalid_cursor - "The cursor is invalid." - - -route member_space_limits/excluded_users/add(ExcludedUsersUpdateArg, ExcludedUsersUpdateResult, ExcludedUsersUpdateError) - "Add users to member space limits excluded users list." - - attrs - auth = "team" - scope = "members.write" - - -route member_space_limits/excluded_users/remove(ExcludedUsersUpdateArg, ExcludedUsersUpdateResult, ExcludedUsersUpdateError) - "Remove users from member space limits excluded users list." - - attrs - auth = "team" - scope = "members.write" - -route member_space_limits/excluded_users/list(ExcludedUsersListArg, ExcludedUsersListResult, ExcludedUsersListError) - "List member space limits excluded users." - - attrs - auth = "team" - scope = "members.read" - - -route member_space_limits/excluded_users/list/continue(ExcludedUsersListContinueArg, ExcludedUsersListResult, ExcludedUsersListContinueError) - "Continue listing member space limits excluded users." - - attrs - auth = "team" - scope = "members.read" diff --git a/team_members.stone b/team_members.stone deleted file mode 100644 index b430761..0000000 --- a/team_members.stone +++ /dev/null @@ -1,1098 +0,0 @@ -namespace team - -import account -import async -import users -import common -import team_common - -alias TeamMemberRoleId = String(pattern="pid_dbtmr:.*", max_length=128) - -struct TeamMemberRole - "A role which can be attached to a team member. This replaces AdminTier; each AdminTier corresponds to a new TeamMemberRole with a matching name." - - role_id TeamMemberRoleId - "A string containing encoded role ID. For roles defined by Dropbox, this is the same across all teams." - name String(max_length=32) - "The role display name." - description String(max_length=256) - "Role description. Describes which permissions come with this role." - - example team_member_role_super - role_id = "pid_dbtmr:2345" - name = "Team admin" - description = "User can do most user provisioning, de-provisioning and management." - - example team_member_role_user_management - role_id = "pid_dbtmr:3456" - name = "User management admin" - description = "Add, remove, and manage member accounts." - - example team_member_role_support - role_id = "pid_dbtmr:4567" - name = "Support admin" - description = "Help members with limited tasks, including password reset." - - example team_member_role_billing - role_id = "pid_dbtmr:5678" - name = "Billing admin" - description = "Make payments and renew contracts." - - -union_closed AdminTier - "Describes which team-related admin permissions a user has." - - team_admin - "User is an administrator of the team - has all permissions." - user_management_admin - "User can do most user provisioning, de-provisioning and management." - support_admin - "User can do a limited set of common support tasks for existing users. Note: Dropbox is adding new types of admin roles; these may display as support_admin." - member_only - "User is not an admin of the team." - - example default - member_only = null - -# -# Common structs -# - -struct TeamMemberProfile extends MemberProfile - "Profile of a user as a member of a team." - - groups List(team_common.GroupId) - "List of group IDs of groups that the user belongs to." - member_folder_id common.NamespaceId - "The namespace id of the user's root folder." - - example default - team_member_id = "dbmid:FDFSVF-DFSDF" - account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" - external_id = "244423" - email = "tami@seagull.com" - email_verified = false - secondary_emails = [third_sec_email, default] - status = active - name = default - groups = ["g:e2db7665347abcd600000000001a2b3c"] - membership_type = full - joined_on = "2015-05-12T15:50:38Z" - member_folder_id = "20" - profile_photo_url = "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102&size=128x128" - -union_closed MemberSelectorError extends UserSelectorError - user_not_in_team - "The user is not a member of the team." - - -######################## -# Member info routes -######################## - -# -# Route: members/list -# - -struct MembersListArg - limit UInt32(min_value=1, max_value=1000) = 1000 - "Number of results to return per call." - include_removed Boolean = false - "Whether to return removed members." - - example default - limit = 100 - include_removed = false - - -struct TeamMemberInfoV2 - "Information about a team member." - - profile TeamMemberProfile - "Profile of a user as a member of a team." - roles List(TeamMemberRole)? - "The user's roles in the team." - - example default - profile = default - roles = [team_member_role_user_management] - - -struct TeamMemberInfoV2Result - "Information about a team member, after the change, like at :route:`members/set_profile:2`." - - member_info TeamMemberInfoV2 - "Member info, after the change." - - example default - member_info = default - - -struct TeamMemberInfo - "Information about a team member." - - profile TeamMemberProfile - "Profile of a user as a member of a team." - role AdminTier - "The user's role in the team." - - example default - profile = default - role = member_only - -struct MembersListV2Result - members List(TeamMemberInfoV2) - "List of team members." - cursor String - "Pass the cursor into :route:`members/list/continue:2` to obtain the additional members." - has_more Boolean - "Is true if there are additional team members that have not been returned - yet. An additional call to :route:`members/list/continue:2` can retrieve them." - - example default - members = [default] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = true - - -struct MembersListResult - members List(TeamMemberInfo) - "List of team members." - cursor String - "Pass the cursor into :route:`members/list/continue` to obtain the additional members." - has_more Boolean - "Is true if there are additional team members that have not been returned - yet. An additional call to :route:`members/list/continue` can retrieve them." - - example default - members = [default] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = true - - -union MembersListError - "" - - -route members/list:2(MembersListArg, MembersListV2Result, MembersListError) - "Lists members of a team. - - Permission : Team information." - - attrs - auth = "team" - scope = "members.read" - - - -route members/list(MembersListArg, MembersListResult, MembersListError) - "Lists members of a team. - - Permission : Team information." - - attrs - auth = "team" - scope = "members.read" - - -# -# Route: members/list/continue -# - -struct MembersListContinueArg - cursor String - "Indicates from what point to get the next set of members." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - -union MembersListContinueError - invalid_cursor - "The cursor is invalid." - -route members/list/continue:2(MembersListContinueArg, MembersListV2Result, MembersListContinueError) - "Once a cursor has been retrieved from :route:`members/list:2`, use this to paginate - through all team members. - - Permission : Team information." - - attrs - auth = "team" - scope = "members.read" - -route members/list/continue(MembersListContinueArg, MembersListResult, MembersListContinueError) - "Once a cursor has been retrieved from :route:`members/list`, use this to paginate - through all team members. - - Permission : Team information." - - attrs - auth = "team" - scope = "members.read" - - -# -# Route: members/get_info -# - -struct MembersGetInfoV2Arg - members List(UserSelectorArg) - "List of team members." - - example default - members = [default] - -struct MembersGetInfoArgs - members List(UserSelectorArg) - "List of team members." - - example default - members = [default] - -union_closed MembersGetInfoItemBase - id_not_found String - "An ID that was provided as a parameter to :route:`members/get_info` or :route:`members/get_info:2`, - and did not match a corresponding user. This might be a team_member_id, an - email, or an external ID, depending on how the method was called." - -union MembersGetInfoItemV2 extends MembersGetInfoItemBase - "Describes a result obtained for a single user whose id was specified in the - parameter of :route:`members/get_info:2`." - - member_info TeamMemberInfoV2 - "Info about a team member." - - example default - member_info = default - - -union_closed MembersGetInfoItem extends MembersGetInfoItemBase - "Describes a result obtained for a single user whose id was specified in the - parameter of :route:`members/get_info`." - - member_info TeamMemberInfo - "Info about a team member." - - example default - member_info = default - - -# Information returned by :route:`members/get_info`. -# describing multiple team members." -alias MembersGetInfoResult = List(MembersGetInfoItem) - -struct MembersGetInfoV2Result - members_info List(MembersGetInfoItemV2) - "List of team members info." - - example default - members_info = [default] - - -union MembersGetInfoError - "" - -route members/get_info:2(MembersGetInfoV2Arg, MembersGetInfoV2Result, MembersGetInfoError) - "Returns information about multiple team members. - - Permission : Team information - - This endpoint will return :field:`MembersGetInfoItem.id_not_found`, - for IDs (or emails) that cannot be matched to a valid team member." - - attrs - auth = "team" - scope = "members.read" - - -route members/get_info(MembersGetInfoArgs, MembersGetInfoResult, MembersGetInfoError) - "Returns information about multiple team members. - - Permission : Team information - - This endpoint will return :field:`MembersGetInfoItem.id_not_found`, - for IDs (or emails) that cannot be matched to a valid team member." - - attrs - auth = "team" - scope = "members.read" - - -########################## -# Member management routes -########################## - - -# -# Route members/add -# - -struct MemberAddArgBase - member_email common.EmailAddress - member_given_name common.OptionalNamePart? - "Member's first name." - member_surname common.OptionalNamePart? - "Member's last name." - member_external_id team_common.MemberExternalId? - "External ID for member." - member_persistent_id String? - "Persistent ID for member. This field is only available to teams using persistent ID SAML configuration." - send_welcome_email Boolean = true - "Whether to send a welcome email to the member. - If send_welcome_email is false, no email invitation will be sent to the user. - This may be useful for apps using single sign-on (SSO) flows for onboarding that - want to handle announcements themselves." - is_directory_restricted Boolean? - "Whether a user is directory restricted." - - example default - member_email = "tom.s@company.com" - member_given_name = "Tom" - member_surname = "Silverstone" - member_external_id = "company_id:342432" - -struct MemberAddArg extends MemberAddArgBase - role AdminTier = member_only - - example default - member_email = "tom.s@company.com" - member_given_name = "Tom" - member_surname = "Silverstone" - member_external_id = "company_id:342432" - role = default - -struct MemberAddV2Arg extends MemberAddArgBase - role_ids List(TeamMemberRoleId, max_items=1)? - - example default - member_email = "tom.s@company.com" - member_given_name = "Tom" - member_surname = "Silverstone" - member_external_id = "company_id:342432" - role_ids = ["pid_dbtmr:2345"] - -struct MembersAddArgBase - force_async Boolean = false - "Whether to force the add to happen asynchronously." - - example default - force_async = true - -struct MembersAddV2Arg extends MembersAddArgBase - new_members List(MemberAddV2Arg) - "Details of new members to be added to the team." - - example default - new_members = [default] - -struct MembersAddArg extends MembersAddArgBase - new_members List(MemberAddArg) - "Details of new members to be added to the team." - - example default - new_members = [default] - -union_closed MemberAddResultBase - team_license_limit common.EmailAddress - "Team is already full. The organization has no available licenses." - free_team_member_limit_reached common.EmailAddress - "Team is already full. The free team member limit has been reached." - user_already_on_team common.EmailAddress - "User is already on this team. The provided email address is associated - with a user who is already a member of (including in recoverable state) or invited to the team." - user_on_another_team common.EmailAddress - "User is already on another team. The provided email address is associated - with a user that is already a member or invited to another team." - user_already_paired common.EmailAddress - "User is already paired." - user_migration_failed common.EmailAddress - "User migration has failed." - duplicate_external_member_id common.EmailAddress - "A user with the given external member ID already exists on the team (including in recoverable state)." - duplicate_member_persistent_id common.EmailAddress - "A user with the given persistent ID already exists on the team (including in recoverable state)." - persistent_id_disabled common.EmailAddress - "Persistent ID is only available to teams with persistent ID SAML configuration. Please contact Dropbox for more information." - user_creation_failed common.EmailAddress - "User creation has failed." - - example default - team_license_limit = "apple@orange.com" - - -union MemberAddV2Result extends MemberAddResultBase - "Describes the result of attempting to add a single user to the team. - 'success' is the only value indicating that a user was indeed added to the team - - the other values explain the type of failure that occurred, and include the email - of the user for which the operation has failed." - - success TeamMemberInfoV2 - "Describes a user that was successfully added to the team." - - example default - success = default - -union_closed MemberAddResult extends MemberAddResultBase - "Describes the result of attempting to add a single user to the team. - 'success' is the only value indicating that a user was indeed added to the team - - the other values explain the type of failure that occurred, and include the email - of the user for which the operation has failed." - - success TeamMemberInfo - "Describes a user that was successfully added to the team." - - example default - success = default - -union MembersAddLaunchV2Result extends async.LaunchResultBase - complete List(MemberAddV2Result) - - example default - complete = [default] - -union_closed MembersAddLaunch extends async.LaunchResultBase - complete List(MemberAddResult) - - example default - complete = [default] - -route members/add:2(MembersAddV2Arg, MembersAddLaunchV2Result, Void) - "Adds members to a team. - - Permission : Team member management - - A maximum of 20 members can be specified in a single call. - - If no Dropbox account exists with the email address specified, a new Dropbox account will - be created with the given email address, and that account will be invited to the team. - - If a personal Dropbox account exists with the email address specified in the call, - this call will create a placeholder Dropbox account for the user on the team and send an - email inviting the user to migrate their existing personal account onto the team. - - Team member management apps are required to set an initial given_name and surname for a - user to use in the team invitation and for 'Perform as team member' actions taken on - the user before they become 'active'." - - attrs - auth = "team" - scope = "members.write" - -route members/add(MembersAddArg, MembersAddLaunch, Void) - "Adds members to a team. - - Permission : Team member management - - A maximum of 20 members can be specified in a single call. - - If no Dropbox account exists with the email address specified, a new Dropbox account will - be created with the given email address, and that account will be invited to the team. - - If a personal Dropbox account exists with the email address specified in the call, - this call will create a placeholder Dropbox account for the user on the team and send an - email inviting the user to migrate their existing personal account onto the team. - - Team member management apps are required to set an initial given_name and surname for a - user to use in the team invitation and for 'Perform as team member' actions taken on - the user before they become 'active'." - - attrs - auth = "team" - scope = "members.write" - -# -# Route members/add/job_status/get -# - -union MembersAddJobStatusV2Result extends async.PollResultBase - complete List(MemberAddV2Result) - "The asynchronous job has finished. For each member that was specified in the - parameter :type:`MembersAddArg` that was provided to :route:`members/add:2`, a - corresponding item is returned in this list." - failed String - "The asynchronous job returned an error. The string contains an error message." - - example default - complete = [default] - -union_closed MembersAddJobStatus extends async.PollResultBase - complete List(MemberAddResult) - "The asynchronous job has finished. For each member that was specified in the - parameter :type:`MembersAddArg` that was provided to :route:`members/add`, a - corresponding item is returned in this list." - failed String - "The asynchronous job returned an error. The string contains an error message." - - example default - complete = [default] - -route members/add/job_status/get:2(async.PollArg, MembersAddJobStatusV2Result, async.PollError) - "Once an async_job_id is returned from :route:`members/add:2` , - use this to poll the status of the asynchronous request. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -route members/add/job_status/get(async.PollArg, MembersAddJobStatus, async.PollError) - "Once an async_job_id is returned from :route:`members/add` , - use this to poll the status of the asynchronous request. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - -# -# Route members/set_profile -# - -# Note that we do not allow changing 'familiar_name' and 'display_name from users.Name, since they -# are derived from the given_name, surname and locale. -struct MembersSetProfileArg - "Exactly one of team_member_id, email, or external_id must be provided to identify the user account. - - At least one of new_email, new_external_id, new_given_name, and/or new_surname must be provided." - - user UserSelectorArg - "Identity of user whose profile will be set." - new_email common.EmailAddress? - "New email for member." - new_external_id team_common.MemberExternalId? - "New external ID for member." - new_given_name common.OptionalNamePart? - "New given name for member." - new_surname common.OptionalNamePart? - "New surname for member." - new_persistent_id String? - "New persistent ID. This field only available to teams using persistent ID SAML configuration." - new_is_directory_restricted Boolean? - "New value for whether the user is a directory restricted user." - - example default - user = default - new_email = "t.smith@domain.com" - new_surname = "Smith" - -union MembersSetProfileError extends MemberSelectorError - external_id_and_new_external_id_unsafe - "It is unsafe to use both external_id and new_external_id." - no_new_data_specified - "None of new_email, new_given_name, new_surname, or new_external_id are specified." - email_reserved_for_other_user - "Email is already reserved for another user." - external_id_used_by_other_user - "The external ID is already in use by another team member." - set_profile_disallowed - "Modifying deleted users is not allowed." - param_cannot_be_empty - "Parameter new_email cannot be empty." - persistent_id_disabled - "Persistent ID is only available to teams with persistent ID SAML configuration. Please contact Dropbox for more information." - persistent_id_used_by_other_user - "The persistent ID is already in use by another team member." - directory_restricted_off - "Directory Restrictions option is not available." - - -route members/set_profile:2(MembersSetProfileArg, TeamMemberInfoV2Result, MembersSetProfileError) - "Updates a team member's profile. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -route members/set_profile(MembersSetProfileArg, TeamMemberInfo, MembersSetProfileError) - "Updates a team member's profile. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -# -# Route members/set_profile_photo -# - -struct MembersSetProfilePhotoArg - user UserSelectorArg - "Identity of the user whose profile photo will be set." - photo account.PhotoSourceArg - "Image to set as the member's new profile photo." - - example default - user = default - photo = default - - -union MembersSetProfilePhotoError extends MemberSelectorError - set_profile_disallowed - "Modifying deleted users is not allowed." - photo_error account.SetProfilePhotoError - - -route members/set_profile_photo:2(MembersSetProfilePhotoArg, TeamMemberInfoV2Result, MembersSetProfilePhotoError) - "Updates a team member's profile photo. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -route members/set_profile_photo(MembersSetProfilePhotoArg, TeamMemberInfo, MembersSetProfilePhotoError) - "Updates a team member's profile photo. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -# -# Route members/delete_profile_photo -# - -struct MembersDeleteProfilePhotoArg - user UserSelectorArg - "Identity of the user whose profile photo will be deleted." - - example default - user = default - - -union MembersDeleteProfilePhotoError extends MemberSelectorError - set_profile_disallowed - "Modifying deleted users is not allowed." - - -route members/delete_profile_photo:2(MembersDeleteProfilePhotoArg, TeamMemberInfoV2Result, MembersDeleteProfilePhotoError) - "Deletes a team member's profile photo. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - -route members/delete_profile_photo(MembersDeleteProfilePhotoArg, TeamMemberInfo, MembersDeleteProfilePhotoError) - "Deletes a team member's profile photo. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -# -# Route members/get_available_team_member_roles -# - -struct MembersGetAvailableTeamMemberRolesResult - "Available TeamMemberRole for the connected team. To be used with :route:`members/set_admin_permissions:2`." - - roles List(TeamMemberRole) - "Available roles." - - example default - roles = [team_member_role_super, team_member_role_billing, team_member_role_user_management, team_member_role_support] - - -route members/get_available_team_member_roles(Void, MembersGetAvailableTeamMemberRolesResult, Void) - "Get available TeamMemberRoles for the connected team. To be used with :route:`members/set_admin_permissions:2`. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.read" - -# -# Route members/set_admin_permissions:2 -# - -struct MembersSetPermissions2Arg - "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." - - user UserSelectorArg - "Identity of user whose role will be set." - new_roles List(TeamMemberRoleId, max_items=1)? - "The new roles for the member. Send empty list to make user member only. For now, only up to one role is allowed." - - example default - user = default - new_roles = ["pid_dbtmr:1234"] - -struct MembersSetPermissions2Result - team_member_id team_common.TeamMemberId - "The member ID of the user to which the change was applied." - roles List(TeamMemberRole)? - "The roles after the change. Empty in case the user become a non-admin." - - example default - team_member_id = "dbmid:9978889" - roles = [team_member_role_user_management] - -union MembersSetPermissions2Error extends UserSelectorError - last_admin - "Cannot remove the admin setting of the last admin." - user_not_in_team - "The user is not a member of the team." - cannot_set_permissions - "Cannot remove/grant permissions. This can happen if the team member is suspended." - role_not_found - "No matching role found. At least one of the provided new_roles does not exist on this team." - - -route members/set_admin_permissions:2(MembersSetPermissions2Arg, MembersSetPermissions2Result, MembersSetPermissions2Error) - "Updates a team member's permissions. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -# -# Route members/set_admin_permissions -# - -struct MembersSetPermissionsArg - "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." - - user UserSelectorArg - "Identity of user whose role will be set." - new_role AdminTier - "The new role of the member." - - example default - user = default - new_role = default - - -struct MembersSetPermissionsResult - team_member_id team_common.TeamMemberId - "The member ID of the user to which the change was applied." - role AdminTier - "The role after the change." - - example default - team_member_id = "dbmid:9978889" - role = default - - -union MembersSetPermissionsError extends UserSelectorError - last_admin - "Cannot remove the admin setting of the last admin." - user_not_in_team - "The user is not a member of the team." - cannot_set_permissions - "Cannot remove/grant permissions." - team_license_limit - "Team is full. The organization has no available licenses." - -route members/set_admin_permissions(MembersSetPermissionsArg, MembersSetPermissionsResult, MembersSetPermissionsError) - "Updates a team member's permissions. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -# -# Route members/send_welcome_email -# - -union MembersSendWelcomeError extends MemberSelectorError - "" - -route members/send_welcome_email(UserSelectorArg, Void, MembersSendWelcomeError) - "Sends welcome email to pending team member. - - Permission : Team member management - - Exactly one of team_member_id, email, or external_id must be provided to identify the user account. - - No-op if team member is not pending." - - attrs - auth = "team" - scope = "members.write" - - -# -# Route members/remove -# - -struct MembersDeactivateBaseArg - "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." - - user UserSelectorArg - "Identity of user to remove/suspend/have their files moved." - -struct MembersDeactivateArg extends MembersDeactivateBaseArg - wipe_data Boolean = true - "If provided, controls if the user's data will be deleted on their linked devices." - - example default - user = default - wipe_data = false - -struct MembersRemoveArg extends MembersDeactivateArg - transfer_dest_id UserSelectorArg? - "If provided, files from the deleted member account will be - transferred to this user." - transfer_admin_id UserSelectorArg? - "If provided, errors during the transfer process will be sent via - email to this user. If the transfer_dest_id argument was provided, - then this argument must be provided as well." - keep_account Boolean = false - "Downgrade the member to a Basic account. The user will retain the email address associated with their Dropbox - account and data in their account that is not restricted to team members. In order to keep the account the argument :field:`wipe_data` should be set to :val:`false`." - retain_team_shares Boolean = false - "If provided, allows removed users to keep access to Dropbox folders (not Dropbox Paper folders) already explicitly shared with them (not via a group) when they are downgraded to a Basic account. - Users will not retain access to folders that do not allow external sharing. In order to keep the sharing relationships, - the arguments :field:`wipe_data` should be set to :val:`false` and :field:`keep_account` should be set to :val:`true`." - - example default - user = default - wipe_data = true - transfer_dest_id = default - transfer_admin_id = default - keep_account = false - retain_team_shares = false - -union MembersDeactivateError extends UserSelectorError - user_not_in_team - "The user is not a member of the team." - -union MembersTransferFilesError extends MembersDeactivateError - removed_and_transfer_dest_should_differ - "Expected removed user and transfer_dest user to be different." - removed_and_transfer_admin_should_differ - "Expected removed user and transfer_admin user to be different." - transfer_dest_user_not_found - "No matching user found for the argument transfer_dest_id." - transfer_dest_user_not_in_team - "The provided transfer_dest_id does not exist on this team." - transfer_admin_user_not_in_team - "The provided transfer_admin_id does not exist on this team." - transfer_admin_user_not_found - "No matching user found for the argument transfer_admin_id." - unspecified_transfer_admin_id - "The transfer_admin_id argument must be provided when file transfer is requested." - transfer_admin_is_not_admin - "Specified transfer_admin user is not a team admin." - recipient_not_verified - "The recipient user's email is not verified." - -union MembersRemoveError extends MembersTransferFilesError - remove_last_admin - "The user is the last admin of the team, so it cannot be removed from it." - cannot_keep_account_and_transfer - "Cannot keep account and transfer the data to another user at the same time." - cannot_keep_account_and_delete_data - "Cannot keep account and delete the data at the same time. To keep the account the argument wipe_data should be set to :val:`false`." - email_address_too_long_to_be_disabled - # Added value in order to handle task T82902. - "The email address of the user is too long to be disabled." - cannot_keep_invited_user_account - "Cannot keep account of an invited user." - cannot_retain_shares_when_data_wiped - "Cannot retain team shares when the user's data is marked for deletion on their linked devices. The argument wipe_data should be set to :val:`false`." - cannot_retain_shares_when_no_account_kept - "The user's account must be kept in order to retain team shares. The argument keep_account should be set to :val:`true`." - cannot_retain_shares_when_team_external_sharing_off - "Externally sharing files, folders, and links must be enabled in team settings in order to retain team shares for the user." - cannot_keep_account - "Only a team admin, can convert this account to a Basic account." - cannot_keep_account_under_legal_hold - "This user content is currently being held. To convert this member's account to a Basic account, you'll first need to remove them from the hold." - cannot_keep_account_required_to_sign_tos - "To convert this member to a Basic account, they'll first need to sign in to Dropbox and agree to the terms of service." - -route members/remove(MembersRemoveArg, async.LaunchEmptyResult, MembersRemoveError) - "Removes a member from a team. - - Permission : Team member management - - Exactly one of team_member_id, email, or external_id must be provided to identify the user account. - - Accounts can be recovered via :route:`members/recover` for a 7 day period - or until the account has been permanently deleted or transferred to another account - (whichever comes first). Calling :route:`members/add` while a user is still recoverable - on your team will return with :field:`MemberAddResult.user_already_on_team`. - - Accounts can have their files transferred via the admin console for a limited time, based on the version history - length associated with the team (180 days for most teams). - - This endpoint may initiate an asynchronous job. To obtain the final result - of the job, the client should periodically poll :route:`members/remove/job_status/get`." - - attrs - auth = "team" - scope = "members.delete" - -# -# Route members/remove/job_status/get -# - -route members/remove/job_status/get(async.PollArg, async.PollEmptyResult, async.PollError) - "Once an async_job_id is returned from :route:`members/remove` , - use this to poll the status of the asynchronous request. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.delete" - -# -# Route members/suspend -# - -union MembersSuspendError extends MembersDeactivateError - suspend_inactive_user - "The user is not active, so it cannot be suspended." - suspend_last_admin - "The user is the last admin of the team, so it cannot be suspended." - team_license_limit - "Team is full. The organization has no available licenses." - -route members/suspend(MembersDeactivateArg, Void, MembersSuspendError) - "Suspend a member from a team. - - Permission : Team member management - - Exactly one of team_member_id, email, or external_id must be provided to identify the user account." - - attrs - auth = "team" - scope = "members.write" - -# -# Route members/unsuspend -# - -struct MembersUnsuspendArg - "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." - - user UserSelectorArg - "Identity of user to unsuspend." - - example default - user = default - - -union MembersUnsuspendError extends MembersDeactivateError - unsuspend_non_suspended_member - "The user is unsuspended, so it cannot be unsuspended again." - team_license_limit - "Team is full. The organization has no available licenses." - -route members/unsuspend(MembersUnsuspendArg, Void, MembersUnsuspendError) - "Unsuspend a member from a team. - - Permission : Team member management - - Exactly one of team_member_id, email, or external_id must be provided to identify the user account." - - attrs - auth = "team" - scope = "members.write" - -# -# Route members/recover -# - -struct MembersRecoverArg - "Exactly one of team_member_id, email, or external_id must be provided to identify the user account." - - user UserSelectorArg - "Identity of user to recover." - - example default - user = default - - -union MembersRecoverError extends UserSelectorError - user_unrecoverable - "The user is not recoverable." - user_not_in_team - "The user is not a member of the team." - team_license_limit - "Team is full. The organization has no available licenses." - -route members/recover(MembersRecoverArg, Void, MembersRecoverError) - "Recover a deleted member. - - Permission : Team member management - - Exactly one of team_member_id, email, or external_id must be provided to identify the user account." - - attrs - auth = "team" - scope = "members.delete" - -# manage_former_member_files - -union MembersTransferFormerMembersFilesError extends MembersTransferFilesError - user_data_is_being_transferred - "The user's data is being transferred. Please wait some time before retrying." - user_not_removed - "No matching removed user found for the argument user." - user_data_cannot_be_transferred - "User files aren't transferable anymore." - user_data_already_transferred - "User's data has already been transferred to another user." - -struct MembersDataTransferArg extends MembersDeactivateBaseArg - transfer_dest_id UserSelectorArg - "Files from the deleted member account will be transferred to this user." - transfer_admin_id UserSelectorArg - "Errors during the transfer process will be sent via - email to this user." - - example default - user = default - transfer_dest_id = default - transfer_admin_id = default - -# Routes - moving removed user's files - -route members/move_former_member_files(MembersDataTransferArg, async.LaunchEmptyResult, MembersTransferFormerMembersFilesError) - "Moves removed member's files to a different member. This endpoint initiates an asynchronous job. To obtain the final result - of the job, the client should periodically poll :route:`members/move_former_member_files/job_status/check`. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - -# This is a duplicate of route members/remove/job_status/get - -route members/move_former_member_files/job_status/check(async.PollArg, async.PollEmptyResult, async.PollError) - "Once an async_job_id is returned from :route:`members/move_former_member_files` , - use this to poll the status of the asynchronous request. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" diff --git a/team_namespaces.stone b/team_namespaces.stone deleted file mode 100644 index 6b0da23..0000000 --- a/team_namespaces.stone +++ /dev/null @@ -1,108 +0,0 @@ -namespace team - -import common -import team_common - -# -# Route namespaces/list -# - -union NamespaceType - app_folder - "App sandbox folder." - shared_folder - "Shared folder." - team_folder - "Top-level team-owned folder." - team_member_folder - "Team member's home folder." - -struct NamespaceMetadata - "Properties of a namespace." - - name String - "The name of this namespace." - namespace_id common.SharedFolderId - "The ID of this namespace." - namespace_type NamespaceType - "The type of this namespace." - team_member_id team_common.TeamMemberId? - "If this is a team member or app folder, the ID of the owning team member. - Otherwise, this field is not present." - - example shared_folder - name = "Marketing" - namespace_id = "123456789" - namespace_type = shared_folder - - example team_member_folder - name = "Franz Ferdinand" - namespace_id = "123456789" - namespace_type = team_member_folder - team_member_id = "dbmid:1234567" - -struct TeamNamespacesListResult - "Result for :route:`namespaces/list`." - - namespaces List(NamespaceMetadata) - "List of all namespaces the team can access." - cursor String - "Pass the cursor into :route:`namespaces/list/continue` to obtain - additional namespaces. Note that duplicate namespaces may be returned." - has_more Boolean - "Is true if there are additional namespaces that have not been returned yet." - - example default - namespaces = [shared_folder, team_member_folder] - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - has_more = false - -route namespaces/list(TeamNamespacesListArg, TeamNamespacesListResult, TeamNamespacesListError) - "Returns a list of all team-accessible namespaces. This list includes team folders, - shared folders containing team members, team members' home namespaces, and team members' - app folders. Home namespaces and app folders are always owned by this team or members of the - team, but shared folders may be owned by other users or other teams. Duplicates may occur in the - list." - - attrs - auth = "team" - scope = "team_data.member" - -struct TeamNamespacesListArg - - limit UInt32(min_value=1, max_value=1000) = 1000 - "Specifying a value here has no effect." - - example default - limit = 1 - -# -# Route namespaces/list/continue -# - -route namespaces/list/continue(TeamNamespacesListContinueArg, TeamNamespacesListResult, TeamNamespacesListContinueError) - "Once a cursor has been retrieved from :route:`namespaces/list`, use this to paginate - through all team-accessible namespaces. Duplicates may occur in the list." - - attrs - auth = "team" - scope = "team_data.member" - -struct TeamNamespacesListContinueArg - cursor String - "Indicates from what point to get the next set of team-accessible namespaces." - - example default - cursor = "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" - -union TeamNamespacesListContinueError extends TeamNamespacesListError - invalid_cursor - "The cursor is invalid." - - -# -# Generic Error -# -union TeamNamespacesListError - invalid_arg - "Argument passed in is invalid." diff --git a/team_policies.stone b/team_policies.stone index 2c64b8c..98a85af 100644 --- a/team_policies.stone +++ b/team_policies.stone @@ -2,7 +2,6 @@ namespace team_policies struct TeamMemberPolicies "Policies governing team members." - sharing TeamSharingPolicies "Policies governing sharing." emm_state EmmState @@ -16,16 +15,18 @@ struct TeamMemberPolicies "The admin policy around the Dropbox Office Add-In for this team." suggest_members_policy SuggestMembersPolicy "The team policy on if teammembers are allowed to suggest users for admins to invite to the team." + top_level_content_policy TopLevelContentPolicy + "Policy for deciding whether members can edit team folders at the top level of the team space." example default sharing = default emm_state = disabled office_addin = disabled suggest_members_policy = enabled + top_level_content_policy = admin_only struct TeamSharingPolicies "Policies governing sharing within and outside of the team." - shared_folder_member_policy SharedFolderMemberPolicy "Who can join folders shared by team members." shared_folder_join_policy SharedFolderJoinPolicy @@ -36,6 +37,12 @@ struct TeamSharingPolicies "Who can create groups." shared_folder_link_restriction_policy SharedFolderBlanketLinkRestrictionPolicy "Who can view links to content in shared folders." + enforce_link_password_policy EnforceLinkPasswordPolicy + "If passwords are required for new links shared outside the team." + default_link_expiration_days_policy DefaultLinkExpirationDaysPolicy + "Default expiration date for new links shared outside the team." + shared_link_default_permissions_policy SharedLinkDefaultPermissionsPolicy + "Default access level for new links shared by team members." example default shared_folder_member_policy = team @@ -43,20 +50,21 @@ struct TeamSharingPolicies shared_link_create_policy = team_only group_creation_policy = admins_only shared_folder_link_restriction_policy = anyone + enforce_link_password_policy = optional + default_link_expiration_days_policy = none + shared_link_default_permissions_policy = default -# NOTE: we do not reuse sharing.MemberPolicy here since we may want to enable folder-specific member -# policies that work on top of the broader team policies. union SharedFolderMemberPolicy "Policy governing who can be a member of a folder shared by a team member." - team "Only a teammate can be a member of a folder shared by a team member." anyone "Anyone can be a member of a folder shared by a team member." + team_and_approved + "Only a teammate and approved people can be a member of a folder shared by a team member." union SharedFolderJoinPolicy "Policy governing which shared folders a team member can join." - from_team_only "Team members can only join folders shared by teammates." from_anyone @@ -65,7 +73,6 @@ union SharedFolderJoinPolicy union SharedLinkCreatePolicy "Policy governing the visibility of shared links. This policy can apply to newly created shared links, or all shared links." - default_public "By default, anyone can access newly created shared links. No login will be required to access the shared links unless overridden." @@ -81,12 +88,37 @@ union SharedLinkCreatePolicy union SharedFolderBlanketLinkRestrictionPolicy "Policy governing whether shared folder membership is required to access shared links." - members "Only members of shared folders can access folder content via shared link." anyone "Anyone can access folder content via shared link." +union EnforceLinkPasswordPolicy + "Policy governing whether new links shared outside the team require passwords." + optional + "New links shared outside the team do not require passwords." + required + "New links shared outside the team require passwords." + +union DefaultLinkExpirationDaysPolicy + "Policy governing default expiration date for new links shared outside the team." + none + "New links shared outside the team default to no expiration date." + day_1 + "New links shared outside the team default to expire in one day." + day_3 + "New links shared outside the team default to expire in three days." + day_7 + "New links shared outside the team default to expire in seven days." + day_30 + "New links shared outside the team default to expire in 30 days." + day_90 + "New links shared outside the team default to expire in 90 days." + day_180 + "New links shared outside the team default to expire in 180 days." + year_1 + "New links shared outside the team default to expire in 365 days." + union EmmState disabled "Emm token is disabled." @@ -101,6 +133,12 @@ union OfficeAddInPolicy enabled "Office Add-In is enabled." +union TopLevelContentPolicy + admin_only + "Only admins can edit team folders at the top level of the team space." + everyone + "Everyone on the team can edit team folders at the top level of the team space." + union SsoPolicy disabled "Users will be able to sign in with their Dropbox credentials." @@ -140,11 +178,15 @@ union PasswordControlMode union PasswordStrengthPolicy minimal_requirements - "User passwords will adhere to the minimal password strength policy." + "User passwords will not adhere to a password strength policy." moderate_password - "User passwords will adhere to the moderate password strength policy." + "User passwords will adhere to the strong password strength policy. Note that product + surfaces refer to this as the strong policy but the value must be kept as is for + backwards compatability." strong_password - "User passwords will adhere to the very strong password strength policy." + "User passwords will adhere to the very strong password strength policy. Note that product + surfaces refer to this as the very strong policy but the value must be kept as is for + backwards compatability." union TwoStepVerificationPolicy require_tfa_enable @@ -249,3 +291,14 @@ union FileProviderMigrationPolicyState "Team admin has not opted out of File Provider Migration for team members." default "Team admin has default value based on team tier." + immediate + "Team admin has chosen to do File Provider Migration immediately for the team." + +union SharedLinkDefaultPermissionsPolicy + default + "No team default. Member defaults used instead." + edit + "Default to edit when creating new sharing links" + view + "Default to view-only when creating new sharing links" + diff --git a/team_reports.stone b/team_reports.stone deleted file mode 100644 index 6a7ba6f..0000000 --- a/team_reports.stone +++ /dev/null @@ -1,202 +0,0 @@ -namespace team - -import common - -alias NumberPerDay = List(UInt64?) - -union TeamReportFailureReason - temporary_error - "We couldn't create the report, but we think this was a fluke. Everything should work if you try it again." - many_reports_at_once - "Too many other reports are being created right now. Try creating this report again once the others finish." - too_much_data - "We couldn't create the report. Try creating the report again with less data." - - example default - many_reports_at_once = null - - -struct DateRange - "Input arguments that can be provided for most reports." - start_date common.Date? - "Optional starting date (inclusive). If start_date is None or too long ago, this field will - be set to 6 months ago." - end_date common.Date? - "Optional ending date (exclusive)." - -union DateRangeError - "Errors that can originate from problems in input arguments to reports." - -struct StorageBucket - "Describes the number of users in a specific storage bucket." - bucket String - "The name of the storage bucket. - For example, '1G' is a bucket of users with storage size up to 1 Giga." - users UInt64 - "The number of people whose storage is in the range of this storage bucket." - - example default - bucket = "1G" - users = 21 - - -struct BaseDfbReport - "Base report structure." - start_date String - "First date present in the results as 'YYYY-MM-DD' or None." - -# -# get_storage -# - -struct GetStorageReport extends BaseDfbReport - "Storage Report Result. - Each of the items in the storage report is an array of values, one value per day. - If there is no data for a day, then the value will be None." - - total_usage NumberPerDay - "Sum of the shared, unshared, and datastore usages, for each day." - shared_usage NumberPerDay - "Array of the combined size (bytes) of team members' shared folders, for each day." - unshared_usage NumberPerDay - "Array of the combined size (bytes) of team members' root namespaces, for each day." - shared_folders NumberPerDay - "Array of the number of shared folders owned by team members, for each day." - member_storage_map List(List(StorageBucket)) - "Array of storage summaries of team members' account sizes. - Each storage summary is an array of key, value pairs, where each pair describes - a storage bucket. - The key indicates the upper bound of the bucket and the value is the - number of users in that bucket. There is one such summary per day. - If there is no data for a day, the storage summary will be empty." - -route reports/get_storage(DateRange, GetStorageReport, DateRangeError) deprecated - "Retrieves reporting data about a team's storage usage. - Deprecated: Will be removed on July 1st 2021." - attrs - auth = "team" - scope = "team_info.read" - -# -# get_activity -# - -struct GetActivityReport extends BaseDfbReport - "Activity Report Result. - Each of the items in the storage report is an array of values, one value per day. - If there is no data for a day, then the value will be None." - - adds NumberPerDay - "Array of total number of adds by team members." - edits NumberPerDay - "Array of number of edits by team members. - If the same user edits the same file multiple times this is counted as a single edit." - deletes NumberPerDay - "Array of total number of deletes by team members." - active_users_28_day NumberPerDay - "Array of the number of users who have been active in the last 28 days." - active_users_7_day NumberPerDay - "Array of the number of users who have been active in the last week." - active_users_1_day NumberPerDay - "Array of the number of users who have been active in the last day." - active_shared_folders_28_day NumberPerDay - "Array of the number of shared folders with some activity in the last 28 days." - active_shared_folders_7_day NumberPerDay - "Array of the number of shared folders with some activity in the last week." - active_shared_folders_1_day NumberPerDay - "Array of the number of shared folders with some activity in the last day." - shared_links_created NumberPerDay - "Array of the number of shared links created." - shared_links_viewed_by_team NumberPerDay - "Array of the number of views by team users to shared links created by the team." - shared_links_viewed_by_outside_user NumberPerDay - "Array of the number of views by users outside of the team to shared links created by the team." - shared_links_viewed_by_not_logged_in NumberPerDay - "Array of the number of views by non-logged-in users to shared links created by the team." - shared_links_viewed_total NumberPerDay - "Array of the total number of views to shared links created by the team." - -route reports/get_activity(DateRange, GetActivityReport, DateRangeError) deprecated - "Retrieves reporting data about a team's user activity. - Deprecated: Will be removed on July 1st 2021." - attrs - auth = "team" - scope = "team_info.read" - -# -# get_membership -# - -struct GetMembershipReport extends BaseDfbReport - "Membership Report Result. - Each of the items in the storage report is an array of values, one value per day. - If there is no data for a day, then the value will be None." - - team_size NumberPerDay - "Team size, for each day." - pending_invites NumberPerDay - "The number of pending invites to the team, for each day." - members_joined NumberPerDay - "The number of members that joined the team, for each day." - suspended_members NumberPerDay - "The number of suspended team members, for each day." - licenses NumberPerDay - "The total number of licenses the team has, for each day." - - - -route reports/get_membership(DateRange, GetMembershipReport, DateRangeError) deprecated - "Retrieves reporting data about a team's membership. - Deprecated: Will be removed on July 1st 2021." - attrs - auth = "team" - scope = "team_info.read" - -# -# get_devices -# - - -struct DevicesActive - "Each of the items is an array of values, one value per day. - The value is the number of devices active within a time window, ending with that day. - - If there is no data for a day, then the value will be None." - - windows NumberPerDay - "Array of number of linked windows (desktop) clients with activity." - macos NumberPerDay - "Array of number of linked mac (desktop) clients with activity." - linux NumberPerDay - "Array of number of linked linus (desktop) clients with activity." - ios NumberPerDay - "Array of number of linked ios devices with activity." - android NumberPerDay - "Array of number of linked android devices with activity." - other NumberPerDay - "Array of number of other linked devices (blackberry, windows phone, etc) - with activity." - total NumberPerDay - "Array of total number of linked clients with activity." - -struct GetDevicesReport extends BaseDfbReport - "Devices Report Result. Contains subsections for different time ranges of activity. - Each of the items in each subsection of the storage report is an array of values, - one value per day. - If there is no data for a day, then the value will be None." - - active_1_day DevicesActive - "Report of the number of devices active in the last day." - active_7_day DevicesActive - "Report of the number of devices active in the last 7 days." - active_28_day DevicesActive - "Report of the number of devices active in the last 28 days." - - -route reports/get_devices(DateRange, GetDevicesReport, DateRangeError) deprecated - "Retrieves reporting data about a team's linked devices. - Deprecated: Will be removed on July 1st 2021." - - attrs - auth = "team" - scope = "team_info.read" diff --git a/team_secondary_mails.stone b/team_secondary_mails.stone deleted file mode 100644 index 05d7abc..0000000 --- a/team_secondary_mails.stone +++ /dev/null @@ -1,287 +0,0 @@ -namespace team - -import common -import secondary_emails - -alias SecondaryEmail = secondary_emails.SecondaryEmail - - -struct UserSecondaryEmailsArg - "User and a list of secondary emails." - user UserSelectorArg - secondary_emails List(common.EmailAddress) - - example default - user = default - secondary_emails = ["bob2@hotmail.com", "bob@inst.gov"] - - -# -# add secondary emails -# - - -union AddSecondaryEmailResult - "Result of trying to add a secondary email to a user. - 'success' is the only value indicating that a secondary email was successfully added to a user. - The other values explain the type of error that occurred, and include the email for which the error occurred." - - success SecondaryEmail - "Describes a secondary email that was successfully added to a user." - - unavailable common.EmailAddress - "Secondary email is not available to be claimed by the user." - - already_pending common.EmailAddress - "Secondary email is already a pending email for the user." - - already_owned_by_user common.EmailAddress - "Secondary email is already a verified email for the user." - - reached_limit common.EmailAddress - "User already has the maximum number of secondary emails allowed." - - transient_error common.EmailAddress - "A transient error occurred. Please try again later." - - too_many_updates common.EmailAddress - "An error occurred due to conflicting updates. Please try again later." - - unknown_error common.EmailAddress - "An unknown error occurred." - - rate_limited common.EmailAddress - "Too many emails are being sent to this email address. Please try again later." - - example default - success = default - - example unavailable - unavailable = "alice@example.com" - - -struct UserSecondaryEmailsResult - user UserSelectorArg - results List(AddSecondaryEmailResult) - - example default - user = default - results = [default, unavailable] - - -union UserAddResult - "Result of trying to add secondary emails to a user. - 'success' is the only value indicating that a user was successfully retrieved for adding secondary emails. - The other values explain the type of error that occurred, and include the user for which the error occurred." - - success UserSecondaryEmailsResult - "Describes a user and the results for each attempt to add a secondary email." - - invalid_user UserSelectorArg - "Specified user is not a valid target for adding secondary emails." - - unverified UserSelectorArg - "Secondary emails can only be added to verified users." - - placeholder_user UserSelectorArg - "Secondary emails cannot be added to placeholder users." - - example default - success = default - - example invalid - invalid_user = default - - -struct AddSecondaryEmailsArg - new_secondary_emails List(UserSecondaryEmailsArg) - "List of users and secondary emails to add." - - example default - new_secondary_emails = [default] - - -struct AddSecondaryEmailsResult - results List(UserAddResult) - "List of users and secondary email results." - - example default - results = [default, invalid] - - -union AddSecondaryEmailsError - "Error returned when adding secondary emails fails." - - secondary_emails_disabled - "Secondary emails are disabled for the team." - - too_many_emails - "A maximum of 20 secondary emails can be added in a single call." - - -route members/secondary_emails/add(AddSecondaryEmailsArg, AddSecondaryEmailsResult, AddSecondaryEmailsError) - "Add secondary emails to users. - - Permission : Team member management. - - Emails that are on verified domains will be verified automatically. - For each email address not on a verified domain a verification email will be sent." - - attrs - auth = "team" - scope = "members.write" - -# -# resend verification emails -# - - -struct ResendVerificationEmailArg - emails_to_resend List(UserSecondaryEmailsArg) - "List of users and secondary emails to resend verification emails to." - - example default - emails_to_resend = [default] - - -union ResendSecondaryEmailResult - "Result of trying to resend verification email to a secondary email address. - 'success' is the only value indicating that a verification email was successfully sent. - The other values explain the type of error that occurred, and include the email for which the error occurred." - - success common.EmailAddress - "A verification email was successfully sent to the secondary email address." - - not_pending common.EmailAddress - "This secondary email address is not pending for the user." - - rate_limited common.EmailAddress - "Too many emails are being sent to this email address. Please try again later." - - example default - success = "alice@example.com" - - -struct UserResendEmailsResult - user UserSelectorArg - results List(ResendSecondaryEmailResult) - - example default - user = default - results = [default] - - -union UserResendResult - "Result of trying to resend verification emails to a user. - 'success' is the only value indicating that a user was successfully retrieved for sending verification emails. - The other values explain the type of error that occurred, and include the user for which the error occurred." - - success UserResendEmailsResult - "Describes a user and the results for each attempt to resend verification emails." - - invalid_user UserSelectorArg - "Specified user is not a valid target for resending verification emails." - - example default - success = default - - example invalid - invalid_user = default - - -struct ResendVerificationEmailResult - "List of users and resend results." - results List(UserResendResult) - - example default - results = [default] - - -route members/secondary_emails/resend_verification_emails(ResendVerificationEmailArg, ResendVerificationEmailResult, Void) - "Resend secondary email verification emails. - - Permission : Team member management." - - attrs - auth = "team" - scope = "members.write" - - -# -# delete secondary emails -# - - -struct DeleteSecondaryEmailsArg - emails_to_delete List(UserSecondaryEmailsArg) - "List of users and their secondary emails to delete." - - example default - emails_to_delete = [default] - - -union DeleteSecondaryEmailResult - "Result of trying to delete a secondary email address. - 'success' is the only value indicating that a secondary email was successfully deleted. - The other values explain the type of error that occurred, and include the email for which the error occurred." - - success common.EmailAddress - "The secondary email was successfully deleted." - - not_found common.EmailAddress - "The email address was not found for the user." - - cannot_remove_primary common.EmailAddress - "The email address is the primary email address of the user, and cannot be removed." - - example default - success = "alice@example.com" - - example not_found - not_found = "alic@example.com" - - -struct UserDeleteEmailsResult - user UserSelectorArg - results List(DeleteSecondaryEmailResult) - - example default - user = default - results = [default, not_found] - - -union UserDeleteResult - "Result of trying to delete a user's secondary emails. - 'success' is the only value indicating that a user was successfully retrieved for deleting secondary emails. - The other values explain the type of error that occurred, and include the user for which the error occurred." - - success UserDeleteEmailsResult - "Describes a user and the results for each attempt to delete a secondary email." - - invalid_user UserSelectorArg - "Specified user is not a valid target for deleting secondary emails." - - example default - success = default - - example invalid_user - invalid_user = default - - -struct DeleteSecondaryEmailsResult - results List(UserDeleteResult) - - example default - results = [default] - - -route members/secondary_emails/delete(DeleteSecondaryEmailsArg, DeleteSecondaryEmailsResult, Void) - "Delete secondary emails from users - - Permission : Team member management. - - Users will be notified of deletions of verified secondary emails at both the secondary email and their primary email." - - attrs - auth = "team" - scope = "members.write" diff --git a/team_sharing_allowlist.stone b/team_sharing_allowlist.stone deleted file mode 100644 index 24e4ed7..0000000 --- a/team_sharing_allowlist.stone +++ /dev/null @@ -1,141 +0,0 @@ -namespace team - -import common - -struct SharingAllowlistAddArgs - "Structure representing Approve List entries. Domain and emails are supported. - At least one entry of any supported type is required." - domains List(String)? - "List of domains represented by valid string representation (RFC-1034/5)." - emails List(String)? - "List of emails represented by valid string representation (RFC-5322/822)." - - example default - domains = ["test-domain.com", "subdomain.some.com"] - emails = ["adam@test-domain.com", "john@some.com"] - -struct SharingAllowlistAddResponse - "This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone." - -union SharingAllowlistAddError - malformed_entry String - "One of provided values is not valid." - no_entries_provided - "Neither single domain nor email provided." - too_many_entries_provided - "Too many entries provided within one call." - team_limit_reached - "Team entries limit reached." - unknown_error - "Unknown error." - entries_already_exist String - "Entries already exists." - - -struct SharingAllowlistListArg - limit UInt32(max_value=1000, min_value=1) = 1000 - "The number of entries to fetch at one time." - - example default - limit = 100 - -struct SharingAllowlistListContinueArg - cursor String - "The cursor returned from a previous call to :route:`sharing_allowlist/list` or :route:`sharing_allowlist/list/continue`." - - example default - cursor = "dGVzdF9jdXJzb3IK" - -struct SharingAllowlistListError - "This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone." - -struct SharingAllowlistListResponse - domains List(String) - "List of domains represented by valid string representation (RFC-1034/5)." - emails List(String) - "List of emails represented by valid string representation (RFC-5322/822)." - cursor String = "" - "If this is nonempty, there are more entries that can be fetched with :route:`sharing_allowlist/list/continue`." - has_more Boolean = false - "if true indicates that more entries can be fetched with :route:`sharing_allowlist/list/continue`." - - example default - domains = ["test-domain.com", "subdomain.some.com"] - emails = ["adam@test-domain.com", "john@some.com"] - cursor = "dGVzdF9jdXJzb3IK" - has_more = true - -union SharingAllowlistListContinueError - invalid_cursor - "Provided cursor is not valid." - -struct SharingAllowlistRemoveArgs - domains List(String)? - "List of domains represented by valid string representation (RFC-1034/5)." - emails List(String)? - "List of emails represented by valid string representation (RFC-5322/822)." - - example default - domains = ["test-domain.com", "subdomain.some.com"] - emails = ["adam@test-domain.com", "john@some.com"] - - -struct SharingAllowlistRemoveResponse - "This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone." - -union SharingAllowlistRemoveError - malformed_entry String - "One of provided values is not valid." - entries_do_not_exist String - "One or more provided values do not exist." - no_entries_provided - "Neither single domain nor email provided." - too_many_entries_provided - "Too many entries provided within one call." - unknown_error - "Unknown error." - - -route sharing_allowlist/add (SharingAllowlistAddArgs, SharingAllowlistAddResponse, SharingAllowlistAddError) - "Endpoint adds Approve List entries. Changes are effective immediately. - Changes are committed in transaction. In case of single validation error - all entries are rejected. - Valid domains (RFC-1034/5) and emails (RFC-5322/822) are accepted. - Added entries cannot overflow limit of 10000 entries per team. - Maximum 100 entries per call is allowed." - - attrs - auth = "team" - is_preview = true - scope = "team_info.write" - -route sharing_allowlist/list (SharingAllowlistListArg, SharingAllowlistListResponse, SharingAllowlistListError) - "Lists Approve List entries for given team, from newest to oldest, returning - up to `limit` entries at a time. If there are more than `limit` entries - associated with the current team, more can be fetched by passing the - returned `cursor` to :route:`sharing_allowlist/list/continue`." - - attrs - auth = "team" - is_preview = true - scope = "team_info.read" - -route sharing_allowlist/list/continue (SharingAllowlistListContinueArg, SharingAllowlistListResponse, SharingAllowlistListContinueError) - "Lists entries associated with given team, starting from a the cursor. See :route:`sharing_allowlist/list`." - - attrs - auth = "team" - is_preview = true - scope = "team_info.read" - -route sharing_allowlist/remove (SharingAllowlistRemoveArgs, SharingAllowlistRemoveResponse, SharingAllowlistRemoveError) - "Endpoint removes Approve List entries. Changes are effective immediately. - Changes are committed in transaction. In case of single validation error - all entries are rejected. - Valid domains (RFC-1034/5) and emails (RFC-5322/822) are accepted. - Entries being removed have to be present on the list. - Maximum 1000 entries per call is allowed." - - attrs - auth = "team" - is_preview = true - scope = "team_info.write" - diff --git a/users.stone b/users.stone index 3c88bbb..02441d3 100644 --- a/users.stone +++ b/users.stone @@ -2,56 +2,152 @@ namespace users "This namespace contains endpoints and data types for user management." import common - import team_common - import team_policies - import users_common -# -# Route: get_account -# +route get_space_usage (Void, SpaceUsage, Void) + "Get the space usage information for the current user's account." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "account_info.read" + route get_account (GetAccountArg, BasicAccount, GetAccountError) "Get information about a user's account." attrs allow_app_folder_app = true + auth = "user" scope = "sharing.read" -struct GetAccountArg - account_id users_common.AccountId - "A user's account identifier." +route get_account_batch (GetAccountBatchArg, GetAccountBatchResult, GetAccountBatchError) + "Get information about multiple user accounts. At most 300 accounts may be queried per request." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "sharing.read" + +route get_current_account (Void, FullAccount, Void) + "Get information about the current user's account." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "account_info.read" + select_admin_mode = "whole_team" + + +route features/get_values (UserFeaturesGetValuesBatchArg, UserFeaturesGetValuesBatchResult, UserFeaturesGetValuesBatchError) + "Get a list of feature values that may be configured for the current account." + + attrs + allow_app_folder_app = true + auth = "user" + scope = "account_info.read" + + +alias GetAccountBatchResult = List(BasicAccount) + +union DistinctMemberHomeValue + "The value for :field:`UserFeature.distinct_member_home`." + enabled Boolean + "When this value is True, the user have distinct home and root ns. When the value is + False the user's home ns and root ns are the same." + +union FileLockingValue + "The value for :field:`UserFeature.file_locking`." + enabled Boolean + "When this value is True, the user can lock files in shared directories. When the value is + False the user can unlock the files they have locked or request to unlock files locked by + others." + + example file_locking_enabled + enabled = true + +union GetAccountBatchError + no_account users_common.AccountId + "The value is an account ID specified in :field:`GetAccountBatchArg.account_ids` + that does not exist." example default - account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" + no_account = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" union GetAccountError no_account "The specified :field:`GetAccountArg.account_id` does not exist." +union PaperAsFilesValue + "The value for :field:`UserFeature.paper_as_files`." + enabled Boolean + "When this value is true, the user's Paper docs are accessible in Dropbox with the .paper + extension and must be accessed via the /files endpoints. When this value is + false, the user's Paper docs are stored separate from Dropbox files and folders and should + be accessed via the /paper endpoints." + + example paper_as_files_enabled + enabled = true + +union SpaceAllocation + "Space is allocated differently based on the type of account." + individual IndividualSpaceAllocation + "The user's space allocation applies only to their individual account." + team TeamSpaceAllocation + "The user shares space with other members of their team." + + example default + individual = default + +union TeamSharedDropboxValue + "The value for :field:`UserFeature.team_shared_dropbox`." + enabled Boolean + "When this value is True, the user have a shared team root. When the value is + False the user have distinct root." + +union UserFeature + "A set of features that a Dropbox User account may have configured." + paper_as_files + "This feature contains information about how the user's Paper files are stored." + file_locking + "This feature allows users to lock files in order to restrict other users from editing them." + team_shared_dropbox + "This feature contains information about whether or not the user is part of a team with a shared team root." + distinct_member_home + "This feature contains information about whether or not the user's home namespace is distinct from their root namespace." + +union UserFeatureValue + "Values that correspond to entries in :type:`UserFeature`." + paper_as_files PaperAsFilesValue + file_locking FileLockingValue + team_shared_dropbox TeamSharedDropboxValue + distinct_member_home DistinctMemberHomeValue + + example paper_as_files_enabled + paper_as_files = paper_as_files_enabled + +union UserFeaturesGetValuesBatchError + empty_features_list + "At least one :type:`UserFeature` must be included in the + :type:`UserFeaturesGetValuesBatchArg`.features list." + struct Account "The amount of detail revealed about an account depends on the user being queried and the user making the query." - account_id users_common.AccountId "The user's unique Dropbox ID." - name Name "Details of a user's name." - email String "The user's email address. Do not rely on this without checking the :field:`email_verified` field. Even then, it's possible that the user has since lost access to their email." - email_verified Boolean "Whether the user has verified their email address." - profile_photo_url String? "URL for the photo representing the user, if one is set." - disabled Boolean "Whether the user has been disabled." @@ -65,11 +161,9 @@ struct Account struct BasicAccount extends Account "Basic information about any account." - is_teammate Boolean "Whether this user is a teammate of the current user. If this account is the current user's account, then this will be :val:`true`." - team_member_id String? "The user's unique team member id. This field will only be present if the user is part of a team and :field:`is_teammate` is :val:`true`." @@ -82,7 +176,7 @@ struct BasicAccount extends Account profile_photo_url = "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102&size=128x128" is_teammate = false disabled = false - + example team account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" name = default @@ -92,22 +186,10 @@ struct BasicAccount extends Account is_teammate = true team_member_id = "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" disabled = false -# -# Route: get_current_account -# - -route get_current_account (Void, FullAccount, Void) - "Get information about the current user's account." - - attrs - allow_app_folder_app = true - select_admin_mode = "whole_team" - scope = "account_info.read" struct FullAccount extends Account "Detailed information about the current user's account." - - country String(min_length=2, max_length=2)? + country String(max_length=2, min_length=2)? "The user's two-letter country code, if available. Country codes are based on :link:`ISO 3166-1 http://en.wikipedia.org/wiki/ISO_3166-1`." locale String(min_length=2) @@ -130,7 +212,6 @@ struct FullAccount extends Account "The root info for this account." example default - "Paired account." account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" name = default email = "franz@dropbox.com" @@ -144,9 +225,8 @@ struct FullAccount extends Account account_type = business disabled = false root_info = default - + example unpaired - "A personal account that is not paired with a team." account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" name = default email = "franz@gmail.com" @@ -161,82 +241,45 @@ struct FullAccount extends Account disabled = false root_info = default -struct Team - "Information about a team." - - id String - "The team's unique ID." - name String - "The name of the team." - - example default - id = "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" - name = "Acme, Inc." - struct FullTeam extends Team "Detailed information about a team." - sharing_policies team_policies.TeamSharingPolicies "Team policies governing sharing." - office_addin_policy team_policies.OfficeAddInPolicy "Team policy governing the use of the Office Add-In." + top_level_content_policy team_policies.TopLevelContentPolicy + "Team policy governing whether members can edit team folders at the top level of the team space." example default id = "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" name = "Acme, Inc." sharing_policies = default office_addin_policy = disabled + top_level_content_policy = admin_only -struct Name - "Representations for a person's name to assist with internationalization." - - given_name String - "Also known as a first name." - - surname String - "Also known as a last name or family name." - - familiar_name String - "Locale-dependent name. In the US, a person's familiar name is their - :field:`given_name`, but elsewhere, it could be any combination of a - person's :field:`given_name` and :field:`surname`." - - display_name String - "A name that can be used directly to represent the name of a user's - Dropbox account." - - abbreviated_name String - "An abbreviated form of the person's name. Their initials in most locales." +struct GetAccountArg + account_id users_common.AccountId + "A user's account identifier." example default - given_name = "Franz" - surname = "Ferdinand" - familiar_name = "Franz" - display_name = "Franz Ferdinand (Personal)" - abbreviated_name = "FF" + account_id = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" - example second_name - given_name = "Zexy Desperado" - surname = "Desperado" - familiar_name = "Zexy" - display_name = "Zexy Desperado (Personal)" - abbreviated_name = "ZD" +struct GetAccountBatchArg + account_ids List(users_common.AccountId, min_items=1) + "List of user account identifiers. Should not contain any duplicate account IDs." -# -# Route: get_space_usage -# + example default + account_ids = ["dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc", "dbid:AAH1Vcz-DVoRDeixtr_OA8oUGgiqhs4XPOQ"] -route get_space_usage(Void, SpaceUsage, Void) - "Get the space usage information for the current user's account." +struct IndividualSpaceAllocation + allocated UInt64 + "The total space allocated to the user's account (bytes)." - attrs - allow_app_folder_app = true - scope = "account_info.read" + example default + allocated = 10000000000 struct SpaceUsage "Information about a user's space usage and quota." - used UInt64 "The user's total space usage (bytes)." allocation SpaceAllocation @@ -246,23 +289,16 @@ struct SpaceUsage used = 314159265 allocation = default -union SpaceAllocation - "Space is allocated differently based on the type of account." - - individual IndividualSpaceAllocation - "The user's space allocation applies only to their individual account." - team TeamSpaceAllocation - "The user shares space with other members of their team." - - example default - individual = default - -struct IndividualSpaceAllocation - allocated UInt64 - "The total space allocated to the user's account (bytes)." +struct Team + "Information about a team." + id String + "The team's unique ID." + name String + "The name of the team." example default - allocated = 10000000000 + id = "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I" + name = "Acme, Inc." struct TeamSpaceAllocation used UInt64 @@ -284,84 +320,6 @@ struct TeamSpaceAllocation user_within_team_space_limit_type = stop_sync user_within_team_space_used_cached = 314159265 -# -# Route: get_account_batch -# - -route get_account_batch (GetAccountBatchArg, GetAccountBatchResult, GetAccountBatchError) - "Get information about multiple user accounts. At most 300 accounts may be queried - per request." - - attrs - allow_app_folder_app = true - scope = "sharing.read" - -struct GetAccountBatchArg - account_ids List(users_common.AccountId, min_items=1) - "List of user account identifiers. Should not contain any duplicate account IDs." - - example default - account_ids = ["dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc", "dbid:AAH1Vcz-DVoRDeixtr_OA8oUGgiqhs4XPOQ"] - -alias GetAccountBatchResult = List(BasicAccount) - -union GetAccountBatchError - no_account users_common.AccountId - "The value is an account ID specified in :field:`GetAccountBatchArg.account_ids` - that does not exist." - - example default - no_account = "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" - -# -# User Features -# - -union UserFeature - "A set of features that a Dropbox User account may have configured." - - paper_as_files - "This feature contains information about how the user's Paper files are stored." - - file_locking - "This feature allows users to lock files in order to restrict other users from editing them." - - -union UserFeatureValue - "Values that correspond to entries in :type:`UserFeature`." - - paper_as_files PaperAsFilesValue - file_locking FileLockingValue - - example paper_as_files_enabled - paper_as_files = paper_as_files_enabled - -union PaperAsFilesValue - "The value for :field:`UserFeature.paper_as_files`. " - - enabled Boolean - "When this value is true, the user's Paper docs are accessible in Dropbox with the .paper - extension and must be accessed via the /files endpoints. When this value is - false, the user's Paper docs are stored separate from Dropbox files and folders and should - be accessed via the /paper endpoints." - - example paper_as_files_enabled - enabled = true - -union FileLockingValue - "The value for :field:`UserFeature.file_locking`. " - - enabled Boolean - "When this value is True, the user can lock files in shared directories. When the value is - False the user can unlock the files they have locked or request to unlock files locked by - others." - - example file_locking_enabled - enabled = true -# -# Route: feature/get_value_batch -# - struct UserFeaturesGetValuesBatchArg features List(UserFeature) "A list of features in :type:`UserFeature`. If the list is empty, @@ -376,14 +334,34 @@ struct UserFeaturesGetValuesBatchResult example listOfValues values = [paper_as_files_enabled] -union UserFeaturesGetValuesBatchError - empty_features_list - "At least one :type:`UserFeature` must be included in the - :type:`UserFeaturesGetValuesBatchArg`.features list." -route features/get_values(UserFeaturesGetValuesBatchArg, UserFeaturesGetValuesBatchResult, UserFeaturesGetValuesBatchError) - "Get a list of feature values that may be configured for the current account." +struct Name + "Representations for a person's name to assist with internationalization." + given_name String + "Also known as a first name." + surname String + "Also known as a last name or family name." + familiar_name String + "Locale-dependent name. In the US, a person's familiar name is their + :field:`given_name`, but elsewhere, it could be any combination of a + person's :field:`given_name` and :field:`surname`." + display_name String + "A name that can be used directly to represent the name of a user's + Dropbox account." + abbreviated_name String + "An abbreviated form of the person's name. Their initials in most locales." + + example default + given_name = "Franz" + surname = "Ferdinand" + familiar_name = "Franz" + display_name = "Franz Ferdinand (Personal)" + abbreviated_name = "FF" + + example second_name + given_name = "Zexy Desperado" + surname = "Desperado" + familiar_name = "Zexy" + display_name = "Zexy Desperado (Personal)" + abbreviated_name = "ZD" - attrs - allow_app_folder_app = true - scope = "account_info.read" diff --git a/users_common.stone b/users_common.stone index 6ab2d97..c2abc02 100644 --- a/users_common.stone +++ b/users_common.stone @@ -1,13 +1,13 @@ namespace users_common "This namespace contains common data types used within the users namespace." +import account_id import common -alias AccountId = String(min_length=40, max_length=40) +alias AccountId = String(max_length=40, min_length=40) union_closed AccountType "What type of account this user has." - basic "The basic account type." pro @@ -17,6 +17,6 @@ union_closed AccountType example default basic = null - example business business = null +