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
VyacheslavB
5 years agoHelpful | Level 5
When I try to get a list of files I get a nil in response (Swift 5)
I have a simple method where I want to get a list of the user's files. I took the implementation of this method from your PhotoWatch example. I also added a print at each step to track each step. But...
- 5 years ago
You just need to create the ScopeRequest object before calling the authorizeFromControllerV2 method.
As for the error, make sure you're only calling the authorizeFromControllerV2 method once. In your screenshot, I see you're calling authorizeFromControllerV2, and then are also calling a method of your own called "openDropboxAutorization". Are you also calling an authorize method from inside "openDropboxAutorization" by any chance?
Greg-DB
Dropbox Staff
The 'missing_scope' error indicates that while the app is permitted to use that scope, the particular access token you're using to make the API call does not have that scope granted. Adding a scope to your app via the App Console does not retroactively grant that scope to existing access tokens.
That being the case, to make any API calls that require that scope, you'll need to get a new access token with that scope.
VyacheslavB
5 years agoHelpful | Level 5
I created a new token for this account, but I still get this error. It's strange that when I log into the application with this account, I see an another token in the Xcode console. I also try to log into the application under other Dropbox accounts and still get this error. Also I tried disabling all active tokens for this app, but it didn't work.
I can't understand what I'm doing wrong, can you explain in more detail what I should do?
- VyacheslavB5 years agoHelpful | Level 5
I also noticed that although I have checked the boxes for files.content.read and files.metadata.read, the application for some reason does not request access to them.
- VyacheslavB5 years agoHelpful | Level 5
I even created a new application in AppConsole, made the necessary changes to the Xcode project, but I still get the same error...
API auth error - {
".tag" = "missing_scope";
"required_scope" = "files.metadata.read";
}- Greg-DB5 years agoDropbox Staff
When enabling a new scope for an app, make sure you click the "Submit" at the bottom of the page, or else the changes won't take effect.
And, when configuring the app authorization flow, be sure to specify the particular scopes you want to request. When using SwiftyDropbox, that's done by making a ScopeRequest object with the desired scopes in the "scopes" parameter, and passing that to authorizeFromControllerV2 as shown here. That example only includes "account_info.read", but you would want to add "files.metadata.read" to that list, for example.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,910 PostsLatest Activity: 3 days agoIf you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!