diff --git a/temporal/api/cloud/cloudservice/v1/request_response.proto b/temporal/api/cloud/cloudservice/v1/request_response.proto index 9149e6d..176889d 100644 --- a/temporal/api/cloud/cloudservice/v1/request_response.proto +++ b/temporal/api/cloud/cloudservice/v1/request_response.proto @@ -359,8 +359,15 @@ message GetUserGroupsRequest { string page_token = 2; // Filter groups by the namespace they have access to - optional. string namespace = 3; - // Filter groups by their name - optional. - string group_name = 4; + // Filter groups by the display name - optional. + string display_name = 4; + // Filter groups by the google group specification - optional. + GoogleGroupFilter google_group = 5; + + message GoogleGroupFilter { + // Filter groups by the google group email - optional. + string email_address = 1; + } } message GetUserGroupsResponse { diff --git a/temporal/api/cloud/identity/v1/message.proto b/temporal/api/cloud/identity/v1/message.proto index 5fb6179..7db0cae 100644 --- a/temporal/api/cloud/identity/v1/message.proto +++ b/temporal/api/cloud/identity/v1/message.proto @@ -70,12 +70,20 @@ message User { google.protobuf.Timestamp last_modified_time = 8; } +message GoogleGroupSpec { + // The email address of the Google group. + // The email address is immutable. Once set during creation, it cannot be changed. + string email_address = 1; +} + message UserGroupSpec { - // The name of the group as defined in the customer's IdP (e.g. Google group name in Google Workspace) - // The name is immutable. Once set, it cannot be changed - string name = 1; - // The access assigned to the group + // The display name of the group. + string display_name = 1; + // The access assigned to the group. Access access = 2; + // The specification of the google group that this group is associated with. + // For now only google groups are supported, and this field is required. + GoogleGroupSpec google_group = 3; } message UserGroup {