Batch remove external users from enterprise

I’m just getting started with Box CLI and need a way to batch remove hundreds of external users that have tens of thousands of collaborations within an enterprise. We can remove one at a time from the legacy admin dashboard, but I’d like to do this in batch via Box CLI, as advised by Box Support.

I can’t find any documentation on external users specifically, only on the individual collaborations of managed users.


-Vlad Weinstein

Hi @vweinstein ,

Welcome to the forum!

I did some investigation, and found out that via the API:

  • There is no way to list external users. We can at best find an external user based on it’s complete login email, for example:

❯ box users --csv --fields type,id,name,login -e --filter


user,28591479722,EXT02 xx,

  • There is no way to delete external users

External users are created via collaborations and using the API can only be remove if all their collaborations are removed.

  • There is no way to list all the collaborations, we can only request the collaborations for specific files, folders, groups (to which external users can’t belong) and list pending collaborations.

This means you would have to list every file and folder, and for each one get the collaborations.

  • Listing the collaborations for a file or folder, although identifies the user it doesn’t say if the user is external or managed.

This means you would have to somehow create a list with the id’s of the external users.

From all the above, deleting the external users manually may seem to be the best bet, however there is another option (thank you @hass )

You could ask your administrator to create a collaborations report:


Filter the report only by external users:

Which looks like:

Collaboration ID,Owner Name,Owner Login,Path,Path IDs,Item Name,Item ID,Item Type,Collaborator Name,Collaborator Login,Collaborator Type,Collaborator Permission,Inviter Email,Invited Date,Invite Accepted Date
45626725056,Rui Barbosa,,All Files/folder_to_upload/4PL8AF/,0/213535013408/213534631621/,4PL8AF,213534631621,Folder,,,External,Editor,,22-Jun-23,22-Jun-23
48170737751,Rui Barbosa,,All Files/A_Class/,0/220421706333/,A_Class,220421706333,Folder,EXT02 xx,,External,Editor,,7-Sep-23,7-Sep-23

The report generation might take a while…

But this .csv does output only external collaborations, the specific object type (file or folder), the object id, and the collaboration id.

You can just remove all the collaborations, or use the extra data to figure out which ones you want to keep, for example an email , file or folder white list.

From here you should be able to create the final .csv to send to the Box CLI:

❯ box collaborations:delete --help
Remove a collaboration

  $ box collaborations:delete ID

  ID  The ID of the collaboration to delete

  -h, --help                             Show CLI help
  -q, --quiet                            Suppress any non-error output to stderr
  -s, --save                             Save report to default reports folder on disk
  -t, --token=token                      Provide a token to perform this call
  -v, --verbose                          Show verbose output, which can be helpful for debugging
  -y, --yes                              Automatically respond yes to all confirmation prompts
  --as-user=as-user                      Provide an ID for a user
  --bulk-file-path=bulk-file-path        File path to bulk .csv or .json objects
  --csv                                  Output formatted CSV
  --fields=fields                        Comma separated list of fields to show
  --json                                 Output formatted JSON
  --no-color                             Turn off colors for logging
  --save-to-file-path=save-to-file-path  Override default file path to save report

  $ box files:collaborations:delete
  $ box folders:collaborations:delete

  box collaborations:delete 12345

Hope this helps!


1 Like

Hi Rui,
Thank you for this extensive answer.
We were able to put together a csv with the header of ‘ID’ at the top row, and then cleared it all out.
Thanks for your guidance.
-Vlad Weinstein