import { ExtendedIntegrationPluginId, Plugin } from '../../types/index.js'; import { PUBLIC_INTEGRATIONS_LOGO_URL } from './constants.js'; import { getNativeOpenApiPlugin } from './shared/index.js'; export const DropboxPlugin: Plugin = getNativeOpenApiPlugin({ name: 'Dropbox', id: ExtendedIntegrationPluginId.DROPBOX, authMethods: { oauth2BringYourOwn: { authorizationUrl: 'https://www.dropbox.com/oauth2/authorize', tokenUrl: 'https://www.dropbox.com/oauth2/token', revokeTokenUrl: 'https://api.dropboxapi.com/2/auth/token/revoke', iconUrl: `${PUBLIC_INTEGRATIONS_LOGO_URL}/dropbox.png`, defaultScope: 'account_info.read files.metadata.read files.content.read files.content.write', authorizationExtraParams: { stateConfigExclude: ['datasource-auth-state'], responseType: 'code', additionalUrlParams: { token_access_type: 'offline' } } } }, serverURL: 'https://content.dropboxapi.com' });