Overview
Dropbox requires each customer to host their own OAuth app. You can still use our Merge Demo OAuth app for testing purposes, but before you launch into production, you must use your own Dropbox OAuth app.
Below are instructions on how to get your Dropbox OAuth app set up with Merge.
Instructions
Step 1: Create a developer account
Sign up for a developer account here.
Click Create apps to sign up.
Step 2: Setup your Dropbox OAuth app
Once you’re done signing up, navigate Developers Apps.
Click Create app.
Choose “Scoped access” and “Full Dropbox”, so that your app has access to all files & folders.
On the Settings page for the app, set the following items:
Click Enable additional teams to enable your end users in teams to link their Dropbox app.
Click Enable additional users to enable your end users to link their Dropbox app.
Add the following to the "Redirect URIs" https://app.merge.dev/oauth/callback
On the “Permissions” page for the app, enable the permissions listed below. View the table at the bottom of this page for a more granular breakdown of the permission details per use case.
account_info.read
files.metadata.write
files.metadata.read
files.content.write
files.content.read
sharing.write
sharing.read
Hit Submit in the modal at the bottom to save your changes.
Navigate to “Branding” and fill in the details of your app.
Step 3: Add your Dropbox app details to Merge
On the Merge Dashboard, navigate to the Integrations tab.
Under File Storage, identify the Dropbox integration.
Enable the integration using the toggle on the right.
Click Set up organization-level credentials.
Enter the following information in the corresponding fields
OAuth Client Id: OAuth Client ID
OAuth Client Secret: OAuth Secret
OAuth Redirect URI: https://app.merge.dev/oauth/callback
Step 4 (Bonus): Apply to become a production app
If you have under 50 users or 5 teams, you don't need your Dropbox app to be in production mode in order to support this integration. However, if you'd like to apply for production, follow the steps below:
In your Dropbox App Console, click on the app you want to apply for production.
Click Apply for Production.
Fill in the following items:
Check the My app will need to link with more than 50 Dropbox users box
Fill out the subsequent set of questions that appear:
What does your app do: 2-3 sentences about what your app does. You do not have to include Merge.
How does your app use the Dropbox API: Mention how your product uses a third-party integration tool called Merge Unified File Storage API to power your Dropbox integration. In your integration you will:
GET all Folder/File, so that our customers can sync & view all their Files.This utilizes the “/list_folders” endpoint.
GET all Users & File Permissions, so that our customers don’t see files they shouldn’t have access to. This utilizes the "/list_folder_members” and “/list_shared_links” endpoints.
POST File/Folder, so that our customers can create File/Folder. This utilizes the “/create_folder” and “/upload” endpoints.
Download File, so that we can analyze file content to generate insights for our customers. This utilizes the “/download” and “/export” endpoints.
Click Submit app once you’ve filled in the required fields. Dropbox should get back to you within a couple days!
Permissions
Permissions defined by use case below:
Permission | Dropbox endpoints Merge call | Use case |
account_info.read | /get_current_account | To pull the root Dropbox namespace to retrieve files & folders from |
files.metadata.write | /properties/overwrite | To modify file metadata (in the future) |
files.metadata.read | /get_metadata | Retrieve file & folder metadata like name & size |
files.content.write | /create_folder /upload | Upload file, create folder |
files.content.read | /download /export | Download file |
sharing.write | /add_folder_member | Share a file (in the future) |
sharing.read | /list_folders |
|
Additional notes:
What about the Team permissions? — In our investigation, unfortunately if we request for any of the team scopes, only the Dropbox Business admin can authenticate. This blocks regular users from linking their own accounts. In the future, Merge may support a separate Dropbox Business integration to handle this.