Back to blog

Creating an OAuth App in Dropbox

This guide will walk you through creating a Dropbox app, retrieving your Client ID and Client Secret, and adding them to your Apideck dashboard so you can sync files securely.

Tanya GenchevaTanya Gencheva

Tanya Gencheva

4 min read
Creating an OAuth App in Dropbox

The Dropbox API is a comprehensive RESTful interface that allows developers to interact with Dropbox's cloud storage platform programmatically. Built on OAuth 2.0 with Scoped Access, the API provides fine-grained permission control, enabling applications to request only the specific capabilities they need. This guide will walk you through creating a Dropbox OAuth app using the DBX platform.

Prerequisites

Before you begin, ensure you have:

  1. A Dropbox account (free or paid)
  2. An Apideck account for unified API access
  3. Basic understanding of OAuth 2.0 concepts
  4. Development environment set up for your platform

Key OAuth Concepts

Authorization vs Authentication

  • Authentication: Verifying user identity ("Who are you?")
  • Authorization: Granting permission to access resources ("What can you do?")

Token Types

  • Access Token: Short-lived (4 hours), used for API requests
  • Refresh Token: Long-lived, used to obtain new access tokens
  • Authorization Code: One-time use, exchanged for tokens

OAuth Flow Types

1. Authorization Code Flow (Recommended)

  • Best for web applications and mobile apps
  • Supports refresh tokens for offline access
  • Most secure as client secret is protected

2. Implicit Flow (Deprecated)

  • Previously used for client-side applications
  • No longer recommended due to security concerns
  • Replaced by Authorization Code Flow with PKCE

3. Authorization Code Flow with PKCE

  • Enhanced security for public clients
  • Prevents authorization code interception attacks
  • Recommended for single-page applications and mobile apps

Access Types

Online Access

  • Access token valid only while user is active
  • Suitable for real-time, user-present applications
  • No refresh token provided

Offline Access

  • Provides refresh token for background operations
  • Essential for automated workflows and data synchronization
  • Requires explicit token_access_type=offline parameter

Step 1: Create a Dropbox App

  1. Access the Dropbox developers page at https://www.dropbox.com/developers

  2. Click Create App

  3. Select the following options:

    • API: Choose Scoped Access
    • Type of Access: Select Full Dropbox (or App Folder if you only want access to a specific folder)
    • Name your app: Enter a unique name (e.g., YourCompany-Integration)
  4. Click Create App

    Dropbox create app page


Step 2: Configure App Settings

  1. On the App Settings page:

    • Copy the App Key (this will be your Client ID)
    • Copy the App Secret (this will be your Client Secret)
  2. Under OAuth 2, add a redirect URI:

    • Use the callback URL:
      https://unify.apideck.com/callback
      
    • Click Add to save it
  3. Under Permissions, make sure to assign these scopes:

    • account_info.read
      View basic information about your Dropbox account such as your username, email, and country

    • files.metadata.read
      View information about your Dropbox files and folders

    • files.metadata.write
      View and edit information about your Dropbox files and folders

    • files.content.read
      View content of your Dropbox files and folders

    • files.content.write
      Edit content of your Dropbox files and folders

    Dropbox permissions tab

  4. (Optional) Configure your domain name and logo on the Branding tab

    Dropbox branding tab


Step 3: Add Credentials to Your Apideck Dashboard

  1. Log in to your Apideck Dashboard

  2. Navigate to ConfigurationDropbox

  3. Enter the Client ID and Client Secret you copied earlier

  4. Save your changes

    Apideck dashboard Dropbox integration


Step 4: Test the Connection

  1. Go back to the Dropbox integration in your dashboard

  2. Click Test Vault to launch a Dropbox sign-in window

  3. You’ll be redirected to Dropbox to authorize the connection

  4. After granting access, you should see the integration status as Connected

    Dropbox integration connected


Step 5: You’re ready to do your first API call 🎉

Your Dropbox integration is now set up and ready to use through Apideck to test the connection:

Make a test call to retrieve files:

curl --location --request GET 'https://unify.apideck.com/file-storage/files' \
--header 'x-apideck-consumer-id: test-consumer' \
--header 'x-apideck-app-id: {APIDECK_APP_ID}' \
--header 'x-apideck-service-id: dropbox' \
--header 'Authorization: Bearer {APIDECK_API_KEY}' \
--header 'Content-Type: application/json'

Start Building with the Dropbox API

Learn more about what you can build with the Dropbox File Storage API.

Additional Resources

Ready to get started?

Scale your integration strategy and deliver the integrations your customers need in record time.

Ready to get started?
Talk to an expert

Trusted by fast-moving product & engineering teams

JobNimbus
Blue Zinc
Drata
Octa
Nmbrs
Apideck Blog

Insights, guides, and updates from Apideck

Discover company news, API insights, and expert blog posts. Explore practical integration guides and tech articles to make the most of Apideck's platform.

How to integrate the QuickBooks Invoice API in 2026
AccountingGuides & Tutorials

How to integrate the QuickBooks Invoice API in 2026

Automating invoicing is one of the most common QuickBooks integrations. This guide covers the QuickBooks Invoice API in depth and shows how a unified API dramatically simplifies the developer experience.

GJ

GJ

25 min read
Unified.to Alternatives: A Technical Overview for 2026
Industry insightsUnified API

Unified.to Alternatives: A Technical Overview for 2026

A technical comparison of Unified.to alternatives for 2026, examining its architecture alongside platforms like Apideck, Merge, Codat, Nango, and Plaid, with guidance on matching platform capabilities to your integration requirements.

Kateryna Poryvay

Kateryna Poryvay

17 min read
Understanding Tracking Dimensions in Accounting Integrations
Unified APIGuides & TutorialsAccounting

Understanding Tracking Dimensions in Accounting Integrations

Learn how tracking dimensions like departments, locations, classes, and custom categories work across QuickBooks, Xero, NetSuite, and Sage Intacct. Discover best practices for building accounting integrations that handle platform differences gracefully with dynamic dimension discovery, validation, and unified support.

GJ

GJ

7 min read