Skip to main content

Dropbox Component

Manage files stored in Dropbox

Component key: dropbox

Description

Dropbox is a file sharing platform that allows teams to collaborate and share files with one another. The Dropbox component allows you to interact with the Dropbox API. You can upload, download, list, and move files within a Dropbox account.

API Documentation: Dropbox API Documenation

A common integration pattern involves listing files in a file store, and performing a series of actions on the array of files that are returned. See our looping over files quickstart for information about how to create a loop over an array of files.

Detecting changes in Dropbox

The List Changes action allows you to detect changes in your user's Dropbox folders. Create a flow that runs on a schedule and begin your flow with a List Changes action. That action will return a list of changes that have occurred since the flow was last run.

If you would like to detect and process changes to your customers' Dropbox accounts in real-time, see the Single-Endpoint Webhook Integrations guide on handling webhook requests from apps that require you to specify a single webhook endpoint.

Connections

OAuth 2.0

This component uses OAuth 2.0 to connect to Dropbox's API. To create a Dropbox OAuth 2.0 app, log in to Dropbox and open https://www.dropbox.com/developers/apps:

  1. Select Create app.
  2. Select that you want Scoped access.
  3. Choose the type of access you want:
    1. App folder access gives you access to a single folder in the user's Apps/ directory. A folder will be created with the same name as your OAuth app.
    2. Full Dropbox access gives you access to all files and folders in a user's Dropbox account.
  4. Give your app a name and click Create app.

Take note of the App key and App secret - you'll enter these in a Dropbox connection config variable.

Under the OAuth2 section add https://oauth2.prismatic.io/callback as a Redirect URI.

Under the Permissions tab, choose the permissions your app will need. The actions supported in this component relate to files, so you should grant the files.metadata.read and files.content.read permissions if you need read-only access, and also include the files.metadata.write and files.content.write permissions if you need to write files to a user's Dropbox account. You can safely ignore permissions listed under Collaboration and Account Info.

Triggers

Webhook

Receive and validate webhook requests from Dropbox for webhooks you configure. | key: dropboxWebhook

Many other SaaS apps allow you to configure webhook URLs on a per-customer basis. They allow you to say "when data is updated for Acme Corp, notify Acme Corp's instance webhook URL".

Dropbox does not have customer-specific webhooks. Instead, they allow your OAuth application to designate a single webhook URL to be notified when updates occur. Whenever any of your users update data in Dropbox, your single webhook URL receives a request with an array of Dropbox account IDs that have changes.

In Prismatic the best way to handle these Dropbox requests is to create a "Router Integration" that routes Dropbox webhook requests to the correct customer instance(s).

  • When an instance of your Dropbox integration is created, it notifies the "Router Integration" of a new mapping between the authenticated user's Dropbox Account ID and the instance's flow's webhook URL.
  • When a webhook request comes from Dropbox with a list of Dropbox Account IDs with changes, the "Router Integration" loops over the account IDs, looks up the mapping of account ID to webhook URL, and makes a request to the webhook URL of the appropriate instance, causing it to run a flow that queries for changes.

An example "Router Integration" and a Dropbox integration that register itself with the router integration is available in GitHub. You can import and extend the integrations how you see fit.


Data Sources

List Folders

Fetch an array of folders | key: listFolders | type: picklist

Data Source Payload

{
"result": [
{
"label": "/myexamplefolder - MyExampleFolder",
"key": "0"
},
{
"label": "/myexamplefolder/myimage.jpg - MyImage.jpg",
"key": "1"
}
]
}

List Shared Folders

Fetch an array of shared folders | key: listSharedFolders | type: picklist

Data Source Payload

{
"result": [
{
"label": "/myexamplefolder - MyExampleFolder",
"key": "0"
},
{
"label": "/myexamplefolder/myimage.jpg - MyImage.jpg",
"key": "1"
}
]
}

List Team Folders

Fetch an array of team's folders | key: listTeamFolders | type: picklist

Data Source Payload

{
"result": [
{
"label": "MyExampleFolder",
"key": "0"
}
]
}

Actions

Copy Object

Copy a Folder or File from one path to another | key: copyObject

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"metadata": {
".tag": "file",
"name": "myCopy",
"id": "exampleId",
"client_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"server_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"size": 2048
}
}
}
}

