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
PDanos
8 years agoNew member | Level 2
Upload Files Function Powershell - Bad Request
I'm trying to upload files using Powershell to a folder inside our company Dropbox. I'm using a function I googled somewhere (I don't have the URL at hand, sorry about that): function Upload-File...
- 8 years ago
Whenever debugging issues like this (or to retrieve the result, e.g., the file metadata, etc., even in the case of success) be sure to read the response body. It will contain more information, such as a specific error message.
Based on your description though, it looks like the issue is that you're using a Business app with the team member file access feature without specifying the 'Dropbox-API-Select-User' header, which identifies which member of the Business team to operate on.
So, you should either add that header with the relevant member ID, or, if you only need to upload to a specific account anyway, register a different app with the full Dropbox or app folder permission instead. Those aren't Business apps, and just operate on a single account instead of the whole team. They can still be linked to accounts on Business teams though.
Greg-DB
8 years agoDropbox Staff
Whenever debugging issues like this (or to retrieve the result, e.g., the file metadata, etc., even in the case of success) be sure to read the response body. It will contain more information, such as a specific error message.
Based on your description though, it looks like the issue is that you're using a Business app with the team member file access feature without specifying the 'Dropbox-API-Select-User' header, which identifies which member of the Business team to operate on.
So, you should either add that header with the relevant member ID, or, if you only need to upload to a specific account anyway, register a different app with the full Dropbox or app folder permission instead. Those aren't Business apps, and just operate on a single account instead of the whole team. They can still be linked to accounts on Business teams though.
- PDanos8 years agoNew member | Level 2
Hi Greg,
Thank you so much for your help. I seemed to overlook completely the Dropbox-API-Select-User header in the documentation. Before digging into finding the memberID, I chose to follow your suggestion on registering a new app with Full Dropbox permissions, and it did the trick. I was able to upload with no problems.
Also, it's good to know the code was good, so i don't have to change anything on that end.
Thanks again!PS: I found the original link to the code I used for anyone else that wants to use it, and also, to give proper credit: http://laurentkempe.com/2016/04/07/Upload-files-to-DropBox-from-PowerShell/
- Danut3 years agoNew member | Level 2
Maybe something changed. When trying the above script, I get the following error:
Invoke-RestMethod : {"error_summary": "missing_scope/..", "error": {".tag": "missing_scope", "required_scope": "files.content.write"}}
At line:20 char:5
+ Invoke-RestMethod -Uri https://content.dropboxapi.com/2/files/upl ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommandCould this be related with using TLS 1.2?
- Greg-DB3 years agoDropbox Staff
Danut A TLS issue would fail earlier in the connection process, with a different kind of error. A '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. Also, be aware that just 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.
Refer to the OAuth Guide and authorization documentation for more information.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,911 PostsLatest Activity: 9 hours 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!