We are aware of the issue with the badge emails resending to everyone, we apologise for the inconvenience - learn more here.
Forum Discussion
icefishandrew
2 years agoExplorer | Level 3
Get all shared links for a file
I have a .net app that needs to get all of the shared links for a particular file. The only way I can see to do this is to:
Get a DropboxTeamClient with "team_info.read", "team_data.member", "gr...
- 2 years ago
An access token is just a string, so you could technically transmit it using whatever communication mechanism you wish. If you give the access token string, which was created by authorization from an admin, to a non-admin user, they could then technically run the same code to make a DropboxTeamClient, list groups, list members, operate as members, and list shared links.
That wouldn't be recommended though, as a matter of security, as a team-linked access token like that enables access that a non-admin doesn't have.
icefishandrew
Explorer | Level 3
Thanks Greg.
Is there a way to get all of the shared links that exist for a file, without using the DropboxTeamClient? If I only have a DropboxClient for the current user, I can only see the shared links for a file for that user, correct?
Greg-DB
2 years agoDropbox Staff
Yes, if you have a DropboxClient you can call ListSharedLinksAsync to list the shared links for that file for only that user. If you only need to list all of the shared links for that file for that particular user, that would work.
If you need to be able to list all shared links for a file across all members of the team though, you would need to use the team scopes and start with the DropboxTeamClient, as that's how you would get access to all team member accounts, and call for each member. In that case, you don't need to have each member authorize the app themself though, as the single authorization from a team admin would grant access to the entire team.
- icefishandrew2 years agoExplorer | Level 3
Yes, I'm trying to list all shared links for a file across all members of the team. I guess the part I'm stuck on then is how to get the DropboxTeamClient for a non-Admin user. What oauth2accessToken would I use to create a new DropboxTeamClient?
- Greg-DB2 years agoDropbox Staff
You cannot get a DropboxTeamClient based on a non-admin's authorization. To get a DropboxTeamClient, you would need to use team scopes and have an admin authorize the connection. Since using team scopes means the connection would be able to access the entire team and perform team-level operations, only a team admin is able to perform that authorization.
When using team scopes and having a team admin authorize the app, the resulting access token is connected to the team itself and can be used to get a DropboxTeamClient. If you need to operate on all team member accounts (whether the members are admins or not) without having each member individually authorize the app, that would be the right process to follow. That would only need to be authorized by an admin once.
- icefishandrew2 years agoExplorer | Level 3
The app is using team scopes, and has been authorized by an admin (me). Everything works fine on my computer using my Dropbox account.
How does a non-admin user, on a different computer, get access to the resulting team connected token? Do you have a code example of how the non-admin user would create a new DropboxTeamClient, using the token I created as an admin?
The goal is to be able to have a non-admin user get all of the members of the team, and check the shared links for each member.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,877 PostsLatest Activity: 12 months 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!