Create Folder

Create a Folder at the specified path | key: createFolder

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"metadata": {
"id": "exampleId",
"name": "myFolderName"
}
}
}
}

Create a shared link with custom settings. If no settings are given then the default visibility is RequestedVisibility.public (The resolved visibility, though, may depend on other aspects such as team and shared folder settings). | key: createSharedLink

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"link_permissions": {
"allow_comments": true,
"allow_download": true,
"audience_options": [
{
"allowed": true,
"audience": {
".tag": "public"
}
},
{
"allowed": false,
"audience": {
".tag": "team"
}
},
{
"allowed": true,
"audience": {
".tag": "no_one"
}
}
],
"can_allow_download": true,
"can_disallow_download": false,
"can_remove_expiry": false,
"can_remove_password": true,
"can_revoke": false,
"can_set_expiry": false,
"can_set_password": true,
"can_use_extended_sharing_controls": false,
"require_password": false,
"resolved_visibility": {
".tag": "public"
},
"revoke_failure_reason": {
".tag": "owner_only"
},
"team_restricts_comments": true,
"visibility_policies": [
{
"allowed": true,
"policy": {
".tag": "public"
},
"resolved_policy": {
".tag": "public"
}
},
{
"allowed": true,
"policy": {
".tag": "password"
},
"resolved_policy": {
".tag": "password"
}
}
]
},
"name": "Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"size": 7212,
"team_member_info": {
"display_name": "Roger Rabbit",
"member_id": "dbmid:abcd1234",
"team_info": {
"id": "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I",
"name": "Acme, Inc."
}
},
"url": "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0"
}
}
}

Delete Object

Delete a Folder or File at the specified path | key: deleteObject

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"metadata": {
".tag": "file",
"name": "myCopy",
"id": "exampleId",
"client_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"server_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"size": 2048
}
}
}
}

Download File

Download the file (< 150MB) at the specified path | key: downloadFile

Output Example Payload

{
"data": {
"type": "Buffer",
"data": [
101,
120,
97,
109,
112,
108,
101
]
},
"contentType": "application/octet"
}

Export File

Export the file at the specified path | key: exportFile

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"export_metadata": {
"export_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"name": "Prime_Numbers.xlsx",
"size": 7189
},
"file_metadata": {
"client_modified": "2015-05-12T15:50:38Z",
"content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"file_lock_info": {
"created": "2015-05-12T15:50:38Z",
"is_lockholder": true,
"lockholder_name": "Imaginary User"
},
"has_explicit_shared_members": false,
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"is_downloadable": true,
"name": "Prime_Numbers.txt",
"path_display": "/Homework/math/Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"property_groups": [
{
"fields": [
{
"name": "Security Policy",
"value": "Confidential"
}
],
"template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa"
}
],
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"sharing_info": {
"modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"parent_shared_folder_id": "84528192421",
"read_only": true
},
"size": 7212
}
}
}
}

Get Current Account

Get information about the currently authenticated user | key: getCurrentAccount

Output Example Payload

{
"data": {
"account_id": "dbid:EXAMPLE",
"name": {
"given_name": "John",
"surname": "Doe",
"familiar_name": "John",
"display_name": "John Doe",
"abbreviated_name": "JD"
},
"email": "john.doe@example.com",
"email_verified": true,
"profile_photo_url": "",
"disabled": false,
"country": "US",
"locale": "en",
"referral_link": "",
"is_paired": true,
"account_type": {
".tag": "basic"
},
"root_info": {
".tag": "user",
"root_namespace_id": "123456789",
"home_namespace_id": "123456789"
}
}
}

Get Download Status

Get the status of a file download from a URL to Dropbox | key: getDownloadStatus

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
".tag": "in_progress"
}
}
}

Get File Lock

