Need to see if your shared folder is taking up space on your dropbox 👨💻? Find out how to check here.
Forum Discussion
OLR_A
8 years agoNew member | Level 2
API V2 Access team folders of bussines plan with Folder/Files operations
i want to acces team folders using application user api for list,create folders, upload and download,etc.. and i'm going crazy. In API Explorer with function "list_folder", only can acces user ho...
- 8 years ago
It sounds like you're using a Business team with the new team space and member folders configuration that some teams have access to.
That being the case, you'll need to specify the team folder specifically when making API calls to access its contents, for example, by supplying the 'Dropbox-API-Path-Root' header. You can find more information on that here:
https://www.dropbox.com/developers/reference/namespace-guide
The Dropbox API Explorer is built for the older configuration, but we're working on updating the API and SDK support and documentation to support the new one. That's not quite ready yet though, so unfortunately there isn't a good way to use the API Explorer for this right now, but you can run it outside the of Explorer. Apologies for the inconvenience!
Greg-DB
Dropbox Community Moderator
7 years agotianhong To set the 'Dropbox-API-Path-Root' header, you should instead use the provided 'Dropbox.with_path_root' method, like this:
dbx = dropbox.Dropbox(TOKEN).with_path_root(dropbox.common.PathRoot.namespace_id("1990815600"))
dbx.files_list_folder('')tomkr
5 years agoNew member | Level 2
Hi Greg, when I use this with the shared folders namespace ID :
dbx = dropbox.Dropbox(token).with_path_root(dropbox.common.PathRoot.namespace_id("6951349920"))
dbx.files_list_folder('')I get the following error:
BadInputError('1cac57bc6ffa43f2ab66041af9f4dec7', 'Error in call to API function "files/list_folder": This API function operates on a single Dropbox account, but the OAuth 2 access token you provided is for an entire Dropbox Business team. Since your API app key has team member file access permissions, you can operate on a team member\'s Dropbox by providing the "Dropbox-API-Select-User" HTTP header or "select_user" URL parameter to specify the exact user <https://www.dropbox.com/developers/documentation/http/teams>.')I do not see in the documentation how to set the "select_user" or "Dropbox-API-Select-User" parameters in the python API.
When getting the member ID, would you use something like:
```
dbx = dropbox.DropboxTeam(token)
members = dbx.team_members_list()
member_id = members.members[0].profile.team_member_id
```
?
- tomkr5 years agoNew member | Level 2
As a quick update, when I set the header with:
dbx_team = dropbox.DropboxTeam(token)
members = dbx_team.team_members_list()
member_id = members.members[0].profile.team_member_idheader = {"Dropbox-API-Select-User": member_id}
dbx = dropbox.Dropbox(token, header).with_path_root(dropbox.common.PathRoot.namespace_id("8378003952"))
I get the same error.
- Greg-DB5 years ago
Dropbox Community Moderator
tomkr This error message you're getting is referring to specifying what account on the Business team to operate on behalf of. For reference, when using any "team scopes", the resulting access token is connected to an entire Dropbox Business team, not an individual account. So, when using a team-scoped access token to access user-specific endpoints, such as files_list_folder, you will need to specify which member of the team you want to operate on behalf of.
To do this, you'd need to specify the 'Dropbox-API-Select-User' header. The value should be the 'team_member_id' for whichever member you wish to act on behalf of, such as returned by team_members_list/team_members_list_continue, or team_members_get_info, etc. In the Python SDK, you can set the header using DropboxTeam.as_user.
Alternatively, if you just want to connect to a particular account, you can disable any team scopes and get a new access token without them. The access token without the team scopes will be specific to the particular account (Business or not) and so will not require the additional header. You can find more information on scopes in the OAuth Guide. If you don't need to call any team endpoints (e.g., if you just need to call file endpoints, such as files_list_folder), I recommend this solution instead for simplicity and security.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
The Dropbox Community team is active from Monday to Friday. We try to respond to you as soon as we can, usually within 2 hours.
If 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, Facebook or Instagram.
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!