Organizations Service

Service to manage Organizations in TSB

Organizations

The Organizations service exposes methods to manage the organizations that exist in TSB. Organizations are the root of the Service Bridge object hierarchy. Each organization is completely independent of the other with its own set of tenants, users, teams, clusters and workspaces.

GetOrganization

rpc GetOrganization (tetrateio.api.tsb.v2.GetOrganizationRequest) returns (tetrateio.api.tsb.v2.Organization)

Requires READ

Get the details of an organization.

SyncOrganization

rpc SyncOrganization (tetrateio.api.tsb.v2.SyncOrganizationRequest) returns (tetrateio.api.tsb.v2.SyncOrganizationResponse)

Requires CreateUser, CreateTeam, DeleteUser, DeleteTeam, WriteTeam

SyncOrganization is used by processes that monitor the identity providers to synchronize the users and teams with the ones in TSB.

This method will update the state of users and groups in the organization and will create, modify, and delete groups according to the incoming request. Sync requests are assumed to be a full-sync and to contain all existing users and groups. Existing TSB users and groups that are not contained in a sync request will be deleted from the platform, as it will assume they have been removed from the Identity Provider.

CreateSettings

rpc CreateSettings (tetrateio.api.tsb.v2.CreateOrganizationSettingsRequest) returns (tetrateio.api.tsb.v2.OrganizationSetting)

Requires CreateOrganizationSetting

Create a settings object for the given organization.

GetSettings

rpc GetSettings (tetrateio.api.tsb.v2.GetOrganizationSettingsRequest) returns (tetrateio.api.tsb.v2.OrganizationSetting)

Requires ReadOrganizationSetting

Get the details for the given settings object.

UpdateSettings

rpc UpdateSettings (tetrateio.api.tsb.v2.OrganizationSetting) returns (tetrateio.api.tsb.v2.OrganizationSetting)

Requires WriteOrganizationSetting

Modify the given settings in the given Organization.

ListSettings

rpc ListSettings (tetrateio.api.tsb.v2.ListOrganizationSettingsRequest) returns (tetrateio.api.tsb.v2.ListOrganizationSettingsResponse)

List all the settings objects that have been attached to the given Organization.

DeleteSettings

rpc DeleteSettings (tetrateio.api.tsb.v2.DeleteOrganizationSettingsRequest) returns (google.protobuf.Empty)

Requires DeleteOrganizationSetting

Delete the given settings object from the Organization.

CreateOrganizationSettingsRequest

Request to create a Organization Settings.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource where the Organization Settings will be created.

string = {
  min_len: 1
}

name

string
REQUIRED
The short name for the resource to be created.

string = {
  min_len: 1
}

settings

tetrateio.api.tsb.v2.OrganizationSetting
REQUIRED
Details of the Organization Settings to be created.

message = {
  required: true
}

DeleteOrganizationSettingsRequest

Request to delete a Organization Settings.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Organization Settings.

string = {
  min_len: 1
}

GetOrganizationRequest

Request to retrieve a organization.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the organization.

string = {
  min_len: 1
}

GetOrganizationSettingsRequest

Request to retrieve a Organization Settings.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Organization Settings.

string = {
  min_len: 1
}

ListOrganizationSettingsRequest

Request to list Organization Settings.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list Organization Settings from.

string = {
  min_len: 1
}

ListOrganizationSettingsResponse

List of all existing Organization settings objects in the Organization group.

Field Description Validation Rule

settings

List of tetrateio.api.tsb.v2.OrganizationSetting

SyncOrganizationRequest

Request to synchronize the users and teams in an organization from the configured identity provider.

Field Description Validation Rule

fqn

string
REQUIRED
Internal use only. Auto populated field.

string = {
  min_len: 1
}

sourceType

tetrateio.api.tsb.v2.SourceType
we cannot use the enum_only validation as protoc-gen-validate does not properly import the enum package in the generated code, and it breaks :(

users

List of tetrateio.api.tsb.v2.SyncOrganizationRequest.SyncUser

teams

List of tetrateio.api.tsb.v2.SyncOrganizationRequest.SyncTeam

SyncTeam

Information of a team as synchronized from the team source. This differs slightly from a TSB user since the fields here are raw info that does not have the context of the TSB hierarchy.

Field Description Validation Rule

id

string
REQUIRED
Unique ID for the group.

string = {
  min_len: 1
}

description

string
Optional description for the group.

memberUserIds

List of string
List of user ids for the users that belong to this group.

memberGroupIds

List of string
List of group ids for the groups that are nested into this group.

displayName

string
Friendly name to show the group in the different UIs.

SyncUser

Information of a user as synchronized from the team source. This differs slightly from a TSB user since the fields here are raw info that does not have the context of the TSB hierarchy.

Field Description Validation Rule

id

string
REQUIRED
Unique ID for the user.

string = {
  min_len: 1
}

description

string
Optional description for the user.

email

string
User’s email

loginName

string
The login username for the user.

displayName

string
Friendly name to show the user in the different UIs.

SyncOrganizationResponse

Result of the organization users and team synchronization.

Field Description Validation Rule

failedUsers

tetrateio.api.tsb.v2.SyncOrganizationResponse.FailedIds
List of users that were not synchronized

failedTeams

tetrateio.api.tsb.v2.SyncOrganizationResponse.FailedIds
List of groups that were not synchronized

FailedIds

Field Description Validation Rule

removal

List of string
Users or groups that failed to be removed

addition

List of string
Users or groups that failed to be created

update

List of string
Users or groups that failed to be updated