Return the lock metadata for the given list of paths | key: getFileLock

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"entries": [
{
".tag": "success",
"lock": {
"content": {
".tag": "single_user",
"created": "2015-05-12T15:50:38Z",
"lock_holder_account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"lock_holder_team_id": "dbtid:1234abcd"
}
},
"metadata": {
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"file_lock_info": {
"created": "2015-05-12T15:50:38Z",
"is_lockholder": true,
"lockholder_name": "Imaginary User"
},
"has_explicit_shared_members": false,
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"is_downloadable": true,
"name": "Prime_Numbers.txt",
"path_display": "/Homework/math/Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"property_groups": [
{
"fields": [
{
"name": "Security Policy",
"value": "Confidential"
}
],
"template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa"
}
],
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"sharing_info": {
"modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"parent_shared_folder_id": "84528192421",
"read_only": true
},
"size": 7212
}
}
]
}
}
}

Get Metadata for File or Folder

Returns the metadata for a file or folder. | key: getMetadata

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"file_lock_info": {
"created": "2015-05-12T15:50:38Z",
"is_lockholder": true,
"lockholder_name": "Imaginary User"
},
"has_explicit_shared_members": false,
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"is_downloadable": true,
"name": "Prime_Numbers.txt",
"path_display": "/Homework/math/Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"property_groups": [
{
"fields": [
{
"name": "Security Policy",
"value": "Confidential"
}
],
"template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa"
}
],
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"sharing_info": {
"modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"parent_shared_folder_id": "84528192421",
"read_only": true
},
"size": 7212
}
}
}

Download the shared link's file from a user's Dropbox. | key: getSharedLinkFile

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"link_permissions": {
"allow_comments": true,
"allow_download": true,
"audience_options": [
{
"allowed": true,
"audience": {
".tag": "public"
}
},
{
"allowed": false,
"audience": {
".tag": "team"
}
},
{
"allowed": true,
"audience": {
".tag": "no_one"
}
}
],
"can_allow_download": true,
"can_disallow_download": false,
"can_remove_expiry": false,
"can_remove_password": true,
"can_revoke": false,
"can_set_expiry": false,
"can_set_password": true,
"can_use_extended_sharing_controls": false,
"require_password": false,
"resolved_visibility": {
".tag": "public"
},
"revoke_failure_reason": {
".tag": "owner_only"
},
"team_restricts_comments": true,
"visibility_policies": [
{
"allowed": true,
"policy": {
".tag": "public"
},
"resolved_policy": {
".tag": "public"
}
},
{
"allowed": true,
"policy": {
".tag": "password"
},
"resolved_policy": {
".tag": "password"
}
}
]
},
"name": "Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"size": 7212,
"team_member_info": {
"display_name": "Roger Rabbit",
"member_id": "dbmid:abcd1234",
"team_info": {
"id": "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I",
"name": "Acme, Inc."
}
},
"url": "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0"
}
}
}

Get Shared Metadata for File

Returns shared file metadata. | key: getSharedMetadataForFile

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"access_type": {
".tag": "viewer"
},
"id": "id:3kmLmQFnf1AAAAAAAAAAAw",
"name": "file.txt",
"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": [],
"policy": {
"acl_update_policy": {
".tag": "owner"
},
"member_policy": {
".tag": "anyone"
},
"resolved_member_policy": {
".tag": "team"
},
"shared_link_policy": {
".tag": "anyone"
}
},
"preview_url": "https://www.dropbox.com/scl/fi/fir9vjelf",
"time_invited": "2016-01-20T00:00:00Z"
}
}
}

Get Shared Metadata for Folder

Returns shared folder metadata. | key: getSharedMetadataForFolder

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"access_inheritance": {
".tag": "inherit"
},
"access_type": {
".tag": "owner"
},
"is_inside_team_folder": false,
"is_team_folder": false,
"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": ""
},
"name": "dir",
"path_lower": "/dir",
"permissions": [],
"policy": {
"acl_update_policy": {
".tag": "owner"
},
"member_policy": {
".tag": "anyone"
},
"resolved_member_policy": {
".tag": "team"
},
"shared_link_policy": {
".tag": "anyone"
}
},
"preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",
"shared_folder_id": "84528192421",
"time_invited": "2016-01-20T00:00:00Z"
}
}
}

Get Team Members

