You might see that the Dropbox Community team have been busy working on some major updates to the Community itself! So, here is some info on what’s changed, what’s staying the same and what you can expect from the Dropbox Community overall.

Forum Discussion

nevermindx's avatar
nevermindx
Explorer | Level 4
4 months ago

Property 'auth' does not exist on type 'Dropbox'

auth

export class DropboxService {
private dbx: Dropbox

constructor() {
this.dbx = new Dropbox({
fetch,
clientId: dropboxConfig.clientId,
clientSecret: dropboxConfig.clientSecret,
})
}

generateAuthUrl() {
const authUrl = this.dbx.auth.getAuthenticationUrl(
dropboxConfig.redirectUri,
undefined,
'code',
)
return authUrl
} shows error auth doest not exist on Dropbox
  • Ha..🤣 You just found an imperfection out. 🤫

    The 'auth' field is there, but for whatever reason is not declared in type script. 🤷 That's why your interpreter complains.

    You can workaround as re-declare Dropbox and include the "missing" field or construct DropboxAuth object on your own, save a reference, and pass it on construction of Dropbox object - this.auth = new DropboxAuth({fetch, ...}); this.dbx = new Dropbox({auth}) (so instead of this.dbx.auth... you may use just this.auth...).

    Hope this helps.

  • Greg-DB's avatar
    Greg-DB
    Icon for Dropbox Staff rankDropbox Staff

    Thanks for the report! I'll ask the team to add this to the types.

    • nevermindx's avatar
      nevermindx
      Explorer | Level 4

      got the solution actually i had to do 

      importDropboxAuth } from 'dropbox' instead of  import { Dropbox } from 'dropbox'
       
      then i was able to to do  dbxAuth.getAuthenticationUrl()