Setting Up Default Channels on Multi-Tenant App

I’m in the process of integrating Sendbird into our app for the first time and I’m figuring out how to architect things. Our app is a multi-tenant app, that is there are several tenants (or customers) that use the app - each of those customers is independent and their datasets need to stay isolated.

When a user for a customer/tenant signs in for the first time, we need to auto-join them to the groups that correspond to their role and they won’t have discretion over what groups they are part of, that is all determined by their role and will be managed elsewhere in the app. These groups will vary across users, but each tenant has independent group lists.

In additon, users can start 1:1 or 1:N chats with others if needed.

Initially I was intending to use private groups. Which would ensure that each tenant stayed independent, but after reading a bit more it seems that I can’t auto-join (i.e. I need to send an invitation and have that invitation be accepted by the user).

The other option is to make every group essentially public - and control the groups that a user can see or interact with on my side (which I can do I think). I’m sure others have worked through this before. How have you done it?