Get Team Members by Member ID, External ID, or Email | key: getTeamMembers

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"members_info": [
{
".tag": "member_info",
"profile": {
"account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"email": "tami@seagull.com",
"email_verified": false,
"external_id": "244423",
"groups": [
"g:e2db7665347abcd600000000001a2b3c"
],
"joined_on": "2015-05-12T15:50:38Z",
"member_folder_id": "20",
"membership_type": {
".tag": "full"
},
"name": {
"abbreviated_name": "FF",
"display_name": "Franz Ferdinand (Personal)",
"familiar_name": "Franz",
"given_name": "Franz",
"surname": "Ferdinand"
},
"profile_photo_url": "https://dl-web.dropbox.com/account_photo/get/dbaphid%3AAAHWGmIXV3sUuOmBfTz0wPsiqHUpBWvv3ZA?vers=1556069330102&size=128x128",
"secondary_emails": [
{
"email": "grape@strawberry.com",
"is_verified": false
},
{
"email": "apple@orange.com",
"is_verified": true
}
],
"status": {
".tag": "active"
},
"team_member_id": "dbmid:FDFSVF-DFSDF"
},
"roles": [
{
"description": "Add, remove, and manage member accounts.",
"name": "User management admin",
"role_id": "pid_dbtmr:3456"
}
]
}
]
}
}
}

Get a temporary link to stream content of a file. | key: getTemporaryLink

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"metadata": {
"name": "drums.jpg",
"path_lower": "/drums.jpg",
"path_display": "/drums.jpg",
"id": "id:kXzCDysyTmQAAAAAAAAAGw",
"client_modified": "2023-12-12T00:25:58Z",
"server_modified": "2023-12-12T00:25:59Z",
"rev": "60c45183ecb69f3e2a861",
"size": 175342,
"is_downloadable": true,
"content_hash": "2960e5e1f4e54e849d63862010035aea6d4f691aacc76abe5f33a80d670ec113"
},
"link": "https://uc925b3fcc7a2208235a92b0e7e8.dl.dropboxusercontent.com/cd/0/get/COQEC7ffJgExogeJr8ngG5GH_4jW-iN6PC1heBZVwhZPs-3Wis_TJVR5GDHQnrLSuZRn8EhZVxFFxU9vOcpwZ2tbpIC59w1dQkaZ9Vs0q-8YPfD0hfLTOWy7iMpx5ymz6J9k6nnzHyr08sICt-RcM5jMk2ET8lwSQoQCeW6_TG6lWA/file"
}
}
}

Get a temporary presigned link to upload a file | key: getTemporaryUploadLink

The Get Temporary Upload Link action allows you to fetch a presigned URL from Dropbox that can be used to upload a file directly to Dropbox. This is handy if you have a large file that you want to upload to Dropbox, but cannot upload the file through a Prismatic flow.

After fetching a presigned URL, your app can upload a file directly to Dropbox. Note that your request must be a POST request and your content-type header must be application/octet-stream.

For example,

curl --request POST \
--upload-file ./my-file.png \
--header "content-type: application/octet-stream" \
https://content.dropboxapi.com/apitul/1/ExAmPlE

Dropbox documentation notes that the maximum size for a file uploaded via a presigned URL is 150MB.

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"link": "https://content.dropboxapi.com/..."
}
}
}

List Changes

List changes that have been made to files in this folder since the last time this action was run. | key: listChanges

The first time this action runs, it takes note of the current cursor returned by Dropbox, and returns no changes. Subsequent runs of this step use that cursor to determine what has changed since the last time this step ran.

Output Example Payload

{
"data": {
"entries": [
{
".tag": "deleted",
"name": "my-old-image.png",
"path_lower": "/my-old-image.png",
"path_display": "/my-old-image.png"
},
{
".tag": "file",
"name": "my-new-image.png",
"path_lower": "/my-new-image.png",
"path_display": "/my-new-image.png",
"id": "id:BTY6k_2K8PAAAAAAAAAX9g",
"client_modified": "2022-12-12T21:39:30Z",
"server_modified": "2022-12-12T22:40:57Z",
"rev": "5efa9326918a601c39731",
"size": 1758021,
"is_downloadable": true,
"content_hash": "dc05a61ecd59d294da1e971c4e40a980b9042c633b7bc777367991a046d2b32d"
}
],
"cursor": "AAFCBKRdVxEXAMPLE",
"has_more": false
},
"instanceState": {}
}

List Folder

