Widget HTML Atas

R Rdrop 2 Download Several File

Dropbox for HTTP Developers

Dropbox API v2

The Dropbox API allows developers to work with files in Dropbox, including advanced functionality like full-text search, thumbnails, and sharing. The Dropbox API explorer is the easiest way to get started making API calls.

Request and response formats

In general, the Dropbox API uses HTTP POST requests with JSON arguments and JSON responses. Request authentication is via OAuth 2.0 using the Authorization request header or authorization URL parameter.

The .tag field in an object identifies the subtype of a struct or selected member of a union.

When specifying a Void member of a union, you may supply just the member string in place of the entire tagged union object. For example, when supplying a WriteMode, you can supply just "mode": "add" instead of "mode": {".tag": "add"}}. This shorthand is not allowed for non-Void members. For example, the following is not allowed for a WriteMode, as update is not a Void member: "mode": "update".

RPC endpoints

These endpoints accept arguments as JSON in the request body and return results as JSON in the response body. RPC endpoints are on the api.dropboxapi.com domain.

Content-upload endpoints

These endpoints accept file content in the request body, so their arguments are instead passed as JSON in the Dropbox-API-Arg request header or arg URL parameter. These endpoints are on the content.dropboxapi.com domain.

Content-download endpoints

As with content-upload endpoints, arguments are passed in the Dropbox-API-Arg request header or arg URL parameter. The response body contains file content, so the result will appear as JSON in the Dropbox-API-Result response header. These endpoints are also on the content.dropboxapi.com domain.

These endpoints also support HTTP GET along with ETag-based caching (If-None-Match) and HTTP range requests.

For information on how to properly encode the JSON, see the JSON encoding page.

Browser-based JavaScript and CORS pre-flight requests

When browser-based JavaScript code makes a cross-site HTTP request, the browser must sometimes send a "pre-flight" check to make sure the server allows cross-site requests. You can avoid the extra round-trip by ensuring your request meets the CORS definition of a "simple cross-site request".

  • Use URL parameters arg and authorization instead of HTTP headers Dropbox-API-Arg and Authorization.
  • Set the Content-Type to "text/plain; charset=dropbox-cors-hack" instead of "application/json" or "application/octet-stream".
  • Always set the URL parameter reject_cors_preflight=true. This makes it easier to catch cases where your code is unintentionally triggering a pre-flight check.

Date format

All dates in the API use UTC and are strings in the ISO 8601 "combined date and time representation" format:

2015-05-15T15:50:38Z

Path formats

Paths are relative to an application's root (either an app folder or the root of a user's Dropbox, depending on the app's access type). The empty string ("") represents the root folder. All other paths must start with a slash (e.g. "/hello/world.txt"). Paths may not end with a slash or whitespace. For other path restrictions, refer to the help center.

Every file and folder in Dropbox also has an ID (e.g. "id:abc123xyz") that can be obtained from any endpoint that returns metadata. These IDs are case-sensitive, so they should always be stored with their case preserved, and always compared in a case-sensitive manner. Some endpoints, as noted in the individual endpoint documentation below, can accept IDs in addition to normal paths. A path relative to a folder's ID can be constructed by using a slash (e.g. "id:abc123xyz/hello.txt").

For endpoints that accept performing actions on behalf of a team administrator using the Dropbox-API-Select-Admin header, files may be referenced using a namespace-relative path (e.g. "ns:123456/cupcake.png"). In this case, the namespace ID, "123456", would be the shared_folder_id or team_folder_id of the shared folder or the team folder containing the file or folder, and the path, "/cupcake.png", would be the logical path to the content relative to its shared folder or team folder container.

Path case insensitivity

Like in Dropbox itself, paths in the Dropbox API are case-insensitive, meaning that /A/B/c.txt is the same file as /a/b/C.txt and is the same file as /a/B/c.txt.

This can cause problems for apps that store file metadata from users in case-sensitive databases (such as SQLite or Postgres). Case insensitive collations should be used when storing Dropbox path metadata in such databases. Alternatively, developers need to make sure their query operators are explicitly case insensitive.

Also, while Dropbox is case-insensitive, it makes efforts to be case-preserving. Metadata.name will contain the correct case. Metadata.path_display usually will contain the correct case, but sometimes only in the last path component. If your app needs the correct case for all path components, it can get it from the Metadata.name or last path component of each relevant Metadata.path_display entry.

Authorization

Dropbox supports OAuth 2.0 for authorizing API requests. Find out more in our OAuth guide. Authorized requests to the API should use an Authorization header with the value Bearer <TOKEN>, where <TOKEN> is an access token obtained through the OAuth flow.

Note: OAuth is an authorization protocol, not an authentication protocol. Dropbox should not be used as an identity provider.

/oauth2/authorize

Description

This starts the OAuth 2.0 authorization flow. This isn't an API call—it's the web page that lets the user sign in to Dropbox and authorize your app. After the user decides whether or not to authorize your app, they will be redirected to the URI specified by redirect_uri.

OAuth 2.0 supports three authorization flows:

  • The code flow returns a code via the redirect_uri callback which should then be converted into a bearer token using the /oauth2/token call. This is the recommended flow for apps that are running on a server.
  • The PKCE flow is an extension of the code flow that uses dynamically generated codes instead of a secret to perform an OAuth exchange from public clients. The PKCE flow is a newer, more secure alternative to the token (implicit) flow. It is the recommended flow for client-side apps, such as mobile or JavaScript apps.
  • [Legacy. We recommend the PKCE flow.] -- The token or implicit grant flow returns the bearer token via the redirect_uri callback, rather than requiring your app to make a second call to a server. This is useful for pure client-side apps, such as mobile apps or JavaScript-based apps.

For more information on the code and token flows, see Section 1.3 of the OAuth 2 spec. For more info on the PKCE extension, see RFC 7636

Your app should send the user to this app authorization page in their system browser, which will display the permissions being granted. If the user isn't already signed in to the Dropbox website, they will be prompted to do so on this web page. This web page should not be displayed in a web-view. This is in order to maintain compatibility with the website and to comply with Google's policy against processing their OAuth flow inside a web-view, to support users who sign in to Dropbox using their Google accounts. Learn about the dropbox.com system requirements.

URL Structure
                      https://www.dropbox.com/oauth2/authorize

Note: This is the only step that requires an endpoint on www.dropbox.com. All other API requests are done via api.dropboxapi.com, content.dropboxapi.com, or notify.dropboxapi.com.

Method
GET
Example

Example: Auth URL for code flow

https://www.dropbox.com/oauth2/authorize?client_id=<APP_KEY>&response_type=code

Example: Auth URL for code flow with offline token access type

https://www.dropbox.com/oauth2/authorize?client_id=<APP_KEY>&token_access_type=offline&response_type=code

Example: Auth URL for PKCE code flow

https://www.dropbox.com/oauth2/authorize?client_id=<APP_KEY>&response_type=code&code_challenge=<CHALLENGE>&code_challenge_method=<METHOD>
Parameters
response_type String The grant type requested, either token or code.
client_id String The app's key, found in the App Console.
redirect_uri String? Where to redirect the user after authorization has completed. This must be the exact URI registered in the App Console; even 'localhost' must be listed if it is used for testing. All redirect URIs must be HTTPS except for localhost URIs. A redirect URI is required for the token flow, but optional for the code flow. If the redirect URI is omitted, the code will be presented directly to the user and they will be invited to enter the information in your app.
scope String? This parameter allows your user to authorize a subset of the scopes selected in the App Console. Multiple scopes are separated by a space. If this parameter is omitted, the authorization page will request all scopes selected on the Permissions tab. Read about scopes in the OAuth Guide.
include_granted_scopes String? This parameter is optional. If set to user, Dropbox will return the currently requested scopes as well as all previously granted user scopes for the user. If set to team , Dropbox will return the currently requested scopes as well as all previously granted team scopes for the team. The request will fail if this parameter is provided but not set to user or team, or if it is set to user but the scope contains team scope, or if it is set to team but the authorizing user is not a team admin. If not set, Dropbox will return only the scopes requested in the scope parameter.
token_access_type String? If this parameter is set to offline, then the access token payload returned by a successful /oauth2/token call will contain a short-lived access_token and a long-lived refresh_token that can be used to request a new short-lived access token as long as a user's approval remains valid. If set to online then only a short-lived access_token will be returned. If omitted, the response will default to returning a long-lived access_token if they are allowed in the app console. If long-lived access tokens are disabled in the app console, this parameter defaults to online
state String? Up to 500 bytes of arbitrary data that will be passed back to your redirect URI. This parameter should be used to protect against cross-site request forgery (CSRF). See Sections 4.4.1.8 and 4.4.2.5 of the OAuth 2.0 threat model spec.
code_challenge String?(min_length=43, max_length=128) Part of the PKCE flow, the challenge should be an SHA-256 (S256) encoded value of a string that will serve as the code_verifier of the corresponding /oauth2/token call. Can can also be set to plain (plain).
code_challenge_method String? Defines the code challenge method. Can be set to S256 (recommended) or plain.
require_role String? If this parameter is specified, the user will be asked to authorize with a particular type of Dropbox account, either work for a team account or personal for a personal account. Your app should still verify the type of Dropbox account after authorization since the user could modify or remove the require_role parameter.
force_reapprove Boolean? Whether or not to force the user to approve the app again if they've already done so. If false (default), a user who has already approved the application may be automatically redirected to the URI specified by redirect_uri. If true, the user will not be automatically redirected and will have to approve the app again.
disable_signup Boolean? When true (default is false) users will not be able to sign up for a Dropbox account via the authorization page. Instead, the authorization page will show a link to the Dropbox iOS app in the App Store. This is only intended for use when necessary for compliance with App Store policies.
locale String? If the locale specified is a supported language, Dropbox will direct users to a translated version of the authorization website. Locale tags should be IETF language tags.
force_reauthentication Boolean? When true (default is false) users will be signed out if they are currently signed in. This will make sure the user is brought to a page where they can create a new account or sign in to another account. This should only be used when there is a definite reason to believe that the user needs to sign in to a new or different account.
Returns

Because /oauth2/authorize is a website, there is no direct return value. However, after the user authorizes your app, they will be sent to your redirect URI. The type of response varies based on the response_type.

Code flow and PKCE flow

These parameters are passed in the query string (after the ? in the URL):

code String The authorization code, which can be used to attain a bearer token by calling /oauth2/token.
state String The state content, if any, originally passed to /oauth2/authorize.

Sample response

[REDIRECT_URI]?code=ABCDEFG&state=[STATE]

Token flow

