Dropbox

Dropbox logo

Dropbox

Connect your Dropbox data to Airweave

Overview

The Dropbox connector allows you to sync data from Dropbox into Airweave, making it available for search and retrieval by your agents.

Configuration

DropboxSource

Dropbox source implementation.

Authentication

This connector uses OAuth 2.0 with refresh token.

You can connect through the Airweave UI, which will guide you through the OAuth flow.

Entities

The following data models are available for this connector:

Schema for Dropbox account-level entities based on the Dropbox API.

REQUIRED fields from ChunkEntity (must be provided):

  • entity_id: ID of the entity this represents in the source
  • breadcrumbs: List of breadcrumbs for this entity (empty for top-level accounts)

OPTIONAL fields from ChunkEntity (automatically populated if available):

  • Other inherited fields from ChunkEntity
FieldTypeDescription
account_idstrThe user’s unique Dropbox ID
namestrName for display representing the user’s Dropbox account
abbreviated_nameOptional[str]Abbreviated form of the person’s name (typically initials)
familiar_nameOptional[str]Locale-dependent name (usually given name in US)
given_nameOptional[str]Also known as first name
surnameOptional[str]Also known as last name or family name
emailOptional[str]The user’s email address
email_verifiedboolWhether the user has verified their email address
disabledboolWhether the user has been disabled
account_typeOptional[str]Type of account (basic, pro, business, etc.)
is_teammateboolWhether this user is a teammate of the current user
is_pairedboolWhether the user has both personal and work accounts linked
team_member_idOptional[str]The user’s unique team member ID (if part of a team)
localeOptional[str]The language that the user specified (IETF language tag)
countryOptional[str]The user’s two-letter country code (ISO 3166-1)
profile_photo_urlOptional[str]URL for the profile photo
referral_linkOptional[str]The user’s referral link
space_usedOptional[int]The user’s total space usage in bytes
space_allocatedOptional[int]The user’s total space allocation in bytes
team_infoOptional[Dict]Information about the team if user is a member
root_infoOptional[Dict]Information about the user’s root namespace

Schema for Dropbox folder entities matching the Dropbox API.

REQUIRED fields from ChunkEntity (must be provided):

  • entity_id: ID of the entity this represents in the source
  • breadcrumbs: List of breadcrumbs for this entity

OPTIONAL fields from ChunkEntity (automatically populated if available):

  • Other inherited fields from ChunkEntity
FieldTypeDescription
folder_idstrUnique identifier for the folder
namestrThe name of the folder (last path component)
path_lowerOptional[str]Lowercase full path starting with slash
path_displayOptional[str]Display path with proper casing
sharing_infoOptional[Dict]Sharing information for the folder
read_onlyboolWhether the folder is read-only
traverse_onlyboolWhether the folder can only be traversed
no_accessboolWhether the folder cannot be accessed
property_groupsOptional[List[Dict]]Custom properties and tags

Integrate Airweave with Dropbox APIs on localhost

Airweave will access Dropbox on behalf of your users. You’ll need to have each

Dropbox provides documentation on how to implement OAuth 2.0. This guide will walk you through connecting Dropbox APIs to Airweave when running locally.

  1. Go here to create the “Airweave integration” application
  2. Under Settings, add the following Redirect URI:
http://localhost:8080/auth/callback/dropbox

3.Under Permissions, select the following scopes:

account_info.read
files.metadata.read
files.content.read
profile
email
  1. Locate the App key and App secret under Settings. Add these credentials to the dev.integrations.yml file to enable Dropbox API integration.