List Folder contents at the specified path | key: listFolder

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"entries": [
{
".tag": "folder",
"id": "exampleId",
"name": "MyExampleFolder",
"path_lower": "/myexamplefolder"
},
{
".tag": "file",
"id": "exampleId",
"name": "MyImage.jpg",
"path_lower": "/myexamplefolder/myimage.jpg",
"client_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"server_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"rev": "681a01c39731",
"size": 213654
}
],
"cursor": "hgL45HTslKOhj1_GEut-DVuaNs4xrXzpwQZRyJ0-KCW0wWMQ5DZu68__ULJa0zDcBp3ZrMlCj3-ZuOy4kjc9H2o7Ohk9UsId0sxVZrXFX",
"has_more": true
}
}
}

List Shared Folders

List Shared Folders contents | key: listSharingFolder

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu",
"entries": [
{
"access_inheritance": {
".tag": "inherit"
},
"access_type": {
".tag": "owner"
},
"is_inside_team_folder": false,
"is_team_folder": false,
"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": ""
},
"name": "dir",
"path_lower": "/dir",
"permissions": [],
"policy": {
"acl_update_policy": {
".tag": "owner"
},
"member_policy": {
".tag": "anyone"
},
"resolved_member_policy": {
".tag": "team"
},
"shared_link_policy": {
".tag": "anyone"
}
},
"preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",
"shared_folder_id": "84528192421",
"time_invited": "2016-01-20T00:00:00Z"
}
]
}
}
}

List Folder contents at the specified path | key: listSharedLinks

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu",
"has_more": true,
"links": [
{
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"link_permissions": {
"allow_comments": true,
"allow_download": true,
"audience_options": [
{
"allowed": true,
"audience": {
".tag": "public"
}
},
{
"allowed": false,
"audience": {
".tag": "team"
}
},
{
"allowed": true,
"audience": {
".tag": "no_one"
}
}
],
"can_allow_download": true,
"can_disallow_download": false,
"can_remove_expiry": false,
"can_remove_password": true,
"can_revoke": false,
"can_set_expiry": false,
"can_set_password": true,
"can_use_extended_sharing_controls": false,
"require_password": false,
"resolved_visibility": {
".tag": "public"
},
"revoke_failure_reason": {
".tag": "owner_only"
},
"team_restricts_comments": true,
"visibility_policies": [
{
"allowed": true,
"policy": {
".tag": "public"
},
"resolved_policy": {
".tag": "public"
}
},
{
"allowed": true,
"policy": {
".tag": "password"
},
"resolved_policy": {
".tag": "password"
}
}
]
},
"name": "Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"size": 7212,
"team_member_info": {
"display_name": "Roger Rabbit",
"member_id": "dbmid:abcd1234",
"team_info": {
"id": "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I",
"name": "Acme, Inc."
}
},
"url": "https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0"
}
]
}
}
}

List Team's Folders

List Team's Folder contents | key: listTeamFolder

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"cursor": "ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu",
"has_more": false,
"team_folders": [
{
"content_sync_settings": [
{
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"sync_setting": {
".tag": "default"
}
}
],
"is_team_shared_dropbox": false,
"name": "Marketing",
"status": {
".tag": "active"
},
"sync_setting": {
".tag": "default"
},
"team_folder_id": "123456789"
}
]
}
}
}

Lock File

Lock the files at the given paths | key: lockFile

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"entries": [
{
".tag": "success",
"lock": {
"content": {
".tag": "single_user",
"created": "2015-05-12T15:50:38Z",
"lock_holder_account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"lock_holder_team_id": "dbtid:1234abcd"
}
},
"metadata": {
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"file_lock_info": {
"created": "2015-05-12T15:50:38Z",
"is_lockholder": true,
"lockholder_name": "Imaginary User"
},
"has_explicit_shared_members": false,
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"is_downloadable": true,
"name": "Prime_Numbers.txt",
"path_display": "/Homework/math/Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"property_groups": [
{
"fields": [
{
"name": "Security Policy",
"value": "Confidential"
}
],
"template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa"
}
],
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"sharing_info": {
"modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"parent_shared_folder_id": "84528192421",
"read_only": true
},
"size": 7212
}
}
]
}
}
}