These parameters are passed in the URL fragment (after the # in the URL).

Note: as fragments, these parameters can be modified by the user and must not be trusted server-side. If any of these fields are being used server-side, please use the PKCE flow, or alternatively using the fields returned from /get_current_account instead.

access_token String A token which can be used to make calls to the Dropbox API.
token_type String The type of token, which will always be bearer.
account_id String A user's account identifier used by API v2.
team_id String A team's identifier used by API v2.
uid String Deprecated. The API v1 user/team identifier. Please use account_id instead, or if using the Dropbox Business API, team_id.
state String The state content, if any, originally passed to /oauth2/authorize.

Sample response

[REDIRECT_URI]#access_token=ABCDEFG&token_type=bearer&account_id=dbid%3AAAH4f99T0taONIb-OurWxbNQ6ywGRopQngc&uid=12345&state=[STATE]
Errors

In either flow, if an error occurs, including if the user has chosen not to authorize the app, the following parameters will be included in the redirect URI:

error_description String A user-friendly description of the error that occurred.
state String The state content, if any, originally passed to /oauth2/authorize.

/oauth2/token

Description

This endpoint only applies to apps using the authorization code flow. An app calls this endpoint to acquire a bearer token once the user has authorized the app.

Calls to /oauth2/token need to be authenticated using the apps's key and secret. These can either be passed as application/x-www-form-urlencoded POST parameters (see parameters below) or via HTTP basic authentication. If basic authentication is used, the app key should be provided as the username, and the app secret should be provided as the password.

URL Structure
https://api.dropboxapi.com/oauth2/token
Method
POST
Example

Example: access token request in code flow

curl https://api.dropbox.com/oauth2/token \     -d code=<AUTHORIZATION_CODE> \     -d grant_type=authorization_code \     -d redirect_uri=<REDIRECT_URI> \     -u <APP_KEY>:<APP_SECRET>

Example: refresh token request

curl https://api.dropbox.com/oauth2/token \     -d grant_type=refresh_token \     -d refresh_token=<REFRESH_TOKEN> \     -u <APP_KEY>:<APP_SECRET>

Example: PKCE code flow token request

curl https://api.dropbox.com/oauth2/token \     -d code=<AUTHORIZATION_CODE> \     -d grant_type=authorization_code \     -d redirect_uri=<REDIRECT_URI> \     -d code_verifier=<VERIFICATION_CODE> \     -d client_id=<APP_KEY>
Parameters
code String The code acquired by directing users to /oauth2/authorize?response_type=code.
grant_type String The grant type, which must be authorization_code for completing a code flow or refresh_token for using a refresh token to get a new access token.
refresh_token String? A unique, long-lived token that can be used to request new short-lived access tokens without direct interaction from a user in your app.
client_id String? If credentials are passed in POST parameters, this parameter should be present and should be the app's key (found in the App Console).
client_secret String? If credentials are passed in POST parameters, this parameter should be present and should be the app's secret.
redirect_uri String? The redirect URI used to receive the authorization code from /oauth2/authorize, if provided. Only used to validate it matches the redirect URI supplied to /oauth2/authorize for the current authorization code. It is not used to redirect again.
code_verifier String?(min_length=43, max_length=128) The client-generated string used to verify the encrypted code_challenge used in the Authorization URL.
Returns

This endpoint returns a JSON-encoded dictionary including fields below:

When input grant_type=authorization_code:

access_token String The access token to be used to call the Dropbox API.
expires_in String The length of time in seconds that the access token will be valid for.
token_type String Will always be bearer.
scope String The permission set applied to the token.
account_id String An API v2 account ID if this OAuth2 flow is user-linked.
team_id String An API v2 team ID if this OAuth 2 flow is team-linked.
refresh_token String If the token_access_type was set to offline when calling /oauth2/authorize, then response will include a refresh token. This refresh token is long-lived and won't expire automatically. It can be stored and re-used multiple times.
uid String The API v1 identifier value. It is deprecated and should no longer be used.

Sample response

Example: short-lived token

{   "access_token": "sl.AbX9y6Fe3AuH5o66-gmJpR032jwAwQPIVVzWXZNkdzcYT02akC2de219dZi6gxYPVnYPrpvISRSf9lxKWJzYLjtMPH-d9fo_0gXex7X37VIvpty4-G8f4-WX45AcEPfRnJJDwzv-",   "expires_in": "13220",   "token_type": "bearer",   "scope": "account_info.read files.content.read files.content.write files.metadata.read",   "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",   "uid": "12345", }

Example: short-lived "offline" access token

{   "access_token": "sl.abcd1234efg",   "expires_in": "13220",   "token_type": "bearer",   "scope": "account_info.read files.content.read files.content.write files.metadata.read",   "refresh_token": "AAEVvIKp9ApA9wkdE",   "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",   "uid": "12345", }

Example: legacy token

{   "access_token": "ABCDEFG",   "token_type": "bearer",   "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",   "uid": "12345", }

When input grant_type=refresh_token:

Use the refresh token to get a new access token. This request won't return a new refresh token since refresh tokens don't expire automatically and can be reused repeatedly.

access_token String The access token to be used to call the Dropbox API.
expires_in String The length of time in seconds that the access token will be valid for.
token_type String Will always be bearer.

Example:

{   "access_token": "sl.abcd1234efg",   "expires_in": "13220",   "token_type": "bearer",   }

Errors

Errors are returned using standard HTTP error code syntax. Depending on the status code, the response body may be in JSON or plaintext.

Errors by status code

Code Description
400 Bad input parameter. The response body is a plaintext message with more information.
401 Bad or expired token. This can happen if the access token is expired or if the access token has been revoked by Dropbox or the user. To fix this, you should re-authenticate the user.
The Content-Type of the response is JSON of typeAuthError
Example: invalid_access_token
{     "error_summary": "invalid_access_token/...",     "error": {         ".tag": "invalid_access_token"     } }
Example: invalid_select_user
{     "error_summary": "invalid_select_user/...",     "error": {         ".tag": "invalid_select_user"     } }
Example: invalid_select_admin
{     "error_summary": "invalid_select_admin/...",     "error": {         ".tag": "invalid_select_admin"     } }
Example: user_suspended
{     "error_summary": "user_suspended/...",     "error": {         ".tag": "user_suspended"     } }
Example: expired_access_token
{     "error_summary": "expired_access_token/...",     "error": {         ".tag": "expired_access_token"     } }
Example: route_access_denied
{     "error_summary": "route_access_denied/...",     "error": {         ".tag": "route_access_denied"     } }
Example: other
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
AuthError (open union)
Errors occurred during authentication. This datatype comes from an imported namespace originally defined in the auth namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_access_token Void The access token is invalid.
invalid_select_user Void The user specified in 'Dropbox-API-Select-User' is no longer on the team.
invalid_select_admin Void The user specified in 'Dropbox-API-Select-Admin' is not a Dropbox Business team admin.
user_suspended Void The user has been suspended.
expired_access_token Void The access token has expired.
missing_scope TokenScopeError The access token does not have the required scope to access the route.
TokenScopeError
This datatype comes from an imported namespace originally defined in the auth namespace.
required_scope String The required scope to access the route.
route_access_denied Void The route is not available to public.
403 The user or team account doesn't have access to the endpoint or feature.
The Content-Type of the response is JSON of typeAccessError
AccessError (open union)
Error occurred because the account doesn't have permission to access the resource. This datatype comes from an imported namespace originally defined in the auth namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_account_type InvalidAccountTypeError Current account type cannot access the resource.
InvalidAccountTypeError (open union)
This datatype comes from an imported namespace originally defined in the auth namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
endpoint Void Current account type doesn't have permission to access this route endpoint.
feature Void Current account type doesn't have permission to access this feature.
paper_access_denied PaperAccessError Current account cannot access Paper.
PaperAccessError (open union)
This datatype comes from an imported namespace originally defined in the auth namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
paper_disabled Void Paper is disabled.
not_paper_user Void The provided user has not used Paper yet.
409 Endpoint-specific error. Look to the JSON response body for the specifics of the error.
429 Your app is making too many requests for the given user or team and is being rate limited. Your app should wait for the number of seconds specified in the "Retry-After" response header before trying again.
The Content-Type of the response can be JSON or plaintext. If it is JSON, it will be typeRateLimitErrorYou can find more information in the data ingress guide.
RateLimitError
Error occurred because the app is being rate limited. This datatype comes from an imported namespace originally defined in the auth namespace.
reason RateLimitReason The reason why the app is being rate limited.
RateLimitReason (open union)
This datatype comes from an imported namespace originally defined in the auth namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
too_many_requests Void You are making too many requests in the past few minutes.
too_many_write_operations Void There are currently too many write operations happening in the user's Dropbox.
retry_after UInt64 The number of seconds that the app should wait before making another request. The default for this field is 1.
5xx An error occurred on the Dropbox servers. Check status.dropbox.com for announcements about Dropbox service issues.

Endpoint-specific errors (409)

The following table describes the top-level JSON object attributes present in the body of 409 responses.
Key Description
error A value that conforms to the error data type schema defined in the definition of each route.
error_summary A string that summarizes the value of the "error" key. It is a concatenation of the hierarchy of union tags that make up the error. This provides a human-readable error string, and can also be used for simple programmatic error handling via prefix matching. To disincentivize exact string matching, we append a random number of "." characters at the end of the string.
user_message An optional field. If present, it includes a message that can be shown directly to the end user of your app. You should show this message if your app is unprepared to programmatically handle the error returned by an endpoint.

Generate access token

Use the dropdown to select which app to make API calls with. An access token for the chosen app will be generated and inserted into the examples below.

By generating an access token, you will be able to make API calls for your own account without going through the authorization flow. To obtain access tokens for other users, use the standard OAuth flow.

Sign in to populate your access token in the examples.

account

/set_profile_photo

Version
Description

Sets a user's profile photo.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/account/set_profile_photo
Authentication
User Authentication
Endpoint format
RPC
Required Scope
account_info.write
Example
curl -X POST https://api.dropboxapi.com/2/account/set_profile_photo \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"photo\": {\".tag\": \"base64_data\",\"base64_data\": \"SW1hZ2UgZGF0YSBpbiBiYXNlNjQtZW5jb2RlZCBieXRlcy4gTm90IGEgdmFsaWQgZXhhbXBsZS4=\"}}"
Parameters
{     "photo": {         ".tag": "base64_data",         "base64_data": "SW1hZ2UgZGF0YSBpbiBiYXNlNjQtZW5jb2RlZCBieXRlcy4gTm90IGEgdmFsaWQgZXhhbXBsZS4="     } }
photo PhotoSourceArg Image to set as the user's new profile photo.
PhotoSourceArg (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
base64_data String Image data in base64-encoded bytes.
Returns
{     "profile_photo_url": "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102\u0026size=128x128" }
profile_photo_url String URL for the photo representing the user, if one is set.
Errors
{     "error_summary": "file_type_error/...",     "error": {         ".tag": "file_type_error"     } }
{     "error_summary": "file_size_error/...",     "error": {         ".tag": "file_size_error"     } }
{     "error_summary": "dimension_error/...",     "error": {         ".tag": "dimension_error"     } }
{     "error_summary": "thumbnail_error/...",     "error": {         ".tag": "thumbnail_error"     } }
{     "error_summary": "transient_error/...",     "error": {         ".tag": "transient_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
SetProfilePhotoError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file_type_error Void File cannot be set as profile photo.
file_size_error Void File cannot exceed 10 MB.
dimension_error Void Image must be larger than 128 x 128.
thumbnail_error Void Image could not be thumbnailed.
transient_error Void Temporary infrastructure failure, please retry.

auth

/token/from_oauth1

Version
Description

Creates an OAuth 2.0 access token from the supplied OAuth 1.0 access token.

URL Structure
https://api.dropboxapi.com/2/auth/token/from_oauth1
Authentication
App Authentication
Endpoint format
RPC
Required Scope
None
Example
Get app key and secret for:
curl -X POST https://api.dropboxapi.com/2/auth/token/from_oauth1 \     --header "Authorization: Basic                            " \     --header "Content-Type: application/json" \     --data "{\"oauth1_token\": \"qievr8hamyg6ndck\",\"oauth1_token_secret\": \"qomoftv0472git7\"}"
Parameters
{     "oauth1_token": "qievr8hamyg6ndck",     "oauth1_token_secret": "qomoftv0472git7" }
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.
Returns
{     "oauth2_token": "9mCrkS7BIdAAAAAAAAAAHHS0TsSnpYvKQVtKdBnN5IuzhYOGblSgTcHgBFKFMmFn" }
oauth2_token String(min_length=1) The OAuth 2.0 token generated from the supplied OAuth 1.0 token.
Errors
Example: invalid_oauth1_token_info
{     "error_summary": "invalid_oauth1_token_info/...",     "error": {         ".tag": "invalid_oauth1_token_info"     } }
{     "error_summary": "app_id_mismatch/...",     "error": {         ".tag": "app_id_mismatch"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
TokenFromOAuth1Error (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_oauth1_token_info Void Part or all of the OAuth 1.0 access token info is invalid.
app_id_mismatch Void The authorized app does not match the app associated with the supplied access token.

/token/revoke

Version
Description

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.

URL Structure
https://api.dropboxapi.com/2/auth/token/revoke
Authentication
User Authentication
Endpoint format
RPC
Required Scope
None
Example
curl -X POST https://api.dropboxapi.com/2/auth/token/revoke \     --header "Authorization: Bearer                            "
Parameters

No parameters.

Returns

No return values.

Errors

No errors.

check

/app

Version
PREVIEW - may change or disappear without notice
Description

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 query, it indicates at least part of the Dropbox API infrastructure is working and that the app key and secret valid.

URL Structure
https://api.dropboxapi.com/2/check/app
Authentication
App Authentication
Endpoint format
RPC
Required Scope
None
Example
Get app key and secret for:
curl -X POST https://api.dropboxapi.com/2/check/app \     --header "Authorization: Basic                            " \     --header "Content-Type: application/json" \     --data "{\"query\": \"foo\"}"
Parameters
{     "query": "foo" }
EchoArg contains the arguments to be sent to the Dropbox servers.
query String The string that you'd like to be echoed back to you. The default for this field is "".
Returns
{     "result": "foo" }
EchoResult contains the result returned from the Dropbox servers.
result String If everything worked correctly, this would be the same as query. The default for this field is "".
Errors

No errors.

/user

Version
PREVIEW - may change or disappear without notice
Description

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 query, it indicates at least part of the Dropbox API infrastructure is working and that the access token is valid.

URL Structure
https://api.dropboxapi.com/2/check/user
Authentication
User Authentication
Endpoint format
RPC
Required Scope
account_info.read
Example
curl -X POST https://api.dropboxapi.com/2/check/user \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"query\": \"foo\"}"
Parameters
{     "query": "foo" }
EchoArg contains the arguments to be sent to the Dropbox servers.
query String The string that you'd like to be echoed back to you. The default for this field is "".
Returns
{     "result": "foo" }
EchoResult contains the result returned from the Dropbox servers.
result String If everything worked correctly, this would be the same as query. The default for this field is "".
Errors

No errors.

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.

The most basic unit in this namespace is the :type:\`PropertyField\`. These fields encapsulate the actual key/value data.

Fields are added to a Dropbox file using a :type:\`PropertyGroup\`. Property groups contain a reference to a Dropbox file and a :type:\`PropertyGroupTemplate\`. Property groups are uniquely identified by the combination of their associated Dropbox file and template.

The :type:\`PropertyGroupTemplate\` is a way of restricting the possible key names and value types of the data within a property group. The possible key names and value types are explicitly enumerated using :type:\`PropertyFieldTemplate\` objects.

You can think of a property group template as a class definition for a particular key/value metadata object, and the property groups themselves as the instantiations of these objects.

Templates are owned either by a user/app pair or team/app pair. Templates and their associated properties can't be accessed by any app other than the app that created them, and even then, only when the app is linked with the owner of the template (either a user or team).

User-owned templates are accessed via the user-auth file_properties/templates/*_for_user endpoints, while team-owned templates are accessed via the team-auth file_properties/templates/*_for_team endpoints. Properties associated with either type of template can be accessed via the user-auth properties/* endpoints.

Finally, properties can be accessed from a number of endpoints that return metadata, including \`files/get_metadata\`, and \`files/list_folder\`. Properties can also be added during upload, using \`files/upload\`.

/properties/add

Version
Description

Add property groups to a Dropbox file. See templates/add_for_user or templates/add_for_team to create new templates.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/properties/add
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/properties/add \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/my_awesome/word.docx\",\"property_groups\": [{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\",\"fields\": [{\"name\": \"Security Policy\",\"value\": \"Confidential\"}]}]}"
Parameters
{     "path": "/my_awesome/word.docx",     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ] }
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file or folder.
property_groups List of (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.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a 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.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: unsupported_folder
{     "error_summary": "unsupported_folder/...",     "error": {         ".tag": "unsupported_folder"     } }
Example: property_field_too_large
{     "error_summary": "property_field_too_large/...",     "error": {         ".tag": "property_field_too_large"     } }
Example: does_not_fit_template
{     "error_summary": "does_not_fit_template/...",     "error": {         ".tag": "does_not_fit_template"     } }
Example: duplicate_property_groups
{     "error_summary": "duplicate_property_groups/...",     "error": {         ".tag": "duplicate_property_groups"     } }
Example: property_group_already_exists
{     "error_summary": "property_group_already_exists/...",     "error": {         ".tag": "property_group_already_exists"     } }
AddPropertiesError (union)
The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.
property_group_already_exists Void A property group associated with this template and file already exists.

/properties/overwrite

Version
Description

Overwrite property groups associated with a file. This endpoint should be used instead of 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 properties/update will only delete fields that are explicitly marked for deletion.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/properties/overwrite
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/properties/overwrite \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/my_awesome/word.docx\",\"property_groups\": [{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\",\"fields\": [{\"name\": \"Security Policy\",\"value\": \"Confidential\"}]}]}"
Parameters
{     "path": "/my_awesome/word.docx",     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ] }
OverwritePropertyGroupArg
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file or folder.
property_groups List of (PropertyGroup, min_items=1) The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same template.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a 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.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: unsupported_folder
{     "error_summary": "unsupported_folder/...",     "error": {         ".tag": "unsupported_folder"     } }
Example: property_field_too_large
{     "error_summary": "property_field_too_large/...",     "error": {         ".tag": "property_field_too_large"     } }
Example: does_not_fit_template
{     "error_summary": "does_not_fit_template/...",     "error": {         ".tag": "does_not_fit_template"     } }
Example: duplicate_property_groups
{     "error_summary": "duplicate_property_groups/...",     "error": {         ".tag": "duplicate_property_groups"     } }
InvalidPropertyGroupError (union)
The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.

/properties/remove

Version
Description

Permanently removes the specified property group from the file. To remove specific property field key value pairs, see properties/update. To update a template, see templates/update_for_user or templates/update_for_team. To remove a template, see templates/remove_for_user or templates/remove_for_team.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/properties/remove
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/properties/remove \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/my_awesome/word.docx\",\"property_template_ids\": [\"ptid:1a5n2i6d3OYEAAAAAAAAAYa\"]}"
Parameters
{     "path": "/my_awesome/word.docx",     "property_template_ids": [         "ptid:1a5n2i6d3OYEAAAAAAAAAYa"     ] }
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file or folder.
property_template_ids List of (String(min_length=1, pattern="(/|ptid:).*")) A list of identifiers for a template created by templates/add_for_user or templates/add_for_team.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: unsupported_folder
{     "error_summary": "unsupported_folder/...",     "error": {         ".tag": "unsupported_folder"     } }
RemovePropertiesError (union)
The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_group_lookup LookUpPropertiesError
LookUpPropertiesError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
property_group_not_found Void No property group was found.

/properties/search/continue

Version
Description

Once a cursor has been retrieved from properties/search, use this to paginate through all search results.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/properties/search/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/properties/search/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\"}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
PropertiesSearchContinueArg
cursor String(min_length=1) The cursor returned by your last call to properties/search or properties/search/continue.
Returns
{     "matches": [         {             "id": "id:a4ayc_80_OEAAAAAAAAAXz",             "path": "/my_awesome/word.docx",             "is_deleted": false,             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ]         }     ] }
matches List of (PropertiesSearchMatch) A list (possibly empty) of matches for the query.
id String(min_length=1) 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 of (PropertyGroup) List of custom property groups associated with the file.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a 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.
cursor String(min_length=1)? Pass the cursor into properties/search/continue to continue to receive search results. Cursor will be null when there are no more results. This field is optional.
Errors
{     "error_summary": "reset/...",     "error": {         ".tag": "reset"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
PropertiesSearchContinueError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
reset Void Indicates that the cursor has been invalidated. Call properties/search to obtain a new cursor.

/properties/update

Version
Description

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 via a "snapshot" . In other words, this endpoint will not delete any omitted fields from a property group, whereas properties/overwrite will delete any fields that are omitted from a property group.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/properties/update
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/properties/update \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/my_awesome/word.docx\",\"update_property_groups\": [{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\",\"add_or_update_fields\": [{\"name\": \"Security Policy\",\"value\": \"Confidential\"}],\"remove_fields\": []}]}"
Parameters
{     "path": "/my_awesome/word.docx",     "update_property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "add_or_update_fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ],             "remove_fields": []         }     ] }
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file or folder.
update_property_groups List of (PropertyGroupUpdate) The property groups "delta" updates to apply.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for a property template.
add_or_update_fields List of (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. This field is optional.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a 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.
remove_fields List of (String)? Property fields to remove (by name), provided they exist. This field is optional.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: unsupported_folder
{     "error_summary": "unsupported_folder/...",     "error": {         ".tag": "unsupported_folder"     } }
Example: property_field_too_large
{     "error_summary": "property_field_too_large/...",     "error": {         ".tag": "property_field_too_large"     } }
Example: does_not_fit_template
{     "error_summary": "does_not_fit_template/...",     "error": {         ".tag": "does_not_fit_template"     } }
Example: duplicate_property_groups
{     "error_summary": "duplicate_property_groups/...",     "error": {         ".tag": "duplicate_property_groups"     } }
UpdatePropertiesError (union)
The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.
property_group_lookup LookUpPropertiesError
LookUpPropertiesError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
property_group_not_found Void No property group was found.

/templates/add_for_user

Version
Description

Add a template associated with a user. See properties/add to add properties to a file. This endpoint can't be called on a team member or admin's behalf.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/templates/add_for_user
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/templates/add_for_user \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"name\": \"Security\",\"description\": \"These properties describe how confidential this file or folder is.\",\"fields\": [{\"name\": \"Security Policy\",\"description\": \"This is the security policy of the file or folder described.\nPolicies can be Confidential, Public or Internal.\",\"type\": \"string\"}]}"
Parameters
{     "name": "Security",     "description": "These properties describe how confidential this file or folder is.",     "fields": [         {             "name": "Security Policy",             "description": "This is the security policy of the file or folder described.\nPolicies can be Confidential, Public or Internal.",             "type": "string"         }     ] }
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 of (PropertyFieldTemplate) Definitions of the property fields associated with this template. There can be up to 32 properties in a single template.
Defines how a single property field may be structured. Used exclusively by 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 Data type of the value of this property field. This type will be enforced upon property creation and modifications.
PropertyType (open union)
Data type of the given property field added. The value will be one of the following datatypes. New values may be introduced as our API evolves.
string Void The associated property field will be of type string. Unicode is supported.
Returns
{     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa" }
template_id String(min_length=1, pattern="(/|ptid:).*") An identifier for template added by See templates/add_for_user or templates/add_for_team.
Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: conflicting_property_names
{     "error_summary": "conflicting_property_names/...",     "error": {         ".tag": "conflicting_property_names"     } }
Example: too_many_properties
{     "error_summary": "too_many_properties/...",     "error": {         ".tag": "too_many_properties"     } }
Example: too_many_templates
{     "error_summary": "too_many_templates/...",     "error": {         ".tag": "too_many_templates"     } }
Example: template_attribute_too_large
{     "error_summary": "template_attribute_too_large/...",     "error": {         ".tag": "template_attribute_too_large"     } }
ModifyTemplateError (union)
The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
conflicting_property_names Void A property field key with that name already exists in the template.
too_many_properties Void There are too many properties in the changed template. The maximum number of properties per template is 32.
too_many_templates Void There are too many templates for the team.
template_attribute_too_large Void The template name, description or one or more of the property field keys is too large.

/templates/get_for_user

Version
Description

Get the schema for a specified template. This endpoint can't be called on a team member or admin's behalf.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/templates/get_for_user
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/templates/get_for_user \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\"}"
Parameters
{     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa" }
template_id String(min_length=1, pattern="(/|ptid:).*") An identifier for template added by route See templates/add_for_user or templates/add_for_team.
Returns
{     "name": "Security",     "description": "These properties describe how confidential this file or folder is.",     "fields": [         {             "name": "Security Policy",             "description": "This is the security policy of the file or folder described.\nPolicies can be Confidential, Public or Internal.",             "type": {                 ".tag": "string"             }         }     ] }
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 of (PropertyFieldTemplate) Definitions of the property fields associated with this template. There can be up to 32 properties in a single template.
Defines how a single property field may be structured. Used exclusively by 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 Data type of the value of this property field. This type will be enforced upon property creation and modifications.
PropertyType (open union)
Data type of the given property field added. The value will be one of the following datatypes. New values may be introduced as our API evolves.
string Void The associated property field will be of type string. Unicode is supported.
Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
TemplateError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.

/templates/list_for_user

Version
Description

Get the template identifiers for a team. To get the schema of each template use templates/get_for_user. This endpoint can't be called on a team member or admin's behalf.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/templates/list_for_user
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/templates/list_for_user \     --header "Authorization: Bearer                            "
Parameters

No parameters.

Returns
{     "template_ids": [         "ptid:1a5n2i6d3OYEAAAAAAAAAYa"     ] }
template_ids List of (String(min_length=1, pattern="(/|ptid:).*")) List of identifiers for templates added by See templates/add_for_user or templates/add_for_team.
Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
TemplateError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.

/templates/remove_for_user

Version
Description

Permanently removes the specified template created from templates/add_for_user. All properties associated with the template will also be removed. This action cannot be undone.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/templates/remove_for_user
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/templates/remove_for_user \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\"}"
Parameters
{     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa" }
template_id String(min_length=1, pattern="(/|ptid:).*") An identifier for a template created by templates/add_for_user or templates/add_for_team.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
TemplateError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.

/templates/update_for_user

Version
Description

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.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/file_properties/templates/update_for_user
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/file_properties/templates/update_for_user \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\",\"name\": \"New Security Template Name\",\"description\": \"These properties will describe how confidential this file or folder is.\",\"add_fields\": [{\"name\": \"Security Policy\",\"description\": \"This is the security policy of the file or folder described.\nPolicies can be Confidential, Public or Internal.\",\"type\": \"string\"}]}"
Parameters
{     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",     "name": "New Security Template Name",     "description": "These properties will describe how confidential this file or folder is.",     "add_fields": [         {             "name": "Security Policy",             "description": "This is the security policy of the file or folder described.\nPolicies can be Confidential, Public or Internal.",             "type": "string"         }     ] }
template_id String(min_length=1, pattern="(/|ptid:).*") An identifier for template added by See templates/add_for_user or templates/add_for_team.
name String? A display name for the template. template names can be up to 256 bytes. This field is optional.
description String? Description for the new template. Template descriptions can be up to 1024 bytes. This field is optional.
add_fields List of (PropertyFieldTemplate)? Property field templates to be added to the group template. There can be up to 32 properties in a single template. This field is optional.
Defines how a single property field may be structured. Used exclusively by 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 Data type of the value of this property field. This type will be enforced upon property creation and modifications.
PropertyType (open union)
Data type of the given property field added. The value will be one of the following datatypes. New values may be introduced as our API evolves.
string Void The associated property field will be of type string. Unicode is supported.
Returns
{     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa" }
template_id String(min_length=1, pattern="(/|ptid:).*") An identifier for template added by route See templates/add_for_user or templates/add_for_team.
Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: conflicting_property_names
{     "error_summary": "conflicting_property_names/...",     "error": {         ".tag": "conflicting_property_names"     } }
Example: too_many_properties
{     "error_summary": "too_many_properties/...",     "error": {         ".tag": "too_many_properties"     } }
Example: too_many_templates
{     "error_summary": "too_many_templates/...",     "error": {         ".tag": "too_many_templates"     } }
Example: template_attribute_too_large
{     "error_summary": "template_attribute_too_large/...",     "error": {         ".tag": "template_attribute_too_large"     } }
ModifyTemplateError (union)
The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
conflicting_property_names Void A property field key with that name already exists in the template.
too_many_properties Void There are too many properties in the changed template. The maximum number of properties per template is 32.
too_many_templates Void There are too many templates for the team.
template_attribute_too_large Void The template name, description or one or more of the property field keys is too large.

file_requests

This namespace contains endpoints and data types for file request operations.

/count

Version
Description

Returns the total number of file requests owned by this user. Includes both open and closed file requests.

URL Structure
https://api.dropboxapi.com/2/file_requests/count
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.read
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/count \     --header "Authorization: Bearer                            "
Parameters

No parameters.

Returns
{     "file_request_count": 15 }
Result for count.
file_request_count UInt64 The number file requests owner by this user.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
CountFileRequestsError (union)
There was an error counting the file requests. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.

/create

Version
Description

Creates a file request for this user.

URL Structure
https://api.dropboxapi.com/2/file_requests/create
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.write
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/create \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"title\": \"Homework submission\",\"destination\": \"/File Requests/Homework\",\"deadline\": {\"deadline\": \"2020-10-12T17:00:00Z\",\"allow_late_uploads\": \"seven_days\"},\"open\": true}"
Parameters
{     "title": "Homework submission",     "destination": "/File Requests/Homework",     "deadline": {         "deadline": "2020-10-12T17:00:00Z",         "allow_late_uploads": "seven_days"     },     "open": true }
Arguments for create.
title String(min_length=1) The title of the file request. Must not be empty.
destination String(pattern="/(.|[\r\n])*") The 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 FileRequestDeadline? The deadline for the file request. Deadlines can only be set by Professional and Business accounts. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
open Boolean Whether or not the file request should be open. If the file request is closed, it will not accept any file submissions, but it can be opened later. The default for this field is True.
description String? A description of the file request. This field is optional.
Returns
{     "id": "oaCAVmEyrqYnkZX9955Y",     "url": "https://www.dropbox.com/request/oaCAVmEyrqYnkZX9955Y",     "title": "Homework submission",     "created": "2015-10-05T17:00:00Z",     "is_open": true,     "file_count": 3,     "destination": "/File Requests/Homework",     "deadline": {         "deadline": "2020-10-12T17:00:00Z",         "allow_late_uploads": {             ".tag": "seven_days"         }     },     "description": "Please submit your homework here." }
{     "id": "BAJ7IrRGicQKGToykQdB",     "url": "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB",     "title": "Photo contest submission",     "created": "2015-11-02T04:00:00Z",     "is_open": true,     "file_count": 105,     "destination": "/Photo contest entries",     "deadline": {         "deadline": "2020-10-12T17:00:00Z"     } }
Example: with_no_deadline
{     "id": "rxwMPvK3ATTa0VxOJu5T",     "url": "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T",     "title": "Wedding photo submission",     "created": "2015-12-15T13:02:00Z",     "is_open": true,     "file_count": 37,     "destination": "/Wedding photos" }
A file request for receiving files into the user's Dropbox account.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request.
url String(min_length=1) The URL of the file request.
title String(min_length=1) The title of the file request.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") When this file request was created.
is_open Boolean Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions.
file_count Int64 The number of files this file request has received.
destination String(pattern="/(.|[\r\n])*")? The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. This field is optional.
deadline FileRequestDeadline? The deadline for this file request. Only set if the request has a deadline. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
description String? A description of the file request. This field is optional.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "not_a_folder/...",     "error": {         ".tag": "not_a_folder"     } }
Example: app_lacks_access
{     "error_summary": "app_lacks_access/...",     "error": {         ".tag": "app_lacks_access"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
Example: validation_error
{     "error_summary": "validation_error/...",     "error": {         ".tag": "validation_error"     } }
Example: invalid_location
{     "error_summary": "invalid_location/...",     "error": {         ".tag": "invalid_location"     } }
{     "error_summary": "rate_limit/...",     "error": {         ".tag": "rate_limit"     } }
CreateFileRequestError (union)
There was an error creating the file request. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.
not_found Void This file request ID was not found.
not_a_folder Void The specified path is not a folder.
app_lacks_access Void 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 Void This user doesn't have permission to access or modify this file request.
email_unverified Void 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 here.
validation_error Void There was an error validating the request. For example, the title was invalid, or there were disallowed characters in the destination path.
invalid_location Void File requests are not available on the specified folder.
rate_limit Void The user has reached the rate limit for creating file requests. The limit is currently 4000 file requests total.

/delete

Version
Description

Delete a batch of closed file requests.

URL Structure
https://api.dropboxapi.com/2/file_requests/delete
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.write
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/delete \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"ids\": [\"oaCAVmEyrqYnkZX9955Y\",\"BaZmehYoXMPtaRmfTbSG\"]}"
Parameters
{     "ids": [         "oaCAVmEyrqYnkZX9955Y",         "BaZmehYoXMPtaRmfTbSG"     ] }
Arguments for delete.
ids List of (String(min_length=1, pattern="[-_0-9a-zA-Z]+")) List IDs of the file requests to delete.
Returns
{     "file_requests": [         {             "id": "oaCAVmEyrqYnkZX9955Y",             "url": "https://www.dropbox.com/request/oaCAVmEyrqYnkZX9955Y",             "title": "Homework submission",             "created": "2015-10-05T17:00:00Z",             "is_open": true,             "file_count": 3,             "destination": "/File Requests/Homework",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z",                 "allow_late_uploads": {                     ".tag": "seven_days"                 }             },             "description": "Please submit your homework here."         },         {             "id": "BAJ7IrRGicQKGToykQdB",             "url": "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB",             "title": "Photo contest submission",             "created": "2015-11-02T04:00:00Z",             "is_open": true,             "file_count": 105,             "destination": "/Photo contest entries",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z"             }         },         {             "id": "rxwMPvK3ATTa0VxOJu5T",             "url": "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T",             "title": "Wedding photo submission",             "created": "2015-12-15T13:02:00Z",             "is_open": true,             "file_count": 37,             "destination": "/Wedding photos"         }     ] }
Result for delete.
file_requests List of (FileRequest) The file requests deleted by the request.
A file request for receiving files into the user's Dropbox account.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request.
url String(min_length=1) The URL of the file request.
title String(min_length=1) The title of the file request.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") When this file request was created.
is_open Boolean Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions.
file_count Int64 The number of files this file request has received.
destination String(pattern="/(.|[\r\n])*")? The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. This field is optional.
deadline FileRequestDeadline? The deadline for this file request. Only set if the request has a deadline. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
description String? A description of the file request. This field is optional.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "not_a_folder/...",     "error": {         ".tag": "not_a_folder"     } }
Example: app_lacks_access
{     "error_summary": "app_lacks_access/...",     "error": {         ".tag": "app_lacks_access"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
Example: validation_error
{     "error_summary": "validation_error/...",     "error": {         ".tag": "validation_error"     } }
Example: file_request_open
{     "error_summary": "file_request_open/...",     "error": {         ".tag": "file_request_open"     } }
DeleteFileRequestError (union)
There was an error deleting these file requests. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.
not_found Void This file request ID was not found.
not_a_folder Void The specified path is not a folder.
app_lacks_access Void 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 Void This user doesn't have permission to access or modify this file request.
email_unverified Void 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 here.
validation_error Void There was an error validating the request. For example, the title was invalid, or there were disallowed characters in the destination path.
file_request_open Void One or more file requests currently open.

/delete_all_closed

Version
Description

Delete all closed file requests owned by this user.

URL Structure
https://api.dropboxapi.com/2/file_requests/delete_all_closed
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.write
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/delete_all_closed \     --header "Authorization: Bearer                            "
Parameters

No parameters.

Returns
{     "file_requests": [         {             "id": "oaCAVmEyrqYnkZX9955Y",             "url": "https://www.dropbox.com/request/oaCAVmEyrqYnkZX9955Y",             "title": "Homework submission",             "created": "2015-10-05T17:00:00Z",             "is_open": true,             "file_count": 3,             "destination": "/File Requests/Homework",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z",                 "allow_late_uploads": {                     ".tag": "seven_days"                 }             },             "description": "Please submit your homework here."         },         {             "id": "BAJ7IrRGicQKGToykQdB",             "url": "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB",             "title": "Photo contest submission",             "created": "2015-11-02T04:00:00Z",             "is_open": true,             "file_count": 105,             "destination": "/Photo contest entries",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z"             }         },         {             "id": "rxwMPvK3ATTa0VxOJu5T",             "url": "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T",             "title": "Wedding photo submission",             "created": "2015-12-15T13:02:00Z",             "is_open": true,             "file_count": 37,             "destination": "/Wedding photos"         }     ] }
DeleteAllClosedFileRequestsResult
Result for delete_all_closed.
file_requests List of (FileRequest) The file requests deleted for this user.
A file request for receiving files into the user's Dropbox account.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request.
url String(min_length=1) The URL of the file request.
title String(min_length=1) The title of the file request.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") When this file request was created.
is_open Boolean Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions.
file_count Int64 The number of files this file request has received.
destination String(pattern="/(.|[\r\n])*")? The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. This field is optional.
deadline FileRequestDeadline? The deadline for this file request. Only set if the request has a deadline. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
description String? A description of the file request. This field is optional.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "not_a_folder/...",     "error": {         ".tag": "not_a_folder"     } }
Example: app_lacks_access
{     "error_summary": "app_lacks_access/...",     "error": {         ".tag": "app_lacks_access"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
Example: validation_error
{     "error_summary": "validation_error/...",     "error": {         ".tag": "validation_error"     } }
DeleteAllClosedFileRequestsError (union)
There was an error deleting all closed file requests. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.
not_found Void This file request ID was not found.
not_a_folder Void The specified path is not a folder.
app_lacks_access Void 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 Void This user doesn't have permission to access or modify this file request.
email_unverified Void 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 here.
validation_error Void There was an error validating the request. For example, the title was invalid, or there were disallowed characters in the destination path.

/get

Version
Description

Returns the specified file request.

URL Structure
https://api.dropboxapi.com/2/file_requests/get
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.read
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/get \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"id\": \"oaCAVmEyrqYnkZX9955Y\"}"
Parameters
{     "id": "oaCAVmEyrqYnkZX9955Y" }
Arguments for get.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request to retrieve.
Returns
{     "id": "oaCAVmEyrqYnkZX9955Y",     "url": "https://www.dropbox.com/request/oaCAVmEyrqYnkZX9955Y",     "title": "Homework submission",     "created": "2015-10-05T17:00:00Z",     "is_open": true,     "file_count": 3,     "destination": "/File Requests/Homework",     "deadline": {         "deadline": "2020-10-12T17:00:00Z",         "allow_late_uploads": {             ".tag": "seven_days"         }     },     "description": "Please submit your homework here." }
{     "id": "BAJ7IrRGicQKGToykQdB",     "url": "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB",     "title": "Photo contest submission",     "created": "2015-11-02T04:00:00Z",     "is_open": true,     "file_count": 105,     "destination": "/Photo contest entries",     "deadline": {         "deadline": "2020-10-12T17:00:00Z"     } }
Example: with_no_deadline
{     "id": "rxwMPvK3ATTa0VxOJu5T",     "url": "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T",     "title": "Wedding photo submission",     "created": "2015-12-15T13:02:00Z",     "is_open": true,     "file_count": 37,     "destination": "/Wedding photos" }
A file request for receiving files into the user's Dropbox account.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request.
url String(min_length=1) The URL of the file request.
title String(min_length=1) The title of the file request.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") When this file request was created.
is_open Boolean Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions.
file_count Int64 The number of files this file request has received.
destination String(pattern="/(.|[\r\n])*")? The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. This field is optional.
deadline FileRequestDeadline? The deadline for this file request. Only set if the request has a deadline. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
description String? A description of the file request. This field is optional.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "not_a_folder/...",     "error": {         ".tag": "not_a_folder"     } }
Example: app_lacks_access
{     "error_summary": "app_lacks_access/...",     "error": {         ".tag": "app_lacks_access"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
Example: validation_error
{     "error_summary": "validation_error/...",     "error": {         ".tag": "validation_error"     } }
GetFileRequestError (union)
There was an error retrieving the specified file request. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.
not_found Void This file request ID was not found.
not_a_folder Void The specified path is not a folder.
app_lacks_access Void 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 Void This user doesn't have permission to access or modify this file request.
email_unverified Void 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 here.
validation_error Void There was an error validating the request. For example, the title was invalid, or there were disallowed characters in the destination path.

/list

Version
PREVIEW - may change or disappear without notice
Description

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.

URL Structure
https://api.dropboxapi.com/2/file_requests/list
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.read
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/list \     --header "Authorization: Bearer                            "
Parameters

No parameters.

Returns
{     "file_requests": [         {             "id": "oaCAVmEyrqYnkZX9955Y",             "url": "https://www.dropbox.com/request/oaCAVmEyrqYnkZX9955Y",             "title": "Homework submission",             "created": "2015-10-05T17:00:00Z",             "is_open": true,             "file_count": 3,             "destination": "/File Requests/Homework",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z",                 "allow_late_uploads": {                     ".tag": "seven_days"                 }             },             "description": "Please submit your homework here."         },         {             "id": "BAJ7IrRGicQKGToykQdB",             "url": "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB",             "title": "Photo contest submission",             "created": "2015-11-02T04:00:00Z",             "is_open": true,             "file_count": 105,             "destination": "/Photo contest entries",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z"             }         },         {             "id": "rxwMPvK3ATTa0VxOJu5T",             "url": "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T",             "title": "Wedding photo submission",             "created": "2015-12-15T13:02:00Z",             "is_open": true,             "file_count": 37,             "destination": "/Wedding photos"         }     ] }
Result for list.
file_requests List of (FileRequest) The file requests owned by this user. Apps with the app folder permission will only see file requests in their app folder.
A file request for receiving files into the user's Dropbox account.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request.
url String(min_length=1) The URL of the file request.
title String(min_length=1) The title of the file request.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") When this file request was created.
is_open Boolean Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions.
file_count Int64 The number of files this file request has received.
destination String(pattern="/(.|[\r\n])*")? The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. This field is optional.
deadline FileRequestDeadline? The deadline for this file request. Only set if the request has a deadline. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
description String? A description of the file request. This field is optional.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFileRequestsError (union)
There was an error retrieving the file requests. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.
Description

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.

URL Structure
https://api.dropboxapi.com/2/file_requests/list_v2
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.read
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/list_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"limit\": 1000}"
Parameters
{     "limit": 1000 }
Arguments for list:2.
limit UInt64 The maximum number of file requests that should be returned per request. The default for this field is 1000.
Returns
{     "file_requests": [         {             "id": "oaCAVmEyrqYnkZX9955Y",             "url": "https://www.dropbox.com/request/oaCAVmEyrqYnkZX9955Y",             "title": "Homework submission",             "created": "2015-10-05T17:00:00Z",             "is_open": true,             "file_count": 3,             "destination": "/File Requests/Homework",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z",                 "allow_late_uploads": {                     ".tag": "seven_days"                 }             },             "description": "Please submit your homework here."         },         {             "id": "BAJ7IrRGicQKGToykQdB",             "url": "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB",             "title": "Photo contest submission",             "created": "2015-11-02T04:00:00Z",             "is_open": true,             "file_count": 105,             "destination": "/Photo contest entries",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z"             }         },         {             "id": "rxwMPvK3ATTa0VxOJu5T",             "url": "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T",             "title": "Wedding photo submission",             "created": "2015-12-15T13:02:00Z",             "is_open": true,             "file_count": 37,             "destination": "/Wedding photos"         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu",     "has_more": true }
Result for list:2 and list/continue.
file_requests List of (FileRequest) The file requests owned by this user. Apps with the app folder permission will only see file requests in their app folder.
A file request for receiving files into the user's Dropbox account.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request.
url String(min_length=1) The URL of the file request.
title String(min_length=1) The title of the file request.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") When this file request was created.
is_open Boolean Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions.
file_count Int64 The number of files this file request has received.
destination String(pattern="/(.|[\r\n])*")? The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. This field is optional.
deadline FileRequestDeadline? The deadline for this file request. Only set if the request has a deadline. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
description String? A description of the file request. This field is optional.
cursor String Pass the cursor into 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.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFileRequestsError (union)
There was an error retrieving the file requests. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.

/list/continue

Version
PREVIEW - may change or disappear without notice
Description

Once a cursor has been retrieved from list:2, use this to paginate through all file requests. The cursor must come from a previous call to list:2 or list/continue.

URL Structure
https://api.dropboxapi.com/2/file_requests/list/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.read
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/list/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\"}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
ListFileRequestsContinueArg
cursor String The cursor returned by the previous API call specified in the endpoint description.
Returns
{     "file_requests": [         {             "id": "oaCAVmEyrqYnkZX9955Y",             "url": "https://www.dropbox.com/request/oaCAVmEyrqYnkZX9955Y",             "title": "Homework submission",             "created": "2015-10-05T17:00:00Z",             "is_open": true,             "file_count": 3,             "destination": "/File Requests/Homework",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z",                 "allow_late_uploads": {                     ".tag": "seven_days"                 }             },             "description": "Please submit your homework here."         },         {             "id": "BAJ7IrRGicQKGToykQdB",             "url": "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB",             "title": "Photo contest submission",             "created": "2015-11-02T04:00:00Z",             "is_open": true,             "file_count": 105,             "destination": "/Photo contest entries",             "deadline": {                 "deadline": "2020-10-12T17:00:00Z"             }         },         {             "id": "rxwMPvK3ATTa0VxOJu5T",             "url": "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T",             "title": "Wedding photo submission",             "created": "2015-12-15T13:02:00Z",             "is_open": true,             "file_count": 37,             "destination": "/Wedding photos"         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu",     "has_more": true }
Result for list:2 and list/continue.
file_requests List of (FileRequest) The file requests owned by this user. Apps with the app folder permission will only see file requests in their app folder.
A file request for receiving files into the user's Dropbox account.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request.
url String(min_length=1) The URL of the file request.
title String(min_length=1) The title of the file request.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") When this file request was created.
is_open Boolean Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions.
file_count Int64 The number of files this file request has received.
destination String(pattern="/(.|[\r\n])*")? The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. This field is optional.
deadline FileRequestDeadline? The deadline for this file request. Only set if the request has a deadline. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
description String? A description of the file request. This field is optional.
cursor String Pass the cursor into 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.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "invalid_cursor/...",     "error": {         ".tag": "invalid_cursor"     } }
ListFileRequestsContinueError (union)
There was an error retrieving the file requests. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.
invalid_cursor Void The cursor is invalid.

/update

Version
Description

Update a file request.

URL Structure
https://api.dropboxapi.com/2/file_requests/update
Authentication
User Authentication
Endpoint format
RPC
Required Scope
file_requests.write
Example
curl -X POST https://api.dropboxapi.com/2/file_requests/update \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"id\": \"oaCAVmEyrqYnkZX9955Y\",\"title\": \"Homework submission\",\"destination\": \"/File Requests/Homework\",\"deadline\": {\".tag\": \"update\",\"deadline\": \"2020-10-12T17:00:00Z\",\"allow_late_uploads\": \"seven_days\"},\"open\": true}"
Parameters
{     "id": "oaCAVmEyrqYnkZX9955Y",     "title": "Homework submission",     "destination": "/File Requests/Homework",     "deadline": {         ".tag": "update",         "deadline": "2020-10-12T17:00:00Z",         "allow_late_uploads": "seven_days"     },     "open": true }
Arguments for update.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request to update.
title String(min_length=1)? The new title of the file request. Must not be empty. This field is optional.
destination String(pattern="/(.|[\r\n])*")? 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. This field is optional.
deadline UpdateFileRequestDeadline The new deadline for the file request. Deadlines can only be set by Professional and Business accounts. The default for this union is no_update.
UpdateFileRequestDeadline (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_update Void Do not change the file request's deadline.
update FileRequestDeadline? If None, the file request's deadline is cleared. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
open Boolean? Whether to set this file request as open or closed. This field is optional.
description String? The description of the file request. This field is optional.
Returns
{     "id": "oaCAVmEyrqYnkZX9955Y",     "url": "https://www.dropbox.com/request/oaCAVmEyrqYnkZX9955Y",     "title": "Homework submission",     "created": "2015-10-05T17:00:00Z",     "is_open": true,     "file_count": 3,     "destination": "/File Requests/Homework",     "deadline": {         "deadline": "2020-10-12T17:00:00Z",         "allow_late_uploads": {             ".tag": "seven_days"         }     },     "description": "Please submit your homework here." }
{     "id": "BAJ7IrRGicQKGToykQdB",     "url": "https://www.dropbox.com/request/BAJ7IrRGjcQKGToykQdB",     "title": "Photo contest submission",     "created": "2015-11-02T04:00:00Z",     "is_open": true,     "file_count": 105,     "destination": "/Photo contest entries",     "deadline": {         "deadline": "2020-10-12T17:00:00Z"     } }
Example: with_no_deadline
{     "id": "rxwMPvK3ATTa0VxOJu5T",     "url": "https://www.dropbox.com/request/rxwMPvK3ATTa0VxOJu5T",     "title": "Wedding photo submission",     "created": "2015-12-15T13:02:00Z",     "is_open": true,     "file_count": 37,     "destination": "/Wedding photos" }
A file request for receiving files into the user's Dropbox account.
id String(min_length=1, pattern="[-_0-9a-zA-Z]+") The ID of the file request.
url String(min_length=1) The URL of the file request.
title String(min_length=1) The title of the file request.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") When this file request was created.
is_open Boolean Whether or not the file request is open. If the file request is closed, it will not accept any more file submissions.
file_count Int64 The number of files this file request has received.
destination String(pattern="/(.|[\r\n])*")? The path of the folder in the Dropbox where uploaded files will be sent. This can be None if the destination was removed. For apps with the app folder permission, this will be relative to the app folder. This field is optional.
deadline FileRequestDeadline? The deadline for this file request. Only set if the request has a deadline. This field is optional.
deadline Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
description String? A description of the file request. This field is optional.
Errors
Example: disabled_for_team
{     "error_summary": "disabled_for_team/...",     "error": {         ".tag": "disabled_for_team"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "not_a_folder/...",     "error": {         ".tag": "not_a_folder"     } }
Example: app_lacks_access
{     "error_summary": "app_lacks_access/...",     "error": {         ".tag": "app_lacks_access"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
Example: validation_error
{     "error_summary": "validation_error/...",     "error": {         ".tag": "validation_error"     } }
UpdateFileRequestError (union)
There is an error updating the file request. The value will be one of the following datatypes:
disabled_for_team Void This user's Dropbox Business team doesn't allow file requests.
not_found Void This file request ID was not found.
not_a_folder Void The specified path is not a folder.
app_lacks_access Void 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 Void This user doesn't have permission to access or modify this file request.
email_unverified Void 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 here.
validation_error Void There was an error validating the request. For example, the title was invalid, or there were disallowed characters in the destination path.

files

This namespace contains endpoints and data types for basic file operations.

/copy

Version
Description

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.

URL Structure
https://api.dropboxapi.com/2/files/copy
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/copy \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"from_path\": \"/Homework/math\",\"to_path\": \"/Homework/algebra\",\"allow_shared_folder\": false,\"autorename\": false,\"allow_ownership_transfer\": false}"
Parameters
{     "from_path": "/Homework/math",     "to_path": "/Homework/algebra",     "allow_shared_folder": false,     "autorename": false,     "allow_ownership_transfer": false }
from_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to be copied or moved.
to_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox that is the destination.
allow_shared_folder deprecated Boolean Field is deprecated. This flag has no effect. The default for this field is False.
autorename Boolean If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. The default for this field is False.
allow_ownership_transfer Boolean Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. The default for this field is False.
Returns
{     ".tag": "file",     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
{     ".tag": "folder",     "name": "math",     "id": "id:a4ayc_80_OEAAAAAAAAAXz",     "path_lower": "/homework/math",     "path_display": "/Homework/math",     "sharing_info": {         "read_only": false,         "parent_shared_folder_id": "84528192421",         "traverse_only": false,         "no_access": false     },     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ] }
Example: search_file_metadata
{     ".tag": "file",     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
Example: cant_copy_shared_folder
{     "error_summary": "cant_copy_shared_folder/...",     "error": {         ".tag": "cant_copy_shared_folder"     } }
Example: cant_nest_shared_folder
{     "error_summary": "cant_nest_shared_folder/...",     "error": {         ".tag": "cant_nest_shared_folder"     } }
Example: cant_move_folder_into_itself
{     "error_summary": "cant_move_folder_into_itself/...",     "error": {         ".tag": "cant_move_folder_into_itself"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
Example: duplicated_or_nested_paths
{     "error_summary": "duplicated_or_nested_paths/...",     "error": {         ".tag": "duplicated_or_nested_paths"     } }
Example: cant_transfer_ownership
{     "error_summary": "cant_transfer_ownership/...",     "error": {         ".tag": "cant_transfer_ownership"     } }
Example: insufficient_quota
{     "error_summary": "insufficient_quota/...",     "error": {         ".tag": "insufficient_quota"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
Example: cant_move_shared_folder
{     "error_summary": "cant_move_shared_folder/...",     "error": {         ".tag": "cant_move_shared_folder"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
RelocationError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.
Description

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.

URL Structure
https://api.dropboxapi.com/2/files/copy_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/copy_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"from_path\": \"/Homework/math\",\"to_path\": \"/Homework/algebra\",\"allow_shared_folder\": false,\"autorename\": false,\"allow_ownership_transfer\": false}"
Parameters
{     "from_path": "/Homework/math",     "to_path": "/Homework/algebra",     "allow_shared_folder": false,     "autorename": false,     "allow_ownership_transfer": false }
from_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to be copied or moved.
to_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox that is the destination.
allow_shared_folder deprecated Boolean Field is deprecated. This flag has no effect. The default for this field is False.
autorename Boolean If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. The default for this field is False.
allow_ownership_transfer Boolean Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. The default for this field is False.
Returns
{     "metadata": {         ".tag": "file",         "name": "Prime_Numbers.txt",         "id": "id:a4ayc_80_OEAAAAAAAAAXw",         "client_modified": "2015-05-12T15:50:38Z",         "server_modified": "2015-05-12T15:50:38Z",         "rev": "a1c10ce0dd78",         "size": 7212,         "path_lower": "/homework/math/prime_numbers.txt",         "path_display": "/Homework/math/Prime_Numbers.txt",         "sharing_info": {             "read_only": true,             "parent_shared_folder_id": "84528192421",             "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"         },         "is_downloadable": true,         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ],         "has_explicit_shared_members": false,         "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",         "file_lock_info": {             "is_lockholder": true,             "lockholder_name": "Imaginary User",             "created": "2015-05-12T15:50:38Z"         }     } }
metadata Metadata Metadata of the relocated object.
Errors
Example: cant_copy_shared_folder
{     "error_summary": "cant_copy_shared_folder/...",     "error": {         ".tag": "cant_copy_shared_folder"     } }
Example: cant_nest_shared_folder
{     "error_summary": "cant_nest_shared_folder/...",     "error": {         ".tag": "cant_nest_shared_folder"     } }
Example: cant_move_folder_into_itself
{     "error_summary": "cant_move_folder_into_itself/...",     "error": {         ".tag": "cant_move_folder_into_itself"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
Example: duplicated_or_nested_paths
{     "error_summary": "duplicated_or_nested_paths/...",     "error": {         ".tag": "duplicated_or_nested_paths"     } }
Example: cant_transfer_ownership
{     "error_summary": "cant_transfer_ownership/...",     "error": {         ".tag": "cant_transfer_ownership"     } }
Example: insufficient_quota
{     "error_summary": "insufficient_quota/...",     "error": {         ".tag": "insufficient_quota"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
Example: cant_move_shared_folder
{     "error_summary": "cant_move_shared_folder/...",     "error": {         ".tag": "cant_move_shared_folder"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
RelocationError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.

/copy_batch

Version
Description

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 copy_batch/check:1 to check the job status.

URL Structure
https://api.dropboxapi.com/2/files/copy_batch
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/copy_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"from_path\": \"/Homework/math\",\"to_path\": \"/Homework/algebra\"}],\"autorename\": false,\"allow_shared_folder\": false,\"allow_ownership_transfer\": false}"
Parameters
{     "entries": [         {             "from_path": "/Homework/math",             "to_path": "/Homework/algebra"         }     ],     "autorename": false,     "allow_shared_folder": false,     "allow_ownership_transfer": false }
entries List of (RelocationPath, min_items=1) List of entries to be moved or copied. Each entry is RelocationPath.
from_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to be copied or moved.
to_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox that is the destination.
autorename Boolean If there's a conflict with any file, have the Dropbox server try to autorename that file to avoid the conflict. The default for this field is False.
allow_shared_folder deprecated Boolean Field is deprecated. This flag has no effect. The default for this field is False.
allow_ownership_transfer Boolean Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. The default for this field is False.
Returns
{     ".tag": "complete",     "entries": [         {             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
{     ".tag": "other" }
RelocationBatchLaunch (open union)
Result returned by copy_batch or move_batch that may either launch an asynchronous job or complete synchronously. The value will be one of the following datatypes. New values may be introduced as our API evolves.
async_job_id String(min_length=1) 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.
Errors

No errors.

Description

Copy multiple files or folders to different locations at once in the user's Dropbox.
This route will replace copy_batch:1. The main difference is this route will return status for each entry, while copy_batch:1 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 copy_batch/check:2 to check the job status.

URL Structure
https://api.dropboxapi.com/2/files/copy_batch_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/copy_batch_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"from_path\": \"/Homework/math\",\"to_path\": \"/Homework/algebra\"}],\"autorename\": false}"
Parameters
{     "entries": [         {             "from_path": "/Homework/math",             "to_path": "/Homework/algebra"         }     ],     "autorename": false }
entries List of (RelocationPath, min_items=1) List of entries to be moved or copied. Each entry is RelocationPath.
from_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to be copied or moved.
to_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox that is the destination.
autorename Boolean If there's a conflict with any file, have the Dropbox server try to autorename that file to avoid the conflict. The default for this field is False.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "success": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
RelocationBatchV2Launch (union)
Result returned by copy_batch:2 or move_batch:2 that may either launch an asynchronous job or complete synchronously. The value will be one of the following datatypes:
async_job_id String(min_length=1) 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.
complete RelocationBatchV2Result
entries List of (RelocationBatchResultEntry) Each entry in CopyBatchArg.entries or MoveBatchArg.entries will appear at the same position inside RelocationBatchV2Result.entries.
RelocationBatchResultEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
failure RelocationBatchErrorEntry
RelocationBatchErrorEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
relocation_error RelocationError User errors that retry won't help.
RelocationError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.
internal_error Void 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 Void There are too many write operations in user's Dropbox. Please retry this request.
Errors

No errors.

/copy_batch/check

Version
Description

Returns the status of an asynchronous job for copy_batch:1. If success, it returns list of results for each entry.

URL Structure
https://api.dropboxapi.com/2/files/copy_batch/check
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/copy_batch/check \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "complete",     "entries": [         {             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "in_progress" }
RelocationBatchJobStatus (union)
The value will be one of the following datatypes:
in_progress Void The asynchronous job is still in progress.
failed RelocationBatchError The copy or move batch job has failed with exception.
RelocationBatchError (union)
The value will be one of the following datatypes:
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.
Description

Returns the status of an asynchronous job for copy_batch:2. It returns list of results for each entry.

URL Structure
https://api.dropboxapi.com/2/files/copy_batch/check_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/copy_batch/check_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "success": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "in_progress" }
RelocationBatchV2JobStatus (union)
Result returned by copy_batch/check:2 or move_batch/check:2 that may either be in progress or completed with result for each entry. The value will be one of the following datatypes:
in_progress Void The asynchronous job is still in progress.
complete RelocationBatchV2Result The copy or move batch job has finished.
entries List of (RelocationBatchResultEntry) Each entry in CopyBatchArg.entries or MoveBatchArg.entries will appear at the same position inside RelocationBatchV2Result.entries.
RelocationBatchResultEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
failure RelocationBatchErrorEntry
RelocationBatchErrorEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
relocation_error RelocationError User errors that retry won't help.
RelocationError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.
internal_error Void 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 Void There are too many write operations in user's Dropbox. Please retry this request.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.

/copy_reference/get

Version
Description

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 copy_reference/save.

URL Structure
https://api.dropboxapi.com/2/files/copy_reference/get
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/copy_reference/get \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/video.mp4\"}"
Parameters
{     "path": "/video.mp4" }
path String(pattern="(/(.|[\r\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)") The path to the file or folder you want to get a copy reference to.
Returns
{     "metadata": {         ".tag": "file",         "name": "Prime_Numbers.txt",         "id": "id:a4ayc_80_OEAAAAAAAAAXw",         "client_modified": "2015-05-12T15:50:38Z",         "server_modified": "2015-05-12T15:50:38Z",         "rev": "a1c10ce0dd78",         "size": 7212,         "path_lower": "/homework/math/prime_numbers.txt",         "path_display": "/Homework/math/Prime_Numbers.txt",         "sharing_info": {             "read_only": true,             "parent_shared_folder_id": "84528192421",             "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"         },         "is_downloadable": true,         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ],         "has_explicit_shared_members": false,         "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",         "file_lock_info": {             "is_lockholder": true,             "lockholder_name": "Imaginary User",             "created": "2015-05-12T15:50:38Z"         }     },     "copy_reference": "z1X6ATl6aWtzOGq0c3g5Ng",     "expires": "2045-05-12T15:50:38Z" }
metadata Metadata Metadata of the file or folder.
copy_reference String A copy reference to the file or folder.
expires Timestamp(format="%Y-%m-%dT%H:%M:%SZ") 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.
Errors
GetCopyReferenceError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.

/copy_reference/save

Version
Description

Save a copy reference returned by copy_reference/get to the user's Dropbox.

URL Structure
https://api.dropboxapi.com/2/files/copy_reference/save
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/copy_reference/save \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"copy_reference\": \"z1X6ATl6aWtzOGq0c3g5Ng\",\"path\": \"/video.mp4\"}"
Parameters
{     "copy_reference": "z1X6ATl6aWtzOGq0c3g5Ng",     "path": "/video.mp4" }
copy_reference String A copy reference returned by copy_reference/get.
path String(pattern="/(.|[\r\n])*") Path in the user's Dropbox that is the destination.
Returns
{     "metadata": {         ".tag": "file",         "name": "Prime_Numbers.txt",         "id": "id:a4ayc_80_OEAAAAAAAAAXw",         "client_modified": "2015-05-12T15:50:38Z",         "server_modified": "2015-05-12T15:50:38Z",         "rev": "a1c10ce0dd78",         "size": 7212,         "path_lower": "/homework/math/prime_numbers.txt",         "path_display": "/Homework/math/Prime_Numbers.txt",         "sharing_info": {             "read_only": true,             "parent_shared_folder_id": "84528192421",             "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"         },         "is_downloadable": true,         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ],         "has_explicit_shared_members": false,         "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",         "file_lock_info": {             "is_lockholder": true,             "lockholder_name": "Imaginary User",             "created": "2015-05-12T15:50:38Z"         }     } }
metadata Metadata The metadata of the saved file or folder in the user's Dropbox.
Errors
Example: invalid_copy_reference
{     "error_summary": "invalid_copy_reference/...",     "error": {         ".tag": "invalid_copy_reference"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
SaveCopyReferenceError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
invalid_copy_reference Void The copy reference is invalid.
no_permission Void 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 Void The file referenced by the copy reference cannot be found.
too_many_files Void The operation would involve more than 10,000 files and folders.

/create_folder

Version
Description

Create a folder at a given path.

URL Structure
https://api.dropboxapi.com/2/files/create_folder
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/create_folder \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/Homework/math\",\"autorename\": false}"
Parameters
{     "path": "/Homework/math",     "autorename": false }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)") Path in the user's Dropbox to create.
autorename Boolean If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. The default for this field is False.
Returns
{     "name": "math",     "id": "id:a4ayc_80_OEAAAAAAAAAXz",     "path_lower": "/homework/math",     "path_display": "/Homework/math",     "sharing_info": {         "read_only": false,         "parent_shared_folder_id": "84528192421",         "traverse_only": false,         "no_access": false     },     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ] }
Errors
CreateFolderError (union)
The value will be one of the following datatypes:
path WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
Description

Create a folder at a given path.

URL Structure
https://api.dropboxapi.com/2/files/create_folder_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/create_folder_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/Homework/math\",\"autorename\": false}"
Parameters
{     "path": "/Homework/math",     "autorename": false }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)") Path in the user's Dropbox to create.
autorename Boolean If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. The default for this field is False.
Returns
{     "metadata": {         "name": "math",         "id": "id:a4ayc_80_OEAAAAAAAAAXz",         "path_lower": "/homework/math",         "path_display": "/Homework/math",         "sharing_info": {             "read_only": false,             "parent_shared_folder_id": "84528192421",             "traverse_only": false,             "no_access": false         },         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ]     } }
Errors
CreateFolderError (union)
The value will be one of the following datatypes:
path WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.

/create_folder_batch

Version
Description

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 create_folder_batch/check to check the job status.

URL Structure
https://api.dropboxapi.com/2/files/create_folder_batch
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/create_folder_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"paths\": [\"/Homework/math\"],\"autorename\": false,\"force_async\": false}"
Parameters
{     "paths": [         "/Homework/math"     ],     "autorename": false,     "force_async": false }
paths List of (String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)"), 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 If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. The default for this field is False.
force_async Boolean Whether to force the create to happen asynchronously. The default for this field is False.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "metadata": {                 "name": "math",                 "id": "id:a4ayc_80_OEAAAAAAAAAXz",                 "path_lower": "/homework/math",                 "path_display": "/Homework/math",                 "sharing_info": {                     "read_only": false,                     "parent_shared_folder_id": "84528192421",                     "traverse_only": false,                     "no_access": false                 },                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ]             }         }     ] }
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
{     ".tag": "other" }
CreateFolderBatchLaunch (open union)
Result returned by create_folder_batch that may either launch an asynchronous job or complete synchronously. The value will be one of the following datatypes. New values may be introduced as our API evolves.
async_job_id String(min_length=1) 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.
complete CreateFolderBatchResult
entries List of (CreateFolderBatchResultEntry) Each entry in CreateFolderBatchArg.paths will appear at the same position inside CreateFolderBatchResult.entries.
CreateFolderBatchResultEntry (union)
The value will be one of the following datatypes:
failure CreateFolderEntryError
CreateFolderEntryError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
Errors

No errors.

/create_folder_batch/check

Version
Description

Returns the status of an asynchronous job for create_folder_batch. If success, it returns list of result for each entry.

URL Structure
https://api.dropboxapi.com/2/files/create_folder_batch/check
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/create_folder_batch/check \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "metadata": {                 "name": "math",                 "id": "id:a4ayc_80_OEAAAAAAAAAXz",                 "path_lower": "/homework/math",                 "path_display": "/Homework/math",                 "sharing_info": {                     "read_only": false,                     "parent_shared_folder_id": "84528192421",                     "traverse_only": false,                     "no_access": false                 },                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ]             }         }     ] }
{     ".tag": "in_progress" }
{     ".tag": "other" }
CreateFolderBatchJobStatus (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
in_progress Void The asynchronous job is still in progress.
complete CreateFolderBatchResult The batch create folder has finished.
entries List of (CreateFolderBatchResultEntry) Each entry in CreateFolderBatchArg.paths will appear at the same position inside CreateFolderBatchResult.entries.
CreateFolderBatchResultEntry (union)
The value will be one of the following datatypes:
failure CreateFolderEntryError
CreateFolderEntryError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
failed CreateFolderBatchError The batch create folder has failed.
CreateFolderBatchError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
too_many_files Void The operation would involve too many files or folders.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.

/delete

Version
Description

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.

URL Structure
https://api.dropboxapi.com/2/files/delete
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/delete \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/Homework/math/Prime_Numbers.txt\"}"
Parameters
{     "path": "/Homework/math/Prime_Numbers.txt" }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to delete.
parent_rev String(min_length=9, pattern="[0-9a-f]+")? Perform delete if given "rev" matches the existing file's latest "rev". This field does not support deleting a folder. This field is optional.
Returns
{     ".tag": "file",     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
{     ".tag": "folder",     "name": "math",     "id": "id:a4ayc_80_OEAAAAAAAAAXz",     "path_lower": "/homework/math",     "path_display": "/Homework/math",     "sharing_info": {         "read_only": false,         "parent_shared_folder_id": "84528192421",         "traverse_only": false,         "no_access": false     },     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ] }
Example: search_file_metadata
{     ".tag": "file",     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
Example: too_many_write_operations
{     "error_summary": "too_many_write_operations/...",     "error": {         ".tag": "too_many_write_operations"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
path_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
Description

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.

URL Structure
https://api.dropboxapi.com/2/files/delete_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/delete_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/Homework/math/Prime_Numbers.txt\"}"
Parameters
{     "path": "/Homework/math/Prime_Numbers.txt" }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to delete.
parent_rev String(min_length=9, pattern="[0-9a-f]+")? Perform delete if given "rev" matches the existing file's latest "rev". This field does not support deleting a folder. This field is optional.
Returns
{     "metadata": {         ".tag": "file",         "name": "Prime_Numbers.txt",         "id": "id:a4ayc_80_OEAAAAAAAAAXw",         "client_modified": "2015-05-12T15:50:38Z",         "server_modified": "2015-05-12T15:50:38Z",         "rev": "a1c10ce0dd78",         "size": 7212,         "path_lower": "/homework/math/prime_numbers.txt",         "path_display": "/Homework/math/Prime_Numbers.txt",         "sharing_info": {             "read_only": true,             "parent_shared_folder_id": "84528192421",             "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"         },         "is_downloadable": true,         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ],         "has_explicit_shared_members": false,         "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",         "file_lock_info": {             "is_lockholder": true,             "lockholder_name": "Imaginary User",             "created": "2015-05-12T15:50:38Z"         }     } }
metadata Metadata Metadata of the deleted object.
Errors
Example: too_many_write_operations
{     "error_summary": "too_many_write_operations/...",     "error": {         ".tag": "too_many_write_operations"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
path_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.

/delete_batch

Version
Description

Delete multiple files/folders at once.
This route is asynchronous, which returns a job ID immediately and runs the delete batch asynchronously. Use delete_batch/check to check the job status.

URL Structure
https://api.dropboxapi.com/2/files/delete_batch
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/delete_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"path\": \"/Homework/math/Prime_Numbers.txt\"}]}"
Parameters
{     "entries": [         {             "path": "/Homework/math/Prime_Numbers.txt"         }     ] }
entries List of (DeleteArg)
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to delete.
parent_rev String(min_length=9, pattern="[0-9a-f]+")? Perform delete if given "rev" matches the existing file's latest "rev". This field does not support deleting a folder. This field is optional.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
{     ".tag": "other" }
DeleteBatchLaunch (open union)
Result returned by delete_batch that may either launch an asynchronous job or complete synchronously. The value will be one of the following datatypes. New values may be introduced as our API evolves.
async_job_id String(min_length=1) 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.
complete DeleteBatchResult
entries List of (DeleteBatchResultEntry) Each entry in DeleteBatchArg.entries will appear at the same position inside DeleteBatchResult.entries.
DeleteBatchResultEntry (union)
The value will be one of the following datatypes:
failure DeleteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
path_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
Errors

No errors.

/delete_batch/check

Version
Description

Returns the status of an asynchronous job for delete_batch. If success, it returns list of result for each entry.

URL Structure
https://api.dropboxapi.com/2/files/delete_batch/check
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/delete_batch/check \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "in_progress" }
{     ".tag": "other" }
DeleteBatchJobStatus (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
in_progress Void The asynchronous job is still in progress.
complete DeleteBatchResult The batch delete has finished.
entries List of (DeleteBatchResultEntry) Each entry in DeleteBatchArg.entries will appear at the same position inside DeleteBatchResult.entries.
DeleteBatchResultEntry (union)
The value will be one of the following datatypes:
failure DeleteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
path_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
failed DeleteBatchError The batch delete has failed.
DeleteBatchError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
too_many_write_operations deprecated Void Field is deprecated. Use DeleteError.too_many_write_operations. delete_batch now provides smaller granularity about which entry has failed because of this.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.

/download

Version
Description

Download a file from a user's Dropbox.

URL Structure
https://content.dropboxapi.com/2/files/download
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
Content-download
Required Scope
files.content.read
Example
curl -X POST https://content.dropboxapi.com/2/files/download \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/Homework/math/Prime_Numbers.txt\"}"
Parameters
{     "path": "/Homework/math/Prime_Numbers.txt" }
{     "path": "id:a4ayc_80_OEAAAAAAAAAYa" }
{     "path": "rev:a1c10ce0dd78" }
path String(pattern="(/(.|[\r\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)") The path of the file to download.
rev deprecated String(min_length=9, pattern="[0-9a-f]+")? Field is deprecated. Please specify revision in path instead. This field is optional.
Returns
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
Example: search_file_metadata
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
Example: unsupported_file
{     "error_summary": "unsupported_file/...",     "error": {         ".tag": "unsupported_file"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
DownloadError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
unsupported_file Void This file type cannot be downloaded directly; use export instead.

/download_zip

Version
Description

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.

URL Structure
https://content.dropboxapi.com/2/files/download_zip
Authentication
User Authentication
Endpoint format
Content-download
Required Scope
files.content.read
Example
curl -X POST https://content.dropboxapi.com/2/files/download_zip \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/Homework/math\"}"
Parameters
{     "path": "/Homework/math" }
{     "path": "id:a4ayc_80_OEAAAAAAAAAYa" }
{     "path": "rev:a1c10ce0dd78" }
path String(pattern="(/(.|[\r\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)") The path of the folder to download.
Returns
{     "metadata": {         "name": "math",         "id": "id:a4ayc_80_OEAAAAAAAAAXz",         "path_lower": "/homework/math",         "path_display": "/Homework/math",         "sharing_info": {             "read_only": false,             "parent_shared_folder_id": "84528192421",             "traverse_only": false,             "no_access": false         },         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ]     } }
Errors
{     "error_summary": "too_large/...",     "error": {         ".tag": "too_large"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
DownloadZipError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
too_large Void The folder or a file is too large to download.
too_many_files Void The folder has too many files to download.

/export

Version
PREVIEW - may change or disappear without notice
Description

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.

URL Structure
https://content.dropboxapi.com/2/files/export
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
Content-download
Required Scope
files.content.read
Example
curl -X POST https://content.dropboxapi.com/2/files/export \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/Homework/math/Prime_Numbers.gsheet\"}"
Parameters
{     "path": "/Homework/math/Prime_Numbers.gsheet" }
{     "path": "id:a4ayc_80_OEAAAAAAAAAYa" }
path String(pattern="(/(.|[\r\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)") 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 get_metadata. If none is specified, the default format (specified in export_as in file metadata) will be used. This field is optional.
Returns
{     "export_metadata": {         "name": "Prime_Numbers.xlsx",         "size": 7189,         "export_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"     },     "file_metadata": {         "name": "Prime_Numbers.txt",         "id": "id:a4ayc_80_OEAAAAAAAAAXw",         "client_modified": "2015-05-12T15:50:38Z",         "server_modified": "2015-05-12T15:50:38Z",         "rev": "a1c10ce0dd78",         "size": 7212,         "path_lower": "/homework/math/prime_numbers.txt",         "path_display": "/Homework/math/Prime_Numbers.txt",         "sharing_info": {             "read_only": true,             "parent_shared_folder_id": "84528192421",             "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"         },         "is_downloadable": true,         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ],         "has_explicit_shared_members": false,         "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",         "file_lock_info": {             "is_lockholder": true,             "lockholder_name": "Imaginary User",             "created": "2015-05-12T15:50:38Z"         }     } }
export_metadata ExportMetadata Metadata for the exported version of the file.
Errors
{     "error_summary": "non_exportable/...",     "error": {         ".tag": "non_exportable"     } }
Example: invalid_export_format
{     "error_summary": "invalid_export_format/...",     "error": {         ".tag": "invalid_export_format"     } }
{     "error_summary": "retry_error/...",     "error": {         ".tag": "retry_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
non_exportable Void This file type cannot be exported. Use download instead.
invalid_export_format Void The specified export format is not a valid option for this file type.
retry_error Void The exportable content is not yet available. Please retry later.

/get_file_lock_batch

Version
Description

Return the lock metadata for the given list of paths.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/get_file_lock_batch
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.content.read
Example
curl -X POST https://api.dropboxapi.com/2/files/get_file_lock_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"path\": \"/John Doe/sample/test.pdf\"}]}"
Parameters
{     "entries": [         {             "path": "/John Doe/sample/test.pdf"         }     ] }
entries List of (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.
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to a file.
Returns
{     "entries": [         {             ".tag": "success",             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             },             "lock": {                 "content": {                     ".tag": "single_user",                     "created": "2015-05-12T15:50:38Z",                     "lock_holder_account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                     "lock_holder_team_id": "dbtid:1234abcd"                 }             }         }     ] }
entries List of (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.
LockFileResultEntry (union)
The value will be one of the following datatypes:
success LockFileResult
lock deprecated FileLock Field is deprecated. The file lock state after the operation.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
failure LockFileError
LockFileError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError Could not find the specified resource.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
no_write_permission Void The user does not have permissions to change the lock state or access the file.
cannot_be_locked Void Item is a type that cannot be locked.
file_not_shared Void Requested file is not currently shared.
lock_conflict LockConflictError The user action conflicts with an existing lock on the file.
lock FileLock The lock that caused the conflict.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
internal_error Void 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.
Errors
Example: too_many_write_operations
{     "error_summary": "too_many_write_operations/...",     "error": {         ".tag": "too_many_write_operations"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
Example: no_write_permission
{     "error_summary": "no_write_permission/...",     "error": {         ".tag": "no_write_permission"     } }
Example: cannot_be_locked
{     "error_summary": "cannot_be_locked/...",     "error": {         ".tag": "cannot_be_locked"     } }
{     "error_summary": "file_not_shared/...",     "error": {         ".tag": "file_not_shared"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
LockFileError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError Could not find the specified resource.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
no_write_permission Void The user does not have permissions to change the lock state or access the file.
cannot_be_locked Void Item is a type that cannot be locked.
file_not_shared Void Requested file is not currently shared.
lock_conflict LockConflictError The user action conflicts with an existing lock on the file.
lock FileLock The lock that caused the conflict.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
internal_error Void 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.

/get_preview

Version
Description

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 files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx.
Other formats will return an unsupported extension error.

URL Structure
https://content.dropboxapi.com/2/files/get_preview
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
Content-download
Required Scope
files.content.read
Example
curl -X POST https://content.dropboxapi.com/2/files/get_preview \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/word.docx\"}"
Parameters
{     "path": "/word.docx" }
{     "path": "id:a4ayc_80_OEAAAAAAAAAYa" }
{     "path": "rev:a1c10ce0dd78" }
path String(pattern="(/(.|[\r\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)") The path of the file to preview.
rev deprecated String(min_length=9, pattern="[0-9a-f]+")? Field is deprecated. Please specify revision in path instead. This field is optional.
Returns
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
Example: search_file_metadata
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
{     "error_summary": "in_progress/...",     "error": {         ".tag": "in_progress"     } }
Example: unsupported_extension
{     "error_summary": "unsupported_extension/...",     "error": {         ".tag": "unsupported_extension"     } }
Example: unsupported_content
{     "error_summary": "unsupported_content/...",     "error": {         ".tag": "unsupported_content"     } }
The value will be one of the following datatypes:
path LookupError An error occurs when downloading metadata for the file.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
in_progress Void This preview generation is still in progress and the file is not ready for preview yet.
unsupported_extension Void The file extension is not supported preview generation.
unsupported_content Void The file content is not supported for preview generation.

/get_thumbnail

Version
Description

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.

URL Structure
https://content.dropboxapi.com/2/files/get_thumbnail
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
Content-download
Required Scope
files.content.read
Example
curl -X POST https://content.dropboxapi.com/2/files/get_thumbnail \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/image.jpg\",\"format\": \"jpeg\",\"size\": \"w64h64\",\"mode\": \"strict\"}"
Parameters
{     "path": "/image.jpg",     "format": "jpeg",     "size": "w64h64",     "mode": "strict" }
{     "path": "id:a4ayc_80_OEAAAAAAAAAYa",     "format": "jpeg",     "size": "w64h64",     "mode": "strict" }
{     "path": "rev:a1c10ce0dd78",     "format": "jpeg",     "size": "w64h64",     "mode": "strict" }
path String(pattern="(/(.|[\r\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)") The path to the image file you want to thumbnail.
format ThumbnailFormat 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. The default for this union is jpeg.
The value will be one of the following datatypes:
size ThumbnailSize The size for the thumbnail image. The default for this union is w64h64.
The value will be one of the following datatypes:
w128h128 Void 128 by 128 px.
w256h256 Void 256 by 256 px.
w480h320 Void 480 by 320 px.
w640h480 Void 640 by 480 px.
w960h640 Void 960 by 640 px.
w1024h768 Void 1024 by 768 px.
w2048h1536 Void 2048 by 1536 px.
mode ThumbnailMode How to resize and crop the image to achieve the desired size. The default for this union is strict.
The value will be one of the following datatypes:
strict Void Scale down the image to fit within the given size.
bestfit Void Scale down the image to fit within the given size or its transpose.
fitone_bestfit Void Scale down the image to completely cover the given size or its transpose.
Returns
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
Example: search_file_metadata
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
Example: unsupported_extension
{     "error_summary": "unsupported_extension/...",     "error": {         ".tag": "unsupported_extension"     } }
Example: unsupported_image
{     "error_summary": "unsupported_image/...",     "error": {         ".tag": "unsupported_image"     } }
Example: conversion_error
{     "error_summary": "conversion_error/...",     "error": {         ".tag": "conversion_error"     } }
The value will be one of the following datatypes:
path LookupError An error occurs when downloading metadata for the image.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
unsupported_extension Void The file extension doesn't allow conversion to a thumbnail.
unsupported_image Void The image cannot be converted to a thumbnail.
conversion_error Void An error occurs during thumbnail conversion.
Description

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.

URL Structure
https://content.dropboxapi.com/2/files/get_thumbnail_v2
Authentication
App Authentication,User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
Content-download
Required Scope
files.content.read
Example
Get app key and secret for:
curl -X POST https://content.dropboxapi.com/2/files/get_thumbnail_v2 \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"resource\": {\".tag\": \"path\",\"path\": \"/a.docx\"},\"format\": \"jpeg\",\"size\": \"w64h64\",\"mode\": \"strict\"}"
Parameters
{     "resource": {         ".tag": "path",         "path": "/a.docx"     },     "format": "jpeg",     "size": "w64h64",     "mode": "strict" }
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 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. The default for this union is jpeg.
The value will be one of the following datatypes:
size ThumbnailSize The size for the thumbnail image. The default for this union is w64h64.
The value will be one of the following datatypes:
w128h128 Void 128 by 128 px.
w256h256 Void 256 by 256 px.
w480h320 Void 480 by 320 px.
w640h480 Void 640 by 480 px.
w960h640 Void 960 by 640 px.
w1024h768 Void 1024 by 768 px.
w2048h1536 Void 2048 by 1536 px.
mode ThumbnailMode How to resize and crop the image to achieve the desired size. The default for this union is strict.
The value will be one of the following datatypes:
strict Void Scale down the image to fit within the given size.
bestfit Void Scale down the image to fit within the given size or its transpose.
fitone_bestfit Void Scale down the image to completely cover the given size or its transpose.
Returns
{     "file_metadata": {         "name": "Prime_Numbers.txt",         "id": "id:a4ayc_80_OEAAAAAAAAAXw",         "client_modified": "2015-05-12T15:50:38Z",         "server_modified": "2015-05-12T15:50:38Z",         "rev": "a1c10ce0dd78",         "size": 7212,         "path_lower": "/homework/math/prime_numbers.txt",         "path_display": "/Homework/math/Prime_Numbers.txt",         "sharing_info": {             "read_only": true,             "parent_shared_folder_id": "84528192421",             "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"         },         "is_downloadable": true,         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ],         "has_explicit_shared_members": false,         "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",         "file_lock_info": {             "is_lockholder": true,             "lockholder_name": "Imaginary User",             "created": "2015-05-12T15:50:38Z"         }     } }
file_metadata FileMetadata? Metadata corresponding to the file received as an argument. Will be populated if the endpoint is called with a path (ReadPath). This field is optional.
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). This field is optional.
Errors
Example: unsupported_extension
{     "error_summary": "unsupported_extension/...",     "error": {         ".tag": "unsupported_extension"     } }
Example: unsupported_image
{     "error_summary": "unsupported_image/...",     "error": {         ".tag": "unsupported_image"     } }
Example: conversion_error
{     "error_summary": "conversion_error/...",     "error": {         ".tag": "conversion_error"     } }
{     "error_summary": "access_denied/...",     "error": {         ".tag": "access_denied"     } }
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ThumbnailV2Error (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError An error occurred when downloading metadata for the image.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
unsupported_extension Void The file extension doesn't allow conversion to a thumbnail.
unsupported_image Void The image cannot be converted to a thumbnail.
conversion_error Void An error occurred during thumbnail conversion.
access_denied Void Access to this shared link is forbidden.
not_found Void The shared link does not exist.

/get_thumbnail_batch

Version
Description

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.

URL Structure
https://content.dropboxapi.com/2/files/get_thumbnail_batch
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
files.content.read
Example
curl -X POST https://content.dropboxapi.com/2/files/get_thumbnail_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"path\": \"/image.jpg\",\"format\": \"jpeg\",\"size\": \"w64h64\",\"mode\": \"strict\"}]}"
Parameters
{     "entries": [         {             "path": "/image.jpg",             "format": "jpeg",             "size": "w64h64",             "mode": "strict"         }     ] }
Arguments for get_thumbnail_batch.
entries List of (ThumbnailArg) List of files to get thumbnails.
path String(pattern="(/(.|[\r\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)") The path to the image file you want to thumbnail.
format ThumbnailFormat 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. The default for this union is jpeg.
The value will be one of the following datatypes:
size ThumbnailSize The size for the thumbnail image. The default for this union is w64h64.
The value will be one of the following datatypes:
w128h128 Void 128 by 128 px.
w256h256 Void 256 by 256 px.
w480h320 Void 480 by 320 px.
w640h480 Void 640 by 480 px.
w960h640 Void 960 by 640 px.
w1024h768 Void 1024 by 768 px.
w2048h1536 Void 2048 by 1536 px.
mode ThumbnailMode How to resize and crop the image to achieve the desired size. The default for this union is strict.
The value will be one of the following datatypes:
strict Void Scale down the image to fit within the given size.
bestfit Void Scale down the image to fit within the given size or its transpose.
fitone_bestfit Void Scale down the image to completely cover the given size or its transpose.
Returns
{     "entries": [         {             ".tag": "success",             "metadata": {                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             },             "thumbnail": "iVBORw0KGgoAAAANSUhEUgAAAdcAAABrCAMAAAI="         }     ] }
entries List of (GetThumbnailBatchResultEntry) List of files and their thumbnails.
GetThumbnailBatchResultEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
success GetThumbnailBatchResultData
GetThumbnailBatchResultData
thumbnail String A string containing the base64-encoded thumbnail data for this file.
failure ThumbnailError The result for this file if it was an error.
The value will be one of the following datatypes:
path LookupError An error occurs when downloading metadata for the image.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
unsupported_extension Void The file extension doesn't allow conversion to a thumbnail.
unsupported_image Void The image cannot be converted to a thumbnail.
conversion_error Void An error occurs during thumbnail conversion.
Errors
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
GetThumbnailBatchError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
too_many_files Void The operation involves more than 25 files.

/list_folder

Version
Description

Starts returning the contents of a folder. If the result's ListFolderResult.has_more field is true, call 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 list_folder or 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.

URL Structure
https://api.dropboxapi.com/2/files/list_folder
Authentication
App Authentication,User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
files.metadata.read
Example
Get app key and secret for:
curl -X POST https://api.dropboxapi.com/2/files/list_folder \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/Homework/math\",\"recursive\": false,\"include_media_info\": false,\"include_deleted\": false,\"include_has_explicit_shared_members\": false,\"include_mounted_folders\": true,\"include_non_downloadable_files\": true}"
Parameters
{     "path": "/Homework/math",     "recursive": false,     "include_media_info": false,     "include_deleted": false,     "include_has_explicit_shared_members": false,     "include_mounted_folders": true,     "include_non_downloadable_files": true }
path String(pattern="(/(.|[\r\n])*)?|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file.
recursive Boolean If true, the list folder operation will be applied recursively to all subfolders and the response will contain contents of all subfolders. The default for this field is False.
include_media_info deprecated Boolean Field is deprecated. If true, FileMetadata.media_info is set for photo and video. This parameter will no longer have an effect starting December 2, 2019. The default for this field is False.
include_deleted Boolean If true, the results will include entries for files and folders that used to exist but were deleted. The default for this field is False.
include_has_explicit_shared_members Boolean If true, the results will include a flag for each file indicating whether or not that file has any explicit members. The default for this field is False.
include_mounted_folders Boolean If true, the results will include entries under mounted folders which includes app folder, shared folder and team folder. The default for this field is True.
limit UInt32(min=1, max=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. This field is optional.
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, ListFolderArg.path will be relative to root of the shared link. Only non-recursive mode is supported for shared link. This field is optional.
include_property_groups TemplateFilterBase? If set to a valid list of template IDs, FileMetadata.property_groups is set if there exists property data associated with the file and each of the listed templates. This field is optional.
TemplateFilterBase (open union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
filter_some List of (String(min_length=1, pattern="(/|ptid:).*"), min_items=1) Only templates with an ID in the supplied list will be returned (a subset of templates will be returned).
include_non_downloadable_files Boolean If true, include files that are not downloadable, i.e. Google Docs. The default for this field is True.
Returns
{     "entries": [         {             ".tag": "file",             "name": "Prime_Numbers.txt",             "id": "id:a4ayc_80_OEAAAAAAAAAXw",             "client_modified": "2015-05-12T15:50:38Z",             "server_modified": "2015-05-12T15:50:38Z",             "rev": "a1c10ce0dd78",             "size": 7212,             "path_lower": "/homework/math/prime_numbers.txt",             "path_display": "/Homework/math/Prime_Numbers.txt",             "sharing_info": {                 "read_only": true,                 "parent_shared_folder_id": "84528192421",                 "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"             },             "is_downloadable": true,             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ],             "has_explicit_shared_members": false,             "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",             "file_lock_info": {                 "is_lockholder": true,                 "lockholder_name": "Imaginary User",                 "created": "2015-05-12T15:50:38Z"             }         },         {             ".tag": "folder",             "name": "math",             "id": "id:a4ayc_80_OEAAAAAAAAAXz",             "path_lower": "/homework/math",             "path_display": "/Homework/math",             "sharing_info": {                 "read_only": false,                 "parent_shared_folder_id": "84528192421",                 "traverse_only": false,                 "no_access": false             },             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ]         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu",     "has_more": false }
entries List of (Metadata) The files and (direct) subfolders in the folder.
cursor String(min_length=1) Pass the cursor into 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 list_folder/continue to retrieve the rest.
Errors
ListFolderError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
template_error TemplateError
TemplateError (open union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.

/list_folder/continue

Version
Description

Once a cursor has been retrieved from list_folder, use this to paginate through all files and retrieve updates to the folder, following the same rules as documented for list_folder.

URL Structure
https://api.dropboxapi.com/2/files/list_folder/continue
Authentication
App Authentication,User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
files.metadata.read
Example
Get app key and secret for:
curl -X POST https://api.dropboxapi.com/2/files/list_folder/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\"}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
cursor String(min_length=1) The cursor returned by your last call to list_folder or list_folder/continue.
Returns
{     "entries": [         {             ".tag": "file",             "name": "Prime_Numbers.txt",             "id": "id:a4ayc_80_OEAAAAAAAAAXw",             "client_modified": "2015-05-12T15:50:38Z",             "server_modified": "2015-05-12T15:50:38Z",             "rev": "a1c10ce0dd78",             "size": 7212,             "path_lower": "/homework/math/prime_numbers.txt",             "path_display": "/Homework/math/Prime_Numbers.txt",             "sharing_info": {                 "read_only": true,                 "parent_shared_folder_id": "84528192421",                 "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"             },             "is_downloadable": true,             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ],             "has_explicit_shared_members": false,             "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",             "file_lock_info": {                 "is_lockholder": true,                 "lockholder_name": "Imaginary User",                 "created": "2015-05-12T15:50:38Z"             }         },         {             ".tag": "folder",             "name": "math",             "id": "id:a4ayc_80_OEAAAAAAAAAXz",             "path_lower": "/homework/math",             "path_display": "/Homework/math",             "sharing_info": {                 "read_only": false,                 "parent_shared_folder_id": "84528192421",                 "traverse_only": false,                 "no_access": false             },             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ]         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu",     "has_more": false }
entries List of (Metadata) The files and (direct) subfolders in the folder.
cursor String(min_length=1) Pass the cursor into 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 list_folder/continue to retrieve the rest.
Errors
{     "error_summary": "reset/...",     "error": {         ".tag": "reset"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFolderContinueError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
reset Void Indicates that the cursor has been invalidated. Call list_folder to obtain a new cursor.

/list_folder/get_latest_cursor

Version
Description

A way to quickly get a cursor for the folder's state. Unlike list_folder, 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.

URL Structure
https://api.dropboxapi.com/2/files/list_folder/get_latest_cursor
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/files/list_folder/get_latest_cursor \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/Homework/math\",\"recursive\": false,\"include_media_info\": false,\"include_deleted\": false,\"include_has_explicit_shared_members\": false,\"include_mounted_folders\": true,\"include_non_downloadable_files\": true}"
Parameters
{     "path": "/Homework/math",     "recursive": false,     "include_media_info": false,     "include_deleted": false,     "include_has_explicit_shared_members": false,     "include_mounted_folders": true,     "include_non_downloadable_files": true }
path String(pattern="(/(.|[\r\n])*)?|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file.
recursive Boolean If true, the list folder operation will be applied recursively to all subfolders and the response will contain contents of all subfolders. The default for this field is False.
include_media_info deprecated Boolean Field is deprecated. If true, FileMetadata.media_info is set for photo and video. This parameter will no longer have an effect starting December 2, 2019. The default for this field is False.
include_deleted Boolean If true, the results will include entries for files and folders that used to exist but were deleted. The default for this field is False.
include_has_explicit_shared_members Boolean If true, the results will include a flag for each file indicating whether or not that file has any explicit members. The default for this field is False.
include_mounted_folders Boolean If true, the results will include entries under mounted folders which includes app folder, shared folder and team folder. The default for this field is True.
limit UInt32(min=1, max=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. This field is optional.
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, ListFolderArg.path will be relative to root of the shared link. Only non-recursive mode is supported for shared link. This field is optional.
include_property_groups TemplateFilterBase? If set to a valid list of template IDs, FileMetadata.property_groups is set if there exists property data associated with the file and each of the listed templates. This field is optional.
TemplateFilterBase (open union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
filter_some List of (String(min_length=1, pattern="(/|ptid:).*"), min_items=1) Only templates with an ID in the supplied list will be returned (a subset of templates will be returned).
include_non_downloadable_files Boolean If true, include files that are not downloadable, i.e. Google Docs. The default for this field is True.
Returns
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
ListFolderGetLatestCursorResult
cursor String(min_length=1) Pass the cursor into list_folder/continue to see what's changed in the folder since your previous query.
Errors
ListFolderError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
template_error TemplateError
TemplateError (open union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.

/list_folder/longpoll

Version
Description

A longpoll endpoint to wait for changes on an account. In conjunction with 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 webhooks documentation.

URL Structure
https://notify.dropboxapi.com/2/files/list_folder/longpoll
Authentication
No Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://notify.dropboxapi.com/2/files/list_folder/longpoll \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\",\"timeout\": 30}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu",     "timeout": 30 }
cursor String(min_length=1) A cursor as returned by list_folder or list_folder/continue. Cursors retrieved by setting ListFolderArg.include_media_info to true are not supported.
timeout UInt64(min=30, max=480) 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. The default for this field is 30.
Returns
{     "changes": true }
changes Boolean Indicates whether new changes are available. If true, call list_folder/continue to retrieve the changes.
backoff UInt64? If present, backoff for at least this many seconds before calling list_folder/longpoll again. This field is optional.
Errors
{     "error_summary": "reset/...",     "error": {         ".tag": "reset"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFolderLongpollError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
reset Void Indicates that the cursor has been invalidated. Call list_folder to obtain a new cursor.

/list_revisions

Version
Description

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.

URL Structure
https://api.dropboxapi.com/2/files/list_revisions
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/files/list_revisions \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/root/word.docx\",\"mode\": \"path\",\"limit\": 10}"
Parameters
{     "path": "/root/word.docx",     "mode": "path",     "limit": 10 }
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") The path to the file you want to see the revisions of.
mode ListRevisionsMode Determines the behavior of the API in listing the revisions for a given file path or id. The default for this union is path.
ListRevisionsMode (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path Void Returns revisions with the same file path as identified by the latest file entry at the given file path or id.
id Void Returns revisions with the same file id as identified by the latest file entry at the given file path or id.
limit UInt64(min=1, max=100) The maximum number of revision entries returned. The default for this field is 10.
Returns
{     "is_deleted": false,     "entries": [         {             "name": "Prime_Numbers.txt",             "id": "id:a4ayc_80_OEAAAAAAAAAXw",             "client_modified": "2015-05-12T15:50:38Z",             "server_modified": "2015-05-12T15:50:38Z",             "rev": "a1c10ce0dd78",             "size": 7212,             "path_lower": "/homework/math/prime_numbers.txt",             "path_display": "/Homework/math/Prime_Numbers.txt",             "sharing_info": {                 "read_only": true,                 "parent_shared_folder_id": "84528192421",                 "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"             },             "is_downloadable": true,             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ],             "has_explicit_shared_members": false,             "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",             "file_lock_info": {                 "is_lockholder": true,                 "lockholder_name": "Imaginary User",                 "created": "2015-05-12T15:50:38Z"             }         }     ] }
is_deleted Boolean If the file identified by the latest revision in the response is either deleted or moved.
entries List of (FileMetadata) The revisions for the file. Only revisions that are not deleted will show up here.
server_deleted Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? The time of deletion if the file was deleted. This field is optional.
Errors
ListRevisionsError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.

/lock_file_batch

Version
Description

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.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/lock_file_batch
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/lock_file_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"path\": \"/John Doe/sample/test.pdf\"}]}"
Parameters
{     "entries": [         {             "path": "/John Doe/sample/test.pdf"         }     ] }
entries List of (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.
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to a file.
Returns
{     "entries": [         {             ".tag": "success",             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             },             "lock": {                 "content": {                     ".tag": "single_user",                     "created": "2015-05-12T15:50:38Z",                     "lock_holder_account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                     "lock_holder_team_id": "dbtid:1234abcd"                 }             }         }     ] }
entries List of (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.
LockFileResultEntry (union)
The value will be one of the following datatypes:
success LockFileResult
lock deprecated FileLock Field is deprecated. The file lock state after the operation.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
failure LockFileError
LockFileError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError Could not find the specified resource.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
no_write_permission Void The user does not have permissions to change the lock state or access the file.
cannot_be_locked Void Item is a type that cannot be locked.
file_not_shared Void Requested file is not currently shared.
lock_conflict LockConflictError The user action conflicts with an existing lock on the file.
lock FileLock The lock that caused the conflict.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
internal_error Void 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.
Errors
Example: too_many_write_operations
{     "error_summary": "too_many_write_operations/...",     "error": {         ".tag": "too_many_write_operations"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
Example: no_write_permission
{     "error_summary": "no_write_permission/...",     "error": {         ".tag": "no_write_permission"     } }
Example: cannot_be_locked
{     "error_summary": "cannot_be_locked/...",     "error": {         ".tag": "cannot_be_locked"     } }
{     "error_summary": "file_not_shared/...",     "error": {         ".tag": "file_not_shared"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
LockFileError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError Could not find the specified resource.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
no_write_permission Void The user does not have permissions to change the lock state or access the file.
cannot_be_locked Void Item is a type that cannot be locked.
file_not_shared Void Requested file is not currently shared.
lock_conflict LockConflictError The user action conflicts with an existing lock on the file.
lock FileLock The lock that caused the conflict.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
internal_error Void 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.

/move

Version
Description

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.

URL Structure
https://api.dropboxapi.com/2/files/move
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/move \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"from_path\": \"/Homework/math\",\"to_path\": \"/Homework/algebra\",\"allow_shared_folder\": false,\"autorename\": false,\"allow_ownership_transfer\": false}"
Parameters
{     "from_path": "/Homework/math",     "to_path": "/Homework/algebra",     "allow_shared_folder": false,     "autorename": false,     "allow_ownership_transfer": false }
from_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to be copied or moved.
to_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox that is the destination.
allow_shared_folder deprecated Boolean Field is deprecated. This flag has no effect. The default for this field is False.
autorename Boolean If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. The default for this field is False.
allow_ownership_transfer Boolean Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. The default for this field is False.
Returns
{     ".tag": "file",     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
{     ".tag": "folder",     "name": "math",     "id": "id:a4ayc_80_OEAAAAAAAAAXz",     "path_lower": "/homework/math",     "path_display": "/Homework/math",     "sharing_info": {         "read_only": false,         "parent_shared_folder_id": "84528192421",         "traverse_only": false,         "no_access": false     },     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ] }
Example: search_file_metadata
{     ".tag": "file",     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
Example: cant_copy_shared_folder
{     "error_summary": "cant_copy_shared_folder/...",     "error": {         ".tag": "cant_copy_shared_folder"     } }
Example: cant_nest_shared_folder
{     "error_summary": "cant_nest_shared_folder/...",     "error": {         ".tag": "cant_nest_shared_folder"     } }
Example: cant_move_folder_into_itself
{     "error_summary": "cant_move_folder_into_itself/...",     "error": {         ".tag": "cant_move_folder_into_itself"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
Example: duplicated_or_nested_paths
{     "error_summary": "duplicated_or_nested_paths/...",     "error": {         ".tag": "duplicated_or_nested_paths"     } }
Example: cant_transfer_ownership
{     "error_summary": "cant_transfer_ownership/...",     "error": {         ".tag": "cant_transfer_ownership"     } }
Example: insufficient_quota
{     "error_summary": "insufficient_quota/...",     "error": {         ".tag": "insufficient_quota"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
Example: cant_move_shared_folder
{     "error_summary": "cant_move_shared_folder/...",     "error": {         ".tag": "cant_move_shared_folder"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
RelocationError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.
Description

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.

URL Structure
https://api.dropboxapi.com/2/files/move_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/move_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"from_path\": \"/Homework/math\",\"to_path\": \"/Homework/algebra\",\"allow_shared_folder\": false,\"autorename\": false,\"allow_ownership_transfer\": false}"
Parameters
{     "from_path": "/Homework/math",     "to_path": "/Homework/algebra",     "allow_shared_folder": false,     "autorename": false,     "allow_ownership_transfer": false }
from_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to be copied or moved.
to_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox that is the destination.
allow_shared_folder deprecated Boolean Field is deprecated. This flag has no effect. The default for this field is False.
autorename Boolean If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. The default for this field is False.
allow_ownership_transfer Boolean Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. The default for this field is False.
Returns
{     "metadata": {         ".tag": "file",         "name": "Prime_Numbers.txt",         "id": "id:a4ayc_80_OEAAAAAAAAAXw",         "client_modified": "2015-05-12T15:50:38Z",         "server_modified": "2015-05-12T15:50:38Z",         "rev": "a1c10ce0dd78",         "size": 7212,         "path_lower": "/homework/math/prime_numbers.txt",         "path_display": "/Homework/math/Prime_Numbers.txt",         "sharing_info": {             "read_only": true,             "parent_shared_folder_id": "84528192421",             "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"         },         "is_downloadable": true,         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ],         "has_explicit_shared_members": false,         "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",         "file_lock_info": {             "is_lockholder": true,             "lockholder_name": "Imaginary User",             "created": "2015-05-12T15:50:38Z"         }     } }
metadata Metadata Metadata of the relocated object.
Errors
Example: cant_copy_shared_folder
{     "error_summary": "cant_copy_shared_folder/...",     "error": {         ".tag": "cant_copy_shared_folder"     } }
Example: cant_nest_shared_folder
{     "error_summary": "cant_nest_shared_folder/...",     "error": {         ".tag": "cant_nest_shared_folder"     } }
Example: cant_move_folder_into_itself
{     "error_summary": "cant_move_folder_into_itself/...",     "error": {         ".tag": "cant_move_folder_into_itself"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
Example: duplicated_or_nested_paths
{     "error_summary": "duplicated_or_nested_paths/...",     "error": {         ".tag": "duplicated_or_nested_paths"     } }
Example: cant_transfer_ownership
{     "error_summary": "cant_transfer_ownership/...",     "error": {         ".tag": "cant_transfer_ownership"     } }
Example: insufficient_quota
{     "error_summary": "insufficient_quota/...",     "error": {         ".tag": "insufficient_quota"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
Example: cant_move_shared_folder
{     "error_summary": "cant_move_shared_folder/...",     "error": {         ".tag": "cant_move_shared_folder"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
RelocationError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.

/move_batch

Version
Description

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 move_batch/check:1 to check the job status.

URL Structure
https://api.dropboxapi.com/2/files/move_batch
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/move_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"from_path\": \"/Homework/math\",\"to_path\": \"/Homework/algebra\"}],\"autorename\": false,\"allow_shared_folder\": false,\"allow_ownership_transfer\": false}"
Parameters
{     "entries": [         {             "from_path": "/Homework/math",             "to_path": "/Homework/algebra"         }     ],     "autorename": false,     "allow_shared_folder": false,     "allow_ownership_transfer": false }
entries List of (RelocationPath, min_items=1) List of entries to be moved or copied. Each entry is RelocationPath.
from_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to be copied or moved.
to_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox that is the destination.
autorename Boolean If there's a conflict with any file, have the Dropbox server try to autorename that file to avoid the conflict. The default for this field is False.
allow_shared_folder deprecated Boolean Field is deprecated. This flag has no effect. The default for this field is False.
allow_ownership_transfer Boolean Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. The default for this field is False.
Returns
{     ".tag": "complete",     "entries": [         {             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
{     ".tag": "other" }
RelocationBatchLaunch (open union)
Result returned by copy_batch or move_batch that may either launch an asynchronous job or complete synchronously. The value will be one of the following datatypes. New values may be introduced as our API evolves.
async_job_id String(min_length=1) 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.
Errors

No errors.

Description

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 move_batch:1. The main difference is this route will return status for each entry, while move_batch:1 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 move_batch/check:2 to check the job status.

URL Structure
https://api.dropboxapi.com/2/files/move_batch_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/move_batch_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"from_path\": \"/Homework/math\",\"to_path\": \"/Homework/algebra\"}],\"autorename\": false,\"allow_ownership_transfer\": false}"
Parameters
{     "entries": [         {             "from_path": "/Homework/math",             "to_path": "/Homework/algebra"         }     ],     "autorename": false,     "allow_ownership_transfer": false }
entries List of (RelocationPath, min_items=1) List of entries to be moved or copied. Each entry is RelocationPath.
from_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to be copied or moved.
to_path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox that is the destination.
autorename Boolean If there's a conflict with any file, have the Dropbox server try to autorename that file to avoid the conflict. The default for this field is False.
allow_ownership_transfer Boolean Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. The default for this field is False.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "success": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
RelocationBatchV2Launch (union)
Result returned by copy_batch:2 or move_batch:2 that may either launch an asynchronous job or complete synchronously. The value will be one of the following datatypes:
async_job_id String(min_length=1) 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.
complete RelocationBatchV2Result
entries List of (RelocationBatchResultEntry) Each entry in CopyBatchArg.entries or MoveBatchArg.entries will appear at the same position inside RelocationBatchV2Result.entries.
RelocationBatchResultEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
failure RelocationBatchErrorEntry
RelocationBatchErrorEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
relocation_error RelocationError User errors that retry won't help.
RelocationError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.
internal_error Void 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 Void There are too many write operations in user's Dropbox. Please retry this request.
Errors

No errors.

/move_batch/check

Version
Description

Returns the status of an asynchronous job for move_batch:1. If success, it returns list of results for each entry.

URL Structure
https://api.dropboxapi.com/2/files/move_batch/check
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/move_batch/check \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "complete",     "entries": [         {             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "in_progress" }
RelocationBatchJobStatus (union)
The value will be one of the following datatypes:
in_progress Void The asynchronous job is still in progress.
failed RelocationBatchError The copy or move batch job has failed with exception.
RelocationBatchError (union)
The value will be one of the following datatypes:
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.
Description

Returns the status of an asynchronous job for move_batch:2. It returns list of results for each entry.

URL Structure
https://api.dropboxapi.com/2/files/move_batch/check_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/move_batch/check_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "success": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             }         }     ] }
{     ".tag": "in_progress" }
RelocationBatchV2JobStatus (union)
Result returned by copy_batch/check:2 or move_batch/check:2 that may either be in progress or completed with result for each entry. The value will be one of the following datatypes:
in_progress Void The asynchronous job is still in progress.
complete RelocationBatchV2Result The copy or move batch job has finished.
entries List of (RelocationBatchResultEntry) Each entry in CopyBatchArg.entries or MoveBatchArg.entries will appear at the same position inside RelocationBatchV2Result.entries.
RelocationBatchResultEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
failure RelocationBatchErrorEntry
RelocationBatchErrorEntry (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
relocation_error RelocationError User errors that retry won't help.
RelocationError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
from_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
from_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
to WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
cant_copy_shared_folder Void Shared folders can't be copied.
cant_nest_shared_folder Void Your move operation would result in nested shared folders. This is not allowed.
cant_move_folder_into_itself Void You cannot move a folder into itself.
too_many_files Void The operation would involve more than 10,000 files and folders.
duplicated_or_nested_paths Void There are duplicated/nested paths among RelocationArg.from_path and RelocationArg.to_path.
cant_transfer_ownership Void Your move operation would result in an ownership transfer. You may reissue the request with the field RelocationArg.allow_ownership_transfer to true.
insufficient_quota Void The current user does not have enough space to move or copy the files.
internal_error Void 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 Void 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.
MoveIntoVaultError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
is_shared_folder Void Moving shared folder into Vault is not allowed.
internal_error Void 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 Void There are too many write operations in user's Dropbox. Please retry this request.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.

/paper/create

Version
PREVIEW - may change or disappear without notice
Description

Creates a new Paper doc with the provided content.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/paper/create
Authentication
User Authentication
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/paper/create \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/Paper Docs/New Doc.paper\",\"import_format\": \"html\"}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
{     "path": "/Paper Docs/New Doc.paper",     "import_format": "html" }
path String(pattern="/(.|[\r\n])*") 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.
ImportFormat (open union)
The import format of the incoming Paper doc content. The value will be one of the following datatypes. New values may be introduced as our API evolves.
html Void The provided data is interpreted as standard HTML.
markdown Void The provided data is interpreted as markdown.
plain_text Void The provided data is interpreted as plain text.
Returns
{     "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 }
url String URL to open the Paper Doc.
result_path String The fully qualified path the Paper Doc was actually created at.
file_id String(min_length=4, pattern="id:.+") The id to use in Dropbox APIs when referencing the Paper Doc.
paper_revision Int64 The current doc revision.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
Example: content_malformed
{     "error_summary": "content_malformed/...",     "error": {         ".tag": "content_malformed"     } }
Example: doc_length_exceeded
{     "error_summary": "doc_length_exceeded/...",     "error": {         ".tag": "doc_length_exceeded"     } }
Example: image_size_exceeded
{     "error_summary": "image_size_exceeded/...",     "error": {         ".tag": "image_size_exceeded"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "invalid_path/...",     "error": {         ".tag": "invalid_path"     } }
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
Example: invalid_file_extension
{     "error_summary": "invalid_file_extension/...",     "error": {         ".tag": "invalid_file_extension"     } }
{     "error_summary": "paper_disabled/...",     "error": {         ".tag": "paper_disabled"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to edit Paper docs.
content_malformed Void The provided content was malformed and cannot be imported to Paper.
doc_length_exceeded Void The Paper doc would be too large, split the content into multiple docs.
image_size_exceeded Void The imported document contains an image that is too large. The current limit is 1MB. This only applies to HTML with data URI.
invalid_path Void The file could not be saved to the specified location.
email_unverified Void The user's email must be verified to create Paper docs.
invalid_file_extension Void The file path must end in .paper.
paper_disabled Void Paper is disabled for your team.

/paper/update

Version
PREVIEW - may change or disappear without notice
Description

Updates an existing Paper doc with the provided content.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/paper/update
Authentication
User Authentication
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/paper/update \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/Paper Docs/My Doc.paper\",\"import_format\": \"html\",\"doc_update_policy\": \"update\",\"paper_revision\": 123}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
{     "path": "/Paper Docs/My Doc.paper",     "import_format": "html",     "doc_update_policy": "update",     "paper_revision": 123 }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") 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.
ImportFormat (open union)
The import format of the incoming Paper doc content. The value will be one of the following datatypes. New values may be introduced as our API evolves.
html Void The provided data is interpreted as standard HTML.
markdown Void The provided data is interpreted as markdown.
plain_text Void The provided data is interpreted as plain text.
doc_update_policy PaperDocUpdatePolicy How the provided content should be applied to the doc.
PaperDocUpdatePolicy (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
update Void Sets the doc content to the provided content if the provided paper_revision matches the latest doc revision. Otherwise, returns an error.
overwrite Void Sets the doc content to the provided content without checking paper_revision.
prepend Void Adds the provided content to the beginning of the doc without checking paper_revision.
append Void Adds the provided content to the end of the doc without checking paper_revision.
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. This field is optional.
Returns
{     "paper_revision": 124 }
paper_revision Int64 The current doc revision.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
Example: content_malformed
{     "error_summary": "content_malformed/...",     "error": {         ".tag": "content_malformed"     } }
Example: doc_length_exceeded
{     "error_summary": "doc_length_exceeded/...",     "error": {         ".tag": "doc_length_exceeded"     } }
Example: image_size_exceeded
{     "error_summary": "image_size_exceeded/...",     "error": {         ".tag": "image_size_exceeded"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: revision_mismatch
{     "error_summary": "revision_mismatch/...",     "error": {         ".tag": "revision_mismatch"     } }
{     "error_summary": "doc_archived/...",     "error": {         ".tag": "doc_archived"     } }
{     "error_summary": "doc_deleted/...",     "error": {         ".tag": "doc_deleted"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to edit Paper docs.
content_malformed Void The provided content was malformed and cannot be imported to Paper.
doc_length_exceeded Void The Paper doc would be too large, split the content into multiple docs.
image_size_exceeded Void The imported document contains an image that is too large. The current limit is 1MB. This only applies to HTML with data URI.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
revision_mismatch Void The provided revision does not match the document head.
doc_archived Void This operation is not allowed on archived Paper docs.
doc_deleted Void This operation is not allowed on deleted Paper docs.

/permanently_delete

Version
Description

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.

URL Structure
https://api.dropboxapi.com/2/files/permanently_delete
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.permanent_delete
Example
curl -X POST https://api.dropboxapi.com/2/files/permanently_delete \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/Homework/math/Prime_Numbers.txt\"}"
Parameters
{     "path": "/Homework/math/Prime_Numbers.txt" }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to delete.
parent_rev String(min_length=9, pattern="[0-9a-f]+")? Perform delete if given "rev" matches the existing file's latest "rev". This field does not support deleting a folder. This field is optional.
Returns

No return values.

Errors
Example: too_many_write_operations
{     "error_summary": "too_many_write_operations/...",     "error": {         ".tag": "too_many_write_operations"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
path_write WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.

/restore

Version
Description

Restore a specific revision of a file to the given path.

URL Structure
https://api.dropboxapi.com/2/files/restore
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/restore \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/root/word.docx\",\"rev\": \"a1c10ce0dd78\"}"
Parameters
{     "path": "/root/word.docx",     "rev": "a1c10ce0dd78" }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)") The path to save the restored file.
rev String(min_length=9, pattern="[0-9a-f]+") The revision to restore.
Returns
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
Example: search_file_metadata
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
Example: invalid_revision
{     "error_summary": "invalid_revision/...",     "error": {         ".tag": "invalid_revision"     } }
{     "error_summary": "in_progress/...",     "error": {         ".tag": "in_progress"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
RestoreError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError An error occurs when downloading metadata for the file.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
path_write WriteError An error occurs when trying to restore the file to that path.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
invalid_revision Void The revision is invalid. It may not exist or may point to a deleted file.
in_progress Void The restore is currently executing, but has not yet completed.

/save_url

Version
Description

Save the data from a specified URL into a file in user's Dropbox.
Note that the transfer from the URL must complete within 5 minutes, or the operation will time out and the job will fail.
If the given path already exists, the file will be renamed to avoid the conflict (e.g. myfile (1).txt).

URL Structure
https://api.dropboxapi.com/2/files/save_url
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/save_url \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/a.txt\",\"url\": \"http://example.com/a.txt\"}"
Parameters
{     "path": "/a.txt",     "url": "http://example.com/a.txt" }
path String(pattern="/(.|[\r\n])*") The path in Dropbox where the URL will be saved to.
url String The URL to be saved.
Returns
{     ".tag": "complete",     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
The value will be one of the following datatypes:
async_job_id String(min_length=1) 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.
complete FileMetadata Metadata of the file where the URL is saved to.
Errors
{     "error_summary": "download_failed/...",     "error": {         ".tag": "download_failed"     } }
{     "error_summary": "invalid_url/...",     "error": {         ".tag": "invalid_url"     } }
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
SaveUrlError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
download_failed Void 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 Void The given URL is invalid.
not_found Void The file where the URL is saved to no longer exists.

/save_url/check_job_status

Version
Description

Check the status of a save_url job.

URL Structure
https://api.dropboxapi.com/2/files/save_url/check_job_status
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/save_url/check_job_status \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "in_progress" }
The value will be one of the following datatypes:
in_progress Void The asynchronous job is still in progress.
complete FileMetadata Metadata of the file where the URL is saved to.
failed SaveUrlError
SaveUrlError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path WriteError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
download_failed Void 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 Void The given URL is invalid.
not_found Void The file where the URL is saved to no longer exists.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.

/search/continue

Version
Description

Fetches the next page of search results returned from search:2.
Note: search:2 along with 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.

URL Structure
https://api.dropboxapi.com/2/files/search/continue_v2
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/files/search/continue_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\"}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
cursor String(min_length=1) The cursor returned by your last call to search:2. Used to fetch the next page of results.
Returns
{     "matches": [         {             "metadata": {                 ".tag": "metadata",                 "metadata": {                     ".tag": "file",                     "name": "Prime_Numbers.txt",                     "id": "id:a4ayc_80_OEAAAAAAAAAXw",                     "client_modified": "2015-05-12T15:50:38Z",                     "server_modified": "2015-05-12T15:50:38Z",                     "rev": "a1c10ce0dd78",                     "size": 7212,                     "path_lower": "/homework/math/prime_numbers.txt",                     "path_display": "/Homework/math/Prime_Numbers.txt",                     "sharing_info": {                         "read_only": true,                         "parent_shared_folder_id": "84528192421",                         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                     },                     "is_downloadable": true,                     "has_explicit_shared_members": false,                     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"                 }             }         }     ],     "has_more": false }
matches List of (SearchMatchV2) A list (possibly empty) of matches for the query.
metadata MetadataV2 The metadata for the matched file or folder.
match_type SearchMatchTypeV2? The type of the match. This field is optional.
SearchMatchTypeV2 (open union)
Indicates what type of match was found for a given item. The value will be one of the following datatypes. New values may be introduced as our API evolves.
filename Void This item was matched on its file or folder name.
file_content Void This item was matched based on its file contents.
filename_and_content Void This item was matched based on both its contents and its file name.
image_content Void This item was matched on image content.
highlight_spans List of (HighlightSpan)? The list of HighlightSpan determines which parts of the file title should be highlighted. This field is optional.
highlight_str String String to be determined whether it should be highlighted or not.
is_highlighted Boolean The string should be highlighted or not.
has_more Boolean Used for paging. If true, indicates there is another page of results available that can be fetched by calling search/continue:2 with the cursor.
cursor String(min_length=1)? Pass the cursor into search/continue:2 to fetch the next page of results. This field is optional.
Errors
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path LookupError
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
invalid_argument String? This field is optional.
internal_error Void Something went wrong, please try again.

/unlock_file_batch

Version
Description

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.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/unlock_file_batch
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/unlock_file_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"path\": \"/John Doe/sample/test.pdf\"}]}"
Parameters
{     "entries": [         {             "path": "/John Doe/sample/test.pdf"         }     ] }
entries List of (UnlockFileArg) List of 'entries'. Each 'entry' contains a path of the file which will be unlocked. Duplicate path arguments in the batch are considered only once.
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to a file.
Returns
{     "entries": [         {             ".tag": "success",             "metadata": {                 ".tag": "file",                 "name": "Prime_Numbers.txt",                 "id": "id:a4ayc_80_OEAAAAAAAAAXw",                 "client_modified": "2015-05-12T15:50:38Z",                 "server_modified": "2015-05-12T15:50:38Z",                 "rev": "a1c10ce0dd78",                 "size": 7212,                 "path_lower": "/homework/math/prime_numbers.txt",                 "path_display": "/Homework/math/Prime_Numbers.txt",                 "sharing_info": {                     "read_only": true,                     "parent_shared_folder_id": "84528192421",                     "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"                 },                 "is_downloadable": true,                 "property_groups": [                     {                         "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                         "fields": [                             {                                 "name": "Security Policy",                                 "value": "Confidential"                             }                         ]                     }                 ],                 "has_explicit_shared_members": false,                 "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",                 "file_lock_info": {                     "is_lockholder": true,                     "lockholder_name": "Imaginary User",                     "created": "2015-05-12T15:50:38Z"                 }             },             "lock": {                 "content": {                     ".tag": "single_user",                     "created": "2015-05-12T15:50:38Z",                     "lock_holder_account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                     "lock_holder_team_id": "dbtid:1234abcd"                 }             }         }     ] }
entries List of (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.
LockFileResultEntry (union)
The value will be one of the following datatypes:
success LockFileResult
lock deprecated FileLock Field is deprecated. The file lock state after the operation.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
failure LockFileError
LockFileError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError Could not find the specified resource.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
no_write_permission Void The user does not have permissions to change the lock state or access the file.
cannot_be_locked Void Item is a type that cannot be locked.
file_not_shared Void Requested file is not currently shared.
lock_conflict LockConflictError The user action conflicts with an existing lock on the file.
lock FileLock The lock that caused the conflict.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
internal_error Void 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.
Errors
Example: too_many_write_operations
{     "error_summary": "too_many_write_operations/...",     "error": {         ".tag": "too_many_write_operations"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
Example: no_write_permission
{     "error_summary": "no_write_permission/...",     "error": {         ".tag": "no_write_permission"     } }
Example: cannot_be_locked
{     "error_summary": "cannot_be_locked/...",     "error": {         ".tag": "cannot_be_locked"     } }
{     "error_summary": "file_not_shared/...",     "error": {         ".tag": "file_not_shared"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
LockFileError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path_lookup LookupError Could not find the specified resource.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_content_type Void This operation is not supported for this content type.
locked Void The given path is locked.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
too_many_files Void There are too many files in one request. Please retry with fewer files.
no_write_permission Void The user does not have permissions to change the lock state or access the file.
cannot_be_locked Void Item is a type that cannot be locked.
file_not_shared Void Requested file is not currently shared.
lock_conflict LockConflictError The user action conflicts with an existing lock on the file.
lock FileLock The lock that caused the conflict.
content FileLockContent The lock description.
FileLockContent (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
unlocked Void Empty type to indicate no lock.
single_user SingleUserLock A lock held by a single user.
created Timestamp(format="%Y-%m-%dT%H:%M:%SZ") The time the lock was created.
lock_holder_account_id String(min_length=40, max_length=40) 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. This field is optional.
internal_error Void 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.

/upload

Version
Description

Create a new file with the contents provided in the request.
Do not use this to upload a file larger than 150 MB. Instead, create an upload session with 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.

URL Structure
https://content.dropboxapi.com/2/files/upload
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://content.dropboxapi.com/2/files/upload \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/Homework/math/Matrices.txt\",\"mode\": \"add\",\"autorename\": true,\"mute\": false,\"strict_conflict\": false}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
{     "path": "/Homework/math/Matrices.txt",     "mode": "add",     "autorename": true,     "mute": false,     "strict_conflict": false }
{     "path": "/Homework/math/Vectors.txt",     "mode": "add",     "autorename": true,     "mute": false,     "strict_conflict": false }
{     "path": "/Homework/math/Matrices.txt",     "mode": {         ".tag": "update",         "update": "a1c10ce0dd78"     },     "autorename": false,     "mute": false,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "strict_conflict": false }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to save the file.
mode WriteMode Selects what to do if the file already exists. The default for this union is add.
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. The value will be one of the following datatypes:
add Void 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, "document.txt" might become "document (2).txt".
overwrite Void Always overwrite the existing file. The autorename strategy is the same as it is for add.
update String(min_length=9, pattern="[0-9a-f]+") Overwrite if the given "rev" matches the existing file's "rev". The supplied value should be the latest known "rev" of the file, for example, from FileMetadata, from when the file was last downloaded by the app. This will cause the file on the Dropbox servers to be overwritten if the given "rev" matches the existing file's current "rev" on the Dropbox servers. The autorename strategy is to append the string "conflicted copy" to the file name. For example, "document.txt" might become "document (conflicted copy).txt" or "document (Panda's conflicted copy).txt".
autorename Boolean If there's a conflict, as determined by mode, have the Dropbox server try to autorename the file to avoid conflict. The default for this field is False.
client_modified Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? The value to store as the client_modified timestamp. Dropbox automatically records the time at which the file was written to the Dropbox servers. It can also record an additional timestamp, provided by Dropbox desktop clients, mobile clients, and API apps of when the file was actually created or modified. This field is optional.
mute Boolean Normally, users are made aware of any file modifications in their Dropbox account via notifications in the client software. If true, this tells the clients that this modification shouldn't result in a user notification. The default for this field is False.
property_groups List of (PropertyGroup)? List of custom properties to add to file. This field is optional.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate. This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
strict_conflict Boolean Be more strict about how each WriteMode detects conflict. For example, always return a conflict error when mode = WriteMode.update and the given "rev" doesn't match the existing file's "rev", even if the existing file has been deleted. This also forces a conflict even when the target path refers to a file with identical contents. The default for this field is False.
Returns
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
Example: search_file_metadata
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
The value will be one of the following datatypes. New values may be introduced as our API evolves.
path UploadWriteFailed Unable to save the uploaded contents to a file.
reason WriteError The reason why the file couldn't be saved.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
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 upload_session/finish.
properties_error InvalidPropertyGroupError The supplied property group is invalid. The file has uploaded without property groups.
InvalidPropertyGroupError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.

/upload_session/append

Version
Description

Append more data to an upload 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 Data transport limit page.

URL Structure
https://content.dropboxapi.com/2/files/upload_session/append
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://content.dropboxapi.com/2/files/upload_session/append \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"session_id\": \"1234faaf0678bcde\",\"offset\": 0}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
{     "session_id": "1234faaf0678bcde",     "offset": 0 }
{     "session_id": "8dd9d57374911153",     "offset": 1073741824 }
session_id String The upload session ID (returned by 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.
Returns

No return values.

Errors
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "closed/...",     "error": {         ".tag": "closed"     } }
{     "error_summary": "not_closed/...",     "error": {         ".tag": "not_closed"     } }
{     "error_summary": "too_large/...",     "error": {         ".tag": "too_large"     } }
Example: concurrent_session_invalid_offset
{     "error_summary": "concurrent_session_invalid_offset/...",     "error": {         ".tag": "concurrent_session_invalid_offset"     } }
Example: concurrent_session_invalid_data_size
{     "error_summary": "concurrent_session_invalid_data_size/...",     "error": {         ".tag": "concurrent_session_invalid_data_size"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UploadSessionLookupError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void 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.
correct_offset UInt64 The offset up to which data has been collected.
closed Void You are attempting to append data to an upload session that has already been closed (i.e. committed).
not_closed Void The session must be closed before calling upload_session/finish_batch.
too_large Void 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).
concurrent_session_invalid_offset Void For concurrent upload sessions, offset needs to be multiple of 4194304 bytes.
concurrent_session_invalid_data_size Void For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded.
Description

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 Data transport limit page.

URL Structure
https://content.dropboxapi.com/2/files/upload_session/append_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://content.dropboxapi.com/2/files/upload_session/append_v2 \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"cursor\": {\"session_id\": \"1234faaf0678bcde\",\"offset\": 0},\"close\": false}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
{     "cursor": {         "session_id": "1234faaf0678bcde",         "offset": 0     },     "close": false }
cursor UploadSessionCursor Contains the upload session ID and the offset.
session_id String The upload session ID (returned by 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.
close Boolean If true, the current session will be closed, at which point you won't be able to call upload_session/append:2 anymore with the current session. The default for this field is False.
Returns

No return values.

Errors
{     "error_summary": "not_found/...",     "error": {         ".tag": "not_found"     } }
{     "error_summary": "closed/...",     "error": {         ".tag": "closed"     } }
{     "error_summary": "not_closed/...",     "error": {         ".tag": "not_closed"     } }
{     "error_summary": "too_large/...",     "error": {         ".tag": "too_large"     } }
Example: concurrent_session_invalid_offset
{     "error_summary": "concurrent_session_invalid_offset/...",     "error": {         ".tag": "concurrent_session_invalid_offset"     } }
Example: concurrent_session_invalid_data_size
{     "error_summary": "concurrent_session_invalid_data_size/...",     "error": {         ".tag": "concurrent_session_invalid_data_size"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UploadSessionLookupError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void 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.
correct_offset UInt64 The offset up to which data has been collected.
closed Void You are attempting to append data to an upload session that has already been closed (i.e. committed).
not_closed Void The session must be closed before calling upload_session/finish_batch.
too_large Void 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).
concurrent_session_invalid_offset Void For concurrent upload sessions, offset needs to be multiple of 4194304 bytes.
concurrent_session_invalid_data_size Void For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded.

/upload_session/finish

Version
Description

Finish an upload session and save the uploaded data to the given file path.
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 Data transport limit page.

URL Structure
https://content.dropboxapi.com/2/files/upload_session/finish
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://content.dropboxapi.com/2/files/upload_session/finish \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"cursor\": {\"session_id\": \"1234faaf0678bcde\",\"offset\": 0},\"commit\": {\"path\": \"/Homework/math/Matrices.txt\",\"mode\": \"add\",\"autorename\": true,\"mute\": false,\"strict_conflict\": false}}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
{     "cursor": {         "session_id": "1234faaf0678bcde",         "offset": 0     },     "commit": {         "path": "/Homework/math/Matrices.txt",         "mode": "add",         "autorename": true,         "mute": false,         "strict_conflict": false     } }
{     "cursor": {         "session_id": "8dd9d57374911153",         "offset": 1073741824     },     "commit": {         "path": "/Homework/math/Vectors.txt",         "mode": "add",         "autorename": true,         "mute": false,         "strict_conflict": false     } }
{     "cursor": {         "session_id": "1234faaf0678bcde",         "offset": 0     },     "commit": {         "path": "/Homework/math/Matrices.txt",         "mode": {             ".tag": "update",             "update": "a1c10ce0dd78"         },         "autorename": false,         "mute": false,         "property_groups": [             {                 "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                 "fields": [                     {                         "name": "Security Policy",                         "value": "Confidential"                     }                 ]             }         ],         "strict_conflict": false     } }
cursor UploadSessionCursor Contains the upload session ID and the offset.
session_id String The upload session ID (returned by 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.
commit CommitInfo Contains the path and other optional modifiers for the commit.
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to save the file.
mode WriteMode Selects what to do if the file already exists. The default for this union is add.
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. The value will be one of the following datatypes:
add Void 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, "document.txt" might become "document (2).txt".
overwrite Void Always overwrite the existing file. The autorename strategy is the same as it is for add.
update String(min_length=9, pattern="[0-9a-f]+") Overwrite if the given "rev" matches the existing file's "rev". The supplied value should be the latest known "rev" of the file, for example, from FileMetadata, from when the file was last downloaded by the app. This will cause the file on the Dropbox servers to be overwritten if the given "rev" matches the existing file's current "rev" on the Dropbox servers. The autorename strategy is to append the string "conflicted copy" to the file name. For example, "document.txt" might become "document (conflicted copy).txt" or "document (Panda's conflicted copy).txt".
autorename Boolean If there's a conflict, as determined by mode, have the Dropbox server try to autorename the file to avoid conflict. The default for this field is False.
client_modified Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? The value to store as the client_modified timestamp. Dropbox automatically records the time at which the file was written to the Dropbox servers. It can also record an additional timestamp, provided by Dropbox desktop clients, mobile clients, and API apps of when the file was actually created or modified. This field is optional.
mute Boolean Normally, users are made aware of any file modifications in their Dropbox account via notifications in the client software. If true, this tells the clients that this modification shouldn't result in a user notification. The default for this field is False.
property_groups List of (PropertyGroup)? List of custom properties to add to file. This field is optional.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate. This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
strict_conflict Boolean Be more strict about how each WriteMode detects conflict. For example, always return a conflict error when mode = WriteMode.update and the given "rev" doesn't match the existing file's "rev", even if the existing file has been deleted. This also forces a conflict even when the target path refers to a file with identical contents. The default for this field is False.
Returns
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
Example: search_file_metadata
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
Example: too_many_shared_folder_targets
{     "error_summary": "too_many_shared_folder_targets/...",     "error": {         ".tag": "too_many_shared_folder_targets"     } }
Example: too_many_write_operations
{     "error_summary": "too_many_write_operations/...",     "error": {         ".tag": "too_many_write_operations"     } }
Example: concurrent_session_data_not_allowed
{     "error_summary": "concurrent_session_data_not_allowed/...",     "error": {         ".tag": "concurrent_session_data_not_allowed"     } }
Example: concurrent_session_not_closed
{     "error_summary": "concurrent_session_not_closed/...",     "error": {         ".tag": "concurrent_session_not_closed"     } }
Example: concurrent_session_missing_data
{     "error_summary": "concurrent_session_missing_data/...",     "error": {         ".tag": "concurrent_session_missing_data"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UploadSessionFinishError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
lookup_failed UploadSessionLookupError The session arguments are incorrect; the value explains the reason.
UploadSessionLookupError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void 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.
correct_offset UInt64 The offset up to which data has been collected.
closed Void You are attempting to append data to an upload session that has already been closed (i.e. committed).
not_closed Void The session must be closed before calling upload_session/finish_batch.
too_large Void 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).
concurrent_session_invalid_offset Void For concurrent upload sessions, offset needs to be multiple of 4194304 bytes.
concurrent_session_invalid_data_size Void For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded.
path WriteError Unable to save the uploaded contents to a file. Data has already been appended to the upload session. Please retry with empty data body and updated offset.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
properties_error InvalidPropertyGroupError The supplied property group is invalid. The file has uploaded without property groups.
InvalidPropertyGroupError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.
too_many_shared_folder_targets deprecated Void Field is deprecated. The batch request commits files into too many different shared folders. Please limit your batch request to files contained in a single shared folder.
too_many_write_operations Void There are too many write operations happening in the user's Dropbox. You should retry uploading this file.
concurrent_session_data_not_allowed Void Uploading data not allowed when finishing concurrent upload session.
concurrent_session_not_closed Void Concurrent upload sessions need to be closed before finishing.
concurrent_session_missing_data Void Not all pieces of data were uploaded before trying to finish the session.

/upload_session/finish_batch

Version
Description

This route helps you commit many files at once into a user's Dropbox. Use upload_session/start and 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 upload_session/finish, use this route to finish all your upload sessions in a single request.
UploadSessionStartArg.close or UploadSessionAppendArg.close needs to be true for the last upload_session/start or 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 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.

URL Structure
https://api.dropboxapi.com/2/files/upload_session/finish_batch
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/upload_session/finish_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"cursor\": {\"session_id\": \"1234faaf0678bcde\",\"offset\": 0},\"commit\": {\"path\": \"/Homework/math/Matrices.txt\",\"mode\": \"add\",\"autorename\": true,\"mute\": false,\"strict_conflict\": false}}]}"
Parameters
{     "entries": [         {             "cursor": {                 "session_id": "1234faaf0678bcde",                 "offset": 0             },             "commit": {                 "path": "/Homework/math/Matrices.txt",                 "mode": "add",                 "autorename": true,                 "mute": false,                 "strict_conflict": false             }         }     ] }
{     "entries": [         {             "cursor": {                 "session_id": "1234faaf0678bcde",                 "offset": 0             },             "commit": {                 "path": "/Homework/math/Matrices.txt",                 "mode": "add",                 "autorename": true,                 "mute": false,                 "strict_conflict": false             }         },         {             "cursor": {                 "session_id": "8dd9d57374911153",                 "offset": 1073741824             },             "commit": {                 "path": "/Homework/math/Vectors.txt",                 "mode": "add",                 "autorename": true,                 "mute": false,                 "strict_conflict": false             }         }     ] }
UploadSessionFinishBatchArg
entries List of (UploadSessionFinishArg, max_items=1000) Commit information for each file in the batch.
cursor UploadSessionCursor Contains the upload session ID and the offset.
session_id String The upload session ID (returned by 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.
commit CommitInfo Contains the path and other optional modifiers for the commit.
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to save the file.
mode WriteMode Selects what to do if the file already exists. The default for this union is add.
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. The value will be one of the following datatypes:
add Void 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, "document.txt" might become "document (2).txt".
overwrite Void Always overwrite the existing file. The autorename strategy is the same as it is for add.
update String(min_length=9, pattern="[0-9a-f]+") Overwrite if the given "rev" matches the existing file's "rev". The supplied value should be the latest known "rev" of the file, for example, from FileMetadata, from when the file was last downloaded by the app. This will cause the file on the Dropbox servers to be overwritten if the given "rev" matches the existing file's current "rev" on the Dropbox servers. The autorename strategy is to append the string "conflicted copy" to the file name. For example, "document.txt" might become "document (conflicted copy).txt" or "document (Panda's conflicted copy).txt".
autorename Boolean If there's a conflict, as determined by mode, have the Dropbox server try to autorename the file to avoid conflict. The default for this field is False.
client_modified Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? The value to store as the client_modified timestamp. Dropbox automatically records the time at which the file was written to the Dropbox servers. It can also record an additional timestamp, provided by Dropbox desktop clients, mobile clients, and API apps of when the file was actually created or modified. This field is optional.
mute Boolean Normally, users are made aware of any file modifications in their Dropbox account via notifications in the client software. If true, this tells the clients that this modification shouldn't result in a user notification. The default for this field is False.
property_groups List of (PropertyGroup)? List of custom properties to add to file. This field is optional.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate. This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
strict_conflict Boolean Be more strict about how each WriteMode detects conflict. For example, always return a conflict error when mode = WriteMode.update and the given "rev" doesn't match the existing file's "rev", even if the existing file has been deleted. This also forces a conflict even when the target path refers to a file with identical contents. The default for this field is False.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "name": "Prime_Numbers.txt",             "id": "id:a4ayc_80_OEAAAAAAAAAXw",             "client_modified": "2015-05-12T15:50:38Z",             "server_modified": "2015-05-12T15:50:38Z",             "rev": "a1c10ce0dd78",             "size": 7212,             "path_lower": "/homework/math/prime_numbers.txt",             "path_display": "/Homework/math/Prime_Numbers.txt",             "sharing_info": {                 "read_only": true,                 "parent_shared_folder_id": "84528192421",                 "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"             },             "is_downloadable": true,             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ],             "has_explicit_shared_members": false,             "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",             "file_lock_info": {                 "is_lockholder": true,                 "lockholder_name": "Imaginary User",                 "created": "2015-05-12T15:50:38Z"             }         }     ] }
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
{     ".tag": "other" }
UploadSessionFinishBatchLaunch (open union)
Result returned by upload_session/finish_batch that may either launch an asynchronous job or complete synchronously. The value will be one of the following datatypes. New values may be introduced as our API evolves.
async_job_id String(min_length=1) 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.
complete UploadSessionFinishBatchResult
UploadSessionFinishBatchResult
entries List of (UploadSessionFinishBatchResultEntry) Each entry in UploadSessionFinishBatchArg.entries will appear at the same position inside UploadSessionFinishBatchResult.entries.
UploadSessionFinishBatchResultEntry (union)
The value will be one of the following datatypes:
failure UploadSessionFinishError
UploadSessionFinishError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
lookup_failed UploadSessionLookupError The session arguments are incorrect; the value explains the reason.
UploadSessionLookupError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void 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.
correct_offset UInt64 The offset up to which data has been collected.
closed Void You are attempting to append data to an upload session that has already been closed (i.e. committed).
not_closed Void The session must be closed before calling upload_session/finish_batch.
too_large Void 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).
concurrent_session_invalid_offset Void For concurrent upload sessions, offset needs to be multiple of 4194304 bytes.
concurrent_session_invalid_data_size Void For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded.
path WriteError Unable to save the uploaded contents to a file. Data has already been appended to the upload session. Please retry with empty data body and updated offset.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
properties_error InvalidPropertyGroupError The supplied property group is invalid. The file has uploaded without property groups.
InvalidPropertyGroupError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.
too_many_shared_folder_targets deprecated Void Field is deprecated. The batch request commits files into too many different shared folders. Please limit your batch request to files contained in a single shared folder.
too_many_write_operations Void There are too many write operations happening in the user's Dropbox. You should retry uploading this file.
concurrent_session_data_not_allowed Void Uploading data not allowed when finishing concurrent upload session.
concurrent_session_not_closed Void Concurrent upload sessions need to be closed before finishing.
concurrent_session_missing_data Void Not all pieces of data were uploaded before trying to finish the session.
Errors

No errors.

Description

This route helps you commit many files at once into a user's Dropbox. Use upload_session/start and 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 upload_session/finish, use this route to finish all your upload sessions in a single request.
UploadSessionStartArg.close or UploadSessionAppendArg.close needs to be true for the last upload_session/start or 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 Data transport limit page.

URL Structure
https://api.dropboxapi.com/2/files/upload_session/finish_batch_v2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/upload_session/finish_batch_v2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"entries\": [{\"cursor\": {\"session_id\": \"1234faaf0678bcde\",\"offset\": 0},\"commit\": {\"path\": \"/Homework/math/Matrices.txt\",\"mode\": \"add\",\"autorename\": true,\"mute\": false,\"strict_conflict\": false}}]}"
Parameters
{     "entries": [         {             "cursor": {                 "session_id": "1234faaf0678bcde",                 "offset": 0             },             "commit": {                 "path": "/Homework/math/Matrices.txt",                 "mode": "add",                 "autorename": true,                 "mute": false,                 "strict_conflict": false             }         }     ] }
{     "entries": [         {             "cursor": {                 "session_id": "1234faaf0678bcde",                 "offset": 0             },             "commit": {                 "path": "/Homework/math/Matrices.txt",                 "mode": "add",                 "autorename": true,                 "mute": false,                 "strict_conflict": false             }         },         {             "cursor": {                 "session_id": "8dd9d57374911153",                 "offset": 1073741824             },             "commit": {                 "path": "/Homework/math/Vectors.txt",                 "mode": "add",                 "autorename": true,                 "mute": false,                 "strict_conflict": false             }         }     ] }
UploadSessionFinishBatchArg
entries List of (UploadSessionFinishArg, max_items=1000) Commit information for each file in the batch.
cursor UploadSessionCursor Contains the upload session ID and the offset.
session_id String The upload session ID (returned by 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.
commit CommitInfo Contains the path and other optional modifiers for the commit.
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to save the file.
mode WriteMode Selects what to do if the file already exists. The default for this union is add.
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. The value will be one of the following datatypes:
add Void 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, "document.txt" might become "document (2).txt".
overwrite Void Always overwrite the existing file. The autorename strategy is the same as it is for add.
update String(min_length=9, pattern="[0-9a-f]+") Overwrite if the given "rev" matches the existing file's "rev". The supplied value should be the latest known "rev" of the file, for example, from FileMetadata, from when the file was last downloaded by the app. This will cause the file on the Dropbox servers to be overwritten if the given "rev" matches the existing file's current "rev" on the Dropbox servers. The autorename strategy is to append the string "conflicted copy" to the file name. For example, "document.txt" might become "document (conflicted copy).txt" or "document (Panda's conflicted copy).txt".
autorename Boolean If there's a conflict, as determined by mode, have the Dropbox server try to autorename the file to avoid conflict. The default for this field is False.
client_modified Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? The value to store as the client_modified timestamp. Dropbox automatically records the time at which the file was written to the Dropbox servers. It can also record an additional timestamp, provided by Dropbox desktop clients, mobile clients, and API apps of when the file was actually created or modified. This field is optional.
mute Boolean Normally, users are made aware of any file modifications in their Dropbox account via notifications in the client software. If true, this tells the clients that this modification shouldn't result in a user notification. The default for this field is False.
property_groups List of (PropertyGroup)? List of custom properties to add to file. This field is optional.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate. This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
strict_conflict Boolean Be more strict about how each WriteMode detects conflict. For example, always return a conflict error when mode = WriteMode.update and the given "rev" doesn't match the existing file's "rev", even if the existing file has been deleted. This also forces a conflict even when the target path refers to a file with identical contents. The default for this field is False.
Returns
{     "entries": [         {             ".tag": "success",             "name": "Prime_Numbers.txt",             "id": "id:a4ayc_80_OEAAAAAAAAAXw",             "client_modified": "2015-05-12T15:50:38Z",             "server_modified": "2015-05-12T15:50:38Z",             "rev": "a1c10ce0dd78",             "size": 7212,             "path_lower": "/homework/math/prime_numbers.txt",             "path_display": "/Homework/math/Prime_Numbers.txt",             "sharing_info": {                 "read_only": true,                 "parent_shared_folder_id": "84528192421",                 "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"             },             "is_downloadable": true,             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ],             "has_explicit_shared_members": false,             "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",             "file_lock_info": {                 "is_lockholder": true,                 "lockholder_name": "Imaginary User",                 "created": "2015-05-12T15:50:38Z"             }         }     ] }
UploadSessionFinishBatchResult
entries List of (UploadSessionFinishBatchResultEntry) Each entry in UploadSessionFinishBatchArg.entries will appear at the same position inside UploadSessionFinishBatchResult.entries.
UploadSessionFinishBatchResultEntry (union)
The value will be one of the following datatypes:
failure UploadSessionFinishError
UploadSessionFinishError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
lookup_failed UploadSessionLookupError The session arguments are incorrect; the value explains the reason.
UploadSessionLookupError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void 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.
correct_offset UInt64 The offset up to which data has been collected.
closed Void You are attempting to append data to an upload session that has already been closed (i.e. committed).
not_closed Void The session must be closed before calling upload_session/finish_batch.
too_large Void 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).
concurrent_session_invalid_offset Void For concurrent upload sessions, offset needs to be multiple of 4194304 bytes.
concurrent_session_invalid_data_size Void For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded.
path WriteError Unable to save the uploaded contents to a file. Data has already been appended to the upload session. Please retry with empty data body and updated offset.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
properties_error InvalidPropertyGroupError The supplied property group is invalid. The file has uploaded without property groups.
InvalidPropertyGroupError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.
too_many_shared_folder_targets deprecated Void Field is deprecated. The batch request commits files into too many different shared folders. Please limit your batch request to files contained in a single shared folder.
too_many_write_operations Void There are too many write operations happening in the user's Dropbox. You should retry uploading this file.
concurrent_session_data_not_allowed Void Uploading data not allowed when finishing concurrent upload session.
concurrent_session_not_closed Void Concurrent upload sessions need to be closed before finishing.
concurrent_session_missing_data Void Not all pieces of data were uploaded before trying to finish the session.
Errors

No errors.

/upload_session/finish_batch/check

Version
Description

Returns the status of an asynchronous job for upload_session/finish_batch. If success, it returns list of result for each entry.

URL Structure
https://api.dropboxapi.com/2/files/upload_session/finish_batch/check
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/files/upload_session/finish_batch/check \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "complete",     "entries": [         {             ".tag": "success",             "name": "Prime_Numbers.txt",             "id": "id:a4ayc_80_OEAAAAAAAAAXw",             "client_modified": "2015-05-12T15:50:38Z",             "server_modified": "2015-05-12T15:50:38Z",             "rev": "a1c10ce0dd78",             "size": 7212,             "path_lower": "/homework/math/prime_numbers.txt",             "path_display": "/Homework/math/Prime_Numbers.txt",             "sharing_info": {                 "read_only": true,                 "parent_shared_folder_id": "84528192421",                 "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"             },             "is_downloadable": true,             "property_groups": [                 {                     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",                     "fields": [                         {                             "name": "Security Policy",                             "value": "Confidential"                         }                     ]                 }             ],             "has_explicit_shared_members": false,             "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",             "file_lock_info": {                 "is_lockholder": true,                 "lockholder_name": "Imaginary User",                 "created": "2015-05-12T15:50:38Z"             }         }     ] }
{     ".tag": "in_progress" }
UploadSessionFinishBatchJobStatus (union)
The value will be one of the following datatypes:
in_progress Void The asynchronous job is still in progress.
complete UploadSessionFinishBatchResult The upload_session/finish_batch has finished.
UploadSessionFinishBatchResult
entries List of (UploadSessionFinishBatchResultEntry) Each entry in UploadSessionFinishBatchArg.entries will appear at the same position inside UploadSessionFinishBatchResult.entries.
UploadSessionFinishBatchResultEntry (union)
The value will be one of the following datatypes:
failure UploadSessionFinishError
UploadSessionFinishError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
lookup_failed UploadSessionLookupError The session arguments are incorrect; the value explains the reason.
UploadSessionLookupError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void 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.
correct_offset UInt64 The offset up to which data has been collected.
closed Void You are attempting to append data to an upload session that has already been closed (i.e. committed).
not_closed Void The session must be closed before calling upload_session/finish_batch.
too_large Void 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).
concurrent_session_invalid_offset Void For concurrent upload sessions, offset needs to be multiple of 4194304 bytes.
concurrent_session_invalid_data_size Void For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded.
path WriteError Unable to save the uploaded contents to a file. Data has already been appended to the upload session. Please retry with empty data body and updated offset.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
properties_error InvalidPropertyGroupError The supplied property group is invalid. The file has uploaded without property groups.
InvalidPropertyGroupError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.
too_many_shared_folder_targets deprecated Void Field is deprecated. The batch request commits files into too many different shared folders. Please limit your batch request to files contained in a single shared folder.
too_many_write_operations Void There are too many write operations happening in the user's Dropbox. You should retry uploading this file.
concurrent_session_data_not_allowed Void Uploading data not allowed when finishing concurrent upload session.
concurrent_session_not_closed Void Concurrent upload sessions need to be closed before finishing.
concurrent_session_missing_data Void Not all pieces of data were uploaded before trying to finish the session.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.

/upload_session/start

Version
Description

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 upload_session/append:2 to add more data and 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 UploadSessionStartResult.session_id with upload_session/append:2 or upload_session/finish more than 7 days after its creation will return a 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.
By default, upload sessions require you to send content of the file in sequential order via consecutive upload_session/start, upload_session/append:2, upload_session/finish calls. For better performance, you can instead optionally use a UploadSessionType.concurrent upload session. To start a new concurrent session, set UploadSessionStartArg.session_type to UploadSessionType.concurrent. After that, you can send file data in concurrent upload_session/append:2 requests. Finally finish the session with upload_session/finish.
There are couple of constraints with concurrent sessions to make them work. You can not send data with upload_session/start or upload_session/finish call, only with upload_session/append:2 call. Also data uploaded in upload_session/append:2 call must be multiple of 4194304 bytes (except for last upload_session/append:2 with UploadSessionStartArg.close to true, that may contain any remaining data).

URL Structure
https://content.dropboxapi.com/2/files/upload_session/start
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://content.dropboxapi.com/2/files/upload_session/start \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"close\": false}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
{     "close": false }
close Boolean If true, the current session will be closed, at which point you won't be able to call upload_session/append:2 anymore with the current session. The default for this field is False.
session_type UploadSessionType? Type of upload session you want to start. If not specified, default is UploadSessionType.sequential. This field is optional.
UploadSessionType (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
sequential Void Pieces of data are uploaded sequentially one after another. This is the default behavior.
concurrent Void Pieces of data can be uploaded in concurrent RPCs in any order.
Returns
{     "session_id": "1234faaf0678bcde" }
session_id String A unique identifier for the upload session. Pass this to upload_session/append:2 and upload_session/finish.
Errors
Example: concurrent_session_data_not_allowed
{     "error_summary": "concurrent_session_data_not_allowed/...",     "error": {         ".tag": "concurrent_session_data_not_allowed"     } }
Example: concurrent_session_close_not_allowed
{     "error_summary": "concurrent_session_close_not_allowed/...",     "error": {         ".tag": "concurrent_session_close_not_allowed"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UploadSessionStartError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
concurrent_session_data_not_allowed Void Uploading data not allowed when starting concurrent upload session.
concurrent_session_close_not_allowed Void Can not start a closed concurrent upload session.

sharing

This namespace contains endpoints and data types for creating and managing shared links and shared folders.

/add_file_member

Version
Description

Adds specified members to a file.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/add_file_member
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/add_file_member \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"file\": \"id:3kmLmQFnf1AAAAAAAAAAAw\",\"members\": [{\".tag\": \"email\",\"email\": \"justin@example.com\"}],\"custom_message\": \"This is a custom message about ACME.doc\",\"quiet\": false,\"access_level\": \"viewer\",\"add_message_as_comment\": false}"
Parameters
{     "file": "id:3kmLmQFnf1AAAAAAAAAAAw",     "members": [         {             ".tag": "email",             "email": "justin@example.com"         }     ],     "custom_message": "This is a custom message about ACME.doc",     "quiet": false,     "access_level": "viewer",     "add_message_as_comment": false }
Arguments for add_file_member.
file String(min_length=1, pattern="((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?") File to which to add members.
members List of (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.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
custom_message String? Message to send to added members in their invitation. This field is optional.
quiet Boolean Whether added members should be notified via device notifications of their invitation. The default for this field is False.
access_level AccessLevel AccessLevel union object, describing what access level we want to give new members. The default for this union is viewer.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
add_message_as_comment Boolean If the custom message should be added as a comment on the file. The default for this field is False.
Returns
This route returns a list. This means the route can accept a homogenous list of the following types:
Per-member result for add_file_member.
member MemberSelector One of specified input members.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
result FileMemberActionIndividualResult The outcome of the action on this member.
FileMemberActionIndividualResult (union)
The value will be one of the following datatypes:
success AccessLevel? Member was successfully removed from this file. If AccessLevel is given, the member still has access via a parent shared folder. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
member_error FileMemberActionError User was not able to perform this action.
FileMemberActionError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_member Void Specified member was not found.
no_permission Void 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.
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
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.
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.
Errors
{     "error_summary": "rate_limit/...",     "error": {         ".tag": "rate_limit"     } }
{     "error_summary": "invalid_comment/...",     "error": {         ".tag": "invalid_comment"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
AddFileMemberError (open union)
Errors for add_file_member. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_error SharingUserError
SharingUserError (open union)
User account had a problem preventing this action. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.
access_error SharingFileAccessError
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
rate_limit Void The user has reached the rate limit for invitations.
invalid_comment Void The custom message did not pass comment permissions checks.

/add_folder_member

Version
Description

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 mount_folder on their behalf.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/add_folder_member
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/add_folder_member \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\",\"members\": [{\"member\": {\".tag\": \"email\",\"email\": \"justin@example.com\"},\"access_level\": \"editor\"},{\"member\": {\".tag\": \"dropbox_id\",\"dropbox_id\": \"dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q\"},\"access_level\": \"viewer\"}],\"quiet\": false,\"custom_message\": \"Documentation for launch day\"}"
Parameters
{     "shared_folder_id": "84528192421",     "members": [         {             "member": {                 ".tag": "email",                 "email": "justin@example.com"             },             "access_level": "editor"         },         {             "member": {                 ".tag": "dropbox_id",                 "dropbox_id": "dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q"             },             "access_level": "viewer"         }     ],     "quiet": false,     "custom_message": "Documentation for launch day" }
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID for the shared folder.
members List of (AddMember) The intended list of members to add. Added members will receive invites to join the shared folder.
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.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
access_level AccessLevel The access level to grant member to the shared folder. AccessLevel.owner is disallowed. The default for this union is viewer.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
quiet Boolean Whether added members should be notified via email and device notifications of their invite. The default for this field is False.
custom_message String(min_length=1)? Optional message to display to added members in their invitation. This field is optional.
Returns

No return values.

Errors
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "bad_member/invalid_dropbox_id/...",     "error": {         ".tag": "bad_member",         "bad_member": {             ".tag": "invalid_dropbox_id",             "invalid_dropbox_id": "dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q"         }     } }
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
{     "error_summary": "banned_member/...",     "error": {         ".tag": "banned_member"     } }
Example: cant_share_outside_team
{     "error_summary": "cant_share_outside_team/...",     "error": {         ".tag": "cant_share_outside_team"     } }
{     "error_summary": "rate_limit/...",     "error": {         ".tag": "rate_limit"     } }
Example: too_many_invitees
{     "error_summary": "too_many_invitees/...",     "error": {         ".tag": "too_many_invitees"     } }
Example: insufficient_plan
{     "error_summary": "insufficient_plan/...",     "error": {         ".tag": "insufficient_plan"     } }
{     "error_summary": "team_folder/...",     "error": {         ".tag": "team_folder"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
Example: invalid_shared_folder
{     "error_summary": "invalid_shared_folder/...",     "error": {         ".tag": "invalid_shared_folder"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
AddFolderMemberError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.
banned_member Void The current user has been banned.
bad_member AddMemberSelectorError AddFolderMemberArg.members contains a bad invitation recipient.
AddMemberSelectorError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
automatic_group Void Automatically created groups can only be added to team folders.
invalid_dropbox_id String(min_length=1) The value is the ID that could not be identified.
invalid_email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") The value is the e-email address that is malformed.
unverified_dropbox_id String(min_length=1) 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 Void At least one of the specified groups in AddFolderMemberArg.members is deleted.
group_not_on_team Void Sharing to a group that is not on the current user's team.
cant_share_outside_team Void 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 Void The current user has hit the limit of invites they can send per day. Try again in 24 hours.
too_many_invitees Void The current user is trying to share with too many people at once.
insufficient_plan Void 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 Void This action cannot be performed on a team shared folder.
no_permission Void The current user does not have permission to perform this action.
invalid_shared_folder deprecated Void Field is deprecated. Invalid shared folder error will be returned as an access_error.

/check_job_status

Version
Description

Returns the status of an asynchronous job.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/check_job_status
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/check_job_status \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "in_progress" }
{     ".tag": "complete" }
The value will be one of the following datatypes:
in_progress Void The asynchronous job is still in progress.
complete Void The asynchronous job has finished.
failed JobError The asynchronous job returned an error.
Error occurred while performing an asynchronous job from unshare_folder or remove_folder_member. The value will be one of the following datatypes. New values may be introduced as our API evolves.
remove_folder_member_error RemoveFolderMemberError Error occurred while performing remove_folder_member action.
RemoveFolderMemberError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
folder_owner Void 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 Void The target user has access to the shared folder via a group.
team_folder Void This action cannot be performed on a team shared folder.
no_permission Void The current user does not have permission to perform this action.
too_many_files Void This shared folder has too many files for leaving a copy. You can still remove this user without leaving a copy.
relinquish_folder_membership_error RelinquishFolderMembershipError Error occurred while performing relinquish_folder_membership action.
RelinquishFolderMembershipError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
folder_owner Void 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 Void The shared folder is currently mounted. Unmount the shared folder before relinquishing membership.
group_access Void The current user has access to the shared folder via a group. You can't relinquish membership to folders shared via groups.
team_folder Void This action cannot be performed on a team shared folder.
no_permission Void The current user does not have permission to perform this action.
no_explicit_access Void The current user only has inherited access to the shared folder. You can't relinquish inherited membership to folders.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.

/check_remove_member_job_status

Version
Description

Returns the status of an asynchronous job for sharing a folder.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/check_remove_member_job_status
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/check_remove_member_job_status \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"async_job_id\": \"34g93hh34h04y384084\"}"
Parameters
{     "async_job_id": "34g93hh34h04y384084" }
Arguments for methods that poll the status of an asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace.
async_job_id String(min_length=1) Id of the asynchronous job. This is the value of a response returned from the method that launched the job.
Returns
{     ".tag": "complete" }
{     ".tag": "in_progress" }
RemoveMemberJobStatus (union)
The value will be one of the following datatypes:
in_progress Void The asynchronous job is still in progress.
complete MemberAccessLevelResult Removing the folder member has finished. The value is information about whether the member has another form of access.
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.
failed RemoveFolderMemberError
RemoveFolderMemberError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
folder_owner Void 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 Void The target user has access to the shared folder via a group.
team_folder Void This action cannot be performed on a team shared folder.
no_permission Void The current user does not have permission to perform this action.
too_many_files Void This shared folder has too many files for leaving a copy. You can still remove this user without leaving a copy.
Errors
Example: invalid_async_job_id
{     "error_summary": "invalid_async_job_id/...",     "error": {         ".tag": "invalid_async_job_id"     } }
{     "error_summary": "internal_error/...",     "error": {         ".tag": "internal_error"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Error returned by methods for polling the status of asynchronous job. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_async_job_id Void The job ID is invalid.
internal_error Void 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.

/list_file_members

Version
Description

Use to obtain the members who have been invited to a file, both inherited and uninherited members.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_file_members
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_file_members \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"file\": \"id:3kmLmQFnf1AAAAAAAAAAAw\",\"include_inherited\": true,\"limit\": 100}"
Parameters
{     "file": "id:3kmLmQFnf1AAAAAAAAAAAw",     "include_inherited": true,     "limit": 100 }
Arguments for list_file_members.
file String(min_length=1, pattern="((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?") The file for which you want to see members.
actions List of (MemberAction)? The actions for which to return permissions on a member. This field is optional.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from the folder.
include_inherited Boolean Whether to include members who only have access from a parent shared folder. The default for this field is True.
limit UInt32(min=1, max=300) Number of members to return max per query. Defaults to 100 if no limit is specified. The default for this field is 100.
Returns
{     "users": [         {             "access_type": {                 ".tag": "owner"             },             "user": {                 "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                 "email": "bob@example.com",                 "display_name": "Robert Smith",                 "same_team": true,                 "team_member_id": "dbmid:abcd1234"             },             "permissions": [],             "is_inherited": false,             "time_last_seen": "2016-01-20T00:00:00Z",             "platform_type": {                 ".tag": "unknown"             }         }     ],     "groups": [         {             "access_type": {                 ".tag": "editor"             },             "group": {                 "group_name": "Test group",                 "group_id": "g:e2db7665347abcd600000000001a2b3c",                 "group_management_type": {                     ".tag": "user_managed"                 },                 "group_type": {                     ".tag": "user_managed"                 },                 "is_member": false,                 "is_owner": false,                 "same_team": true,                 "member_count": 10             },             "permissions": [],             "is_inherited": false         }     ],     "invitees": [         {             "access_type": {                 ".tag": "viewer"             },             "invitee": {                 ".tag": "email",                 "email": "jessica@example.com"             },             "permissions": [],             "is_inherited": false         }     ] }
Errors
ListFileMembersError (open union)
Error for list_file_members. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_error SharingUserError
SharingUserError (open union)
User account had a problem preventing this action. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.
access_error SharingFileAccessError
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.

/list_file_members/batch

Version
Description

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.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_file_members/batch
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_file_members/batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"files\": [\"id:3kmLmQFnf1AAAAAAAAAAAw\",\"id:VvTaJu2VZzAAAAAAAAAADQ\"],\"limit\": 10}"
Parameters
{     "files": [         "id:3kmLmQFnf1AAAAAAAAAAAw",         "id:VvTaJu2VZzAAAAAAAAAADQ"     ],     "limit": 10 }
Arguments for list_file_members/batch.
files List of (String(min_length=1, pattern="((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?"), max_items=100) Files for which to return members.
limit UInt32(max=20) Number of members to return max per query. Defaults to 10 if no limit is specified. The default for this field is 10.
Returns
This route returns a list. This means the route can accept a homogenous list of the following types:
ListFileMembersBatchResult
Per-file result for list_file_members/batch.
file String(min_length=1, pattern="((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?") This is the input file identifier, whether an ID or a path.
result ListFileMembersIndividualResult The result for this particular file.
ListFileMembersIndividualResult (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
result ListFileMembersCountResult The results of the query for this file if it was successful.
ListFileMembersCountResult
member_count UInt32 The number of members on this file. This does not include inherited members.
access_error SharingFileAccessError The result of the query for this file if it was an error.
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
Errors
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
SharingUserError (open union)
User account had a problem preventing this action. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.

/list_file_members/continue

Version
Description

Once a cursor has been retrieved from list_file_members or list_file_members/batch, use this to paginate through all shared file members.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_file_members/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_file_members/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\"}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
ListFileMembersContinueArg
Arguments for list_file_members/continue.
cursor String The cursor returned by your last call to list_file_members, list_file_members/continue, or list_file_members/batch.
Returns
{     "users": [         {             "access_type": {                 ".tag": "owner"             },             "user": {                 "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                 "email": "bob@example.com",                 "display_name": "Robert Smith",                 "same_team": true,                 "team_member_id": "dbmid:abcd1234"             },             "permissions": [],             "is_inherited": false,             "time_last_seen": "2016-01-20T00:00:00Z",             "platform_type": {                 ".tag": "unknown"             }         }     ],     "groups": [         {             "access_type": {                 ".tag": "editor"             },             "group": {                 "group_name": "Test group",                 "group_id": "g:e2db7665347abcd600000000001a2b3c",                 "group_management_type": {                     ".tag": "user_managed"                 },                 "group_type": {                     ".tag": "user_managed"                 },                 "is_member": false,                 "is_owner": false,                 "same_team": true,                 "member_count": 10             },             "permissions": [],             "is_inherited": false         }     ],     "invitees": [         {             "access_type": {                 ".tag": "viewer"             },             "invitee": {                 ".tag": "email",                 "email": "jessica@example.com"             },             "permissions": [],             "is_inherited": false         }     ] }
Errors
{     "error_summary": "invalid_cursor/...",     "error": {         ".tag": "invalid_cursor"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFileMembersContinueError (open union)
Error for list_file_members/continue. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_error SharingUserError
SharingUserError (open union)
User account had a problem preventing this action. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.
access_error SharingFileAccessError
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
invalid_cursor Void ListFileMembersContinueArg.cursor is invalid.

/list_folder_members

Version
Description

Returns shared folder membership by its folder ID.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_folder_members
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_folder_members \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\",\"actions\": [],\"limit\": 10}"
Parameters
{     "shared_folder_id": "84528192421",     "actions": [],     "limit": 10 }
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID for the shared folder.
actions List of (MemberAction)? This is a list indicating whether each returned member will include a boolean value MemberPermission.allow that describes whether the current user can perform the MemberAction on the member. This field is optional.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from the folder.
limit UInt32(min=1, max=1000) The maximum number of results that include members, groups and invitees to return per request. The default for this field is 1000.
Returns
{     "users": [         {             "access_type": {                 ".tag": "owner"             },             "user": {                 "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                 "email": "bob@example.com",                 "display_name": "Robert Smith",                 "same_team": true,                 "team_member_id": "dbmid:abcd1234"             },             "permissions": [],             "is_inherited": false         }     ],     "groups": [         {             "access_type": {                 ".tag": "editor"             },             "group": {                 "group_name": "Test group",                 "group_id": "g:e2db7665347abcd600000000001a2b3c",                 "group_management_type": {                     ".tag": "user_managed"                 },                 "group_type": {                     ".tag": "user_managed"                 },                 "is_member": false,                 "is_owner": false,                 "same_team": true,                 "member_count": 10             },             "permissions": [],             "is_inherited": false         }     ],     "invitees": [         {             "access_type": {                 ".tag": "viewer"             },             "invitee": {                 ".tag": "email",                 "email": "jessica@example.com"             },             "permissions": [],             "is_inherited": false         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
Errors
{     "error_summary": "invalid_id/...",     "error": {         ".tag": "invalid_id"     } }
{     "error_summary": "not_a_member/...",     "error": {         ".tag": "not_a_member"     } }
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
{     "error_summary": "unmounted/...",     "error": {         ".tag": "unmounted"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }

/list_folder_members/continue

Version
Description

Once a cursor has been retrieved from list_folder_members, use this to paginate through all shared folder members.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_folder_members/continue
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_folder_members/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\"}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
ListFolderMembersContinueArg
cursor String The cursor returned by your last call to list_folder_members or list_folder_members/continue.
Returns
{     "users": [         {             "access_type": {                 ".tag": "owner"             },             "user": {                 "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                 "email": "bob@example.com",                 "display_name": "Robert Smith",                 "same_team": true,                 "team_member_id": "dbmid:abcd1234"             },             "permissions": [],             "is_inherited": false         }     ],     "groups": [         {             "access_type": {                 ".tag": "editor"             },             "group": {                 "group_name": "Test group",                 "group_id": "g:e2db7665347abcd600000000001a2b3c",                 "group_management_type": {                     ".tag": "user_managed"                 },                 "group_type": {                     ".tag": "user_managed"                 },                 "is_member": false,                 "is_owner": false,                 "same_team": true,                 "member_count": 10             },             "permissions": [],             "is_inherited": false         }     ],     "invitees": [         {             "access_type": {                 ".tag": "viewer"             },             "invitee": {                 ".tag": "email",                 "email": "jessica@example.com"             },             "permissions": [],             "is_inherited": false         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
Errors
{     "error_summary": "invalid_cursor/...",     "error": {         ".tag": "invalid_cursor"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFolderMembersContinueError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_cursor Void ListFolderMembersContinueArg.cursor is invalid.

/list_folders

Version
Description

Return the list of all shared folders the current user has access to.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_folders
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_folders \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"limit\": 100,\"actions\": []}"
Parameters
{     "limit": 100,     "actions": [] }
limit UInt32(min=1, max=1000) The maximum number of results to return per request. The default for this field is 1000.
actions List of (FolderAction)? A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's SharedFolderMetadata.permissions field describing the actions the authenticated user can perform on the folder. This field is optional.
FolderAction (open union)
Actions that may be taken on shared folders. The value will be one of the following datatypes. New values may be introduced as our API evolves.
change_options Void Change folder options, such as who can be invited to join the folder.
disable_viewer_info Void Disable viewer information for this folder.
edit_contents Void Change or edit contents of the folder.
enable_viewer_info Void Enable viewer information on the folder.
invite_editor Void Invite a user or group to join the folder with read and write permission.
invite_viewer Void Invite a user or group to join the folder with read permission.
invite_viewer_no_comment Void Invite a user or group to join the folder with read permission but no comment permissions.
relinquish_membership Void Relinquish one's own membership in the folder.
unmount Void Unmount the folder.
unshare Void Stop sharing this folder.
leave_a_copy Void Keep a copy of the contents upon leaving or being kicked from the folder.
share_link deprecated Void Field is deprecated. Use create_link instead.
create_link Void Create a shared link for folder.
set_access_inheritance Void Set whether the folder inherits permissions from its parent.
Returns
{     "entries": [         {             "access_type": {                 ".tag": "owner"             },             "is_inside_team_folder": false,             "is_team_folder": false,             "name": "dir",             "policy": {                 "acl_update_policy": {                     ".tag": "owner"                 },                 "shared_link_policy": {                     ".tag": "anyone"                 },                 "member_policy": {                     ".tag": "anyone"                 },                 "resolved_member_policy": {                     ".tag": "team"                 }             },             "preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",             "shared_folder_id": "84528192421",             "time_invited": "2016-01-20T00:00:00Z",             "path_lower": "/dir",             "link_metadata": {                 "audience_options": [                     {                         ".tag": "public"                     },                     {                         ".tag": "team"                     },                     {                         ".tag": "members"                     }                 ],                 "current_audience": {                     ".tag": "public"                 },                 "link_permissions": [                     {                         "action": {                             ".tag": "change_audience"                         },                         "allow": true                     }                 ],                 "password_protected": false,                 "url": ""             },             "permissions": [],             "access_inheritance": {                 ".tag": "inherit"             }         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
Result for list_folders or list_mountable_folders, depending on which endpoint was requested.
Unmounted shared folders can be identified by the absence of SharedFolderMetadata.path_lower.
entries List of (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 list_folders/continue or list_mountable_folders/continue) to list additional folders. This field is optional.
Errors

No errors.

/list_folders/continue

Version
Description

Once a cursor has been retrieved from list_folders, use this to paginate through all shared folders. The cursor must come from a previous call to list_folders or list_folders/continue.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_folders/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_folders/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\"}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
cursor String The cursor returned by the previous API call specified in the endpoint description.
Returns
{     "entries": [         {             "access_type": {                 ".tag": "owner"             },             "is_inside_team_folder": false,             "is_team_folder": false,             "name": "dir",             "policy": {                 "acl_update_policy": {                     ".tag": "owner"                 },                 "shared_link_policy": {                     ".tag": "anyone"                 },                 "member_policy": {                     ".tag": "anyone"                 },                 "resolved_member_policy": {                     ".tag": "team"                 }             },             "preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",             "shared_folder_id": "84528192421",             "time_invited": "2016-01-20T00:00:00Z",             "path_lower": "/dir",             "link_metadata": {                 "audience_options": [                     {                         ".tag": "public"                     },                     {                         ".tag": "team"                     },                     {                         ".tag": "members"                     }                 ],                 "current_audience": {                     ".tag": "public"                 },                 "link_permissions": [                     {                         "action": {                             ".tag": "change_audience"                         },                         "allow": true                     }                 ],                 "password_protected": false,                 "url": ""             },             "permissions": [],             "access_inheritance": {                 ".tag": "inherit"             }         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
Result for list_folders or list_mountable_folders, depending on which endpoint was requested.
Unmounted shared folders can be identified by the absence of SharedFolderMetadata.path_lower.
entries List of (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 list_folders/continue or list_mountable_folders/continue) to list additional folders. This field is optional.
Errors
{     "error_summary": "invalid_cursor/...",     "error": {         ".tag": "invalid_cursor"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFoldersContinueError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_cursor Void ListFoldersContinueArg.cursor is invalid.

/list_mountable_folders

Version
Description

Return the list of all shared folders the current user can mount or unmount.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_mountable_folders
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_mountable_folders \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"limit\": 100,\"actions\": []}"
Parameters
{     "limit": 100,     "actions": [] }
limit UInt32(min=1, max=1000) The maximum number of results to return per request. The default for this field is 1000.
actions List of (FolderAction)? A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's SharedFolderMetadata.permissions field describing the actions the authenticated user can perform on the folder. This field is optional.
FolderAction (open union)
Actions that may be taken on shared folders. The value will be one of the following datatypes. New values may be introduced as our API evolves.
change_options Void Change folder options, such as who can be invited to join the folder.
disable_viewer_info Void Disable viewer information for this folder.
edit_contents Void Change or edit contents of the folder.
enable_viewer_info Void Enable viewer information on the folder.
invite_editor Void Invite a user or group to join the folder with read and write permission.
invite_viewer Void Invite a user or group to join the folder with read permission.
invite_viewer_no_comment Void Invite a user or group to join the folder with read permission but no comment permissions.
relinquish_membership Void Relinquish one's own membership in the folder.
unmount Void Unmount the folder.
unshare Void Stop sharing this folder.
leave_a_copy Void Keep a copy of the contents upon leaving or being kicked from the folder.
share_link deprecated Void Field is deprecated. Use create_link instead.
create_link Void Create a shared link for folder.
set_access_inheritance Void Set whether the folder inherits permissions from its parent.
Returns
{     "entries": [         {             "access_type": {                 ".tag": "owner"             },             "is_inside_team_folder": false,             "is_team_folder": false,             "name": "dir",             "policy": {                 "acl_update_policy": {                     ".tag": "owner"                 },                 "shared_link_policy": {                     ".tag": "anyone"                 },                 "member_policy": {                     ".tag": "anyone"                 },                 "resolved_member_policy": {                     ".tag": "team"                 }             },             "preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",             "shared_folder_id": "84528192421",             "time_invited": "2016-01-20T00:00:00Z",             "path_lower": "/dir",             "link_metadata": {                 "audience_options": [                     {                         ".tag": "public"                     },                     {                         ".tag": "team"                     },                     {                         ".tag": "members"                     }                 ],                 "current_audience": {                     ".tag": "public"                 },                 "link_permissions": [                     {                         "action": {                             ".tag": "change_audience"                         },                         "allow": true                     }                 ],                 "password_protected": false,                 "url": ""             },             "permissions": [],             "access_inheritance": {                 ".tag": "inherit"             }         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
Result for list_folders or list_mountable_folders, depending on which endpoint was requested.
Unmounted shared folders can be identified by the absence of SharedFolderMetadata.path_lower.
entries List of (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 list_folders/continue or list_mountable_folders/continue) to list additional folders. This field is optional.
Errors

No errors.

/list_mountable_folders/continue

Version
Description

Once a cursor has been retrieved from list_mountable_folders, use this to paginate through all mountable shared folders. The cursor must come from a previous call to list_mountable_folders or list_mountable_folders/continue.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_mountable_folders/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_mountable_folders/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu\"}"
Parameters
{     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
cursor String The cursor returned by the previous API call specified in the endpoint description.
Returns
{     "entries": [         {             "access_type": {                 ".tag": "owner"             },             "is_inside_team_folder": false,             "is_team_folder": false,             "name": "dir",             "policy": {                 "acl_update_policy": {                     ".tag": "owner"                 },                 "shared_link_policy": {                     ".tag": "anyone"                 },                 "member_policy": {                     ".tag": "anyone"                 },                 "resolved_member_policy": {                     ".tag": "team"                 }             },             "preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",             "shared_folder_id": "84528192421",             "time_invited": "2016-01-20T00:00:00Z",             "path_lower": "/dir",             "link_metadata": {                 "audience_options": [                     {                         ".tag": "public"                     },                     {                         ".tag": "team"                     },                     {                         ".tag": "members"                     }                 ],                 "current_audience": {                     ".tag": "public"                 },                 "link_permissions": [                     {                         "action": {                             ".tag": "change_audience"                         },                         "allow": true                     }                 ],                 "password_protected": false,                 "url": ""             },             "permissions": [],             "access_inheritance": {                 ".tag": "inherit"             }         }     ],     "cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu" }
Result for list_folders or list_mountable_folders, depending on which endpoint was requested.
Unmounted shared folders can be identified by the absence of SharedFolderMetadata.path_lower.
entries List of (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 list_folders/continue or list_mountable_folders/continue) to list additional folders. This field is optional.
Errors
{     "error_summary": "invalid_cursor/...",     "error": {         ".tag": "invalid_cursor"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFoldersContinueError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_cursor Void ListFoldersContinueArg.cursor is invalid.

/list_received_files

Version
Description

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.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_received_files
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_received_files \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"limit\": 100,\"actions\": []}"
Parameters
{     "limit": 100,     "actions": [] }
Arguments for list_received_files.
limit UInt32(min=1, max=300) Number of files to return max per query. Defaults to 100 if no limit is specified. The default for this field is 100.
actions List of (FileAction)? A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's SharedFileMetadata.permissions field describing the actions the authenticated user can perform on the file. This field is optional.
Sharing actions that may be taken on files. The value will be one of the following datatypes. New values may be introduced as our API evolves.
disable_viewer_info Void Disable viewer information on the file.
edit_contents Void Change or edit contents of the file.
enable_viewer_info Void Enable viewer information on the file.
invite_viewer Void Add a member with view permissions.
invite_viewer_no_comment Void Add a member with view permissions but no comment permissions.
invite_editor Void Add a member with edit permissions.
unshare Void Stop sharing this file.
relinquish_membership Void Relinquish one's own membership to the file.
share_link deprecated Void Field is deprecated. Use create_view_link and create_edit_link instead.
create_link deprecated Void Field is deprecated. Use create_view_link and create_edit_link instead.
create_view_link Void Create a shared link to a file that only allows users to view the content.
create_edit_link Void Create a shared link to a file that allows users to edit the content.
Returns
{     "entries": [         {             "id": "id:3kmLmQFnf1AAAAAAAAAAAw",             "name": "file.txt",             "policy": {                 "acl_update_policy": {                     ".tag": "owner"                 },                 "shared_link_policy": {                     ".tag": "anyone"                 },                 "member_policy": {                     ".tag": "anyone"                 },                 "resolved_member_policy": {                     ".tag": "team"                 }             },             "preview_url": "https://www.dropbox.com/scl/fi/fir9vjelf",             "access_type": {                 ".tag": "viewer"             },             "owner_display_names": [                 "Jane Doe"             ],             "owner_team": {                 "id": "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I",                 "name": "Acme, Inc."             },             "path_display": "/dir/file.txt",             "path_lower": "/dir/file.txt",             "permissions": [],             "time_invited": "2016-01-20T00:00:00Z"         }     ],     "cursor": "AzJJbGlzdF90eXBdofe9c3RPbGlzdGFyZ3NfYnlfZ2lkMRhcbric7Rdog9cmV2aXNpb24H3Qf6o1fkHxQ" }
Success results for list_received_files.
entries List of (SharedFileMetadata) Information about the files shared with current user.
cursor String? Cursor used to obtain additional shared files. This field is optional.
Errors
Example: email_unverified
{     "error_summary": "email_unverified/...",     "error": {         ".tag": "email_unverified"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
SharingUserError (open union)
User account had a problem preventing this action. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.

/list_received_files/continue

Version
Description

Get more results with a cursor from list_received_files.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/list_received_files/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/sharing/list_received_files/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"AzJJbGlzdF90eXBdofe9c3RPbGlzdGFyZ3NfYnlfZ2lkMRhcbric7Rdog9emfGRlc2MCRWxpbWl0BGRId\"}"
Parameters
{     "cursor": "AzJJbGlzdF90eXBdofe9c3RPbGlzdGFyZ3NfYnlfZ2lkMRhcbric7Rdog9emfGRlc2MCRWxpbWl0BGRId" }
Arguments for list_received_files/continue.
cursor String Cursor in ListFilesResult.cursor.
Returns
{     "entries": [         {             "id": "id:3kmLmQFnf1AAAAAAAAAAAw",             "name": "file.txt",             "policy": {                 "acl_update_policy": {                     ".tag": "owner"                 },                 "shared_link_policy": {                     ".tag": "anyone"                 },                 "member_policy": {                     ".tag": "anyone"                 },                 "resolved_member_policy": {                     ".tag": "team"                 }             },             "preview_url": "https://www.dropbox.com/scl/fi/fir9vjelf",             "access_type": {                 ".tag": "viewer"             },             "owner_display_names": [                 "Jane Doe"             ],             "owner_team": {                 "id": "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I",                 "name": "Acme, Inc."             },             "path_display": "/dir/file.txt",             "path_lower": "/dir/file.txt",             "permissions": [],             "time_invited": "2016-01-20T00:00:00Z"         }     ],     "cursor": "AzJJbGlzdF90eXBdofe9c3RPbGlzdGFyZ3NfYnlfZ2lkMRhcbric7Rdog9cmV2aXNpb24H3Qf6o1fkHxQ" }
Success results for list_received_files.
entries List of (SharedFileMetadata) Information about the files shared with current user.
cursor String? Cursor used to obtain additional shared files. This field is optional.
Errors
{     "error_summary": "invalid_cursor/...",     "error": {         ".tag": "invalid_cursor"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
ListFilesContinueError (open union)
Error results for list_received_files/continue. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_error SharingUserError User account had a problem.
SharingUserError (open union)
User account had a problem preventing this action. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.
invalid_cursor Void ListFilesContinueArg.cursor is invalid.

/mount_folder

Version
Description

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.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/mount_folder
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/mount_folder \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\"}"
Parameters
{     "shared_folder_id": "84528192421" }
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID of the shared folder to mount.
Returns
{     "access_type": {         ".tag": "owner"     },     "is_inside_team_folder": false,     "is_team_folder": false,     "name": "dir",     "policy": {         "acl_update_policy": {             ".tag": "owner"         },         "shared_link_policy": {             ".tag": "anyone"         },         "member_policy": {             ".tag": "anyone"         },         "resolved_member_policy": {             ".tag": "team"         }     },     "preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",     "shared_folder_id": "84528192421",     "time_invited": "2016-01-20T00:00:00Z",     "path_lower": "/dir",     "link_metadata": {         "audience_options": [             {                 ".tag": "public"             },             {                 ".tag": "team"             },             {                 ".tag": "members"             }         ],         "current_audience": {             ".tag": "public"         },         "link_permissions": [             {                 "action": {                     ".tag": "change_audience"                 },                 "allow": true             }         ],         "password_protected": false,         "url": ""     },     "permissions": [],     "access_inheritance": {         ".tag": "inherit"     } }
Errors
Example: inside_shared_folder
{     "error_summary": "inside_shared_folder/...",     "error": {         ".tag": "inside_shared_folder"     } }
{     "error_summary": "already_mounted/...",     "error": {         ".tag": "already_mounted"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "not_mountable/...",     "error": {         ".tag": "not_mountable"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
MountFolderError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
inside_shared_folder Void 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.
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.
already_mounted Void The shared folder is already mounted.
no_permission Void The current user does not have permission to perform this action.
not_mountable Void 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.

/relinquish_file_membership

Version
Description

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.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/relinquish_file_membership
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/relinquish_file_membership \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"file\": \"id:3kmLmQFnf1AAAAAAAAAAAw\"}"
Parameters
{     "file": "id:3kmLmQFnf1AAAAAAAAAAAw" }
RelinquishFileMembershipArg
file String(min_length=1, pattern="((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?") The path or id for the file.
Returns

No return values.

Errors
{     "error_summary": "group_access/...",     "error": {         ".tag": "group_access"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
RelinquishFileMembershipError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
access_error SharingFileAccessError
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
group_access Void 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 Void The current user does not have permission to perform this action.

/relinquish_folder_membership

Version
Description

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.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/relinquish_folder_membership
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/relinquish_folder_membership \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\",\"leave_a_copy\": false}"
Parameters
{     "shared_folder_id": "84528192421",     "leave_a_copy": false }
RelinquishFolderMembershipArg
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID for the shared folder.
leave_a_copy Boolean 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. The default for this field is False.
Returns
{     ".tag": "complete" }
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
LaunchEmptyResult (union)
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. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes:
async_job_id String(min_length=1) 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.
complete Void The job finished synchronously and successfully.
Errors
{     "error_summary": "folder_owner/...",     "error": {         ".tag": "folder_owner"     } }
{     "error_summary": "mounted/...",     "error": {         ".tag": "mounted"     } }
{     "error_summary": "group_access/...",     "error": {         ".tag": "group_access"     } }
{     "error_summary": "team_folder/...",     "error": {         ".tag": "team_folder"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
Example: no_explicit_access
{     "error_summary": "no_explicit_access/...",     "error": {         ".tag": "no_explicit_access"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
RelinquishFolderMembershipError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
folder_owner Void 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 Void The shared folder is currently mounted. Unmount the shared folder before relinquishing membership.
group_access Void The current user has access to the shared folder via a group. You can't relinquish membership to folders shared via groups.
team_folder Void This action cannot be performed on a team shared folder.
no_permission Void The current user does not have permission to perform this action.
no_explicit_access Void The current user only has inherited access to the shared folder. You can't relinquish inherited membership to folders.

/remove_file_member_2

Version
Description

Removes a specified member from the file.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/remove_file_member_2
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/remove_file_member_2 \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"file\": \"id:3kmLmQFnf1AAAAAAAAAAAw\",\"member\": {\".tag\": \"email\",\"email\": \"justin@example.com\"}}"
Parameters
{     "file": "id:3kmLmQFnf1AAAAAAAAAAAw",     "member": {         ".tag": "email",         "email": "justin@example.com"     } }
Arguments for remove_file_member_2.
file String(min_length=1, pattern="((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?") 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.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
Returns
FileMemberRemoveActionResult (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
success MemberAccessLevelResult Member was successfully removed from this file.
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.
member_error FileMemberActionError User was not able to remove this member.
FileMemberActionError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_member Void Specified member was not found.
no_permission Void 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.
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
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.
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.
Errors
RemoveFileMemberError (open union)
Errors for remove_file_member_2. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_error SharingUserError
SharingUserError (open union)
User account had a problem preventing this action. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.
access_error SharingFileAccessError
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
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.
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.

/remove_folder_member

Version
Description

Allows an owner or editor (if the ACL update policy allows) of a shared folder to remove another member.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/remove_folder_member
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/remove_folder_member \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\",\"member\": {\".tag\": \"email\",\"email\": \"justin@example.com\"},\"leave_a_copy\": false}"
Parameters
{     "shared_folder_id": "84528192421",     "member": {         ".tag": "email",         "email": "justin@example.com"     },     "leave_a_copy": false }
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID for the shared folder.
member MemberSelector The member to remove from the folder.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
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.
Returns
{     ".tag": "async_job_id",     "async_job_id": "34g93hh34h04y384084" }
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 LaunchEmptyResult for an example. This datatype comes from an imported namespace originally defined in the async namespace. The value will be one of the following datatypes:
async_job_id String(min_length=1) 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.
Errors
{     "error_summary": "folder_owner/...",     "error": {         ".tag": "folder_owner"     } }
{     "error_summary": "group_access/...",     "error": {         ".tag": "group_access"     } }
{     "error_summary": "team_folder/...",     "error": {         ".tag": "team_folder"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "too_many_files/...",     "error": {         ".tag": "too_many_files"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
RemoveFolderMemberError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
folder_owner Void 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 Void The target user has access to the shared folder via a group.
team_folder Void This action cannot be performed on a team shared folder.
no_permission Void The current user does not have permission to perform this action.
too_many_files Void This shared folder has too many files for leaving a copy. You can still remove this user without leaving a copy.

/set_access_inheritance

Version
Description

Change the inheritance policy of an existing Shared Folder. Only permitted for shared folders in a shared team root.
If a ShareFolderLaunch.async_job_id is returned, you'll need to call check_share_job_status until the action completes to get the metadata for the folder.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/set_access_inheritance
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/set_access_inheritance \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\",\"access_inheritance\": \"inherit\"}"
Parameters
{     "shared_folder_id": "84528192421",     "access_inheritance": "inherit" }
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID for the shared folder.
access_inheritance AccessInheritance The access inheritance settings for the folder. The default for this union is inherit.
AccessInheritance (open union)
Information about the inheritance policy of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
inherit Void The shared folder inherits its members from the parent folder.
no_inherit Void The shared folder does not inherit its members from the parent folder.
Returns
{     ".tag": "complete",     "access_type": {         ".tag": "owner"     },     "is_inside_team_folder": false,     "is_team_folder": false,     "name": "dir",     "policy": {         "acl_update_policy": {             ".tag": "owner"         },         "shared_link_policy": {             ".tag": "anyone"         },         "member_policy": {             ".tag": "anyone"         },         "resolved_member_policy": {             ".tag": "team"         }     },     "preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",     "shared_folder_id": "84528192421",     "time_invited": "2016-01-20T00:00:00Z",     "path_lower": "/dir",     "link_metadata": {         "audience_options": [             {                 ".tag": "public"             },             {                 ".tag": "team"             },             {                 ".tag": "members"             }         ],         "current_audience": {             ".tag": "public"         },         "link_permissions": [             {                 "action": {                     ".tag": "change_audience"                 },                 "allow": true             }         ],         "password_protected": false,         "url": ""     },     "permissions": [],     "access_inheritance": {         ".tag": "inherit"     } }
Errors
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
SetAccessInheritanceError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void The current user does not have permission to perform this action.

/transfer_folder

Version
Description

Transfer ownership of a shared folder to a member of the shared folder.
User must have AccessLevel.owner access to the shared folder to perform a transfer.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/transfer_folder
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/transfer_folder \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\",\"to_dropbox_id\": \"dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q\"}"
Parameters
{     "shared_folder_id": "84528192421",     "to_dropbox_id": "dbid:AAEufNrMPSPe0dMQijRP0N_aZtBJRm26W4Q" }
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID for the shared folder.
to_dropbox_id String(min_length=1) A account or team member ID to transfer ownership to.
Returns

No return values.

Errors
Example: invalid_dropbox_id
{     "error_summary": "invalid_dropbox_id/...",     "error": {         ".tag": "invalid_dropbox_id"     } }
Example: new_owner_not_a_member
{     "error_summary": "new_owner_not_a_member/...",     "error": {         ".tag": "new_owner_not_a_member"     } }
Example: new_owner_unmounted
{     "error_summary": "new_owner_unmounted/...",     "error": {         ".tag": "new_owner_unmounted"     } }
Example: new_owner_email_unverified
{     "error_summary": "new_owner_email_unverified/...",     "error": {         ".tag": "new_owner_email_unverified"     } }
{     "error_summary": "team_folder/...",     "error": {         ".tag": "team_folder"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
TransferFolderError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_dropbox_id Void TransferFolderArg.to_dropbox_id is invalid.
new_owner_not_a_member Void The new designated owner is not currently a member of the shared folder.
new_owner_unmounted Void The new designated owner has not added the folder to their Dropbox.
new_owner_email_unverified Void 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 here.
team_folder Void This action cannot be performed on a team shared folder.
no_permission Void The current user does not have permission to perform this action.

/unmount_folder

Version
Description

The current user unmounts the designated folder. They can re-mount the folder at a later time using mount_folder.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/unmount_folder
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/unmount_folder \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\"}"
Parameters
{     "shared_folder_id": "84528192421" }
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID for the shared folder.
Returns

No return values.

Errors
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "not_unmountable/...",     "error": {         ".tag": "not_unmountable"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UnmountFolderError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void The current user does not have permission to perform this action.
not_unmountable Void 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.

/update_file_member

Version
Description

Changes a member's access on a shared file.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/update_file_member
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/update_file_member \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"file\": \"id:3kmLmQFnf1AAAAAAAAAAAw\",\"member\": {\".tag\": \"email\",\"email\": \"justin@example.com\"},\"access_level\": \"viewer\"}"
Parameters
{     "file": "id:3kmLmQFnf1AAAAAAAAAAAw",     "member": {         ".tag": "email",         "email": "justin@example.com"     },     "access_level": "viewer" }
Arguments for update_file_member.
file String(min_length=1, pattern="((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?") File for which we are changing a member's access.
member MemberSelector The member whose access we are changing.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
access_level AccessLevel The new access level for the member.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
Returns
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.
Errors
{     "error_summary": "invalid_member/...",     "error": {         ".tag": "invalid_member"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
FileMemberActionError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_member Void Specified member was not found.
no_permission Void 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.
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
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.
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.

/update_folder_member

Version
Description

Allows an owner or editor of a shared folder to update another member's permissions.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/update_folder_member
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/update_folder_member \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\",\"member\": {\".tag\": \"email\",\"email\": \"justin@example.com\"},\"access_level\": \"editor\"}"
Parameters
{     "shared_folder_id": "84528192421",     "member": {         ".tag": "email",         "email": "justin@example.com"     },     "access_level": "editor" }
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The ID for the shared folder.
member MemberSelector The member of the shared folder to update. Only the MemberSelector.dropbox_id may be set at this time.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
access_level AccessLevel The new access level for member. AccessLevel.owner is disallowed.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
Returns
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.
Errors
Example: insufficient_plan
{     "error_summary": "insufficient_plan/...",     "error": {         ".tag": "insufficient_plan"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UpdateFolderMemberError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
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.
AddFolderMemberError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.
banned_member Void The current user has been banned.
bad_member AddMemberSelectorError AddFolderMemberArg.members contains a bad invitation recipient.
AddMemberSelectorError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
automatic_group Void Automatically created groups can only be added to team folders.
invalid_dropbox_id String(min_length=1) The value is the ID that could not be identified.
invalid_email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") The value is the e-email address that is malformed.
unverified_dropbox_id String(min_length=1) 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 Void At least one of the specified groups in AddFolderMemberArg.members is deleted.
group_not_on_team Void Sharing to a group that is not on the current user's team.
cant_share_outside_team Void 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 Void The current user has hit the limit of invites they can send per day. Try again in 24 hours.
too_many_invitees Void The current user is trying to share with too many people at once.
insufficient_plan Void 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 Void This action cannot be performed on a team shared folder.
no_permission Void The current user does not have permission to perform this action.
invalid_shared_folder deprecated Void Field is deprecated. Invalid shared folder error will be returned as an access_error.
insufficient_plan Void 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 Void The current user does not have permission to perform this action.

/update_folder_policy

Version
Description

Update the sharing policies for a shared folder.
User must have AccessLevel.owner access to the shared folder to update its policies.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/update_folder_policy
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/update_folder_policy \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"shared_folder_id\": \"84528192421\",\"member_policy\": \"team\",\"acl_update_policy\": \"owner\",\"shared_link_policy\": \"members\"}"
Parameters
{     "shared_folder_id": "84528192421",     "member_policy": "team",     "acl_update_policy": "owner",     "shared_link_policy": "members" }
If any of the policies are unset, then they retain their current setting.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") 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. This field is optional.
MemberPolicy (open union)
Policy governing who can be a member of a shared folder. Only applicable to folders owned by a user on a team. The value will be one of the following datatypes. New values may be introduced as our API evolves.
team Void Only a teammate can become a member.
anyone Void Anyone can become a member.
acl_update_policy AclUpdatePolicy? Who can add and remove members of this shared folder. This field is optional.
AclUpdatePolicy (open union)
Who can change a shared folder's access control list (ACL). In other words, who can add, remove, or change the privileges of members. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void Only the owner can update the ACL.
editors Void Any editor can update the ACL. This may be further restricted to editors on the same team.
viewer_info_policy ViewerInfoPolicy? Who can enable/disable viewer info for this shared folder. This field is optional.
ViewerInfoPolicy (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
enabled Void Viewer information is available on this file.
disabled Void Viewer information is disabled on this file.
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 SharedLinkPolicy.members. This field is optional.
link_settings LinkSettings? Settings on the link for this folder. This field is optional.
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'. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
audience LinkAudience? The type of audience on the link for this file. This field is optional.
LinkAudience (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
public Void Link is accessible by anyone.
team Void Link is accessible only by team members.
no_one Void 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 deprecated Void Field is deprecated. Use `require_password` instead. A link-specific password is required to access the link. Login is not required.
members deprecated Void Field is deprecated. Link is accessible only by members of the content.
expiry LinkExpiry? An expiry timestamp to set on a link. This field is optional.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
remove_expiry Void Remove the currently set expiry for the link.
set_expiry Timestamp(format="%Y-%m-%dT%H:%M:%SZ") Set a new expiry or change an existing expiry.
password LinkPassword? The password for the link. This field is optional.
LinkPassword (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
remove_password Void Remove the currently set password for the link.
set_password String Set a new password or change an existing password.
actions List of (FolderAction)? A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's SharedFolderMetadata.permissions field describing the actions the authenticated user can perform on the folder. This field is optional.
FolderAction (open union)
Actions that may be taken on shared folders. The value will be one of the following datatypes. New values may be introduced as our API evolves.
change_options Void Change folder options, such as who can be invited to join the folder.
disable_viewer_info Void Disable viewer information for this folder.
edit_contents Void Change or edit contents of the folder.
enable_viewer_info Void Enable viewer information on the folder.
invite_editor Void Invite a user or group to join the folder with read and write permission.
invite_viewer Void Invite a user or group to join the folder with read permission.
invite_viewer_no_comment Void Invite a user or group to join the folder with read permission but no comment permissions.
relinquish_membership Void Relinquish one's own membership in the folder.
unmount Void Unmount the folder.
unshare Void Stop sharing this folder.
leave_a_copy Void Keep a copy of the contents upon leaving or being kicked from the folder.
share_link deprecated Void Field is deprecated. Use create_link instead.
create_link Void Create a shared link for folder.
set_access_inheritance Void Set whether the folder inherits permissions from its parent.
Returns
{     "access_type": {         ".tag": "owner"     },     "is_inside_team_folder": false,     "is_team_folder": false,     "name": "dir",     "policy": {         "acl_update_policy": {             ".tag": "owner"         },         "shared_link_policy": {             ".tag": "anyone"         },         "member_policy": {             ".tag": "anyone"         },         "resolved_member_policy": {             ".tag": "team"         }     },     "preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",     "shared_folder_id": "84528192421",     "time_invited": "2016-01-20T00:00:00Z",     "path_lower": "/dir",     "link_metadata": {         "audience_options": [             {                 ".tag": "public"             },             {                 ".tag": "team"             },             {                 ".tag": "members"             }         ],         "current_audience": {             ".tag": "public"         },         "link_permissions": [             {                 "action": {                     ".tag": "change_audience"                 },                 "allow": true             }         ],         "password_protected": false,         "url": ""     },     "permissions": [],     "access_inheritance": {         ".tag": "inherit"     } }
Errors
{     "error_summary": "not_on_team/...",     "error": {         ".tag": "not_on_team"     } }
Example: team_policy_disallows_member_policy
{     "error_summary": "team_policy_disallows_member_policy/...",     "error": {         ".tag": "team_policy_disallows_member_policy"     } }
Example: disallowed_shared_link_policy
{     "error_summary": "disallowed_shared_link_policy/...",     "error": {         ".tag": "disallowed_shared_link_policy"     } }
{     "error_summary": "no_permission/...",     "error": {         ".tag": "no_permission"     } }
{     "error_summary": "team_folder/...",     "error": {         ".tag": "team_folder"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UpdateFolderPolicyError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_on_team Void UpdateFolderPolicyArg.member_policy was set even though user is not on a team.
team_policy_disallows_member_policy Void Team policy is more restrictive than ShareFolderArg.member_policy.
disallowed_shared_link_policy Void The current account is not allowed to select the specified ShareFolderArg.shared_link_policy.
no_permission Void The current user does not have permission to perform this action.
team_folder Void This action cannot be performed on a team shared folder.

users

This namespace contains endpoints and data types for user management.

/features/get_values

Version
Description

Get a list of feature values that may be configured for the current account.

URL Structure
https://api.dropboxapi.com/2/users/features/get_values
Authentication
User Authentication
Endpoint format
RPC
Required Scope
account_info.read
Example
curl -X POST https://api.dropboxapi.com/2/users/features/get_values \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"features\": [{\".tag\": \"paper_as_files\"},{\".tag\": \"file_locking\"}]}"
Parameters
{     "features": [         {             ".tag": "paper_as_files"         },         {             ".tag": "file_locking"         }     ] }
UserFeaturesGetValuesBatchArg
features List of (UserFeature) A list of features in UserFeature. If the list is empty, this route will return UserFeaturesGetValuesBatchError.
A set of features that a Dropbox User account may have configured. The value will be one of the following datatypes. New values may be introduced as our API evolves.
paper_as_files Void This feature contains information about how the user's Paper files are stored.
file_locking Void This feature allows users to lock files in order to restrict other users from editing them.
Returns
{     "values": [         {             ".tag": "paper_as_files",             "paper_as_files": {                 ".tag": "enabled",                 "enabled": true             }         }     ] }
UserFeaturesGetValuesBatchResult
values List of (UserFeatureValue)
UserFeatureValue (open union)
Values that correspond to entries in UserFeature. The value will be one of the following datatypes. New values may be introduced as our API evolves.
paper_as_files PaperAsFilesValue
PaperAsFilesValue (open union)
The value for UserFeature.paper_as_files. The value will be one of the following datatypes. New values may be introduced as our API evolves.
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.
file_locking FileLockingValue
FileLockingValue (open union)
The value for UserFeature.file_locking. The value will be one of the following datatypes. New values may be introduced as our API evolves.
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.
Errors
Example: empty_features_list
{     "error_summary": "empty_features_list/...",     "error": {         ".tag": "empty_features_list"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UserFeaturesGetValuesBatchError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
empty_features_list Void At least one UserFeature must be included in the UserFeaturesGetValuesBatchArg.features list.

/get_account

Version
Description

Get information about a user's account.

URL Structure
https://api.dropboxapi.com/2/users/get_account
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/users/get_account \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"account_id\": \"dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc\"}"
Parameters
{     "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" }
account_id String(min_length=40, max_length=40) A user's account identifier.
Returns
{     "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",     "name": {         "given_name": "Franz",         "surname": "Ferdinand",         "familiar_name": "Franz",         "display_name": "Franz Ferdinand (Personal)",         "abbreviated_name": "FF"     },     "email": "franz@dropbox.com",     "email_verified": true,     "disabled": false,     "is_teammate": false,     "profile_photo_url": "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102\u0026size=128x128" }
{     "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",     "name": {         "given_name": "Franz",         "surname": "Ferdinand",         "familiar_name": "Franz",         "display_name": "Franz Ferdinand (Personal)",         "abbreviated_name": "FF"     },     "email": "franz@dropbox.com",     "email_verified": true,     "disabled": false,     "is_teammate": true,     "profile_photo_url": "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102\u0026size=128x128",     "team_member_id": "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" }
Basic information about any account.
account_id String(min_length=40, max_length=40) The user's unique Dropbox ID.
name Name Details of a user's 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 given_name, but elsewhere, it could be any combination of a person's given_name and 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.
email String The user's email address. Do not rely on this without checking the 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.
disabled Boolean Whether the user has been disabled.
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 true.
profile_photo_url String? URL for the photo representing the user, if one is set. This field is optional.
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 is_teammate is true. This field is optional.
Errors
{     "error_summary": "no_account/...",     "error": {         ".tag": "no_account"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
GetAccountError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_account Void The specified GetAccountArg.account_id does not exist.

/get_account_batch

Version
Description

Get information about multiple user accounts. At most 300 accounts may be queried per request.

URL Structure
https://api.dropboxapi.com/2/users/get_account_batch
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/users/get_account_batch \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"account_ids\": [\"dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc\",\"dbid:AAH1Vcz-DVoRDeixtr_OA8oUGgiqhs4XPOQ\"]}"
Parameters
{     "account_ids": [         "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",         "dbid:AAH1Vcz-DVoRDeixtr_OA8oUGgiqhs4XPOQ"     ] }
account_ids List of (String(min_length=40, max_length=40), min_items=1) List of user account identifiers. Should not contain any duplicate account IDs.
Returns
This route returns a list. This means the route can accept a homogenous list of the following types:
Basic information about any account.
account_id String(min_length=40, max_length=40) The user's unique Dropbox ID.
name Name Details of a user's 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 given_name, but elsewhere, it could be any combination of a person's given_name and 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.
email String The user's email address. Do not rely on this without checking the 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.
disabled Boolean Whether the user has been disabled.
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 true.
profile_photo_url String? URL for the photo representing the user, if one is set. This field is optional.
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 is_teammate is true. This field is optional.
Errors
{     "error_summary": "no_account/...",     "error": {         ".tag": "no_account",         "no_account": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
GetAccountBatchError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_account String(min_length=40, max_length=40) The value is an account ID specified in GetAccountBatchArg.account_ids that does not exist.

/get_current_account

Version
Description

Get information about the current user's account.

URL Structure
https://api.dropboxapi.com/2/users/get_current_account
Authentication
User Authentication, Dropbox-API-Select-Admin (Whole Team)
Endpoint format
RPC
Required Scope
account_info.read
Example
curl -X POST https://api.dropboxapi.com/2/users/get_current_account \     --header "Authorization: Bearer                            "
Parameters

No parameters.

Returns
{     "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",     "name": {         "given_name": "Franz",         "surname": "Ferdinand",         "familiar_name": "Franz",         "display_name": "Franz Ferdinand (Personal)",         "abbreviated_name": "FF"     },     "email": "franz@dropbox.com",     "email_verified": true,     "disabled": false,     "locale": "en",     "referral_link": "https://db.tt/ZITNuhtI",     "is_paired": true,     "account_type": {         ".tag": "business"     },     "root_info": {         ".tag": "user",         "root_namespace_id": "3235641",         "home_namespace_id": "3235641"     },     "country": "US",     "team": {         "id": "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I",         "name": "Acme, Inc.",         "sharing_policies": {             "shared_folder_member_policy": {                 ".tag": "team"             },             "shared_folder_join_policy": {                 ".tag": "from_anyone"             },             "shared_link_create_policy": {                 ".tag": "team_only"             }         },         "office_addin_policy": {             ".tag": "disabled"         }     },     "team_member_id": "dbmid:AAHhy7WsR0x-u4ZCqiDl5Fz5zvuL3kmspwU" }
Example: A personal account that is not paired with a team.
{     "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",     "name": {         "given_name": "Franz",         "surname": "Ferdinand",         "familiar_name": "Franz",         "display_name": "Franz Ferdinand (Personal)",         "abbreviated_name": "FF"     },     "email": "franz@gmail.com",     "email_verified": false,     "disabled": false,     "locale": "en",     "referral_link": "https://db.tt/ZITNuhtI",     "is_paired": false,     "account_type": {         ".tag": "basic"     },     "root_info": {         ".tag": "user",         "root_namespace_id": "3235641",         "home_namespace_id": "3235641"     },     "profile_photo_url": "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102\u0026size=128x128",     "country": "US" }
Detailed information about the current user's account.
account_id String(min_length=40, max_length=40) The user's unique Dropbox ID.
name Name Details of a user's 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 given_name, but elsewhere, it could be any combination of a person's given_name and 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.
email String The user's email address. Do not rely on this without checking the 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.
disabled Boolean Whether the user has been disabled.
locale String(min_length=2) The language that the user specified. Locale tags will be IETF language tags.
is_paired Boolean Whether the user has a personal and work account. If the current account is personal, then team will always be None, but is_paired will indicate if a work account is linked.
account_type AccountType What type of account this user has.
What type of account this user has. This datatype comes from an imported namespace originally defined in the users_common namespace. The value will be one of the following datatypes:
basic Void The basic account type.
pro Void The Dropbox Pro account type.
business Void The Dropbox Business account type.
root_info RootInfo The root info for this account.
RootInfo (datatype with subtypes)
Information about current user's root. This datatype comes from an imported namespace originally defined in the common namespace. This datatype will be one of the following subtypes:
team TeamRootInfo
Root info when user is member of a team with a separate root namespace ID. This datatype comes from an imported namespace originally defined in the common namespace.
root_namespace_id String(pattern="[-_0-9a-zA-Z:]+") 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 RootInfo.home_namespace_id.
home_namespace_id String(pattern="[-_0-9a-zA-Z:]+") The namespace ID for user's home namespace.
home_path String The path for user's home directory under the shared team root.
user UserRootInfo
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. This datatype comes from an imported namespace originally defined in the common namespace.
root_namespace_id String(pattern="[-_0-9a-zA-Z:]+") 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 RootInfo.home_namespace_id.
home_namespace_id String(pattern="[-_0-9a-zA-Z:]+") The namespace ID for user's home namespace.
profile_photo_url String? URL for the photo representing the user, if one is set. This field is optional.
country String(min_length=2, max_length=2)? The user's two-letter country code, if available. Country codes are based on ISO 3166-1. This field is optional.
team FullTeam? If this account is a member of a team, information about that team. This field is optional.
Detailed information about a team.
id String The team's unique ID.
name String The name of the team.
sharing_policies TeamSharingPolicies Team policies governing sharing.
Policies governing sharing within and outside of the team. This datatype comes from an imported namespace originally defined in the team_policies namespace.
office_addin_policy OfficeAddInPolicy Team policy governing the use of the Office Add-In.
OfficeAddInPolicy (open union)
This datatype comes from an imported namespace originally defined in the team_policies namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
disabled Void Office Add-In is disabled.
enabled Void Office Add-In is enabled.
team_member_id String? This account's unique team member id. This field will only be present if team is present. This field is optional.
Errors

No errors.

/get_space_usage

Version
Description

Get the space usage information for the current user's account.

URL Structure
https://api.dropboxapi.com/2/users/get_space_usage
Authentication
User Authentication
Endpoint format
RPC
Required Scope
account_info.read
Example
curl -X POST https://api.dropboxapi.com/2/users/get_space_usage \     --header "Authorization: Bearer                            "
Parameters

No parameters.

Returns
{     "used": 314159265,     "allocation": {         ".tag": "individual",         "allocated": 10000000000     } }
Information about a user's space usage and quota.
used UInt64 The user's total space usage (bytes).
allocation SpaceAllocation The user's space allocation.
SpaceAllocation (open union)
Space is allocated differently based on the type of account. The value will be one of the following datatypes. New values may be introduced as our API evolves.
individual IndividualSpaceAllocation The user's space allocation applies only to their individual account.
IndividualSpaceAllocation
allocated UInt64 The total space allocated to the user's account (bytes).
team TeamSpaceAllocation The user shares space with other members of their team.
used UInt64 The total space currently used by the user's team (bytes).
allocated UInt64 The total space allocated to the user's team (bytes).
user_within_team_space_allocated UInt64 The total space allocated to the user within its team allocated space (0 means that no restriction is imposed on the user's quota within its team).
user_within_team_space_limit_type MemberSpaceLimitType The type of the space limit imposed on the team member (off, alert_only, stop_sync).
MemberSpaceLimitType (open union)
The type of the space limit imposed on a team member. This datatype comes from an imported namespace originally defined in the team_common namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
off Void The team member does not have imposed space limit.
alert_only Void The team member has soft imposed space limit - the limit is used for display and for notifications.
stop_sync Void The team member has hard imposed space limit - Dropbox file sync will stop after the limit is reached.
user_within_team_space_used_cached UInt64 An accurate cached calculation of a team member's total space usage (bytes).
Errors

No errors.

deprecated

All deprecated endpoints, across namespaces

/alpha/upload

Version
PREVIEW - may change or disappear without notice
Description

Create a new file with the contents provided in the request. Note that this endpoint is part of the properties API alpha and is slightly different from upload.
Do not use this to upload a file larger than 150 MB. Instead, create an upload session with upload_session/start.

URL Structure
https://content.dropboxapi.com/2/files/alpha/upload
Authentication
User Authentication
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://content.dropboxapi.com/2/files/alpha/upload \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"path\": \"/Homework/math/Matrices.txt\",\"mode\": \"add\",\"autorename\": true,\"mute\": false,\"strict_conflict\": false}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
{     "path": "/Homework/math/Matrices.txt",     "mode": "add",     "autorename": true,     "mute": false,     "strict_conflict": false }
path String(pattern="(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)") Path in the user's Dropbox to save the file.
mode WriteMode Selects what to do if the file already exists. The default for this union is add.
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. The value will be one of the following datatypes:
add Void 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, "document.txt" might become "document (2).txt".
overwrite Void Always overwrite the existing file. The autorename strategy is the same as it is for add.
update String(min_length=9, pattern="[0-9a-f]+") Overwrite if the given "rev" matches the existing file's "rev". The supplied value should be the latest known "rev" of the file, for example, from FileMetadata, from when the file was last downloaded by the app. This will cause the file on the Dropbox servers to be overwritten if the given "rev" matches the existing file's current "rev" on the Dropbox servers. The autorename strategy is to append the string "conflicted copy" to the file name. For example, "document.txt" might become "document (conflicted copy).txt" or "document (Panda's conflicted copy).txt".
autorename Boolean If there's a conflict, as determined by mode, have the Dropbox server try to autorename the file to avoid conflict. The default for this field is False.
client_modified Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? The value to store as the client_modified timestamp. Dropbox automatically records the time at which the file was written to the Dropbox servers. It can also record an additional timestamp, provided by Dropbox desktop clients, mobile clients, and API apps of when the file was actually created or modified. This field is optional.
mute Boolean Normally, users are made aware of any file modifications in their Dropbox account via notifications in the client software. If true, this tells the clients that this modification shouldn't result in a user notification. The default for this field is False.
property_groups List of (PropertyGroup)? List of custom properties to add to file. This field is optional.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate. This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
strict_conflict Boolean Be more strict about how each WriteMode detects conflict. For example, always return a conflict error when mode = WriteMode.update and the given "rev" doesn't match the existing file's "rev", even if the existing file has been deleted. This also forces a conflict even when the target path refers to a file with identical contents. The default for this field is False.
Returns
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ],     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",     "file_lock_info": {         "is_lockholder": true,         "lockholder_name": "Imaginary User",         "created": "2015-05-12T15:50:38Z"     } }
Example: search_file_metadata
{     "name": "Prime_Numbers.txt",     "id": "id:a4ayc_80_OEAAAAAAAAAXw",     "client_modified": "2015-05-12T15:50:38Z",     "server_modified": "2015-05-12T15:50:38Z",     "rev": "a1c10ce0dd78",     "size": 7212,     "path_lower": "/homework/math/prime_numbers.txt",     "path_display": "/Homework/math/Prime_Numbers.txt",     "sharing_info": {         "read_only": true,         "parent_shared_folder_id": "84528192421",         "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"     },     "is_downloadable": true,     "has_explicit_shared_members": false,     "content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }
Errors
{     "error_summary": "properties_error/does_not_fit_template/...",     "error": {         ".tag": "properties_error",         "properties_error": {             ".tag": "does_not_fit_template"         }     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
UploadErrorWithProperties (union)
The value will be one of the following datatypes:
path UploadWriteFailed Unable to save the uploaded contents to a file.
reason WriteError The reason why the file couldn't be saved.
The value will be one of the following datatypes. New values may be introduced as our API evolves.
malformed_path String? The given path does not satisfy the required path format. Please refer to the Path formats documentation for more information. This field is optional.
conflict WriteConflictError Couldn't write to the target path because there was something in the way.
WriteConflictError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
file Void There's a file in the way.
folder Void There's a folder in the way.
file_ancestor Void There's a file at an ancestor path, so we couldn't create the required parent folders.
no_write_permission Void The user doesn't have permissions to write to the target location.
insufficient_space Void The user doesn't have enough available space (bytes) to write more data.
disallowed_name Void Dropbox will not save the file or folder because of its name.
team_folder Void This endpoint cannot move or delete team folders.
operation_suppressed Void This file operation is not allowed at this path.
too_many_write_operations Void There are too many write operations in user's Dropbox. Please retry this request.
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 upload_session/finish.
properties_error InvalidPropertyGroupError The supplied property group is invalid. The file has uploaded without property groups.
InvalidPropertyGroupError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.

/properties/add

Version
Description

No description

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/properties/add
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/files/properties/add \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/my_awesome/word.docx\",\"property_groups\": [{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\",\"fields\": [{\"name\": \"Security Policy\",\"value\": \"Confidential\"}]}]}"
Parameters
{     "path": "/my_awesome/word.docx",     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ] }
This datatype comes from an imported namespace originally defined in the file_properties namespace.
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file or folder.
property_groups List of (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.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate. This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: unsupported_folder
{     "error_summary": "unsupported_folder/...",     "error": {         ".tag": "unsupported_folder"     } }
Example: property_field_too_large
{     "error_summary": "property_field_too_large/...",     "error": {         ".tag": "property_field_too_large"     } }
Example: does_not_fit_template
{     "error_summary": "does_not_fit_template/...",     "error": {         ".tag": "does_not_fit_template"     } }
Example: duplicate_property_groups
{     "error_summary": "duplicate_property_groups/...",     "error": {         ".tag": "duplicate_property_groups"     } }
Example: property_group_already_exists
{     "error_summary": "property_group_already_exists/...",     "error": {         ".tag": "property_group_already_exists"     } }
AddPropertiesError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.
property_group_already_exists Void A property group associated with this template and file already exists.

/properties/overwrite

Version
Description

No description

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/properties/overwrite
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/files/properties/overwrite \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/my_awesome/word.docx\",\"property_groups\": [{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\",\"fields\": [{\"name\": \"Security Policy\",\"value\": \"Confidential\"}]}]}"
Parameters
{     "path": "/my_awesome/word.docx",     "property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ]         }     ] }
OverwritePropertyGroupArg
This datatype comes from an imported namespace originally defined in the file_properties namespace.
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file or folder.
property_groups List of (PropertyGroup, min_items=1) The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same template.
A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate. This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for the associated template.
fields List of (PropertyField) The actual properties associated with the template. There can be up to 32 property types per template.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: unsupported_folder
{     "error_summary": "unsupported_folder/...",     "error": {         ".tag": "unsupported_folder"     } }
Example: property_field_too_large
{     "error_summary": "property_field_too_large/...",     "error": {         ".tag": "property_field_too_large"     } }
Example: does_not_fit_template
{     "error_summary": "does_not_fit_template/...",     "error": {         ".tag": "does_not_fit_template"     } }
Example: duplicate_property_groups
{     "error_summary": "duplicate_property_groups/...",     "error": {         ".tag": "duplicate_property_groups"     } }
InvalidPropertyGroupError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.

/properties/remove

Version
Description

No description

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/properties/remove
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/files/properties/remove \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/my_awesome/word.docx\",\"property_template_ids\": [\"ptid:1a5n2i6d3OYEAAAAAAAAAYa\"]}"
Parameters
{     "path": "/my_awesome/word.docx",     "property_template_ids": [         "ptid:1a5n2i6d3OYEAAAAAAAAAYa"     ] }
This datatype comes from an imported namespace originally defined in the file_properties namespace.
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file or folder.
property_template_ids List of (String(min_length=1, pattern="(/|ptid:).*")) A list of identifiers for a template created by templates/add_for_user or templates/add_for_team.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: unsupported_folder
{     "error_summary": "unsupported_folder/...",     "error": {         ".tag": "unsupported_folder"     } }
RemovePropertiesError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_group_lookup LookUpPropertiesError
LookUpPropertiesError (open union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
property_group_not_found Void No property group was found.

/properties/template/get

Version
Description

No description

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/properties/template/get
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/files/properties/template/get \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\"}"
Parameters
{     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa" }
This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") An identifier for template added by route See templates/add_for_user or templates/add_for_team.
Returns
{     "name": "Security",     "description": "These properties describe how confidential this file or folder is.",     "fields": [         {             "name": "Security Policy",             "description": "This is the security policy of the file or folder described.\nPolicies can be Confidential, Public or Internal.",             "type": {                 ".tag": "string"             }         }     ] }
This datatype comes from an imported namespace originally defined in the file_properties namespace.
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 of (PropertyFieldTemplate) Definitions of the property fields associated with this template. There can be up to 32 properties in a single template.
Defines how a single property field may be structured. Used exclusively by PropertyGroupTemplate. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
PropertyType (open union)
Data type of the given property field added. This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
string Void The associated property field will be of type string. Unicode is supported.
Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
TemplateError (open union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.

/properties/template/list

Version
Description

No description

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/properties/template/list
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/files/properties/template/list \     --header "Authorization: Bearer                            "
Parameters

No parameters.

Returns
{     "template_ids": [         "ptid:1a5n2i6d3OYEAAAAAAAAAYa"     ] }
This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_ids List of (String(min_length=1, pattern="(/|ptid:).*")) List of identifiers for templates added by See templates/add_for_user or templates/add_for_team.
Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
TemplateError (open union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.

/properties/update

Version
Description

No description

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/files/properties/update
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.write
Example
curl -X POST https://api.dropboxapi.com/2/files/properties/update \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"path\": \"/my_awesome/word.docx\",\"update_property_groups\": [{\"template_id\": \"ptid:1a5n2i6d3OYEAAAAAAAAAYa\",\"add_or_update_fields\": [{\"name\": \"Security Policy\",\"value\": \"Confidential\"}],\"remove_fields\": []}]}"
Parameters
{     "path": "/my_awesome/word.docx",     "update_property_groups": [         {             "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa",             "add_or_update_fields": [                 {                     "name": "Security Policy",                     "value": "Confidential"                 }             ],             "remove_fields": []         }     ] }
This datatype comes from an imported namespace originally defined in the file_properties namespace.
path String(pattern="/(.|[\r\n])*|id:.*|(ns:[0-9]+(/.*)?)") A unique identifier for the file or folder.
update_property_groups List of (PropertyGroupUpdate) The property groups "delta" updates to apply.
This datatype comes from an imported namespace originally defined in the file_properties namespace.
template_id String(min_length=1, pattern="(/|ptid:).*") A unique identifier for a property template.
add_or_update_fields List of (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. This field is optional.
Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup. This datatype comes from an imported namespace originally defined in the file_properties namespace.
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.
remove_fields List of (String)? Property fields to remove (by name), provided they exist. This field is optional.
Returns

No return values.

Errors
Example: restricted_content
{     "error_summary": "restricted_content/...",     "error": {         ".tag": "restricted_content"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: unsupported_folder
{     "error_summary": "unsupported_folder/...",     "error": {         ".tag": "unsupported_folder"     } }
Example: property_field_too_large
{     "error_summary": "property_field_too_large/...",     "error": {         ".tag": "property_field_too_large"     } }
Example: does_not_fit_template
{     "error_summary": "does_not_fit_template/...",     "error": {         ".tag": "does_not_fit_template"     } }
Example: duplicate_property_groups
{     "error_summary": "duplicate_property_groups/...",     "error": {         ".tag": "duplicate_property_groups"     } }
UpdatePropertiesError (union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes:
template_not_found String(min_length=1, pattern="(/|ptid:).*") Template does not exist for the given identifier.
restricted_content Void You do not have permission to modify this template.
path LookupError
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
not_found Void There is nothing at the given path.
not_file Void We were expecting a file, but the given path refers to something that isn't a file.
not_folder Void We were expecting a folder, but the given path refers to something that isn't a folder.
restricted_content Void The file cannot be transferred because the content is restricted. For example, sometimes there are legal restrictions due to copyright claims.
unsupported_folder Void This folder cannot be tagged. Tagging folders is not supported for team-owned templates.
property_field_too_large Void One or more of the supplied property field values is too large.
does_not_fit_template Void One or more of the supplied property fields does not conform to the template specifications.
duplicate_property_groups Void There are 2 or more property groups referring to the same templates in the input.
property_group_lookup LookUpPropertiesError
LookUpPropertiesError (open union)
This datatype comes from an imported namespace originally defined in the file_properties namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
property_group_not_found Void No property group was found.

/docs/archive

Version
Description

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 Paper Migration Guide for more information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/archive
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/archive \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\"}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q" }
doc_id String The Paper doc ID.
Returns

No return values.

Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/create

Version
Description

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 Paper Migration Guide for more information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/create
Authentication
User Authentication
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/create \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"import_format\": \"markdown\"}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
Example: Create new Paper doc (unfiled).
{     "import_format": "markdown" }
Example: Create new Paper doc inside Paper folder.
{     "import_format": "html",     "parent_folder_id": "e.gGYT6HSafpMej9bUv306GarglI7GGeAM3yvfZvXHO9u4mV" }
import_format ImportFormat The format of provided data.
ImportFormat (open union)
The import format of the incoming data. The value will be one of the following datatypes. New values may be introduced as our API evolves.
html Void The provided data is interpreted as standard HTML.
markdown Void The provided data is interpreted as markdown.
The first line of the provided document will be used as the doc title.
plain_text Void The provided data is interpreted as plain text.
The first line of the provided document will be used as the doc title.
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. This field is optional.
Returns
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "revision": 456736745,     "title": "Week one retention" }
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.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: content_malformed
{     "error_summary": "content_malformed/...",     "error": {         ".tag": "content_malformed"     } }
Example: folder_not_found
{     "error_summary": "folder_not_found/...",     "error": {         ".tag": "folder_not_found"     } }
Example: doc_length_exceeded
{     "error_summary": "doc_length_exceeded/...",     "error": {         ".tag": "doc_length_exceeded"     } }
Example: image_size_exceeded
{     "error_summary": "image_size_exceeded/...",     "error": {         ".tag": "image_size_exceeded"     } }
PaperDocCreateError (union)
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
content_malformed Void The provided content was malformed and cannot be imported to Paper.
folder_not_found Void The specified Paper folder is cannot be found.
doc_length_exceeded Void The newly created Paper doc would be too large. Please split the content into multiple docs.
image_size_exceeded Void The imported document contains an image that is too large. The current limit is 1MB. This only applies to HTML with data URI.

/docs/download

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/download
Authentication
User Authentication
Endpoint format
Content-download
Required Scope
files.content.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/download \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"export_format\": \"markdown\"}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "export_format": "markdown" }
doc_id String The Paper doc ID.
export_format ExportFormat
ExportFormat (open union)
The desired export format of the Paper doc. The value will be one of the following datatypes. New values may be introduced as our API evolves.
html Void The HTML export format.
markdown Void The markdown export format.
Returns
{     "owner": "james@example.com",     "title": "Week one retention",     "revision": 456736745,     "mime_type": "text/x-markdown" }
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 ExportFormat specified in the request.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/folder_users/list

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/folder_users/list
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/folder_users/list \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"limit\": 100}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "limit": 100 }
doc_id String The Paper doc ID.
limit Int32(min=1, max=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. The default for this field is 1000.
Returns
{     "invitees": [         {             ".tag": "email",             "email": "jessica@example.com"         }     ],     "users": [         {             "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",             "email": "bob@example.com",             "display_name": "Robert Smith",             "same_team": true,             "team_member_id": "dbmid:abcd1234"         }     ],     "cursor": {         "value": "zHZvTPBnXilGgm1AmDgVyZ10zf7qb0qznd5sAVQbbIvoteSnWLjUdLU7aR25hb",         "expiration": "2016-08-07T14:56:15Z"     },     "has_more": false }
ListUsersOnFolderResponse
invitees List of (InviteeInfo) List of email addresses that are invited on the Paper folder.
Information about the recipient of a shared content invitation. This datatype comes from an imported namespace originally defined in the sharing namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of invited user.
users List of (UserInfo) List of users that are invited on the Paper folder.
Basic information about a user. Use users/get_account and users/get_account_batch to obtain more detailed information. This datatype comes from an imported namespace originally defined in the sharing namespace.
account_id String(min_length=40, max_length=40) 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 same_team is true. This field is optional.
cursor Cursor Pass the cursor into docs/folder_users/list/continue to paginate through all users. The cursor preserves all properties as specified in the original call to docs/folder_users/list.
value String The actual cursor value.
expiration Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? Expiration time of 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 field is optional.
has_more Boolean Will be set to True if a subsequent call with the provided cursor to docs/folder_users/list/continue returns immediately with some results. If set to False please allow some delay before making another call to docs/folder_users/list/continue.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/folder_users/list/continue

Version
Description

Once a cursor has been retrieved from 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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/folder_users/list/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/folder_users/list/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"cursor\": \"U60b6BxT43ySd5sAVQbbIvoteSnWLjUdLU7aR25hbt3ySd5sAVQbbIvoteSnWLjUd\"}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "cursor": "U60b6BxT43ySd5sAVQbbIvoteSnWLjUdLU7aR25hbt3ySd5sAVQbbIvoteSnWLjUd" }
ListUsersOnFolderContinueArgs
doc_id String The Paper doc ID.
cursor String The cursor obtained from docs/folder_users/list or docs/folder_users/list/continue. Allows for pagination.
Returns
{     "invitees": [         {             ".tag": "email",             "email": "jessica@example.com"         }     ],     "users": [         {             "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",             "email": "bob@example.com",             "display_name": "Robert Smith",             "same_team": true,             "team_member_id": "dbmid:abcd1234"         }     ],     "cursor": {         "value": "zHZvTPBnXilGgm1AmDgVyZ10zf7qb0qznd5sAVQbbIvoteSnWLjUdLU7aR25hb",         "expiration": "2016-08-07T14:56:15Z"     },     "has_more": false }
ListUsersOnFolderResponse
invitees List of (InviteeInfo) List of email addresses that are invited on the Paper folder.
Information about the recipient of a shared content invitation. This datatype comes from an imported namespace originally defined in the sharing namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of invited user.
users List of (UserInfo) List of users that are invited on the Paper folder.
Basic information about a user. Use users/get_account and users/get_account_batch to obtain more detailed information. This datatype comes from an imported namespace originally defined in the sharing namespace.
account_id String(min_length=40, max_length=40) 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 same_team is true. This field is optional.
cursor Cursor Pass the cursor into docs/folder_users/list/continue to paginate through all users. The cursor preserves all properties as specified in the original call to docs/folder_users/list.
value String The actual cursor value.
expiration Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? Expiration time of 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 field is optional.
has_more Boolean Will be set to True if a subsequent call with the provided cursor to docs/folder_users/list/continue returns immediately with some results. If set to False please allow some delay before making another call to docs/folder_users/list/continue.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
ListUsersCursorError (union)
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.
cursor_error PaperApiCursorError
PaperApiCursorError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
expired_cursor Void The provided cursor is expired.
invalid_cursor Void The provided cursor is invalid.
wrong_user_in_cursor Void The provided cursor contains invalid user.
reset Void Indicates that the cursor has been invalidated. Call the corresponding non-continue endpoint to obtain a new cursor.

/docs/get_folder_info

Version
Description
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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/get_folder_info
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/get_folder_info \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\"}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q" }
doc_id String The Paper doc ID.
Returns
{     "folder_sharing_policy_type": {         ".tag": "team"     },     "folders": [         {             "id": "e.gGYT6HSafpMej9bUv306oGm60vrHiCHgEFnzziioPGCvHf",             "name": "Design docs"         }     ] }
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. This field is optional.
FolderSharingPolicyType (union)
The sharing policy of a Paper folder.
The sharing policy of subfolders is inherited from the root folder. The value will be one of the following datatypes:
team Void Everyone in your team and anyone directly invited can access this folder.
invite_only Void Only people directly invited can access this folder.
folders List of (Folder)? The folder path. If present the first folder is the root folder. This field is optional.
Data structure representing a Paper folder.
id String Paper folder ID. This ID uniquely identifies the folder.
name String Paper folder name.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/list

Version
Description

Return the list of all Paper docs according to the argument specifications. To iterate over through the full pagination, pass the cursor to 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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/list
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/list \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"filter_by\": \"docs_created\",\"sort_by\": \"modified\",\"sort_order\": \"descending\",\"limit\": 100}"
Parameters
{     "filter_by": "docs_created",     "sort_by": "modified",     "sort_order": "descending",     "limit": 100 }
filter_by ListPaperDocsFilterBy Allows user to specify how the Paper docs should be filtered. The default for this union is docs_accessed.
ListPaperDocsFilterBy (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
docs_accessed Void Fetches all Paper doc IDs that the user has ever accessed.
docs_created Void Fetches only the Paper doc IDs that the user has created.
sort_by ListPaperDocsSortBy Allows user to specify how the Paper docs should be sorted. The default for this union is accessed.
ListPaperDocsSortBy (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
accessed Void Sorts the Paper docs by the time they were last accessed.
modified Void Sorts the Paper docs by the time they were last modified.
created Void Sorts the Paper docs by the creation time.
sort_order ListPaperDocsSortOrder Allows user to specify the sort order of the result. The default for this union is ascending.
ListPaperDocsSortOrder (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
ascending Void Sorts the search result in ascending order.
descending Void Sorts the search result in descending order.
limit Int32(min=1, max=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. The default for this field is 1000.
Returns
{     "doc_ids": [         "zO1E7coc54sE8IuMdUoxz",         "mm1AmDgVyZ10zf7qb0qzn",         "dByYHZvTPBnXilGgyc5mm"     ],     "cursor": {         "value": "zHZvTPBnXilGgm1AmDgVyZ10zf7qb0qznd5sAVQbbIvoteSnWLjUdLU7aR25hb",         "expiration": "2016-08-07T14:56:15Z"     },     "has_more": true }
doc_ids List of (String) 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 docs/list.
cursor Cursor Pass the cursor into docs/list/continue to paginate through all files. The cursor preserves all properties as specified in the original call to docs/list.
value String The actual cursor value.
expiration Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? Expiration time of 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 field is optional.
has_more Boolean Will be set to True if a subsequent call with the provided cursor to docs/list/continue returns immediately with some results. If set to False please allow some delay before making another call to docs/list/continue.
Errors

No errors.

/docs/list/continue

Version
Description

Once a cursor has been retrieved from 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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/list/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.metadata.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/list/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"cursor\": \"U60b6BxT43ySd5sAVQbbIvoteSnWLjUdLU7aR25hbt3ySd5sAVQbbIvoteSnWLjUd\"}"
Parameters
{     "cursor": "U60b6BxT43ySd5sAVQbbIvoteSnWLjUdLU7aR25hbt3ySd5sAVQbbIvoteSnWLjUd" }
ListPaperDocsContinueArgs
cursor String The cursor obtained from docs/list or docs/list/continue. Allows for pagination.
Returns
{     "doc_ids": [         "zO1E7coc54sE8IuMdUoxz",         "mm1AmDgVyZ10zf7qb0qzn",         "dByYHZvTPBnXilGgyc5mm"     ],     "cursor": {         "value": "zHZvTPBnXilGgm1AmDgVyZ10zf7qb0qznd5sAVQbbIvoteSnWLjUdLU7aR25hb",         "expiration": "2016-08-07T14:56:15Z"     },     "has_more": true }
doc_ids List of (String) 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 docs/list.
cursor Cursor Pass the cursor into docs/list/continue to paginate through all files. The cursor preserves all properties as specified in the original call to docs/list.
value String The actual cursor value.
expiration Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? Expiration time of 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 field is optional.
has_more Boolean Will be set to True if a subsequent call with the provided cursor to docs/list/continue returns immediately with some results. If set to False please allow some delay before making another call to docs/list/continue.
Errors
ListDocsCursorError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
cursor_error PaperApiCursorError
PaperApiCursorError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
expired_cursor Void The provided cursor is expired.
invalid_cursor Void The provided cursor is invalid.
wrong_user_in_cursor Void The provided cursor contains invalid user.
reset Void Indicates that the cursor has been invalidated. Call the corresponding non-continue endpoint to obtain a new cursor.

/docs/permanently_delete

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/permanently_delete
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.permanent_delete
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/permanently_delete \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\"}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q" }
doc_id String The Paper doc ID.
Returns

No return values.

Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/sharing_policy/get

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/sharing_policy/get
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/sharing_policy/get \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\"}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q" }
doc_id String The Paper doc ID.
Returns
{     "public_sharing_policy": {         ".tag": "people_with_link_can_edit"     },     "team_sharing_policy": {         ".tag": "people_with_link_can_edit"     } }
Sharing policy of Paper doc.
public_sharing_policy SharingPublicPolicyType? This value applies to the non-team members. This field is optional.
SharingPublicPolicyType (union)
The value will be one of the following datatypes:
people_with_link_can_edit Void Users who have a link to this doc can edit it.
people_with_link_can_view_and_comment Void Users who have a link to this doc can view and comment on it.
invite_only Void Users must be explicitly invited to this doc.
disabled Void Value used to indicate that doc sharing is enabled only within team.
team_sharing_policy SharingTeamPolicyType? This value applies to the team members only. The value is null for all personal accounts. This field is optional.
SharingTeamPolicyType (union)
The sharing policy type of the Paper doc. The value will be one of the following datatypes:
people_with_link_can_edit Void Users who have a link to this doc can edit it.
people_with_link_can_view_and_comment Void Users who have a link to this doc can view and comment on it.
invite_only Void Users must be explicitly invited to this doc.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/sharing_policy/set

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/sharing_policy/set
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/sharing_policy/set \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"sharing_policy\": {\"public_sharing_policy\": \"people_with_link_can_edit\",\"team_sharing_policy\": \"people_with_link_can_edit\"}}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "sharing_policy": {         "public_sharing_policy": "people_with_link_can_edit",         "team_sharing_policy": "people_with_link_can_edit"     } }
doc_id String The Paper doc ID.
sharing_policy SharingPolicy The default sharing policy to be set for the Paper doc.
Sharing policy of Paper doc.
public_sharing_policy SharingPublicPolicyType? This value applies to the non-team members. This field is optional.
SharingPublicPolicyType (union)
The value will be one of the following datatypes:
people_with_link_can_edit Void Users who have a link to this doc can edit it.
people_with_link_can_view_and_comment Void Users who have a link to this doc can view and comment on it.
invite_only Void Users must be explicitly invited to this doc.
disabled Void Value used to indicate that doc sharing is enabled only within team.
team_sharing_policy SharingTeamPolicyType? This value applies to the team members only. The value is null for all personal accounts. This field is optional.
SharingTeamPolicyType (union)
The sharing policy type of the Paper doc. The value will be one of the following datatypes:
people_with_link_can_edit Void Users who have a link to this doc can edit it.
people_with_link_can_view_and_comment Void Users who have a link to this doc can view and comment on it.
invite_only Void Users must be explicitly invited to this doc.
Returns

No return values.

Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/update

Version
Description

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 Paper Migration Guide for more information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/update
Authentication
User Authentication
Endpoint format
Content-upload
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/update \     --header "Authorization: Bearer                            " \     --header "Dropbox-API-Arg: {\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"doc_update_policy\": \"overwrite_all\",\"revision\": 12345,\"import_format\": \"html\"}" \     --header "Content-Type: application/octet-stream" \     --data-binary @local_file.txt
Parameters
Example: Overwrite the doc content with provided content.
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "doc_update_policy": "overwrite_all",     "revision": 12345,     "import_format": "html" }
Example: Prepend the content into the doc (the doc title will remain unchanged).
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "doc_update_policy": "prepend",     "revision": 56556,     "import_format": "plain_text" }
doc_id String The Paper doc ID.
doc_update_policy PaperDocUpdatePolicy The policy used for the current update call.
PaperDocUpdatePolicy (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
append Void The content will be appended to the doc.
prepend Void The content will be prepended to the doc.
The doc title will not be affected.
overwrite_all Void The document will be overwitten at the head with the provided content.
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.
import_format ImportFormat The format of provided data.
ImportFormat (open union)
The import format of the incoming data. The value will be one of the following datatypes. New values may be introduced as our API evolves.
html Void The provided data is interpreted as standard HTML.
markdown Void The provided data is interpreted as markdown.
The first line of the provided document will be used as the doc title.
plain_text Void The provided data is interpreted as plain text.
The first line of the provided document will be used as the doc title.
Returns
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "revision": 456736745,     "title": "Week one retention" }
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.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
Example: content_malformed
{     "error_summary": "content_malformed/...",     "error": {         ".tag": "content_malformed"     } }
Example: revision_mismatch
{     "error_summary": "revision_mismatch/...",     "error": {         ".tag": "revision_mismatch"     } }
Example: doc_length_exceeded
{     "error_summary": "doc_length_exceeded/...",     "error": {         ".tag": "doc_length_exceeded"     } }
Example: image_size_exceeded
{     "error_summary": "image_size_exceeded/...",     "error": {         ".tag": "image_size_exceeded"     } }
{     "error_summary": "doc_archived/...",     "error": {         ".tag": "doc_archived"     } }
{     "error_summary": "doc_deleted/...",     "error": {         ".tag": "doc_deleted"     } }
PaperDocUpdateError (union)
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.
content_malformed Void The provided content was malformed and cannot be imported to Paper.
revision_mismatch Void The provided revision does not match the document head.
doc_length_exceeded Void The newly created Paper doc would be too large, split the content into multiple docs.
image_size_exceeded Void 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 Void This operation is not allowed on archived Paper docs.
doc_deleted Void This operation is not allowed on deleted Paper docs.

/docs/users/add

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/users/add
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/users/add \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"members\": [{\"member\": {\".tag\": \"email\",\"email\": \"justin@example.com\"},\"permission_level\": \"view_and_comment\"}],\"custom_message\": \"Welcome to Paper.\",\"quiet\": false}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "members": [         {             "member": {                 ".tag": "email",                 "email": "justin@example.com"             },             "permission_level": "view_and_comment"         }     ],     "custom_message": "Welcome to Paper.",     "quiet": false }
doc_id String The Paper doc ID.
members List of (AddMember, max_items=20) User which should be added to the Paper doc. Specify only email address or Dropbox account ID.
member MemberSelector User which should be added to the Paper doc. Specify only email address or Dropbox account ID.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. This datatype comes from an imported namespace originally defined in the sharing namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
permission_level PaperDocPermissionLevel Permission for the user. The default for this union is edit.
PaperDocPermissionLevel (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
edit Void User will be granted edit permissions.
view_and_comment Void User will be granted view and comment permissions.
custom_message String? A personal message that will be emailed to each successfully added member. This field is optional.
quiet Boolean Clients should set this to true if no email message shall be sent to added users. The default for this field is False.
Returns
This route returns a list. This means the route can accept a homogenous list of the following types:
AddPaperDocUserMemberResult
Per-member result for docs/users/add.
member MemberSelector One of specified input members.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. This datatype comes from an imported namespace originally defined in the sharing namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
result AddPaperDocUserResult The outcome of the action on this member.
AddPaperDocUserResult (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
success Void User was successfully added to the Paper doc.
unknown_error Void Something unexpected happened when trying to add the user to the Paper doc.
sharing_outside_team_disabled Void The Paper doc can be shared only with team members.
daily_limit_reached Void The daily limit of how many users can be added to the Paper doc was reached.
user_is_owner Void Owner's permissions cannot be changed.
failed_user_data_retrieval Void User data could not be retrieved. Clients should retry.
permission_already_granted Void This user already has the correct permission to the Paper doc.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/users/list

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/users/list
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/users/list \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"limit\": 100,\"filter_by\": \"shared\"}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "limit": 100,     "filter_by": "shared" }
doc_id String The Paper doc ID.
limit Int32(min=1, max=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. The default for this field is 1000.
filter_by UserOnPaperDocFilter Specify this attribute if you want to obtain users that have already accessed the Paper doc. The default for this union is shared.
UserOnPaperDocFilter (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
visited Void all users who have visited the Paper doc.
shared Void 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.
Returns
{     "invitees": [         {             "invitee": {                 ".tag": "email",                 "email": "jessica@example.com"             },             "permission_level": {                 ".tag": "edit"             }         }     ],     "users": [         {             "user": {                 "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                 "email": "bob@example.com",                 "display_name": "Robert Smith",                 "same_team": true,                 "team_member_id": "dbmid:abcd1234"             },             "permission_level": {                 ".tag": "view_and_comment"             }         }     ],     "doc_owner": {         "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",         "email": "bob@example.com",         "display_name": "Robert Smith",         "same_team": true,         "team_member_id": "dbmid:abcd1234"     },     "cursor": {         "value": "zHZvTPBnXilGgm1AmDgVyZ10zf7qb0qznd5sAVQbbIvoteSnWLjUdLU7aR25hb",         "expiration": "2016-08-07T14:56:15Z"     },     "has_more": false }
ListUsersOnPaperDocResponse
invitees List of (InviteeInfoWithPermissionLevel) List of email addresses with their respective permission levels that are invited on the Paper doc.
InviteeInfoWithPermissionLevel
invitee InviteeInfo Email address invited to the Paper doc.
Information about the recipient of a shared content invitation. This datatype comes from an imported namespace originally defined in the sharing namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of invited user.
permission_level PaperDocPermissionLevel Permission level for the invitee.
PaperDocPermissionLevel (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
edit Void User will be granted edit permissions.
view_and_comment Void User will be granted view and comment permissions.
users List of (UserInfoWithPermissionLevel) List of users with their respective permission levels that are invited on the Paper folder.
UserInfoWithPermissionLevel
user UserInfo User shared on the Paper doc.
Basic information about a user. Use users/get_account and users/get_account_batch to obtain more detailed information. This datatype comes from an imported namespace originally defined in the sharing namespace.
account_id String(min_length=40, max_length=40) 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 same_team is true. This field is optional.
permission_level PaperDocPermissionLevel Permission level for the user.
PaperDocPermissionLevel (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
edit Void User will be granted edit permissions.
view_and_comment Void User will be granted view and comment permissions.
doc_owner UserInfo The Paper doc owner. This field is populated on every single response.
Basic information about a user. Use users/get_account and users/get_account_batch to obtain more detailed information. This datatype comes from an imported namespace originally defined in the sharing namespace.
account_id String(min_length=40, max_length=40) 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 same_team is true. This field is optional.
cursor Cursor Pass the cursor into docs/users/list/continue to paginate through all users. The cursor preserves all properties as specified in the original call to docs/users/list.
value String The actual cursor value.
expiration Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? Expiration time of 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 field is optional.
has_more Boolean Will be set to True if a subsequent call with the provided cursor to docs/users/list/continue returns immediately with some results. If set to False please allow some delay before making another call to docs/users/list/continue.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/docs/users/list/continue

Version
Description

Once a cursor has been retrieved from 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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/users/list/continue
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.read
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/users/list/continue \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"cursor\": \"U60b6BxT43ySd5sAVQbbIvoteSnWLjUdLU7aR25hbt3ySd5sAVQbbIvoteSnWLjUd\"}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "cursor": "U60b6BxT43ySd5sAVQbbIvoteSnWLjUdLU7aR25hbt3ySd5sAVQbbIvoteSnWLjUd" }
ListUsersOnPaperDocContinueArgs
doc_id String The Paper doc ID.
cursor String The cursor obtained from docs/users/list or docs/users/list/continue. Allows for pagination.
Returns
{     "invitees": [         {             "invitee": {                 ".tag": "email",                 "email": "jessica@example.com"             },             "permission_level": {                 ".tag": "edit"             }         }     ],     "users": [         {             "user": {                 "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",                 "email": "bob@example.com",                 "display_name": "Robert Smith",                 "same_team": true,                 "team_member_id": "dbmid:abcd1234"             },             "permission_level": {                 ".tag": "view_and_comment"             }         }     ],     "doc_owner": {         "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",         "email": "bob@example.com",         "display_name": "Robert Smith",         "same_team": true,         "team_member_id": "dbmid:abcd1234"     },     "cursor": {         "value": "zHZvTPBnXilGgm1AmDgVyZ10zf7qb0qznd5sAVQbbIvoteSnWLjUdLU7aR25hb",         "expiration": "2016-08-07T14:56:15Z"     },     "has_more": false }
ListUsersOnPaperDocResponse
invitees List of (InviteeInfoWithPermissionLevel) List of email addresses with their respective permission levels that are invited on the Paper doc.
InviteeInfoWithPermissionLevel
invitee InviteeInfo Email address invited to the Paper doc.
Information about the recipient of a shared content invitation. This datatype comes from an imported namespace originally defined in the sharing namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of invited user.
permission_level PaperDocPermissionLevel Permission level for the invitee.
PaperDocPermissionLevel (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
edit Void User will be granted edit permissions.
view_and_comment Void User will be granted view and comment permissions.
users List of (UserInfoWithPermissionLevel) List of users with their respective permission levels that are invited on the Paper folder.
UserInfoWithPermissionLevel
user UserInfo User shared on the Paper doc.
Basic information about a user. Use users/get_account and users/get_account_batch to obtain more detailed information. This datatype comes from an imported namespace originally defined in the sharing namespace.
account_id String(min_length=40, max_length=40) 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 same_team is true. This field is optional.
permission_level PaperDocPermissionLevel Permission level for the user.
PaperDocPermissionLevel (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
edit Void User will be granted edit permissions.
view_and_comment Void User will be granted view and comment permissions.
doc_owner UserInfo The Paper doc owner. This field is populated on every single response.
Basic information about a user. Use users/get_account and users/get_account_batch to obtain more detailed information. This datatype comes from an imported namespace originally defined in the sharing namespace.
account_id String(min_length=40, max_length=40) 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 same_team is true. This field is optional.
cursor Cursor Pass the cursor into docs/users/list/continue to paginate through all users. The cursor preserves all properties as specified in the original call to docs/users/list.
value String The actual cursor value.
expiration Timestamp(format="%Y-%m-%dT%H:%M:%SZ")? Expiration time of 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 field is optional.
has_more Boolean Will be set to True if a subsequent call with the provided cursor to docs/users/list/continue returns immediately with some results. If set to False please allow some delay before making another call to docs/users/list/continue.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
ListUsersCursorError (union)
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.
cursor_error PaperApiCursorError
PaperApiCursorError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
expired_cursor Void The provided cursor is expired.
invalid_cursor Void The provided cursor is invalid.
wrong_user_in_cursor Void The provided cursor contains invalid user.
reset Void Indicates that the cursor has been invalidated. Call the corresponding non-continue endpoint to obtain a new cursor.

/docs/users/remove

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/docs/users/remove
Authentication
User Authentication
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/paper/docs/users/remove \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"doc_id\": \"uaSvRuxvnkFa12PTkBv5q\",\"member\": {\".tag\": \"email\",\"email\": \"justin@example.com\"}}"
Parameters
{     "doc_id": "uaSvRuxvnkFa12PTkBv5q",     "member": {         ".tag": "email",         "email": "justin@example.com"     } }
doc_id String The Paper doc ID.
member MemberSelector User which should be removed from the Paper doc. Specify only email address or Dropbox account ID.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. This datatype comes from an imported namespace originally defined in the sharing namespace. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
Returns

No return values.

Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
{     "error_summary": "doc_not_found/...",     "error": {         ".tag": "doc_not_found"     } }
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
doc_not_found Void The required doc was not found.

/folders/create

Version
Description

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 Paper Migration Guide for migration information.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/paper/folders/create
Authentication
User Authentication
Endpoint format
RPC
Required Scope
files.content.write
Example
curl -X POST https://api.dropboxapi.com/2/paper/folders/create \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"name\": \"my new folder\"}"
Parameters
Example: Create a top-level private folder.
{     "name": "my new folder" }
Example: Create a top-level team folder.
{     "name": "my new folder",     "is_team_folder": true }
Example: 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" }
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. This field is optional.
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. This field is optional.
Returns
{     "folder_id": "abcd" }
folder_id String Folder ID of the newly created folder.
Errors
Example: insufficient_permissions
{     "error_summary": "insufficient_permissions/...",     "error": {         ".tag": "insufficient_permissions"     } }
{     "error_summary": "other/...",     "error": {         ".tag": "other"     } }
Example: folder_not_found
{     "error_summary": "folder_not_found/...",     "error": {         ".tag": "folder_not_found"     } }
Example: invalid_folder_id
{     "error_summary": "invalid_folder_id/...",     "error": {         ".tag": "invalid_folder_id"     } }
PaperFolderCreateError (union)
The value will be one of the following datatypes:
insufficient_permissions Void Your account does not have permissions to perform this action. This may be due to it only having access to Paper as files in the Dropbox filesystem. For more information, refer to the Paper Migration Guide.
folder_not_found Void The specified parent Paper folder cannot be found.
invalid_folder_id Void The folder id cannot be decrypted to valid folder id.

/remove_file_member

Version
DEPRECATED BY /remove_file_member_2
Description

Identical to remove_file_member_2 but with less information returned.

This endpoint does not support apps with the app folder permission.

URL Structure
https://api.dropboxapi.com/2/sharing/remove_file_member
Authentication
User Authentication, Dropbox-API-Select-Admin (Team Admin)
Endpoint format
RPC
Required Scope
sharing.write
Example
curl -X POST https://api.dropboxapi.com/2/sharing/remove_file_member \     --header "Authorization: Bearer                            " \     --header "Content-Type: application/json" \     --data "{\"file\": \"id:3kmLmQFnf1AAAAAAAAAAAw\",\"member\": {\".tag\": \"email\",\"email\": \"justin@example.com\"}}"
Parameters
{     "file": "id:3kmLmQFnf1AAAAAAAAAAAw",     "member": {         ".tag": "email",         "email": "justin@example.com"     } }
Arguments for remove_file_member_2.
file String(min_length=1, pattern="((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?") 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.
MemberSelector (open union)
Includes different ways to identify a member of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
dropbox_id String(min_length=1) Dropbox account, team member, or group ID of member.
email String(max_length=255, pattern="^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$") Email address of member.
Returns
{     ".tag": "success" }
FileMemberActionIndividualResult (union)
The value will be one of the following datatypes:
success AccessLevel? Member was successfully removed from this file. If AccessLevel is given, the member still has access via a parent shared folder. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
member_error FileMemberActionError User was not able to perform this action.
FileMemberActionError (open union)
The value will be one of the following datatypes. New values may be introduced as our API evolves.
invalid_member Void Specified member was not found.
no_permission Void 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.
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
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.
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.
Errors
RemoveFileMemberError (open union)
Errors for remove_file_member_2. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_error SharingUserError
SharingUserError (open union)
User account had a problem preventing this action. The value will be one of the following datatypes. New values may be introduced as our API evolves.
email_unverified Void 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 here.
access_error SharingFileAccessError
SharingFileAccessError (open union)
User could not access this file. The value will be one of the following datatypes. New values may be introduced as our API evolves.
no_permission Void Current user does not have sufficient privileges to perform the desired action.
invalid_file Void File specified was not found.
is_folder Void A folder can't be shared this way. Use folder sharing or a shared link instead.
inside_public_folder Void A file inside a public folder can't be shared this way. Use a public link instead.
inside_osx_package Void A Mac OS X package can't be shared this way. Use a shared link instead.
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.
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. This field is optional.
Defines the access levels for collaborators. The value will be one of the following datatypes. New values may be introduced as our API evolves.
owner Void 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 update_folder_policy.
editor Void The collaborator can both view and edit the shared folder.
viewer Void The collaborator can only view the shared folder.
viewer_no_comment Void The collaborator can only view the shared folder and does not have any access to comments.
warning String? A localized string with additional information about why the user has this access level to the content. This field is optional.
access_details List of (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. This field is optional.
Contains information about a parent folder that a member has access to.
folder_name String Display name for the folder.
shared_folder_id String(pattern="[-_0-9a-zA-Z:]+") The identifier of the parent shared folder.
permissions List of (MemberPermission) The user's permissions for the parent shared folder.
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.
MemberAction (open union)
Actions that may be taken on members of a shared folder. The value will be one of the following datatypes. New values may be introduced as our API evolves.
leave_a_copy Void Allow the member to keep a copy of the folder when removing.
make_editor Void Make the member an editor of the folder.
make_owner Void Make the member an owner of the folder.
make_viewer Void Make the member a viewer of the folder.
make_viewer_no_comment Void Make the member a viewer of the folder without commenting permissions.
remove Void Remove the member from 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. This field is optional.
PermissionDeniedReason (open union)
Possible reasons the user is denied a permission. The value will be one of the following datatypes. New values may be introduced as our API evolves.
user_not_same_team_as_owner Void User is not on the same team as the folder owner.
user_not_allowed_by_owner Void User is prohibited by the owner from taking the action.
target_is_indirect_member Void Target is indirectly a member of the folder, for example by being part of a group.
target_is_owner Void Target is the owner of the folder.
target_is_self Void Target is the user itself.
target_not_active Void Target is not an active member of the team.
folder_is_limited_team_folder Void Folder is team folder for a limited team.
owner_not_on_team Void The content owner needs to be on a Dropbox team to perform this action.
permission_denied Void The user does not have permission to perform this action on the link.
restricted_by_team Void The user's team policy prevents performing this action on the link.
user_account_type Void The user's account type does not support this action.
user_not_on_team Void The user needs to be on a Dropbox team to perform this action.
folder_is_inside_shared_folder Void Folder is inside of another shared folder.
restricted_by_parent_folder Void Policy cannot be changed due to restrictions from parent folder.
insufficient_plan 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. This field is optional.
path String The full path to the parent shared folder relative to the acting user's root.

Source: https://www.dropbox.com/developers/documentation/http/documentation

Posted by: breezeceils.blogspot.com