I'm currently working on a few different workflows using branch versioning, and am running into some issues around the access levels, and being able to set them for the default version of a service.
In reading another idea I learnt that in branch versioning the access level for the default version can only be set by a DBO (e.g. SDE user connection) and when set, the access applied to every default version of other services using data in this Enterprise GDB, so when the DBO sets the default version to protected, all branch version services using data in this EGDB will also be protected.
My idea to work within this constraint would be to have an item created within your portal each time a new version is created, even the default version. That way, you could much more easily share different versions of the data with different groups within the portal to edit, including the default version of the branch versioned service. You could then share a map service to share default version with your org, or publish a non-editable feature service version of the data.
Map Service (itemID_0) (Default Version) : shared to everyone to view
Feature Service (itemID_1) (Default Version) : shared to data owners to post/reconcile/edit
Feature Service (itemID_2) (Team 1 Version) : shared to a group of editors
Feature Service (itemID_X) (Team X Version) : shared to another team to allow edits
You could create items yourself, using URL parameters, though I think it would probably be tied to the sharing of the Default item. We're having this issue in that in an ExB app, with the Branch Version Manager, that Team 1 and Team 2 could edit the Default version unless all Branch Versioning Default is set to Protected.