Move Object

Move a Folder or File from one path to another | key: moveObject

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"metadata": {
".tag": "file",
"name": "myCopy",
"id": "exampleId",
"client_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"server_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"size": 2048
}
}
}
}

Raw Request

Send raw HTTP request to Dropbox | key: rawRequest


Save From URL

Save a file from a URL to Dropbox | key: saveFromUrl

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
".tag": "async_job_id",
"async_job_id": "LnMobEc7XVEAAAAAAAAAAQ"
}
}
}

Search Files

Search for files at the specified path | key: searchFiles

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"has_more": false,
"matches": [
{
"metadata": {
".tag": "metadata",
"metadata": {
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"has_explicit_shared_members": false,
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"is_downloadable": true,
"name": "Prime_Numbers.txt",
"path_display": "/Homework/math/Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"sharing_info": {
"modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"parent_shared_folder_id": "84528192421",
"read_only": true
},
"size": 7212
}
}
}
]
}
}
}

Search Folders

Search for folders at the specified path | key: searchFolders

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"has_more": false,
"matches": [
{
"metadata": {
".tag": "metadata",
"metadata": {
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"has_explicit_shared_members": false,
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"is_downloadable": true,
"name": "Prime_Numbers.txt",
"path_display": "/Homework/math/Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"sharing_info": {
"modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"parent_shared_folder_id": "84528192421",
"read_only": true
},
"size": 7212
}
}
}
]
}
}
}

Share Folder

Share a folder with collaborators. Most sharing will be completed synchronously. Large folders will be completed asynchronously. | key: shareFolder

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
".tag": "complete",
"access_inheritance": {
".tag": "inherit"
},
"access_type": {
".tag": "owner"
},
"is_inside_team_folder": false,
"is_team_folder": false,
"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": ""
},
"name": "dir",
"path_lower": "/dir",
"permissions": [],
"policy": {
"acl_update_policy": {
".tag": "owner"
},
"member_policy": {
".tag": "anyone"
},
"resolved_member_policy": {
".tag": "team"
},
"shared_link_policy": {
".tag": "anyone"
}
},
"preview_url": "https://www.dropbox.com/scl/fo/fir9vjelf",
"shared_folder_id": "84528192421",
"time_invited": "2016-01-20T00:00:00Z"
}
}
}

Unlock File

Unlock the files at the given paths | key: unlockFile

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"entries": [
{
".tag": "success",
"lock": {
"content": {
".tag": "single_user",
"created": "2015-05-12T15:50:38Z",
"lock_holder_account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"lock_holder_team_id": "dbtid:1234abcd"
}
},
"metadata": {
".tag": "file",
"client_modified": "2015-05-12T15:50:38Z",
"content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"file_lock_info": {
"created": "2015-05-12T15:50:38Z",
"is_lockholder": true,
"lockholder_name": "Imaginary User"
},
"has_explicit_shared_members": false,
"id": "id:a4ayc_80_OEAAAAAAAAAXw",
"is_downloadable": true,
"name": "Prime_Numbers.txt",
"path_display": "/Homework/math/Prime_Numbers.txt",
"path_lower": "/homework/math/prime_numbers.txt",
"property_groups": [
{
"fields": [
{
"name": "Security Policy",
"value": "Confidential"
}
],
"template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa"
}
],
"rev": "a1c10ce0dd78",
"server_modified": "2015-05-12T15:50:38Z",
"sharing_info": {
"modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
"parent_shared_folder_id": "84528192421",
"read_only": true
},
"size": 7212
}
}
]
}
}
}

Unshare File

Remove all members from this file. Does not remove inherited members. | key: unshareFile

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": null
}
}

Unshare Folder

Allows a shared folder owner to unshare the folder. Unshare will not work in following cases: The shared folder contains shared folders OR the shared folder is inside another shared folder. | key: unshareFolder

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
".tag": "complete"
}
}
}

Upload File

Upload a file to the specified path | key: uploadFile

Output Example Payload

{
"data": {
"status": 200,
"headers": {},
"result": {
"id": "exampleId",
"client_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"server_modified": "Wed, 01 Jan 2020 00:00:00 GMT",
"size": 2048,
"name": "myFileName"
}
}
}