You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by is...@apache.org on 2021/12/01 22:21:23 UTC

[airavata-custos] branch develop updated: improve python sdk resource management client

This is an automated email from the ASF dual-hosted git repository.

isjarana pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/airavata-custos.git


The following commit(s) were added to refs/heads/develop by this push:
     new 7738880  improve python sdk resource management client
     new adae21f  Merge pull request #247 from isururanawaka/develop
7738880 is described below

commit 77388806cadf98ce81c8c23423e0e8e65ca0b7f6
Author: Isuru Ranawaka <ir...@gmail.com>
AuthorDate: Wed Dec 1 17:19:52 2021 -0500

    improve python sdk resource management client
---
 .../custos-python-sdk/build/lib/custos/__init__.py |    0
 .../build/lib/custos/clients/__init__.py           |    0
 .../lib/custos/clients/agent_management_client.py  |  294 --
 .../lib/custos/clients/group_management_client.py  |  169 -
 .../custos/clients/identity_management_client.py   |  240 --
 .../clients/resource_secret_management_client.py   |  207 --
 .../custos/clients/sharing_management_client.py    |  120 -
 .../clients/super_tenant_management_client.py      |   80 -
 .../lib/custos/clients/tenant_management_client.py |  269 --
 .../lib/custos/clients/user_management_client.py   |  387 --
 .../build/lib/custos/clients/utils/__init__.py     |    0
 .../utils/certificate_fetching_rest_client.py      |   79 -
 .../build/lib/custos/clients/utils/utilities.py    |    8 -
 .../build/lib/custos/samples/__init__.py           |    0
 .../lib/custos/samples/agent_management_samples.py |   49 -
 .../lib/custos/samples/group_management_samples.py |   63 -
 .../custos/samples/identity_management_samples.py  |   70 -
 .../custos/samples/resource_secert_management.py   |   80 -
 .../build/lib/custos/samples/resources/__init__.py |    0
 .../build/lib/custos/samples/resources/cert.pem    |   31 -
 .../custos/samples/tenant_management_samples.py    |   95 -
 .../lib/custos/samples/user_management_samples.py  |  109 -
 .../build/lib/custos/server/__init__.py            |    0
 .../custos/server/core/AgentProfileService_pb2.py  |  361 --
 .../server/core/AgentProfileService_pb2_grpc.py    |  182 -
 .../server/core/ClusterManagementService_pb2.py    |  139 -
 .../core/ClusterManagementService_pb2_grpc.py      |   46 -
 .../server/core/CredentialStoreService_pb2.py      | 1056 ------
 .../server/core/CredentialStoreService_pb2_grpc.py |  677 ----
 .../core/FederatedAuthenticationService_pb2.py     | 1007 ------
 .../FederatedAuthenticationService_pb2_grpc.py     |  347 --
 .../lib/custos/server/core/IamAdminService_pb2.py  | 3689 --------------------
 .../custos/server/core/IamAdminService_pb2_grpc.py | 1635 ---------
 .../lib/custos/server/core/IdentityService_pb2.py  |  990 ------
 .../custos/server/core/IdentityService_pb2_grpc.py |  414 ---
 .../lib/custos/server/core/LoggingService_pb2.py   |  402 ---
 .../custos/server/core/LoggingService_pb2_grpc.py  |  165 -
 .../lib/custos/server/core/MessagingService_pb2.py |  334 --
 .../server/core/MessagingService_pb2_grpc.py       |   99 -
 .../server/core/ResourceSecretService_pb2.py       | 1360 --------
 .../server/core/ResourceSecretService_pb2_grpc.py  |  660 ----
 .../lib/custos/server/core/SharingService_pb2.py   | 1552 --------
 .../custos/server/core/SharingService_pb2_grpc.py  |  891 -----
 .../custos/server/core/TenantProfileService_pb2.py | 1329 -------
 .../server/core/TenantProfileService_pb2_grpc.py   |  330 --
 .../custos/server/core/UserProfileService_pb2.py   | 1454 --------
 .../server/core/UserProfileService_pb2_grpc.py     |  825 -----
 .../build/lib/custos/server/core/__init__.py       |    0
 .../integration/AgentManagementService_pb2.py      |  389 ---
 .../integration/AgentManagementService_pb2_grpc.py |  546 ---
 .../integration/ClusterManagementService_pb2.py    |  162 -
 .../ClusterManagementService_pb2_grpc.py           |   83 -
 .../integration/GroupManagementService_pb2.py      |  309 --
 .../integration/GroupManagementService_pb2_grpc.py |  843 -----
 .../integration/IdentityManagementService_pb2.py   |  498 ---
 .../IdentityManagementService_pb2_grpc.py          |  449 ---
 .../server/integration/LogManagementService_pb2.py |  100 -
 .../integration/LogManagementService_pb2_grpc.py   |  149 -
 .../ResourceSecretManagementService_pb2.py         |  281 --
 .../ResourceSecretManagementService_pb2_grpc.py    |  745 ----
 .../integration/SharingManagementService_pb2.py    |  328 --
 .../SharingManagementService_pb2_grpc.py           |  908 -----
 .../integration/TenantManagementService_pb2.py     | 1048 ------
 .../TenantManagementService_pb2_grpc.py            |  748 ----
 .../integration/UserManagementService_pb2.py       |  764 ----
 .../integration/UserManagementService_pb2_grpc.py  |  811 -----
 .../lib/custos/server/integration/__init__.py      |    0
 .../build/lib/custos/transport/certificate.pem     |   58 -
 .../build/lib/custos/transport/settings.py         |   36 -
 .../clients/resource_secret_management_client.py   |   92 +-
 .../clients/utils/exceptions/CustosExceptions.py   |   20 +
 .../clients/utils/exceptions}/__init__.py          |    0
 .../custos-python-sdk/custos_sdk.egg-info/PKG-INFO |    2 +-
 .../custos_sdk.egg-info/SOURCES.txt                |    2 +
 custos-client-sdks/custos-python-sdk/setup.py      |    2 +-
 75 files changed, 94 insertions(+), 31573 deletions(-)

diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/__init__.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/__init__.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/agent_management_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/agent_management_client.py
deleted file mode 100644
index 8bd2dca..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/agent_management_client.py
+++ /dev/null
@@ -1,294 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-
-import logging
-import grpc
-
-from custos.transport.settings import CustosServerClientSettings
-
-from custos.server.integration.AgentManagementService_pb2_grpc import AgentManagementServiceStub
-from custos.server.core.IamAdminService_pb2 import AgentClientMetadata, RegisterUserRequest, \
-    UserRepresentation, UserAttribute, AddUserAttributesRequest, DeleteUserAttributeRequest, AddUserRolesRequest, \
-    DeleteUserRolesRequest, AddProtocolMapperRequest, ClaimJSONTypes, MapperTypes
-from custos.server.integration.AgentManagementService_pb2 import AgentSearchRequest
-from custos.clients.utils.certificate_fetching_rest_client import CertificateFetchingRestClient
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-
-
-class AgentManagementClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings = custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        certManager = CertificateFetchingRestClient(custos_server_setting)
-        certManager.load_certificate()
-        with open(self.custos_settings.CUSTOS_CERT_PATH, 'rb') as f:
-            trusted_certs = f.read()
-        self.channel_credentials = grpc.ssl_channel_credentials(root_certificates=trusted_certs)
-        self.channel = grpc.secure_channel(target=self.target, credentials=self.channel_credentials)
-        self.agent_stub = AgentManagementServiceStub(self.channel)
-
-    def enable_agents(self, token):
-        """
-        Enable agent registration for realm
-        :param token:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = AgentClientMetadata()
-
-            return self.agent_stub.enableAgents(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while enabling agents")
-            raise
-
-    def configure_agent_client(self, token, access_token_life_time):
-        """
-        Configure agent client
-        :param token:
-        :param access_token_life_time:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = AgentClientMetadata(access_token_life_time=access_token_life_time)
-
-            return self.agent_stub.enableAgents(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while configuring agent client")
-            raise
-
-    def register_and_enable_agent(self, token, agent):
-        """
-        Register and enable agent
-        :param agent:
-        :param token:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            attributeList = []
-            for atr in agent['attributes']:
-                attribute = UserAttribute(key=atr['key'], values=atr['values'])
-                attributeList.append(attribute)
-            id = agent['id']
-            realm_roles = agent['realm_roles']
-            user = UserRepresentation(id=id, realm_roles=realm_roles, attributes=attributeList)
-            request = RegisterUserRequest(user=user)
-
-            return self.agent_stub.registerAndEnableAgent(request=request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred while enabling agents")
-            raise
-
-    def get_agent(self, token, id):
-        """
-        Get agent having id
-        :param token:
-        :param id:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = AgentSearchRequest(id=id)
-            return self.agent_stub.getAgent(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while fetching agent")
-            raise
-
-    def delete_agent(self, token, id):
-        """
-        Delete agent having id
-        :param token:
-        :param id:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = AgentSearchRequest(id=id)
-            return self.agent_stub.deleteAgent(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while deleting agent")
-            raise
-
-    def disable_agent(self, token, id):
-        """
-        Disable agent having id
-        :param token:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = AgentSearchRequest(id=id)
-            return self.agent_stub.disableAgent(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while disabling agent")
-            raise
-
-    def enable_agent(self, token, id):
-        """
-        Enable agent having id
-        :param token:
-        :param id:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = AgentSearchRequest(id=id)
-            return self.agent_stub.enableAgent(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while enabling agent")
-            raise
-
-    def add_agent_attributes(self, token, agents, attributes):
-        """
-        Add attributes to agents
-        :param token:
-        :param agents:
-        :param attributes:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            attributeList = []
-            for atr in attributes:
-                attribute = UserAttribute(key=atr['key'], values=atr['values'])
-                attributeList.append(attribute)
-
-            request = AddUserAttributesRequest(attributes=attributeList, agents=agents)
-            return self.agent_stub.addAgentAttributes(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while adding agent attributes")
-            raise
-
-    def delete_agent_attributes(self, token, agents, attributes):
-        """
-        Delete agent attributes of agents
-        :param token:
-        :param agents:
-        :param attributes:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            attributeList = []
-            for atr in attributes:
-                attribute = UserAttribute(key=atr['key'], values=atr['values'])
-                attributeList.append(attribute)
-
-            request = DeleteUserAttributeRequest(attributes=attributeList, agents=agents)
-            return self.agent_stub.deleteAgentAttributes(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while deleting agent attributes")
-            raise
-
-    def add_roles_to_agents(self, token, agents, roles):
-        """
-        Add roles to agents
-        :param token:
-        :param agents:
-        :param roles:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = AddUserRolesRequest(agents=agents, roles=roles)
-            return self.agent_stub.addRolesToAgent(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred whiling adding roles to agents")
-            raise
-
-    def delete_roles_from_agent(self, token, id, roles):
-        """
-        Delete roles from agent
-        :param token:
-        :param id:
-       :param roles:
-       :return:
-       """
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = DeleteUserRolesRequest(id=id, roles=roles)
-            return self.agent_stub.deleteRolesFromAgent(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while enabling agents")
-            raise
-
-    def add_protocol_mapper(self, token, name, attribute_name, claim_name, claim_type, mapper_type,
-                            add_to_id_token, add_to_access_token, add_to_user_info, multi_valued,
-                            aggregate_attribute_values):
-        """
-        Add protocol mapper to agent client
-        :param token:
-        :param name:
-        :param attribute_name:
-        :param claim_name:
-        :param claim_type:
-        :param mapper_type:
-        :param add_to_id_token:
-        :param add_to_access_token:
-        :param add_to_user_info:
-        :param multi_valued:
-        :param aggregate_attribute_values:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            wrapped_json_type = ClaimJSONTypes.Value(claim_type)
-            wrapped_mapper_type = MapperTypes.Value(mapper_type)
-
-            request = AddProtocolMapperRequest(name=name,
-                                               attribute_name=attribute_name,
-                                               claim_name=claim_name,
-                                               claim_type=wrapped_json_type,
-                                               mapper_type=wrapped_mapper_type,
-                                               add_to_id_token=add_to_id_token,
-                                               add_to_access_token=add_to_access_token,
-                                               add_to_user_info=add_to_user_info,
-                                               multi_valued=multi_valued,
-                                               aggregate_attribute_values=aggregate_attribute_values
-                                               )
-
-            return self.agent_stub.addProtocolMapper(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in add_protocol_mapper, probably due to invalid parameters")
-            raise
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/group_management_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/group_management_client.py
deleted file mode 100644
index b80b051..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/group_management_client.py
+++ /dev/null
@@ -1,169 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-
-import logging
-import grpc
-
-from custos.transport.settings import CustosServerClientSettings
-
-from custos.server.integration.GroupManagementService_pb2_grpc import GroupManagementServiceStub
-
-from custos.server.core.UserProfileService_pb2 import GroupToGroupMembership, Group, GroupRequest, GroupMembership
-from custos.clients.utils.certificate_fetching_rest_client import CertificateFetchingRestClient
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-
-
-class GroupManagementClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings = custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        certManager = CertificateFetchingRestClient(custos_server_setting)
-        certManager.load_certificate()
-        with open(self.custos_settings.CUSTOS_CERT_PATH, 'rb') as f:
-            trusted_certs = f.read()
-        self.channel_credentials = grpc.ssl_channel_credentials(root_certificates=trusted_certs)
-        self.channel = grpc.secure_channel(target=self.target, credentials=self.channel_credentials)
-        self.group_stub = GroupManagementServiceStub(self.channel)
-
-    def create_group(self, token, name, description, owner_id):
-        """
-        Create groups
-        :param owner_id:
-        :param description:
-        :param name:
-        :param token:
-        :return:
-        """
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            rep = Group(name=name, realm_roles=[], client_roles=[],
-                        attributes=[], description=description,
-                        owner_id=owner_id)
-
-            request = GroupRequest(group=rep)
-
-            return self.group_stub.createGroup(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while creating groups")
-            raise
-
-    def delete_group(self, token, id):
-        """
-        delete group using group id
-        :param token:
-        :param id:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = GroupRequest(id=id)
-            return self.group_stub.deleteGroup(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while deleting group")
-            raise
-
-    def find_group(self, token, group_name, group_id):
-        """
-        find group using group name
-        :param token:
-        :param group_name:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            gr = Group(id=group_id, name=group_name)
-            request = GroupRequest(id=group_id, group=gr)
-            return self.group_stub.findGroup(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred finding group")
-            raise
-
-    def get_all_groups(self, token):
-        """
-        Get all groups of tenant
-        :param token:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = GroupRequest()
-            return self.group_stub.getAllGroups(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while pulling groups")
-            raise
-
-    def add_user_to_group(self, token, username, group_id, membership_type):
-        """
-        Add user to group
-        :param token:
-        :param username:
-        :param group_id:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = GroupMembership(username=username, group_id=group_id, type=membership_type)
-            return self.group_stub.addUserToGroup(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while adding user to group")
-            raise
-
-    def remove_user_from_group(self, token, username, group_id):
-        """
-        Remove user from group
-        :param token:
-        :param username:
-        :param group_id:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = GroupMembership(username=username, group_id=group_id)
-            return self.group_stub.removeUserFromGroup(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while removing user from group")
-            raise
-
-    def add_child_group(self, token, parent_group_id, child_group_id):
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            grm = GroupToGroupMembership(child_id=child_group_id, parent_id=parent_group_id)
-            return self.group_stub.addChildGroupToParentGroup(request=grm, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while adding child group")
-            raise
-
-    def remove_child_group(self, token, parent_group_id, child_group_id):
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            grm = GroupToGroupMembership(child_id=child_group_id, parent_id=parent_group_id)
-            return self.group_stub.removeChildGroupFromParentGroup(request=grm, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while removing child group from group")
-            raise
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/identity_management_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/identity_management_client.py
deleted file mode 100644
index c90a1b2..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/identity_management_client.py
+++ /dev/null
@@ -1,240 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-import logging
-
-import grpc
-from custos.transport.settings import CustosServerClientSettings
-
-from custos.server.integration.IdentityManagementService_pb2_grpc import IdentityManagementServiceStub
-from custos.server.core.IdentityService_pb2 import AuthenticationRequest, AuthToken, Claim, \
-    GetUserManagementSATokenRequest, \
-    GetTokenRequest, GetOIDCConfiguration, EndSessionRequest
-from custos.server.integration.IdentityManagementService_pb2 import AuthorizationRequest, GetCredentialsRequest, \
-    EndSessionRequest as Er, GetAgentTokenRequest
-from custos.clients.utils.certificate_fetching_rest_client import CertificateFetchingRestClient
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-
-
-class IdentityManagementClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings = custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        certManager = CertificateFetchingRestClient(custos_server_setting)
-        certManager.load_certificate()
-        with open(self.custos_settings.CUSTOS_CERT_PATH, 'rb') as f:
-            trusted_certs = f.read()
-        self.channel_credentials = grpc.ssl_channel_credentials(root_certificates=trusted_certs)
-        self.channel = grpc.secure_channel(target=self.target, credentials=self.channel_credentials)
-        self.identity_stub = IdentityManagementServiceStub(self.channel)
-
-    def authenticate(self, token, username, password):
-        """
-        Used for local authentication
-        :param token client credentials
-        :param username Users username
-        :param password Users password
-        :return: Access token
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = AuthenticationRequest(username=username, password=password)
-
-            return self.identity_stub.authenticate(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in authenticate, probably due to invalid parameters")
-            raise
-
-    def is_authenticated(self, token, user_access_token, username):
-        """
-        Check access token is valid
-        :param token: client credential token
-        :param user_access_token access token of user
-        :param username
-        :return: status (TRUE, FALSE)
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            claim = Claim(key="username", value=username)
-
-            claims = []
-            claims.append(claim)
-
-            request = AuthToken(accessToken=user_access_token, claims=claims)
-
-            return self.identity_stub.isAuthenticated(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in is_authenticated, probably due to invalid parameters")
-            raise
-
-    def get_service_account_access_token(self, token):
-        """
-        Get service account access token
-        :param token: client credentials
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = GetUserManagementSATokenRequest();
-
-            return self.identity_stub.getUserManagementServiceAccountAccessToken(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in get_service_account_access_token, probably due to invalid parameters")
-            raise
-
-    def authorize(self, client_id, redirect_uri, response_type, scope, state):
-        """
-        return authorize url of keycloak
-        :param redirect_uri: redirect URI of client
-        :param response_type: response type (code)
-        :param scope: (openid email profile)
-        :param state: (random number)
-        :return:
-        """
-        try:
-            request = AuthorizationRequest(client_id=client_id, redirect_uri=redirect_uri, response_type=response_type,
-                                           scope=scope,
-                                           state=state)
-
-            return self.identity_stub.authorize(request)
-        except Exception:
-            logger.exception("Error occurred in authorize, probably due to invalid parameters")
-            raise
-
-    def token(self, token, redirect_uri=None, code=None, username=None, password=None, refresh_token=None,
-              grant_type=None):
-        """
-        provide user access token
-        :param token: client credentials
-        :param redirect_uri: redirect uri
-        :param code: code returned from token
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = GetTokenRequest(redirect_uri=redirect_uri, code=code,
-                                      username=username, password=password, refresh_token=refresh_token,
-                                      grant_type=grant_type)
-
-            return self.identity_stub.token(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in token, probably due to invalid parameters")
-            raise
-
-    def get_credentials(self, token, client_id):
-        """
-        provides IAM and CILogon credentials
-        :param token
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = GetCredentialsRequest(client_id=client_id)
-
-            return self.identity_stub.getCredentials(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in get_credentials, probably due to invalid parameters")
-            raise
-
-    def get_oidc_configuration(self, token, client_id):
-        """
-        send the OIDC config
-        :param token client credentials
-        :param client_id
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = GetOIDCConfiguration(client_id=client_id)
-
-            return self.identity_stub.getOIDCConfiguration(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in get_OIDC_Configuration, probably due to invalid parameters")
-            raise
-
-    def end_user_session(self, token, refresh_token):
-        """
-        End user session
-        :param token:
-        :param refresh_token:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            body = EndSessionRequest(refresh_token=refresh_token)
-            request = Er(body=body)
-
-            return self.identity_stub.endUserSession(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while ending user session")
-            raise
-
-    def get_agent_token(self, token, client_id, grant_type, refresh_token=None):
-        """
-        Get agent token
-        :param token: base64Encoded(agentId:agentSec)
-        :param client_id: parent Client Id
-        :param grant_type: client_credentials, refresh_token
-        :param refresh_token:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = GetAgentTokenRequest(client_id=client_id, grant_type=grant_type, refresh_token=refresh_token)
-
-            return self.identity_stub.getAgentToken(request=request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred while fetching agent token")
-            raise
-
-    def end_agent_session(self, token, refresh_token):
-        """
-        End user session
-        :param token: base64Encoded(agentId:agentSec)
-        :param refresh_token:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            body = EndSessionRequest(refresh_token=refresh_token)
-            request = Er(body=body)
-
-            return self.identity_stub.endAgentSession(request=request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while ending agent session")
-            raise
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/resource_secret_management_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/resource_secret_management_client.py
deleted file mode 100644
index 53fde07..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/resource_secret_management_client.py
+++ /dev/null
@@ -1,207 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-
-import logging
-import grpc
-
-from custos.transport.settings import CustosServerClientSettings
-
-from custos.server.integration.ResourceSecretManagementService_pb2_grpc import ResourceSecretManagementServiceStub
-from custos.server.core.IdentityService_pb2 import GetJWKSRequest
-from custos.server.core.ResourceSecretService_pb2 import GetSecretRequest, SecretMetadata, ResourceOwnerType, \
-    ResourceSource, KVCredential, ResourceType, SSHCredential, PasswordCredential, GetResourceCredentialByTokenRequest
-from google.protobuf.json_format import MessageToJson
-from custos.clients.utils.certificate_fetching_rest_client import CertificateFetchingRestClient
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-
-
-class ResourceSecretManagementClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings = custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        certManager = CertificateFetchingRestClient(custos_server_setting)
-        certManager.load_certificate()
-        with open(self.custos_settings.CUSTOS_CERT_PATH, 'rb') as f:
-            trusted_certs = f.read()
-        self.channel_credentials = grpc.ssl_channel_credentials(root_certificates=trusted_certs)
-        self.channel = grpc.secure_channel(target=self.target, credentials=self.channel_credentials)
-        self.resource_sec_client = ResourceSecretManagementServiceStub(self.channel)
-
-    def get_secret(self, token, owner_type, resource_type, source, name):
-        """
-        Get secret from secret service
-        :param token:
-        :param owner_type:
-        :param resource_type:
-        :param source:
-        :param name:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            owner_type = ResourceOwnerType.Value(owner_type)
-            resource_type = ResourceType.Value(resource_type)
-            source = ResourceSource.Value(source)
-            met = SecretMetadata(owner_type=owner_type,
-                                 resource_type=resource_type, source=source, name=name)
-            request = GetSecretRequest(metadata=met)
-            msg = self.resource_sec_client.getSecret(request=request, metadata=metadata)
-            return MessageToJson(msg)
-        except Exception:
-            logger.exception("Error occurred while fetching secrets")
-            raise
-
-    def get_JWKS(self, token):
-        """
-        Get JWKS resources
-        :param token:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = GetJWKSRequest()
-            msg = self.resource_sec_client.getJWKS(request=request, metadata=metadata)
-            return MessageToJson(msg)
-        except Exception:
-            logger.exception("Error occurred while fetching JWKS request")
-            raise
-
-    def add_ssh_credential(self, token, client_id, owner_id, description):
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            secret_metadata = SecretMetadata(client_id=client_id, owner_id=owner_id, description=description)
-            ssh_cred = SSHCredential(metadata=secret_metadata)
-
-            return self.resource_sec_client.addSSHCredential(request=ssh_cred, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred while creating ssh key")
-            raise
-
-    def add_password_credential(self, token, client_id, owner_id, description, password):
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            secret_metadata = SecretMetadata(client_id=client_id, owner_id=owner_id, description=description)
-            password_cred = PasswordCredential(metadata=secret_metadata, password=password)
-
-            return self.resource_sec_client.addPasswordCredential(request=password_cred, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred while creating password key")
-            raise
-
-    def get_ssh_credential(self, token, client_id, ssh_credential_token):
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = GetResourceCredentialByTokenRequest(client_id=client_id, token=ssh_credential_token)
-
-            msg = self.resource_sec_client.getSSHCredential(request=request, metadata=metadata)
-            return MessageToJson(msg)
-        except Exception:
-            logger.exception("Error occurred while creating ssh key")
-            raise
-
-    def get_password_credential(self, token, client_id, password_credential_token):
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            request = GetResourceCredentialByTokenRequest(client_id=client_id, token=password_credential_token)
-
-            msg = self.resource_sec_client.getPasswordCredential(request=request, metadata=metadata)
-            return MessageToJson(msg)
-        except Exception:
-            logger.exception("Error occurred while creating password key")
-            raise
-
-    def set_KV_credential(self, token, client_id, key, value, user_token=None, user_name=None):
-        try:
-            token = "Bearer " + token
-            if user_token is None:
-                metadata = (('authorization', token), ('owner_id', user_name),)
-            else:
-                metadata = (('authorization', token), ('user_token', user_token),)
-            secret_metadata = SecretMetadata(client_id=client_id)
-            request = KVCredential(key=key, value=value, metadata=secret_metadata)
-
-            msg = self.resource_sec_client.addKVCredential(request=request, metadata=metadata)
-            return MessageToJson(msg)
-        except Exception:
-            logger.exception("Error occurred while creating KV credential")
-            raise
-
-    def update_KV_credential(self, token, client_id, key, value, user_token=None, user_name=None):
-        try:
-            token = "Bearer " + token
-            if user_token is None:
-                metadata = (('authorization', token), ('owner_id', user_name),)
-            else:
-                metadata = (('authorization', token), ('user_token', user_token),)
-            secret_metadata = SecretMetadata(client_id=client_id)
-            request = KVCredential(key=key, value=value, metadata=secret_metadata)
-
-            msg = self.resource_sec_client.updateKVCredential(request=request, metadata=metadata)
-            return MessageToJson(msg)
-        except Exception:
-            logger.exception("Error occurred while updating KV credential")
-            raise
-
-    def delete_KV_credential(self, token, client_id, key, user_token=None, user_name=None):
-        try:
-            token = "Bearer " + token
-            if user_token is None:
-                metadata = (('authorization', token), ('owner_id', user_name),)
-            else:
-                metadata = (('authorization', token), ('user_token', user_token),)
-            secret_metadata = SecretMetadata(client_id=client_id)
-            request = KVCredential(key=key, metadata=secret_metadata)
-
-            msg = self.resource_sec_client.deleteKVCredential(request=request, metadata=metadata)
-            return MessageToJson(msg)
-
-        except Exception:
-            logger.exception("Error occurred while deleting KV credential")
-            raise
-
-    def get_KV_credential(self, token, client_id, key, user_token=None, user_name=None):
-        try:
-            token = "Bearer " + token
-            if user_token is None:
-                metadata = (('authorization', token), ('owner_id', user_name),)
-            else:
-                metadata = (('authorization', token), ('user_token', user_token),)
-            secret_metadata = SecretMetadata(client_id=client_id)
-            request = KVCredential(key=key, metadata=secret_metadata)
-
-            msg = self.resource_sec_client.getKVCredential(request=request, metadata=metadata)
-            return MessageToJson(msg)
-
-        except Exception:
-            logger.exception("Error occurred while get KV credential")
-            raise
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/sharing_management_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/sharing_management_client.py
deleted file mode 100644
index 468c5ca..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/sharing_management_client.py
+++ /dev/null
@@ -1,120 +0,0 @@
-import logging
-import grpc
-
-from custos.transport.settings import CustosServerClientSettings
-
-from custos.server.integration.SharingManagementService_pb2_grpc import SharingManagementServiceStub
-
-from custos.server.core.SharingService_pb2 import PermissionType, EntityType, Entity, SharingRequest, \
-    PermissionTypeRequest, EntityRequest, EntityTypeRequest
-from google.protobuf.json_format import MessageToJson
-from custos.clients.utils.certificate_fetching_rest_client import CertificateFetchingRestClient
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-
-
-class SharingManagementClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings = custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        certManager = CertificateFetchingRestClient(custos_server_setting)
-        certManager.load_certificate()
-        with open(self.custos_settings.CUSTOS_CERT_PATH, 'rb') as f:
-            trusted_certs = f.read()
-        self.channel_credentials = grpc.ssl_channel_credentials(root_certificates=trusted_certs)
-        self.channel = grpc.secure_channel(target=self.target, credentials=self.channel_credentials)
-        self.sharing_mgt_client = SharingManagementServiceStub(self.channel)
-
-    def create_entity_type(self, token, client_id, id, name, description):
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            entity_type = EntityType(id=id, name=name, description=description)
-            entity_type_req = EntityTypeRequest(client_id=client_id, entity_type=entity_type)
-            return self.sharing_mgt_client.createEntityType(request=entity_type_req, metadata=metadata);
-        except Exception:
-            logger.exception("Error occurred while creating entity type with Id " + id)
-            raise
-
-    def create_permission_type(self, token, client_id, id, name, description):
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            permission_type = PermissionType(id=id, name=name, description=description)
-            permission_type_req = PermissionTypeRequest(client_id=client_id, permission_type=permission_type)
-            return self.sharing_mgt_client.createPermissionType(request=permission_type_req, metadata=metadata);
-        except Exception:
-            logger.exception("Error occurred while creating permission entity type with Id " + id)
-            raise
-
-    def create_entity(self, token, client_id, id, name, description, owner_id, type, parent_id):
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-            entity = Entity(id=id, name=name, description=description, owner_id=owner_id, type=type,
-                            parent_id=parent_id)
-            entity_req = EntityRequest(client_id=client_id, entity=entity)
-            return self.sharing_mgt_client.createEntity(request=entity_req, metadata=metadata);
-        except Exception:
-            logger.exception("Error occurred while creating  entity  with Id " + id)
-            raise
-
-    def share_entity_with_users(self, token, client_id, entity_id, permission_type, user_id):
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            entity = Entity(id=entity_id)
-            permission_type = PermissionType(id=permission_type)
-            owner_ids = []
-            owner_ids.append(user_id)
-            cascade = True
-            sharing_req = SharingRequest(client_id=client_id, entity=entity, permission_type=permission_type,
-                                         owner_id=owner_ids, cascade=cascade)
-            return self.sharing_mgt_client.shareEntityWithUsers(request=sharing_req, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while creating  entity  with Id " + entity_id)
-            raise
-
-    def share_entity_with_groups(self, token, client_id, entity_id, permission_type, group_id):
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            entity = Entity(id=entity_id)
-            permission_type = PermissionType(id=permission_type)
-            owner_ids = []
-            owner_ids.append(group_id)
-            cascade = True
-            sharing_req = SharingRequest(client_id=client_id, entity=entity, permission_type=permission_type,
-                                         owner_id=owner_ids, cascade=cascade)
-            return self.sharing_mgt_client.shareEntityWithGroups(request=sharing_req, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred while creating  entity  with Id " +
-                             entity_id)
-            raise
-
-    def user_has_access(self, token, client_id, entity_id, permission_type, user_id):
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            entity = Entity(id=entity_id)
-            permission_type = PermissionType(id=permission_type)
-            owner_ids = []
-            owner_ids.append(user_id)
-            cascade = True
-            sharing_req = SharingRequest(client_id=client_id, entity=entity, permission_type=permission_type,
-                                         owner_id=owner_ids, cascade=cascade)
-            resl = self.sharing_mgt_client.userHasAccess(request=sharing_req, metadata=metadata)
-
-            if resl.status:
-                return True
-            else:
-                return False
-
-        except Exception:
-            logger.exception("Error occurred while checking for permissions ")
-            raise
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/super_tenant_management_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/super_tenant_management_client.py
deleted file mode 100644
index f7c0463..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/super_tenant_management_client.py
+++ /dev/null
@@ -1,80 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-import logging
-import grpc
-from custos.server.integration.TenantManagementService_pb2_grpc import TenantManagementServiceStub;
-from custos.server.core.TenantProfileService_pb2 import GetTenantsRequest, UpdateStatusRequest
-from custos.transport.settings import CustosServerClientSettings
-from custos.clients.utils.certificate_fetching_rest_client import CertificateFetchingRestClient
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-
-
-class SuperTenantManagementClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings =custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        certManager = CertificateFetchingRestClient(custos_server_setting)
-        certManager.load_certificate()
-        with open(self.custos_settings.CUSTOS_CERT_PATH, 'rb') as f:
-            trusted_certs = f.read()
-        self.channel_credentials = grpc.ssl_channel_credentials(root_certificates=trusted_certs)
-        self.channel = grpc.secure_channel(target=self.target, credentials=self.channel_credentials)
-        self.tenant_stub = TenantManagementServiceStub(self.channel)
-
-    def get_all_tenants(self, token, offset, limit, status, requester_email=None):
-        """
-        Get all tenants
-        :param token admin user token
-        :param offset  omits the initial number of entries
-        :param limit  contains maximum number of entries
-        :param status (ACTIVE, REQUESTED, DENIED, CANCELLED, DEACTIVATED)
-        :return: Tenants
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = GetTenantsRequest(offset=offset, limit=limit, status=status, requester_email=None)
-
-            return self.tenant_stub.getAllTenants(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in get_all_tenants, probably due to invalid parameters")
-            raise
-
-    def update_tenant_status(self, token, client_id, status):
-        """
-        Update tenant status.
-        :param token admin user token
-        :param client_id  client id of tenant to be updated
-        :param status (ACTIVE, REQUESTED, DENIED, CANCELLED, DEACTIVATED)
-        :return: Operation Status
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = UpdateStatusRequest(client_id=client_id, status=status)
-
-            return self.tenant_stub.updateTenantStatus(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in update_tenant_status, probably due to invalid parameters")
-            raise
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/tenant_management_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/tenant_management_client.py
deleted file mode 100644
index def5d00..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/tenant_management_client.py
+++ /dev/null
@@ -1,269 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-import logging
-import grpc
-from custos.server.integration.TenantManagementService_pb2_grpc import TenantManagementServiceStub
-from custos.server.core.TenantProfileService_pb2 import Tenant, GetTenantsRequest, GetAllTenantsForUserRequest
-from custos.server.core.IamAdminService_pb2 import AddRolesRequest, RoleRepresentation, AddProtocolMapperRequest, \
-    ClaimJSONTypes, MapperTypes
-from custos.server.integration.TenantManagementService_pb2 import GetTenantRequest, \
-    UpdateTenantRequest, DeleteTenantRequest
-from custos.transport.settings import CustosServerClientSettings
-from custos.clients.utils.certificate_fetching_rest_client import CertificateFetchingRestClient
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-
-
-class TenantManagementClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings = custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        certManager = CertificateFetchingRestClient(custos_server_setting)
-        certManager.load_certificate()
-        with open(self.custos_settings.CUSTOS_CERT_PATH, 'rb') as f:
-            trusted_certs = f.read()
-        self.channel_credentials = grpc.ssl_channel_credentials(root_certificates=trusted_certs)
-        self.channel = grpc.secure_channel(target=self.target, credentials=self.channel_credentials)
-        self.tenant_stub = TenantManagementServiceStub(self.channel)
-
-    def create_admin_tenant(self, client_name, requester_email, admin_frist_name,
-                            admin_last_name, admin_email, admin_username, admin_password,
-                            contacts, redirect_uris, client_uri, scope, domain, logo_uri, comment):
-        """
-         Creates admin tenant client. Needs to be approved by
-         Custos Admin
-        :return: Custos Credentials
-        """
-        try:
-            tenant = Tenant(client_name=client_name,
-                            requester_email=requester_email,
-                            admin_first_name=admin_frist_name,
-                            admin_last_name=admin_last_name,
-                            admin_email=admin_email,
-                            admin_username=admin_username,
-                            admin_password=admin_password,
-                            contacts=contacts,
-                            redirect_uris=redirect_uris,
-                            client_uri=client_uri,
-                            scope=scope,
-                            domain=domain,
-                            logo_uri=logo_uri,
-                            comment=comment,
-                            application_type="web")
-            return self.tenant_stub.createTenant(tenant)
-        except Exception:
-            logger.exception("Error occurred in create_admin_tenant, probably due to invalid parameters")
-            raise
-
-    def create_tenant(self, client_token, client_name, requester_email, admin_frist_name,
-                      admin_last_name, admin_email, admin_username, admin_password,
-                      contacts, redirect_uris, client_uri, scope, domain, logo_uri, comment):
-        """
-        Creates child tenant under admin tenant. Automatically activates
-        :return: Custos credentials
-        """
-        try:
-            tenant = Tenant(client_name=client_name,
-                            requester_email=requester_email,
-                            admin_first_name=admin_frist_name,
-                            admin_last_name=admin_last_name,
-                            admin_email=admin_email,
-                            admin_username=admin_username,
-                            admin_password=admin_password,
-                            contacts=contacts,
-                            redirect_uris=redirect_uris,
-                            client_uri=client_uri,
-                            scope=scope,
-                            domain=domain,
-                            logo_uri=logo_uri,
-                            comment=comment,
-                            application_type="web")
-            token = "Bearer " + client_token
-            metadata = (('authorization', token),)
-            return self.tenant_stub.createTenant(tenant, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in create_tenant, probably due to invalid parameters")
-            raise
-
-    def get_tenant(self, client_token, client_id):
-        """
-        Fetch tenant
-        :return: Tenant
-        """
-        try:
-            request = GetTenantRequest(client_id=client_id)
-            token = "Bearer " + client_token
-            metadata = (('authorization', token),)
-            return self.tenant_stub.getTenant(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in get_tenant, probably due to invalid parameters")
-            raise
-
-    def update_tenant(self, client_token, client_id, client_name, requester_email, admin_frist_name,
-                      admin_last_name, admin_email, admin_username, admin_password,
-                      contacts, redirect_uris, client_uri, scope, domain, logo_uri, comment):
-        """
-        Update given tenant by client Id
-        :return: updated tenant
-        """
-        try:
-            tenant = Tenant(client_name=client_name,
-                            requester_email=requester_email,
-                            admin_first_name=admin_frist_name,
-                            admin_last_name=admin_last_name,
-                            admin_email=admin_email,
-                            admin_username=admin_username,
-                            admin_password=admin_password,
-                            contacts=contacts,
-                            redirect_uris=redirect_uris,
-                            client_uri=client_uri,
-                            scope=scope,
-                            domain=domain,
-                            logo_uri=logo_uri,
-                            comment=comment,
-                            application_type="web")
-            token = "Bearer " + client_token
-            metadata = (('authorization', token),)
-
-            request = UpdateTenantRequest(client_id=client_id, body=tenant)
-
-            return self.tenant_stub.updateTenant(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in update_tenant, probably due to invalid parameters")
-            raise
-
-    def delete_tenant(self, token, client_id):
-        """
-        Delete given tenant by client Id
-        :return:  void
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = DeleteTenantRequest(client_id=client_id)
-
-            return self.tenant_stub.deleteTenant(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in delete_tenant, probably due to invalid parameters")
-            raise
-
-    def add_tenant_roles(self, token, roles, is_client_level):
-        """
-        :param token
-        :param: roles include realm or client level roles as array
-        :param is_client_level boolean to indicate to add roles to client
-        :return:  void
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            rolesRepArray = []
-
-            for role in roles:
-                rolesRep = RoleRepresentation(name=role['name'], description=role['description'],
-                                              composite=role['composite'])
-                rolesRepArray.append(rolesRep)
-
-            request = AddRolesRequest(roles=rolesRepArray, client_level=is_client_level)
-
-            return self.tenant_stub.addTenantRoles(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in add_tenant_roles, probably due to invalid parameters")
-            raise
-
-    def add_protocol_mapper(self, token, name, attribute_name, claim_name, claim_type, mapper_type,
-                            add_to_id_token, add_to_access_token, add_to_user_info, multi_valued,
-                            aggregate_attribute_values):
-        """
-        Protocol mapper enables to add user attributes, user realm roles or user client roles to be
-        added to ID token, Access token.
-        :param token
-        :param: roles include realm or client level roles as array
-        :param is_client_level boolean to indicate to add roles to client
-        :return:  void
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            wrapped_json_type = ClaimJSONTypes.Value(claim_type)
-            wrapped_mapper_type = MapperTypes.Value(mapper_type)
-
-            request = AddProtocolMapperRequest(name=name,
-                                               attribute_name=attribute_name,
-                                               claim_name=claim_name,
-                                               claim_type=wrapped_json_type,
-                                               mapper_type=wrapped_mapper_type,
-                                               add_to_id_token=add_to_id_token,
-                                               add_to_access_token=add_to_access_token,
-                                               add_to_user_info=add_to_user_info,
-                                               multi_valued=multi_valued,
-                                               aggregate_attribute_values=aggregate_attribute_values
-                                               )
-
-            return self.tenant_stub.addProtocolMapper(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in add_protocol_mapper, probably due to invalid parameters")
-            raise
-
-    def get_child_tenants(self, token, offset, limit, status):
-        """
-        Get child tenants of the calling tenant
-        :param token
-        :param: offset omit initial number of results equalt to offset
-        :param limit results should contain  maximum number of entries
-        :param status (ACTIVE, REQUESTED, DENIED, CANCELLED, DEACTIVATED)
-        :return:  Tenants
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = GetTenantsRequest(offset=offset, limit=limit, status=status)
-
-            return self.tenant_stub.getChildTenants(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in get_child_tenants, probably due to invalid parameters")
-            raise
-
-    def get_all_tenants(self, token, email):
-        """
-        Get all tenants requested by given user
-        :param token
-        :param email get all tenants requested by email
-        :return:  Tenants
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = GetAllTenantsForUserRequest(email=email)
-
-            return self.tenant_stub.getAllTenantsForUser(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in get_all_tenants, probably due to invalid parameters")
-            raise
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/user_management_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/user_management_client.py
deleted file mode 100644
index 6fd5159..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/user_management_client.py
+++ /dev/null
@@ -1,387 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-import logging
-import grpc
-
-from custos.transport.settings import CustosServerClientSettings
-
-from custos.server.integration.UserManagementService_pb2_grpc import UserManagementServiceStub
-from custos.server.core.IamAdminService_pb2 import RegisterUserRequest, UserRepresentation, RegisterUsersRequest, \
-    UserAttribute, \
-    AddUserAttributesRequest, DeleteUserAttributeRequest, UserSearchMetadata, FindUsersRequest, AddUserRolesRequest, \
-    UserSearchRequest, ResetUserPassword, DeleteUserRolesRequest
-from custos.server.core.UserProfileService_pb2 import UserProfile
-from custos.server.integration.UserManagementService_pb2 import LinkUserProfileRequest, UserProfileRequest
-
-from custos.clients.utils.certificate_fetching_rest_client import CertificateFetchingRestClient
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-
-
-class UserManagementClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings = custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        certManager = CertificateFetchingRestClient(custos_server_setting)
-        certManager.load_certificate()
-        with open(self.custos_settings.CUSTOS_CERT_PATH, 'rb') as f:
-            trusted_certs = f.read()
-        self.channel_credentials = grpc.ssl_channel_credentials(root_certificates=trusted_certs)
-        self.channel = grpc.secure_channel(target=self.target, credentials=self.channel_credentials)
-        self.user_stub = UserManagementServiceStub(self.channel)
-
-    def register_user(self, token, username, first_name, last_name, password, email, is_temp_password):
-        """
-        Register user in given tenant
-        :param token:  client credentials
-        :param username:
-        :param first_name:
-        :param last_name:
-        :param password:
-        :param email:
-        :param is_temp_password:
-        :return: registration status
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            user = UserRepresentation(username=username, password=password,
-                                      first_name=first_name, last_name=last_name,
-                                      email=email, temporary_password=is_temp_password)
-
-            request = RegisterUserRequest(user=user)
-
-            return self.user_stub.registerUser(request, metadata=metadata)
-        except Exception:
-            logger.exception("Error occurred in register_user, probably due to invalid parameters")
-            raise
-
-    def register_and_enable_users(self, token, users):
-        """
-        register and enable users
-        :param token: admin access token
-        :param users:
-        :return:
-        """
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            usersList = []
-
-            for user in users:
-                attributeList = []
-                for atr in user['attributes']:
-                    attribute = UserAttribute(key=atr['key'], values=atr['values'])
-                    attributeList.append(attribute)
-                username = user['username']
-                password = user['password']
-                first_name = user['first_name']
-                last_name = user['last_name']
-                email = user['email']
-                temporary_password = user['temporary_password']
-                realm_roles = user['realm_roles']
-                client_roles = user['client_roles']
-                attributes = attributeList
-                user = UserRepresentation(username=username, password=password,
-                                          first_name=first_name, last_name=last_name,
-                                          email=email, temporary_password=temporary_password,
-                                          realm_roles=realm_roles, client_roles=client_roles,
-                                          attributes=attributes)
-
-                usersList.append(user)
-
-            request = RegisterUsersRequest(users=usersList)
-            return self.user_stub.registerAndEnableUsers(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in register_and_enable_users, probably due to invalid parameters")
-            raise
-
-    def add_user_attributes(self, token, attributes, users):
-        """
-        Add user attributes
-        :param token:
-        :param attributes:
-        :param users:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            attributeList = []
-            for atr in attributes:
-                attribute = UserAttribute(key=atr['key'], values=atr['values'])
-                attributeList.append(attribute)
-
-            request = AddUserAttributesRequest(attributes=attributeList, users=users)
-            return self.user_stub.addUserAttributes(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in add_user_attributes, probably due to invalid parameters")
-            raise
-
-    def delete_user_attributes(self, token, attributes, users):
-        """
-        Delete user attributes
-        :param token: user token
-        :param attributes:
-        :param users:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            attributeList = []
-            for atr in attributes:
-                attribute = UserAttribute(key=atr['key'], values=atr['values'])
-                attributeList.append(attribute)
-
-            request = DeleteUserAttributeRequest(attributes=attributeList, users=users)
-            return self.user_stub.deleteUserAttributes(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in delete_user_attributes, probably due to invalid parameters")
-            raise
-
-    def enable_user(self, token, username):
-        """
-        Enable user request
-        :param token: client credential
-        :param attributes:
-        :param users:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            user = UserSearchMetadata(username=username)
-            request = UserSearchRequest(user=user)
-            return self.user_stub.enableUser(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in enable_user, probably due to invalid parameters")
-            raise
-
-    def add_roles_to_users(self, token, usernames, roles, is_client_level):
-        """
-        Add roles to users
-        :param token: admin token
-        :param usernames list of usersname
-        :param : roles list of roles
-        :param is_client_level to add client level else realm level
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = AddUserRolesRequest(usernames=usernames, roles=roles, client_level=is_client_level)
-            return self.user_stub.addRolesToUsers(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in add_roles_to_users, probably due to invalid parameters")
-            raise
-
-    def is_user_enabled(self, token, username):
-        """
-        Check the weather user is enabled
-        :param token: client credential
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            user = UserSearchMetadata(username=username)
-            request = UserSearchRequest(user=user)
-            return self.user_stub.isUserEnabled(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in is_user_enabled, probably due to invalid parameters")
-            raise
-
-    def is_username_available(self, token, username):
-        """
-        Check the weather username  is available
-        :param token: client credential
-        :param username
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            user = UserSearchMetadata(username=username)
-            request = UserSearchRequest(user=user)
-            return self.user_stub.isUsernameAvailable(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in is_username_available, probably due to invalid parameters")
-            raise
-
-    def get_user(self, token, username):
-        """
-        Get user
-        :param token: client credential
-        :param username
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            user = UserSearchMetadata(username=username)
-            request = UserSearchRequest(user=user)
-            return self.user_stub.getUser(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in get_user, probably due to invalid parameters")
-            raise
-
-    def find_users(self, token, offset, limit, username=None, firstname=None, lastname=None, email=None, ):
-        """
-        Find users
-        :param token: client credential
-        :param username
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            user = UserSearchMetadata(username=username, first_name=firstname, last_name=lastname, email=email)
-            request = FindUsersRequest(user=user, offset=offset, limit=limit)
-            return self.user_stub.findUsers(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in find_users, probably due to invalid parameters")
-            raise
-
-    def reset_password(self, token, username, password):
-        """
-        Reset user password
-        :param token: client credential
-        :param username
-        :param password
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = ResetUserPassword(username=username, password=password)
-            return self.user_stub.resetPassword(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in reset_password, probably due to invalid parameters")
-            raise
-
-    def delete_user(self, token, username):
-        """
-        Delete user from a given realm
-        :param token: admin credentials
-        :param username:
-        :return:
-        """
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            user = UserSearchMetadata(username=username)
-            request = UserSearchRequest(user=user)
-            return self.user_stub.deleteUser(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in delete_user, probably due to invalid parameters")
-            raise
-
-    def delete_user_roles(self, token, username, client_roles, realm_roles):
-        """
-        Delete user roles
-        :param token: admin access token
-        :param username:
-        :param client_roles:
-        :param realm_roles:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            request = DeleteUserRolesRequest(username=username, client_roles=client_roles, roles=realm_roles)
-            return self.user_stub.deleteUserRoles(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in delete_user_roles, probably due to invalid parameters")
-            raise
-
-    def update_user_profile(self, token, username, email, first_name, last_name):
-        """
-        Update user profile
-        :param token: user token
-        :param username:
-        :param email:
-        :param first_name:
-        :param last_name:
-        :return:
-        """
-
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            profile = UserProfile(username=username, email=email, first_name=first_name, last_name=last_name)
-            request = UserProfileRequest(user_profile=profile)
-            return self.user_stub.updateUserProfile(request=request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in update_user_profile, probably due to invalid parameters")
-            raise
-
-    def link_user_profile(self, token, current_username, previous_username, linking_attributes=None):
-        """
-        Link existing user profile with previous user profile
-        :param previous_username:
-        :param current_username:
-        :param linking_attributes:
-        :return:
-        """
-        try:
-            token = "Bearer " + token
-            metadata = (('authorization', token),)
-
-            attributeList = []
-            for atr in linking_attributes:
-                attribute = UserAttribute(key=atr['key'], values=atr['values'])
-                attributeList.append(attribute)
-
-            request = LinkUserProfileRequest(current_username=current_username, previous_username=previous_username,
-                                             linking_attributes=attributeList)
-            return self.user_stub.linkUserProfile(request, metadata=metadata)
-
-        except Exception:
-            logger.exception("Error occurred in update_user_profile, probably due to invalid parameters")
-            raise
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/utils/__init__.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/utils/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/utils/certificate_fetching_rest_client.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/utils/certificate_fetching_rest_client.py
deleted file mode 100644
index ec58e8a..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/utils/certificate_fetching_rest_client.py
+++ /dev/null
@@ -1,79 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-import logging
-
-import OpenSSL
-import requests
-import os
-import datetime
-from urllib3.exceptions import InsecureRequestWarning
-import warnings
-
-requests.packages.urllib3.disable_warnings(category=InsecureRequestWarning)
-from custos.transport.settings import CustosServerClientSettings
-import custos.clients.utils.utilities as utl
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.DEBUG)
-import requests
-from requests.packages.urllib3.exceptions import InsecureRequestWarning
-
-requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
-
-class CertificateFetchingRestClient(object):
-
-    def __init__(self, custos_server_setting):
-        self.custos_settings = custos_server_setting
-        self.target = self.custos_settings.CUSTOS_SERVER_HOST + ":" + str(self.custos_settings.CUSTOS_SERVER_PORT)
-        self.url = "https://" + self.target + "/resource-secret-management/v1.0.0/secret"
-        self.ownertype = "CUSTOS"
-        self.resource_type = "SERVER_CERTIFICATE"
-        self.params = {
-            'metadata.owner_type': self.ownertype,
-            'metadata.resource_type': self.resource_type
-        }
-
-        self.rootdir = os.path.abspath(os.curdir)
-        encodedStr = utl.get_token(self.custos_settings)
-        self.header = {'Authorization': 'Bearer {}'.format(encodedStr)}
-
-    def load_certificate(self):
-        if not self.__is_certificate_valid():
-            self.__download_certificate()
-
-    def __download_certificate(self):
-        r = requests.get(url=self.url, params=self.params, headers=self.header, stream=True, timeout=60, verify=False)
-        value = r.json()['value']
-        path = self.custos_settings.CUSTOS_CERT_PATH
-        f = open(path, "w+")
-        f.write(value)
-
-
-    def __is_certificate_valid(self):
-        if os.path.isfile(self.custos_settings.CUSTOS_CERT_PATH):
-            file = open(self.custos_settings.CUSTOS_CERT_PATH)
-            x509 = OpenSSL.crypto.load_certificate(OpenSSL.crypto.FILETYPE_PEM,
-                                                   file.read())
-            expires = datetime.datetime.strptime(x509.get_notAfter().decode('ascii'), '%Y%m%d%H%M%SZ')
-            now = datetime.datetime.now()
-
-            if now > expires:
-                return False
-            else:
-                return True
-        else:
-            return False
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/utils/utilities.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/utils/utilities.py
deleted file mode 100644
index 7b42372..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/clients/utils/utilities.py
+++ /dev/null
@@ -1,8 +0,0 @@
-from base64 import b64encode
-
-
-def get_token(custos_settings):
-    tokenStr = custos_settings.CUSTOS_CLIENT_ID + ":" + custos_settings.CUSTOS_CLIENT_SEC
-    tokenByte = tokenStr.encode('utf-8')
-    encodedBytes = b64encode(tokenByte)
-    return encodedBytes.decode('utf-8')
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/__init__.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/agent_management_samples.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/agent_management_samples.py
deleted file mode 100644
index 52a0de5..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/agent_management_samples.py
+++ /dev/null
@@ -1,49 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-import logging
-from custos.clients.identity_management_client import IdentityManagementClient
-from custos.clients.agent_management_client import AgentManagementClient
-
-from custos.transport.settings import CustosServerClientSettings
-import custos.clients.utils.utilities as utl
-
-logger = logging.getLogger(__name__)
-
-logger.setLevel(logging.DEBUG)
-# create console handler with a higher log level
-handler = logging.StreamHandler()
-handler.setLevel(logging.DEBUG)
-
-custos_settings = CustosServerClientSettings()
-# load APIServerClient with default configuration
-client = AgentManagementClient(custos_settings)
-id_client = IdentityManagementClient(custos_settings)
-
-token = utl.get_token(custos_settings)
-
-
-def register_and_enable():
-    agent = {
-        "id": "agent-asdasda-ebnmvf",
-        "realm_roles": [],
-        "attributes": [{
-            "key": "agent_cluster_id",
-            "values": ["123123131"]
-        }]
-    }
-    id_res = id_client.token(token, username="isjarana", password="Custos1234", grant_type="password")
-    response = client.register_and_enable_agent(id_res['access_token'], agent)
-    print(response)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/group_management_samples.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/group_management_samples.py
deleted file mode 100644
index 586cce5..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/group_management_samples.py
+++ /dev/null
@@ -1,63 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-import logging
-from custos.clients.identity_management_client import IdentityManagementClient
-from custos.clients.group_management_client import GroupManagementClient
-
-from custos.transport.settings import CustosServerClientSettings
-import custos.clients.utils.utilities as utl
-
-logger = logging.getLogger(__name__)
-
-logger.setLevel(logging.DEBUG)
-# create console handler with a higher log level
-handler = logging.StreamHandler()
-handler.setLevel(logging.DEBUG)
-custos_settings = CustosServerClientSettings()
-# load APIServerClient with default configuration
-client = GroupManagementClient(custos_settings)
-id_client = IdentityManagementClient(custos_settings)
-
-token = utl.get_token(custos_settings)
-
-print(token)
-
-
-def create_group():
-    groups = [
-        {
-            "name": "testll",
-            "realm_roles": [],
-            "client_roles": [],
-            "attributes": [{
-                "key": "phone",
-                "values": ["8123915386"]
-            }],
-            "sub_groups": [{
-                "name": "testlj",
-                "realm_roles": [],
-                "client_roles": [],
-                "attributes": [{
-                    "key": "email",
-                    "values": ["irjanith@gmail.com"]
-                }],
-                "sub_groups": []
-            }]
-        }
-    ]
-    id_res = id_client.token(token, username="isjarana", password="Custos1234", grant_type="password")
-    response = client.create_groups(id_res['access_token'], groups)
-    print(response)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/identity_management_samples.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/identity_management_samples.py
deleted file mode 100644
index eca9053..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/identity_management_samples.py
+++ /dev/null
@@ -1,70 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-import logging
-from custos.clients.identity_management_client import IdentityManagementClient
-from custos.transport.settings import CustosServerClientSettings
-import custos.clients.utils.utilities as utl
-
-logger = logging.getLogger(__name__)
-
-logger.setLevel(logging.DEBUG)
-# create console handler with a higher log level
-handler = logging.StreamHandler()
-handler.setLevel(logging.DEBUG)
-
-custos_settings = CustosServerClientSettings()
-# load IdentityManagementClient with default configuration
-client = IdentityManagementClient(custos_settings)
-
-main_token = utl.get_token(custos_settings)
-
-
-def authenticate():
-    response = client.authenticate(main_token, "isjarana", "Custos1234")
-    print(response)
-
-
-def is_authenticated():
-    access_token = client.authenticate(main_token, "issa", "1234")
-    response = client.is_authenticated(main_token, access_token.accessToken, "issa")
-    print(response)
-
-
-def get_user_management_access_token():
-    response = client.get_service_account_access_token(token)
-    print(response)
-
-
-def authorize():
-    response = client.authorize("custos-xgect9otrwawa8uwztym-10000006", "http://custos.lk", "code",
-                                "openid email profile", "asdadasdewde")
-    print(response)
-
-
-def token():
-    response = client.token(main_token, "http://custos.lk", "asdasdasdadasd")
-    print(response)
-
-
-def get_credentials():
-    response = client.get_credentials(main_token, "custos-xgect9otrwawa8uwztym-10000006")
-    print(response)
-
-
-def get_OIDC_config():
-    response = client.get_oidc_configuration(main_token, "custos-pv3fqfs9z1hps0xily2t-10000000")
-    print(response)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/resource_secert_management.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/resource_secert_management.py
deleted file mode 100644
index f2568cb..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/resource_secert_management.py
+++ /dev/null
@@ -1,80 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-import logging
-from custos.clients.user_management_client import UserManagementClient
-from custos.clients.identity_management_client import IdentityManagementClient
-from custos.clients.super_tenant_management_client import SuperTenantManagementClient
-from custos.clients.resource_secret_management_client import ResourceSecretManagementClient
-from google.protobuf.json_format import MessageToDict
-
-from custos.transport.settings import CustosServerClientSettings
-import custos.clients.utils.utilities as utl
-
-logger = logging.getLogger(__name__)
-
-logger.setLevel(logging.DEBUG)
-# create console handler with a higher log level
-handler = logging.StreamHandler()
-handler.setLevel(logging.DEBUG)
-
-custos_settings = CustosServerClientSettings()
-# load APIServerClient with default configuration
-client = UserManagementClient(custos_settings)
-id_client = IdentityManagementClient(custos_settings)
-resource_secret_client = ResourceSecretManagementClient(custos_settings)
-
-token = utl.get_token(custos_settings)
-
-admin_client = SuperTenantManagementClient(custos_settings)
-
-
-def user_login():
-    response = id_client.token(token=
-                               token,
-                               username="USERNAME",
-                               password="PASSWORD",
-                               grant_type="password")
-    dict_obj = MessageToDict(response)
-    return dict_obj['access_token']
-
-
-def setKVCredential():
-    token = user_login()
-    resp = resource_secret_client.set_KV_credential(token=token, user_token=token,
-                                                    client_id='CHANGE_ME', key='Your key',
-                                                    value='Your Value')
-    print(resp)
-
-
-def getKVCredential():
-    token = user_login()
-    resp = resource_secret_client.get_KV_credential(token=token, user_token=token,
-                                                    client_id='CHANGE_ME', key='Your key')
-    print(resp)
-
-
-def updateKVCredential():
-    token = user_login()
-    resp = resource_secret_client.update_KV_credential(token=token, user_token=token,
-                                                       client_id='CHANGE_ME', key='Your key')
-    print(resp)
-
-
-def deleteKVCredential():
-    token = user_login()
-    resp = resource_secret_client.delete_KV_credential(token=token, user_token=token,
-                                                       client_id='CHANGE_ME', key='Your key')
-    print(resp)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/resources/__init__.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/resources/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/resources/cert.pem b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/resources/cert.pem
deleted file mode 100644
index 2f3d403..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/resources/cert.pem
+++ /dev/null
@@ -1,31 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIFXDCCBESgAwIBAgISAz8ERLSlp4ZA5PlMgMxdWnwKMA0GCSqGSIb3DQEBCwUA
-MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
-ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0yMDAzMDMxMDA0MDhaFw0y
-MDA2MDExMDA0MDhaMBwxGjAYBgNVBAMTEWN1c3Rvcy5zY2lnYXAub3JnMIIBIjAN
-BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs6UanPIJWXt94Sp6QuYouBttJj7H
-bRBq6pNfWI480lQvtJuQi/3lxoxzoYP2aVRakuvB1oRbCyRvmWKqn3/AT9BQ050J
-XX0EpAlGYhq8hG8Raq2GM53jumdYlZN2//n6YWaNLdGl10WKroh5w2BHSI5eJ1IT
-ydAq10bt6UxmJFzNf4lnqc9bmrgSOnWMr5XD/PQGklVnOSRmGQNCs7X1dK5ZdUcu
-GwrZFzWoRjt+N/Re3mT+wv9zTVBqzIstT24j6DdjadpRlBOEhVosrQGxqr50Pzle
-/5K0R0/CXohiclb5pkiRv9nJTogKsiX4aSkeG65ZqG0Ex++UahKLYf1XxQIDAQAB
-o4ICaDCCAmQwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggr
-BgEFBQcDAjAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBRQ2uEMFX28RLlE2r5iMXX6
-ZzOdWjAfBgNVHSMEGDAWgBSoSmpjBH3duubRObemRWXv86jsoTBvBggrBgEFBQcB
-AQRjMGEwLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3NwLmludC14My5sZXRzZW5jcnlw
-dC5vcmcwLwYIKwYBBQUHMAKGI2h0dHA6Ly9jZXJ0LmludC14My5sZXRzZW5jcnlw
-dC5vcmcvMBwGA1UdEQQVMBOCEWN1c3Rvcy5zY2lnYXAub3JnMEwGA1UdIARFMEMw
-CAYGZ4EMAQIBMDcGCysGAQQBgt8TAQEBMCgwJgYIKwYBBQUHAgEWGmh0dHA6Ly9j
-cHMubGV0c2VuY3J5cHQub3JnMIIBBgYKKwYBBAHWeQIEAgSB9wSB9ADyAHcA5xLy
-sDd+GmL7jskMYYTx6ns3y1YdESZb8+DzS/JBVG4AAAFwoBE4lgAABAMASDBGAiEA
-8ph79VeXvMg3++LCKlj/KuSDmX0kEqHDytDAaOYywtMCIQC0nqIeWsCyVt/4Fcg5
-fdrATRVaeqCTm9OExbc007++pQB3ALIeBcyLos2KIE6HZvkruYolIGdr2vpw57JJ
-Uy3vi5BeAAABcKAROJYAAAQDAEgwRgIhAIBTEge3DhiyOpVtFcVKRak+xwCQjsId
-+Q9Tw+iMcjsAAiEAtOPG66IfExeQZFTbAsl0PBuVbSIWxEFh1pW1G/7F0F4wDQYJ
-KoZIhvcNAQELBQADggEBAIJ924Xkav/zQV8iT46rWN05yXRDopA/Wqhql2aIpO7/
-9pMGS6PuVaNRn8cRQ+9mBGtkdHf5SJqccYraD7mwfJ1v7x7ZVEv/NB5aav1AI89X
-L/o+MtFKU8SGDEXjGyigr/JL52GPIesRqklTTnOQrUM9peUls4lXWRRH5CcfyyNv
-7GWPwh1xqqIUiPiF7afK60Ytu//Ww1YLZPn9HCOV9Pz5BOdZNJGVm6QboM2fW48v
-eC7W929m//adw3oY934lJrYqfYwjMXnU0ZEJe6nUWHQaNDYep2FgZ3PkZb3tuSsf
-7ghMBbvDW94Wb5wx912XzvthJAg23Z0G9bJWgsXh75s=
------END CERTIFICATE-----
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/tenant_management_samples.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/tenant_management_samples.py
deleted file mode 100644
index 9502b45..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/tenant_management_samples.py
+++ /dev/null
@@ -1,95 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-import logging
-from custos.clients.tenant_management_client import TenantManagementClient
-from custos.clients.super_tenant_management_client import SuperTenantManagementClient
-from custos.clients.identity_management_client import IdentityManagementClient
-from custos.transport.settings import CustosServerClientSettings
-import custos.clients.utils.utilities as utl
-
-logger = logging.getLogger(__name__)
-
-logger.setLevel(logging.DEBUG)
-# create console handler with a higher log level
-handler = logging.StreamHandler()
-handler.setLevel(logging.DEBUG)
-
-custos_settings = CustosServerClientSettings()
-# load APIServerClient with default configuration
-client = TenantManagementClient(custos_settings)
-admin_client = SuperTenantManagementClient(custos_settings)
-id_client = IdentityManagementClient(custos_settings)
-
-token = utl.get_token(custos_settings)
-
-
-def create_tenant():
-    contacts = ["2345634324"]
-    redirect_uris = ["http://localhost:8080,http://localhost:8080/user/external_ids"]
-    response = client.create_admin_tenant("SAMPLE",
-                                          "XXX@iu.edu", "First Name", "LastName", "email", "admin",
-                                          "1234",
-                                          contacts, redirect_uris, "https://domain.org/",
-                                          "openid profile email org.cilogon.userinfo", "domain.org",
-                                          "https://domain.org/static/favicon.png", "Galaxy Portal")
-    print(response)
-
-
-def get_tenant():
-    client_id = "custos-8p4baddxvbiusmjorjch-10000401"
-    response = client.get_tenant(client_token=token, client_id=client_id)
-    print(response)
-
-
-def update_tenant():
-    client_id = "custos-6nwoqodstpe5mvcq09lh-10000101"
-    contacts = ["8123915386"]
-    redirect_uris = ["https://custos.scigap.org/callback ", "http://127.0.0.1:8000/auth/callback/",
-                     "http://127.0.0.1:8000/"]
-    response = client.update_tenant(token, client_id, "Custos Portal",
-                                    "irjanith@gmail.com", "Isuru", "Ranawaka", "irjanith@gmail.com", "isjarana",
-                                    "Custos1234",
-                                    contacts, redirect_uris, "https://custos.scigap.org/",
-                                    "openid profile email org.cilogon.userinfo", "domain.org",
-                                    "https://custos.scigap.org/", "Custos Portal")
-    print(response)
-
-
-def add_tenant_roles():
-    roles = [{"name": "testing", "composite": False, "description": "testing realm"}]
-    response = client.add_tenant_roles(token, roles, False)
-    print(response)
-
-
-def add_protocol_mapper():
-    response = client.add_protocol_mapper(token, "phone_atr", "phone", "phone", "STRING", "USER_ATTRIBUTE", True, True,
-                                          True, False, False)
-    print(response)
-
-
-def get_child_tenants():
-    response = client.get_child_tenants(token, 0, 5, "ACTIVE")
-    print(response)
-
-
-def get_all_tenants():
-    response = admin_client.get_all_tenants(token, 0, 5, "ACTIVE")
-    print(response)
-
-
-def delete_tenant():
-    response = client.delete_tenant(token, "custos-pv3fqfs9z1hps0xily2t-10000000")
-    print(response)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/user_management_samples.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/user_management_samples.py
deleted file mode 100644
index a7e3c81..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/samples/user_management_samples.py
+++ /dev/null
@@ -1,109 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-import logging
-from custos.clients.user_management_client import UserManagementClient
-from custos.clients.identity_management_client import IdentityManagementClient
-from custos.clients.super_tenant_management_client import SuperTenantManagementClient
-
-from custos.transport.settings import CustosServerClientSettings
-import custos.clients.utils.utilities as utl
-
-logger = logging.getLogger(__name__)
-
-logger.setLevel(logging.DEBUG)
-# create console handler with a higher log level
-handler = logging.StreamHandler()
-handler.setLevel(logging.DEBUG)
-
-custos_settings = CustosServerClientSettings()
-# load APIServerClient with default configuration
-client = UserManagementClient(custos_settings)
-id_client = IdentityManagementClient(custos_settings)
-
-token = utl.get_token(custos_settings)
-
-admin_client = SuperTenantManagementClient(custos_settings)
-
-
-def register_user():
-    response = client.register_user(token, "TestingUser", "Jhon", "Smith", "12345", "jhon@iu.edu", True)
-    print(response)
-
-
-def register_and_enable_users():
-    response = id_client.authenticate(token, "isjarana", "Custos1234")
-
-    users = [
-        {
-            "username": "test123",
-            "first_name": "user1",
-            "last_name": "last",
-            "password": "1234",
-            "email": "irjanith1@gmail.com",
-            "temporary_password": True,
-            "realm_roles": [
-
-            ],
-            "client_roles": [
-
-            ],
-            "attributes": [
-
-            ]
-        }
-    ]
-
-    response = client.register_and_enable_users(response.accessToken, users)
-    print(response)
-
-
-def add_user_attributes():
-    response = id_client.authenticate(token, "isjarana", "Custos1234")
-    attributes = [
-        {
-            "key": "phone",
-            "values": ["8123915386"]
-        }
-    ]
-    users = ["janith"]
-    response = client.add_user_attributes(response.accessToken, attributes, users)
-    print(response)
-
-
-def delete_user_attributes():
-    response = id_client.authenticate(token, "isjarana", "Custos1234")
-    attributes = [
-        {
-            "key": "phone",
-            "values": ["8123915386"]
-        }
-    ]
-    users = ["janith"]
-    response = client.delete_user_attributes(response.accessToken, attributes, users)
-    print(response)
-
-
-def add_roles_to_user():
-    response = id_client.authenticate(token, "issa", "1234")
-    roles = ["testing"]
-    users = ["janith"]
-    response = client.add_roles_to_users(response.accessToken, users, roles, False)
-    print(response)
-
-
-def find_users():
-    response = client.find_users(token, 0, 3, username="isjarana")
-    print(response)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/__init__.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/AgentProfileService_pb2.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/AgentProfileService_pb2.py
deleted file mode 100644
index 22b462f..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/AgentProfileService_pb2.py
+++ /dev/null
@@ -1,361 +0,0 @@
-# -*- coding: utf-8 -*-
-
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements. See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership. The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License. You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing,
-#   software distributed under the License is distributed on an
-#   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#   KIND, either express or implied. See the License for the
-#   specific language governing permissions and limitations
-#   under the License.
-
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: AgentProfileService.proto
-"""Generated protocol buffer code."""
-from google.protobuf.internal import enum_type_wrapper
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='AgentProfileService.proto',
-  package='org.apache.custos.agent.profile.service',
-  syntax='proto3',
-  serialized_options=b'P\001Z\004./pb',
-  create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x19\x41gentProfileService.proto\x12\'org.apache.custos.agent.profile.service\"\xff\x01\n\x05\x41gent\x12\n\n\x02id\x18\x01 \x01(\t\x12\x44\n\x06status\x18\x02 \x01(\x0e\x32\x34.org.apache.custos.agent.profile.service.AgentStatus\x12\x12\n\ncreated_at\x18\x03 \x01(\x03\x12\x18\n\x10last_modified_at\x18\x04 \x01(\x03\x12\r\n\x05roles\x18\x05 \x03(\t\x12K\n\nattributes\x18\x06 \x03(\x0b\x32\x37.org.apache.custos.agent.profile.service.AgentAttribute\x12\x1a\n\x12\x61gent [...]
-)
-
-_AGENTSTATUS = _descriptor.EnumDescriptor(
-  name='AgentStatus',
-  full_name='org.apache.custos.agent.profile.service.AgentStatus',
-  filename=None,
-  file=DESCRIPTOR,
-  create_key=_descriptor._internal_create_key,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='ENABLED', index=0, number=0,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='DISABLED', index=1, number=1,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=519,
-  serialized_end=559,
-)
-_sym_db.RegisterEnumDescriptor(_AGENTSTATUS)
-
-AgentStatus = enum_type_wrapper.EnumTypeWrapper(_AGENTSTATUS)
-ENABLED = 0
-DISABLED = 1
-
-
-
-_AGENT = _descriptor.Descriptor(
-  name='Agent',
-  full_name='org.apache.custos.agent.profile.service.Agent',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.agent.profile.service.Agent.id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='status', full_name='org.apache.custos.agent.profile.service.Agent.status', index=1,
-      number=2, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='created_at', full_name='org.apache.custos.agent.profile.service.Agent.created_at', index=2,
-      number=3, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='last_modified_at', full_name='org.apache.custos.agent.profile.service.Agent.last_modified_at', index=3,
-      number=4, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='roles', full_name='org.apache.custos.agent.profile.service.Agent.roles', index=4,
-      number=5, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='attributes', full_name='org.apache.custos.agent.profile.service.Agent.attributes', index=5,
-      number=6, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='agent_client_roles', full_name='org.apache.custos.agent.profile.service.Agent.agent_client_roles', index=6,
-      number=8, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=71,
-  serialized_end=326,
-)
-
-
-_AGENTATTRIBUTE = _descriptor.Descriptor(
-  name='AgentAttribute',
-  full_name='org.apache.custos.agent.profile.service.AgentAttribute',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.agent.profile.service.AgentAttribute.id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='key', full_name='org.apache.custos.agent.profile.service.AgentAttribute.key', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='value', full_name='org.apache.custos.agent.profile.service.AgentAttribute.value', index=2,
-      number=3, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=328,
-  serialized_end=384,
-)
-
-
-_AGENTREQUEST = _descriptor.Descriptor(
-  name='AgentRequest',
-  full_name='org.apache.custos.agent.profile.service.AgentRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.agent.profile.service.AgentRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='agent', full_name='org.apache.custos.agent.profile.service.AgentRequest.agent', index=1,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=386,
-  serialized_end=482,
-)
-
-
-_OPERATIONSTATUS = _descriptor.Descriptor(
-  name='OperationStatus',
-  full_name='org.apache.custos.agent.profile.service.OperationStatus',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='status', full_name='org.apache.custos.agent.profile.service.OperationStatus.status', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=484,
-  serialized_end=517,
-)
-
-_AGENT.fields_by_name['status'].enum_type = _AGENTSTATUS
-_AGENT.fields_by_name['attributes'].message_type = _AGENTATTRIBUTE
-_AGENTREQUEST.fields_by_name['agent'].message_type = _AGENT
-DESCRIPTOR.message_types_by_name['Agent'] = _AGENT
-DESCRIPTOR.message_types_by_name['AgentAttribute'] = _AGENTATTRIBUTE
-DESCRIPTOR.message_types_by_name['AgentRequest'] = _AGENTREQUEST
-DESCRIPTOR.message_types_by_name['OperationStatus'] = _OPERATIONSTATUS
-DESCRIPTOR.enum_types_by_name['AgentStatus'] = _AGENTSTATUS
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-Agent = _reflection.GeneratedProtocolMessageType('Agent', (_message.Message,), {
-  'DESCRIPTOR' : _AGENT,
-  '__module__' : 'AgentProfileService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.agent.profile.service.Agent)
-  })
-_sym_db.RegisterMessage(Agent)
-
-AgentAttribute = _reflection.GeneratedProtocolMessageType('AgentAttribute', (_message.Message,), {
-  'DESCRIPTOR' : _AGENTATTRIBUTE,
-  '__module__' : 'AgentProfileService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.agent.profile.service.AgentAttribute)
-  })
-_sym_db.RegisterMessage(AgentAttribute)
-
-AgentRequest = _reflection.GeneratedProtocolMessageType('AgentRequest', (_message.Message,), {
-  'DESCRIPTOR' : _AGENTREQUEST,
-  '__module__' : 'AgentProfileService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.agent.profile.service.AgentRequest)
-  })
-_sym_db.RegisterMessage(AgentRequest)
-
-OperationStatus = _reflection.GeneratedProtocolMessageType('OperationStatus', (_message.Message,), {
-  'DESCRIPTOR' : _OPERATIONSTATUS,
-  '__module__' : 'AgentProfileService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.agent.profile.service.OperationStatus)
-  })
-_sym_db.RegisterMessage(OperationStatus)
-
-
-DESCRIPTOR._options = None
-
-_AGENTPROFILESERVICE = _descriptor.ServiceDescriptor(
-  name='AgentProfileService',
-  full_name='org.apache.custos.agent.profile.service.AgentProfileService',
-  file=DESCRIPTOR,
-  index=0,
-  serialized_options=None,
-  create_key=_descriptor._internal_create_key,
-  serialized_start=562,
-  serialized_end=1062,
-  methods=[
-  _descriptor.MethodDescriptor(
-    name='createAgent',
-    full_name='org.apache.custos.agent.profile.service.AgentProfileService.createAgent',
-    index=0,
-    containing_service=None,
-    input_type=_AGENTREQUEST,
-    output_type=_AGENT,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='updateAgent',
-    full_name='org.apache.custos.agent.profile.service.AgentProfileService.updateAgent',
-    index=1,
-    containing_service=None,
-    input_type=_AGENTREQUEST,
-    output_type=_AGENT,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteAgent',
-    full_name='org.apache.custos.agent.profile.service.AgentProfileService.deleteAgent',
-    index=2,
-    containing_service=None,
-    input_type=_AGENTREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getAgent',
-    full_name='org.apache.custos.agent.profile.service.AgentProfileService.getAgent',
-    index=3,
-    containing_service=None,
-    input_type=_AGENTREQUEST,
-    output_type=_AGENT,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-])
-_sym_db.RegisterServiceDescriptor(_AGENTPROFILESERVICE)
-
-DESCRIPTOR.services_by_name['AgentProfileService'] = _AGENTPROFILESERVICE
-
-# @@protoc_insertion_point(module_scope)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/AgentProfileService_pb2_grpc.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/AgentProfileService_pb2_grpc.py
deleted file mode 100644
index dd0ce30..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/AgentProfileService_pb2_grpc.py
+++ /dev/null
@@ -1,182 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements. See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership. The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License. You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing,
-#   software distributed under the License is distributed on an
-#   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#   KIND, either express or implied. See the License for the
-#   specific language governing permissions and limitations
-#   under the License.
-
-# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
-"""Client and server classes corresponding to protobuf-defined services."""
-import grpc
-
-import custos.server.core.AgentProfileService_pb2 as AgentProfileService__pb2
-
-
-class AgentProfileServiceStub(object):
-    """Missing associated documentation comment in .proto file."""
-
-    def __init__(self, channel):
-        """Constructor.
-
-        Args:
-            channel: A grpc.Channel.
-        """
-        self.createAgent = channel.unary_unary(
-                '/org.apache.custos.agent.profile.service.AgentProfileService/createAgent',
-                request_serializer=AgentProfileService__pb2.AgentRequest.SerializeToString,
-                response_deserializer=AgentProfileService__pb2.Agent.FromString,
-                )
-        self.updateAgent = channel.unary_unary(
-                '/org.apache.custos.agent.profile.service.AgentProfileService/updateAgent',
-                request_serializer=AgentProfileService__pb2.AgentRequest.SerializeToString,
-                response_deserializer=AgentProfileService__pb2.Agent.FromString,
-                )
-        self.deleteAgent = channel.unary_unary(
-                '/org.apache.custos.agent.profile.service.AgentProfileService/deleteAgent',
-                request_serializer=AgentProfileService__pb2.AgentRequest.SerializeToString,
-                response_deserializer=AgentProfileService__pb2.OperationStatus.FromString,
-                )
-        self.getAgent = channel.unary_unary(
-                '/org.apache.custos.agent.profile.service.AgentProfileService/getAgent',
-                request_serializer=AgentProfileService__pb2.AgentRequest.SerializeToString,
-                response_deserializer=AgentProfileService__pb2.Agent.FromString,
-                )
-
-
-class AgentProfileServiceServicer(object):
-    """Missing associated documentation comment in .proto file."""
-
-    def createAgent(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def updateAgent(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def deleteAgent(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getAgent(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-
-def add_AgentProfileServiceServicer_to_server(servicer, server):
-    rpc_method_handlers = {
-            'createAgent': grpc.unary_unary_rpc_method_handler(
-                    servicer.createAgent,
-                    request_deserializer=AgentProfileService__pb2.AgentRequest.FromString,
-                    response_serializer=AgentProfileService__pb2.Agent.SerializeToString,
-            ),
-            'updateAgent': grpc.unary_unary_rpc_method_handler(
-                    servicer.updateAgent,
-                    request_deserializer=AgentProfileService__pb2.AgentRequest.FromString,
-                    response_serializer=AgentProfileService__pb2.Agent.SerializeToString,
-            ),
-            'deleteAgent': grpc.unary_unary_rpc_method_handler(
-                    servicer.deleteAgent,
-                    request_deserializer=AgentProfileService__pb2.AgentRequest.FromString,
-                    response_serializer=AgentProfileService__pb2.OperationStatus.SerializeToString,
-            ),
-            'getAgent': grpc.unary_unary_rpc_method_handler(
-                    servicer.getAgent,
-                    request_deserializer=AgentProfileService__pb2.AgentRequest.FromString,
-                    response_serializer=AgentProfileService__pb2.Agent.SerializeToString,
-            ),
-    }
-    generic_handler = grpc.method_handlers_generic_handler(
-            'org.apache.custos.agent.profile.service.AgentProfileService', rpc_method_handlers)
-    server.add_generic_rpc_handlers((generic_handler,))
-
-
- # This class is part of an EXPERIMENTAL API.
-class AgentProfileService(object):
-    """Missing associated documentation comment in .proto file."""
-
-    @staticmethod
-    def createAgent(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.agent.profile.service.AgentProfileService/createAgent',
-            AgentProfileService__pb2.AgentRequest.SerializeToString,
-            AgentProfileService__pb2.Agent.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def updateAgent(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.agent.profile.service.AgentProfileService/updateAgent',
-            AgentProfileService__pb2.AgentRequest.SerializeToString,
-            AgentProfileService__pb2.Agent.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def deleteAgent(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.agent.profile.service.AgentProfileService/deleteAgent',
-            AgentProfileService__pb2.AgentRequest.SerializeToString,
-            AgentProfileService__pb2.OperationStatus.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getAgent(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.agent.profile.service.AgentProfileService/getAgent',
-            AgentProfileService__pb2.AgentRequest.SerializeToString,
-            AgentProfileService__pb2.Agent.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/ClusterManagementService_pb2.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/ClusterManagementService_pb2.py
deleted file mode 100644
index 0b196b2..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/ClusterManagementService_pb2.py
+++ /dev/null
@@ -1,139 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: ClusterManagementService.proto
-
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='ClusterManagementService.proto',
-  package='org.apache.custos.cluster.management.service',
-  syntax='proto3',
-  serialized_options=b'P\001',
-  serialized_pb=b'\n\x1e\x43lusterManagementService.proto\x12,org.apache.custos.cluster.management.service\"D\n\x1bGetServerCertificateRequest\x12\x12\n\nsecretName\x18\x01 \x01(\t\x12\x11\n\tnamespace\x18\x02 \x01(\t\"3\n\x1cGetServerCertificateResponse\x12\x13\n\x0b\x63\x65rtificate\x18\x01 \x01(\t2\xd0\x01\n\x18\x43lusterManagementService\x12\xb3\x01\n\x1agetCustosServerCertificate\x12I.org.apache.custos.cluster.management.service.GetServerCertificateRequest\x1aJ.org.apache.custos.clu [...]
-)
-
-
-
-
-_GETSERVERCERTIFICATEREQUEST = _descriptor.Descriptor(
-  name='GetServerCertificateRequest',
-  full_name='org.apache.custos.cluster.management.service.GetServerCertificateRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='secretName', full_name='org.apache.custos.cluster.management.service.GetServerCertificateRequest.secretName', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='namespace', full_name='org.apache.custos.cluster.management.service.GetServerCertificateRequest.namespace', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=80,
-  serialized_end=148,
-)
-
-
-_GETSERVERCERTIFICATERESPONSE = _descriptor.Descriptor(
-  name='GetServerCertificateResponse',
-  full_name='org.apache.custos.cluster.management.service.GetServerCertificateResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='certificate', full_name='org.apache.custos.cluster.management.service.GetServerCertificateResponse.certificate', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=150,
-  serialized_end=201,
-)
-
-DESCRIPTOR.message_types_by_name['GetServerCertificateRequest'] = _GETSERVERCERTIFICATEREQUEST
-DESCRIPTOR.message_types_by_name['GetServerCertificateResponse'] = _GETSERVERCERTIFICATERESPONSE
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-GetServerCertificateRequest = _reflection.GeneratedProtocolMessageType('GetServerCertificateRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETSERVERCERTIFICATEREQUEST,
-  '__module__' : 'ClusterManagementService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.cluster.management.service.GetServerCertificateRequest)
-  })
-_sym_db.RegisterMessage(GetServerCertificateRequest)
-
-GetServerCertificateResponse = _reflection.GeneratedProtocolMessageType('GetServerCertificateResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETSERVERCERTIFICATERESPONSE,
-  '__module__' : 'ClusterManagementService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.cluster.management.service.GetServerCertificateResponse)
-  })
-_sym_db.RegisterMessage(GetServerCertificateResponse)
-
-
-DESCRIPTOR._options = None
-
-_CLUSTERMANAGEMENTSERVICE = _descriptor.ServiceDescriptor(
-  name='ClusterManagementService',
-  full_name='org.apache.custos.cluster.management.service.ClusterManagementService',
-  file=DESCRIPTOR,
-  index=0,
-  serialized_options=None,
-  serialized_start=204,
-  serialized_end=412,
-  methods=[
-  _descriptor.MethodDescriptor(
-    name='getCustosServerCertificate',
-    full_name='org.apache.custos.cluster.management.service.ClusterManagementService.getCustosServerCertificate',
-    index=0,
-    containing_service=None,
-    input_type=_GETSERVERCERTIFICATEREQUEST,
-    output_type=_GETSERVERCERTIFICATERESPONSE,
-    serialized_options=None,
-  ),
-])
-_sym_db.RegisterServiceDescriptor(_CLUSTERMANAGEMENTSERVICE)
-
-DESCRIPTOR.services_by_name['ClusterManagementService'] = _CLUSTERMANAGEMENTSERVICE
-
-# @@protoc_insertion_point(module_scope)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/ClusterManagementService_pb2_grpc.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/ClusterManagementService_pb2_grpc.py
deleted file mode 100644
index 8cf201c..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/ClusterManagementService_pb2_grpc.py
+++ /dev/null
@@ -1,46 +0,0 @@
-# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
-import grpc
-
-import custos.server.core.ClusterManagementService_pb2 as ClusterManagementService__pb2
-
-
-class ClusterManagementServiceStub(object):
-  # missing associated documentation comment in .proto file
-  pass
-
-  def __init__(self, channel):
-    """Constructor.
-
-    Args:
-      channel: A grpc.Channel.
-    """
-    self.getCustosServerCertificate = channel.unary_unary(
-        '/org.apache.custos.cluster.management.service.ClusterManagementService/getCustosServerCertificate',
-        request_serializer=ClusterManagementService__pb2.GetServerCertificateRequest.SerializeToString,
-        response_deserializer=ClusterManagementService__pb2.GetServerCertificateResponse.FromString,
-        )
-
-
-class ClusterManagementServiceServicer(object):
-  # missing associated documentation comment in .proto file
-  pass
-
-  def getCustosServerCertificate(self, request, context):
-    # missing associated documentation comment in .proto file
-    pass
-    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-    context.set_details('Method not implemented!')
-    raise NotImplementedError('Method not implemented!')
-
-
-def add_ClusterManagementServiceServicer_to_server(servicer, server):
-  rpc_method_handlers = {
-      'getCustosServerCertificate': grpc.unary_unary_rpc_method_handler(
-          servicer.getCustosServerCertificate,
-          request_deserializer=ClusterManagementService__pb2.GetServerCertificateRequest.FromString,
-          response_serializer=ClusterManagementService__pb2.GetServerCertificateResponse.SerializeToString,
-      ),
-  }
-  generic_handler = grpc.method_handlers_generic_handler(
-      'org.apache.custos.cluster.management.service.ClusterManagementService', rpc_method_handlers)
-  server.add_generic_rpc_handlers((generic_handler,))
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/CredentialStoreService_pb2.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/CredentialStoreService_pb2.py
deleted file mode 100644
index 257a183..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/CredentialStoreService_pb2.py
+++ /dev/null
@@ -1,1056 +0,0 @@
-# -*- coding: utf-8 -*-
-
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements. See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership. The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License. You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing,
-#   software distributed under the License is distributed on an
-#   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#   KIND, either express or implied. See the License for the
-#   specific language governing permissions and limitations
-#   under the License.
-
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: CredentialStoreService.proto
-"""Generated protocol buffer code."""
-from google.protobuf.internal import enum_type_wrapper
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='CredentialStoreService.proto',
-  package='org.apache.custos.credential.store.service',
-  syntax='proto3',
-  serialized_options=b'P\001Z\004./pb',
-  create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x1c\x43redentialStoreService.proto\x12*org.apache.custos.credential.store.service\"\x82\x02\n\x12\x43redentialMetadata\x12\x10\n\x08owner_id\x18\x01 \x01(\x03\x12\n\n\x02id\x18\x02 \x01(\t\x12\x0e\n\x06secret\x18\x03 \x01(\t\x12 \n\x18\x63lient_secret_expired_at\x18\x04 \x01(\x03\x12\x1b\n\x13\x63lient_id_issued_at\x18\x05 \x01(\x03\x12>\n\x04type\x18\x06 \x01(\x0e\x32\x30.org.apache.custos.credential.store.service.Type\x12\x14\n\x0csuper_tenant\x18\x07 \x01(\x08\x12 [...]
-)
-
-_TYPE = _descriptor.EnumDescriptor(
-  name='Type',
-  full_name='org.apache.custos.credential.store.service.Type',
-  filename=None,
-  file=DESCRIPTOR,
-  create_key=_descriptor._internal_create_key,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='CUSTOS', index=0, number=0,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='IAM', index=1, number=1,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='CILOGON', index=2, number=2,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='INDIVIDUAL', index=3, number=3,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='AGENT_CLIENT', index=4, number=4,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='AGENT', index=5, number=5,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=1578,
-  serialized_end=1663,
-)
-_sym_db.RegisterEnumDescriptor(_TYPE)
-
-Type = enum_type_wrapper.EnumTypeWrapper(_TYPE)
-CUSTOS = 0
-IAM = 1
-CILOGON = 2
-INDIVIDUAL = 3
-AGENT_CLIENT = 4
-AGENT = 5
-
-
-
-_CREDENTIALMETADATA = _descriptor.Descriptor(
-  name='CredentialMetadata',
-  full_name='org.apache.custos.credential.store.service.CredentialMetadata',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='owner_id', full_name='org.apache.custos.credential.store.service.CredentialMetadata.owner_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.credential.store.service.CredentialMetadata.id', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='secret', full_name='org.apache.custos.credential.store.service.CredentialMetadata.secret', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_secret_expired_at', full_name='org.apache.custos.credential.store.service.CredentialMetadata.client_secret_expired_at', index=3,
-      number=4, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id_issued_at', full_name='org.apache.custos.credential.store.service.CredentialMetadata.client_id_issued_at', index=4,
-      number=5, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='type', full_name='org.apache.custos.credential.store.service.CredentialMetadata.type', index=5,
-      number=6, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='super_tenant', full_name='org.apache.custos.credential.store.service.CredentialMetadata.super_tenant', index=6,
-      number=7, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='super_admin', full_name='org.apache.custos.credential.store.service.CredentialMetadata.super_admin', index=7,
-      number=8, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='internal_sec', full_name='org.apache.custos.credential.store.service.CredentialMetadata.internal_sec', index=8,
-      number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=77,
-  serialized_end=335,
-)
-
-
-_GETCREDENTIALREQUEST = _descriptor.Descriptor(
-  name='GetCredentialRequest',
-  full_name='org.apache.custos.credential.store.service.GetCredentialRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='ownerId', full_name='org.apache.custos.credential.store.service.GetCredentialRequest.ownerId', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.credential.store.service.GetCredentialRequest.id', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='type', full_name='org.apache.custos.credential.store.service.GetCredentialRequest.type', index=2,
-      number=3, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=337,
-  serialized_end=452,
-)
-
-
-_GETALLCREDENTIALSREQUEST = _descriptor.Descriptor(
-  name='GetAllCredentialsRequest',
-  full_name='org.apache.custos.credential.store.service.GetAllCredentialsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='ownerId', full_name='org.apache.custos.credential.store.service.GetAllCredentialsRequest.ownerId', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=454,
-  serialized_end=497,
-)
-
-
-_GETALLCREDENTIALSRESPONSE = _descriptor.Descriptor(
-  name='GetAllCredentialsResponse',
-  full_name='org.apache.custos.credential.store.service.GetAllCredentialsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='secret_list', full_name='org.apache.custos.credential.store.service.GetAllCredentialsResponse.secret_list', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='requester_user_email', full_name='org.apache.custos.credential.store.service.GetAllCredentialsResponse.requester_user_email', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='requester_username', full_name='org.apache.custos.credential.store.service.GetAllCredentialsResponse.requester_username', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=500,
-  serialized_end=670,
-)
-
-
-_OPERATIONSTATUS = _descriptor.Descriptor(
-  name='OperationStatus',
-  full_name='org.apache.custos.credential.store.service.OperationStatus',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='state', full_name='org.apache.custos.credential.store.service.OperationStatus.state', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=672,
-  serialized_end=704,
-)
-
-
-_DELETECREDENTIALREQUEST = _descriptor.Descriptor(
-  name='DeleteCredentialRequest',
-  full_name='org.apache.custos.credential.store.service.DeleteCredentialRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='owner_id', full_name='org.apache.custos.credential.store.service.DeleteCredentialRequest.owner_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='type', full_name='org.apache.custos.credential.store.service.DeleteCredentialRequest.type', index=1,
-      number=2, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=706,
-  serialized_end=813,
-)
-
-
-_GETOPERATIONSMETADATAREQUEST = _descriptor.Descriptor(
-  name='GetOperationsMetadataRequest',
-  full_name='org.apache.custos.credential.store.service.GetOperationsMetadataRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='trace_id', full_name='org.apache.custos.credential.store.service.GetOperationsMetadataRequest.trace_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=815,
-  serialized_end=863,
-)
-
-
-_OPERATIONMETADATA = _descriptor.Descriptor(
-  name='OperationMetadata',
-  full_name='org.apache.custos.credential.store.service.OperationMetadata',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='event', full_name='org.apache.custos.credential.store.service.OperationMetadata.event', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='status', full_name='org.apache.custos.credential.store.service.OperationMetadata.status', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='time_stamp', full_name='org.apache.custos.credential.store.service.OperationMetadata.time_stamp', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.credential.store.service.OperationMetadata.performed_by', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=865,
-  serialized_end=957,
-)
-
-
-_GETOPERATIONSMETADATARESPONSE = _descriptor.Descriptor(
-  name='GetOperationsMetadataResponse',
-  full_name='org.apache.custos.credential.store.service.GetOperationsMetadataResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='metadata', full_name='org.apache.custos.credential.store.service.GetOperationsMetadataResponse.metadata', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=959,
-  serialized_end=1071,
-)
-
-
-_GETNEWCUSTOSCREDENTIALREQUEST = _descriptor.Descriptor(
-  name='GetNewCustosCredentialRequest',
-  full_name='org.apache.custos.credential.store.service.GetNewCustosCredentialRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='owner_id', full_name='org.apache.custos.credential.store.service.GetNewCustosCredentialRequest.owner_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.credential.store.service.GetNewCustosCredentialRequest.performed_by', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1073,
-  serialized_end=1144,
-)
-
-
-_GETNEWCUSTOSCREDENTIALRESPONSE = _descriptor.Descriptor(
-  name='GetNewCustosCredentialResponse',
-  full_name='org.apache.custos.credential.store.service.GetNewCustosCredentialResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.credential.store.service.GetNewCustosCredentialResponse.client_id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_secret', full_name='org.apache.custos.credential.store.service.GetNewCustosCredentialResponse.client_secret', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1146,
-  serialized_end=1220,
-)
-
-
-_TOKENREQUEST = _descriptor.Descriptor(
-  name='TokenRequest',
-  full_name='org.apache.custos.credential.store.service.TokenRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='token', full_name='org.apache.custos.credential.store.service.TokenRequest.token', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='parent_client_id', full_name='org.apache.custos.credential.store.service.TokenRequest.parent_client_id', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1222,
-  serialized_end=1277,
-)
-
-
-_GETOWNERIDRESPONSE = _descriptor.Descriptor(
-  name='GetOwnerIdResponse',
-  full_name='org.apache.custos.credential.store.service.GetOwnerIdResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='owner_id', full_name='org.apache.custos.credential.store.service.GetOwnerIdResponse.owner_id', index=0,
-      number=2, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1279,
-  serialized_end=1317,
-)
-
-
-_CREDENTIALS = _descriptor.Descriptor(
-  name='Credentials',
-  full_name='org.apache.custos.credential.store.service.Credentials',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='iam_client_id', full_name='org.apache.custos.credential.store.service.Credentials.iam_client_id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='iam_client_secret', full_name='org.apache.custos.credential.store.service.Credentials.iam_client_secret', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='ci_logon_client_id', full_name='org.apache.custos.credential.store.service.Credentials.ci_logon_client_id', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='ci_logon_client_secret', full_name='org.apache.custos.credential.store.service.Credentials.ci_logon_client_secret', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='custos_client_id', full_name='org.apache.custos.credential.store.service.Credentials.custos_client_id', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='custos_client_secret', full_name='org.apache.custos.credential.store.service.Credentials.custos_client_secret', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='custos_client_id_issued_at', full_name='org.apache.custos.credential.store.service.Credentials.custos_client_id_issued_at', index=6,
-      number=7, type=1, cpp_type=5, label=1,
-      has_default_value=False, default_value=float(0),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='custos_client_secret_expired_at', full_name='org.apache.custos.credential.store.service.Credentials.custos_client_secret_expired_at', index=7,
-      number=8, type=1, cpp_type=5, label=1,
-      has_default_value=False, default_value=float(0),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1320,
-  serialized_end=1576,
-)
-
-_CREDENTIALMETADATA.fields_by_name['type'].enum_type = _TYPE
-_GETCREDENTIALREQUEST.fields_by_name['type'].enum_type = _TYPE
-_GETALLCREDENTIALSRESPONSE.fields_by_name['secret_list'].message_type = _CREDENTIALMETADATA
-_DELETECREDENTIALREQUEST.fields_by_name['type'].enum_type = _TYPE
-_GETOPERATIONSMETADATARESPONSE.fields_by_name['metadata'].message_type = _OPERATIONMETADATA
-DESCRIPTOR.message_types_by_name['CredentialMetadata'] = _CREDENTIALMETADATA
-DESCRIPTOR.message_types_by_name['GetCredentialRequest'] = _GETCREDENTIALREQUEST
-DESCRIPTOR.message_types_by_name['GetAllCredentialsRequest'] = _GETALLCREDENTIALSREQUEST
-DESCRIPTOR.message_types_by_name['GetAllCredentialsResponse'] = _GETALLCREDENTIALSRESPONSE
-DESCRIPTOR.message_types_by_name['OperationStatus'] = _OPERATIONSTATUS
-DESCRIPTOR.message_types_by_name['DeleteCredentialRequest'] = _DELETECREDENTIALREQUEST
-DESCRIPTOR.message_types_by_name['GetOperationsMetadataRequest'] = _GETOPERATIONSMETADATAREQUEST
-DESCRIPTOR.message_types_by_name['OperationMetadata'] = _OPERATIONMETADATA
-DESCRIPTOR.message_types_by_name['GetOperationsMetadataResponse'] = _GETOPERATIONSMETADATARESPONSE
-DESCRIPTOR.message_types_by_name['GetNewCustosCredentialRequest'] = _GETNEWCUSTOSCREDENTIALREQUEST
-DESCRIPTOR.message_types_by_name['GetNewCustosCredentialResponse'] = _GETNEWCUSTOSCREDENTIALRESPONSE
-DESCRIPTOR.message_types_by_name['TokenRequest'] = _TOKENREQUEST
-DESCRIPTOR.message_types_by_name['GetOwnerIdResponse'] = _GETOWNERIDRESPONSE
-DESCRIPTOR.message_types_by_name['Credentials'] = _CREDENTIALS
-DESCRIPTOR.enum_types_by_name['Type'] = _TYPE
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-CredentialMetadata = _reflection.GeneratedProtocolMessageType('CredentialMetadata', (_message.Message,), {
-  'DESCRIPTOR' : _CREDENTIALMETADATA,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.CredentialMetadata)
-  })
-_sym_db.RegisterMessage(CredentialMetadata)
-
-GetCredentialRequest = _reflection.GeneratedProtocolMessageType('GetCredentialRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETCREDENTIALREQUEST,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.GetCredentialRequest)
-  })
-_sym_db.RegisterMessage(GetCredentialRequest)
-
-GetAllCredentialsRequest = _reflection.GeneratedProtocolMessageType('GetAllCredentialsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETALLCREDENTIALSREQUEST,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.GetAllCredentialsRequest)
-  })
-_sym_db.RegisterMessage(GetAllCredentialsRequest)
-
-GetAllCredentialsResponse = _reflection.GeneratedProtocolMessageType('GetAllCredentialsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETALLCREDENTIALSRESPONSE,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.GetAllCredentialsResponse)
-  })
-_sym_db.RegisterMessage(GetAllCredentialsResponse)
-
-OperationStatus = _reflection.GeneratedProtocolMessageType('OperationStatus', (_message.Message,), {
-  'DESCRIPTOR' : _OPERATIONSTATUS,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.OperationStatus)
-  })
-_sym_db.RegisterMessage(OperationStatus)
-
-DeleteCredentialRequest = _reflection.GeneratedProtocolMessageType('DeleteCredentialRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETECREDENTIALREQUEST,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.DeleteCredentialRequest)
-  })
-_sym_db.RegisterMessage(DeleteCredentialRequest)
-
-GetOperationsMetadataRequest = _reflection.GeneratedProtocolMessageType('GetOperationsMetadataRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETOPERATIONSMETADATAREQUEST,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.GetOperationsMetadataRequest)
-  })
-_sym_db.RegisterMessage(GetOperationsMetadataRequest)
-
-OperationMetadata = _reflection.GeneratedProtocolMessageType('OperationMetadata', (_message.Message,), {
-  'DESCRIPTOR' : _OPERATIONMETADATA,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.OperationMetadata)
-  })
-_sym_db.RegisterMessage(OperationMetadata)
-
-GetOperationsMetadataResponse = _reflection.GeneratedProtocolMessageType('GetOperationsMetadataResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETOPERATIONSMETADATARESPONSE,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.GetOperationsMetadataResponse)
-  })
-_sym_db.RegisterMessage(GetOperationsMetadataResponse)
-
-GetNewCustosCredentialRequest = _reflection.GeneratedProtocolMessageType('GetNewCustosCredentialRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETNEWCUSTOSCREDENTIALREQUEST,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.GetNewCustosCredentialRequest)
-  })
-_sym_db.RegisterMessage(GetNewCustosCredentialRequest)
-
-GetNewCustosCredentialResponse = _reflection.GeneratedProtocolMessageType('GetNewCustosCredentialResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETNEWCUSTOSCREDENTIALRESPONSE,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.GetNewCustosCredentialResponse)
-  })
-_sym_db.RegisterMessage(GetNewCustosCredentialResponse)
-
-TokenRequest = _reflection.GeneratedProtocolMessageType('TokenRequest', (_message.Message,), {
-  'DESCRIPTOR' : _TOKENREQUEST,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.TokenRequest)
-  })
-_sym_db.RegisterMessage(TokenRequest)
-
-GetOwnerIdResponse = _reflection.GeneratedProtocolMessageType('GetOwnerIdResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETOWNERIDRESPONSE,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.GetOwnerIdResponse)
-  })
-_sym_db.RegisterMessage(GetOwnerIdResponse)
-
-Credentials = _reflection.GeneratedProtocolMessageType('Credentials', (_message.Message,), {
-  'DESCRIPTOR' : _CREDENTIALS,
-  '__module__' : 'CredentialStoreService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.credential.store.service.Credentials)
-  })
-_sym_db.RegisterMessage(Credentials)
-
-
-DESCRIPTOR._options = None
-
-_CREDENTIALSTORESERVICE = _descriptor.ServiceDescriptor(
-  name='CredentialStoreService',
-  full_name='org.apache.custos.credential.store.service.CredentialStoreService',
-  file=DESCRIPTOR,
-  index=0,
-  serialized_options=None,
-  create_key=_descriptor._internal_create_key,
-  serialized_start=1666,
-  serialized_end=4654,
-  methods=[
-  _descriptor.MethodDescriptor(
-    name='putCredential',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.putCredential',
-    index=0,
-    containing_service=None,
-    input_type=_CREDENTIALMETADATA,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteCredential',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.deleteCredential',
-    index=1,
-    containing_service=None,
-    input_type=_DELETECREDENTIALREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getCredential',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getCredential',
-    index=2,
-    containing_service=None,
-    input_type=_GETCREDENTIALREQUEST,
-    output_type=_CREDENTIALMETADATA,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getAllCredentials',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getAllCredentials',
-    index=3,
-    containing_service=None,
-    input_type=_GETALLCREDENTIALSREQUEST,
-    output_type=_GETALLCREDENTIALSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getOperationMetadata',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getOperationMetadata',
-    index=4,
-    containing_service=None,
-    input_type=_GETOPERATIONSMETADATAREQUEST,
-    output_type=_GETOPERATIONSMETADATARESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getNewCustosCredential',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getNewCustosCredential',
-    index=5,
-    containing_service=None,
-    input_type=_GETNEWCUSTOSCREDENTIALREQUEST,
-    output_type=_CREDENTIALMETADATA,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getOwnerIdFromToken',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getOwnerIdFromToken',
-    index=6,
-    containing_service=None,
-    input_type=_TOKENREQUEST,
-    output_type=_GETOWNERIDRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getCustosCredentialFromToken',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getCustosCredentialFromToken',
-    index=7,
-    containing_service=None,
-    input_type=_TOKENREQUEST,
-    output_type=_CREDENTIALMETADATA,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getCustosCredentialFromClientId',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getCustosCredentialFromClientId',
-    index=8,
-    containing_service=None,
-    input_type=_GETCREDENTIALREQUEST,
-    output_type=_CREDENTIALMETADATA,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getAllCredentialsFromToken',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getAllCredentialsFromToken',
-    index=9,
-    containing_service=None,
-    input_type=_TOKENREQUEST,
-    output_type=_GETALLCREDENTIALSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getMasterCredentials',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getMasterCredentials',
-    index=10,
-    containing_service=None,
-    input_type=_GETCREDENTIALREQUEST,
-    output_type=_GETALLCREDENTIALSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getAllCredentialsFromJWTToken',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getAllCredentialsFromJWTToken',
-    index=11,
-    containing_service=None,
-    input_type=_TOKENREQUEST,
-    output_type=_GETALLCREDENTIALSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getBasicCredentials',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getBasicCredentials',
-    index=12,
-    containing_service=None,
-    input_type=_TOKENREQUEST,
-    output_type=_CREDENTIALS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='createAgentCredential',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.createAgentCredential',
-    index=13,
-    containing_service=None,
-    input_type=_CREDENTIALMETADATA,
-    output_type=_CREDENTIALMETADATA,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getAgentCredential',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getAgentCredential',
-    index=14,
-    containing_service=None,
-    input_type=_GETCREDENTIALREQUEST,
-    output_type=_CREDENTIALMETADATA,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteAgentCredential',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.deleteAgentCredential',
-    index=15,
-    containing_service=None,
-    input_type=_CREDENTIALMETADATA,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getCredentialByAgentBasicAuth',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getCredentialByAgentBasicAuth',
-    index=16,
-    containing_service=None,
-    input_type=_TOKENREQUEST,
-    output_type=_GETALLCREDENTIALSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getCredentialByAgentJWTToken',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.getCredentialByAgentJWTToken',
-    index=17,
-    containing_service=None,
-    input_type=_TOKENREQUEST,
-    output_type=_GETALLCREDENTIALSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='validateAgentJWTToken',
-    full_name='org.apache.custos.credential.store.service.CredentialStoreService.validateAgentJWTToken',
-    index=18,
-    containing_service=None,
-    input_type=_TOKENREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-])
-_sym_db.RegisterServiceDescriptor(_CREDENTIALSTORESERVICE)
-
-DESCRIPTOR.services_by_name['CredentialStoreService'] = _CREDENTIALSTORESERVICE
-
-# @@protoc_insertion_point(module_scope)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/CredentialStoreService_pb2_grpc.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/CredentialStoreService_pb2_grpc.py
deleted file mode 100644
index cb975e5..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/CredentialStoreService_pb2_grpc.py
+++ /dev/null
@@ -1,677 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements. See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership. The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License. You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing,
-#   software distributed under the License is distributed on an
-#   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#   KIND, either express or implied. See the License for the
-#   specific language governing permissions and limitations
-#   under the License.
-
-# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
-"""Client and server classes corresponding to protobuf-defined services."""
-import grpc
-
-import custos.server.core.CredentialStoreService_pb2 as CredentialStoreService__pb2
-
-
-class CredentialStoreServiceStub(object):
-    """Missing associated documentation comment in .proto file."""
-
-    def __init__(self, channel):
-        """Constructor.
-
-        Args:
-            channel: A grpc.Channel.
-        """
-        self.putCredential = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/putCredential',
-                request_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.OperationStatus.FromString,
-                )
-        self.deleteCredential = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/deleteCredential',
-                request_serializer=CredentialStoreService__pb2.DeleteCredentialRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.OperationStatus.FromString,
-                )
-        self.getCredential = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getCredential',
-                request_serializer=CredentialStoreService__pb2.GetCredentialRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                )
-        self.getAllCredentials = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getAllCredentials',
-                request_serializer=CredentialStoreService__pb2.GetAllCredentialsRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-                )
-        self.getOperationMetadata = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getOperationMetadata',
-                request_serializer=CredentialStoreService__pb2.GetOperationsMetadataRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.GetOperationsMetadataResponse.FromString,
-                )
-        self.getNewCustosCredential = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getNewCustosCredential',
-                request_serializer=CredentialStoreService__pb2.GetNewCustosCredentialRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                )
-        self.getOwnerIdFromToken = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getOwnerIdFromToken',
-                request_serializer=CredentialStoreService__pb2.TokenRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.GetOwnerIdResponse.FromString,
-                )
-        self.getCustosCredentialFromToken = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getCustosCredentialFromToken',
-                request_serializer=CredentialStoreService__pb2.TokenRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                )
-        self.getCustosCredentialFromClientId = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getCustosCredentialFromClientId',
-                request_serializer=CredentialStoreService__pb2.GetCredentialRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                )
-        self.getAllCredentialsFromToken = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getAllCredentialsFromToken',
-                request_serializer=CredentialStoreService__pb2.TokenRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-                )
-        self.getMasterCredentials = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getMasterCredentials',
-                request_serializer=CredentialStoreService__pb2.GetCredentialRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-                )
-        self.getAllCredentialsFromJWTToken = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getAllCredentialsFromJWTToken',
-                request_serializer=CredentialStoreService__pb2.TokenRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-                )
-        self.getBasicCredentials = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getBasicCredentials',
-                request_serializer=CredentialStoreService__pb2.TokenRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.Credentials.FromString,
-                )
-        self.createAgentCredential = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/createAgentCredential',
-                request_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                )
-        self.getAgentCredential = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getAgentCredential',
-                request_serializer=CredentialStoreService__pb2.GetCredentialRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                )
-        self.deleteAgentCredential = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/deleteAgentCredential',
-                request_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.OperationStatus.FromString,
-                )
-        self.getCredentialByAgentBasicAuth = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getCredentialByAgentBasicAuth',
-                request_serializer=CredentialStoreService__pb2.TokenRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-                )
-        self.getCredentialByAgentJWTToken = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/getCredentialByAgentJWTToken',
-                request_serializer=CredentialStoreService__pb2.TokenRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-                )
-        self.validateAgentJWTToken = channel.unary_unary(
-                '/org.apache.custos.credential.store.service.CredentialStoreService/validateAgentJWTToken',
-                request_serializer=CredentialStoreService__pb2.TokenRequest.SerializeToString,
-                response_deserializer=CredentialStoreService__pb2.OperationStatus.FromString,
-                )
-
-
-class CredentialStoreServiceServicer(object):
-    """Missing associated documentation comment in .proto file."""
-
-    def putCredential(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def deleteCredential(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getCredential(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getAllCredentials(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getOperationMetadata(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getNewCustosCredential(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getOwnerIdFromToken(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getCustosCredentialFromToken(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getCustosCredentialFromClientId(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getAllCredentialsFromToken(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getMasterCredentials(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getAllCredentialsFromJWTToken(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getBasicCredentials(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def createAgentCredential(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getAgentCredential(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def deleteAgentCredential(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getCredentialByAgentBasicAuth(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getCredentialByAgentJWTToken(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def validateAgentJWTToken(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-
-def add_CredentialStoreServiceServicer_to_server(servicer, server):
-    rpc_method_handlers = {
-            'putCredential': grpc.unary_unary_rpc_method_handler(
-                    servicer.putCredential,
-                    request_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                    response_serializer=CredentialStoreService__pb2.OperationStatus.SerializeToString,
-            ),
-            'deleteCredential': grpc.unary_unary_rpc_method_handler(
-                    servicer.deleteCredential,
-                    request_deserializer=CredentialStoreService__pb2.DeleteCredentialRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.OperationStatus.SerializeToString,
-            ),
-            'getCredential': grpc.unary_unary_rpc_method_handler(
-                    servicer.getCredential,
-                    request_deserializer=CredentialStoreService__pb2.GetCredentialRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            ),
-            'getAllCredentials': grpc.unary_unary_rpc_method_handler(
-                    servicer.getAllCredentials,
-                    request_deserializer=CredentialStoreService__pb2.GetAllCredentialsRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.GetAllCredentialsResponse.SerializeToString,
-            ),
-            'getOperationMetadata': grpc.unary_unary_rpc_method_handler(
-                    servicer.getOperationMetadata,
-                    request_deserializer=CredentialStoreService__pb2.GetOperationsMetadataRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.GetOperationsMetadataResponse.SerializeToString,
-            ),
-            'getNewCustosCredential': grpc.unary_unary_rpc_method_handler(
-                    servicer.getNewCustosCredential,
-                    request_deserializer=CredentialStoreService__pb2.GetNewCustosCredentialRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            ),
-            'getOwnerIdFromToken': grpc.unary_unary_rpc_method_handler(
-                    servicer.getOwnerIdFromToken,
-                    request_deserializer=CredentialStoreService__pb2.TokenRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.GetOwnerIdResponse.SerializeToString,
-            ),
-            'getCustosCredentialFromToken': grpc.unary_unary_rpc_method_handler(
-                    servicer.getCustosCredentialFromToken,
-                    request_deserializer=CredentialStoreService__pb2.TokenRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            ),
-            'getCustosCredentialFromClientId': grpc.unary_unary_rpc_method_handler(
-                    servicer.getCustosCredentialFromClientId,
-                    request_deserializer=CredentialStoreService__pb2.GetCredentialRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            ),
-            'getAllCredentialsFromToken': grpc.unary_unary_rpc_method_handler(
-                    servicer.getAllCredentialsFromToken,
-                    request_deserializer=CredentialStoreService__pb2.TokenRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.GetAllCredentialsResponse.SerializeToString,
-            ),
-            'getMasterCredentials': grpc.unary_unary_rpc_method_handler(
-                    servicer.getMasterCredentials,
-                    request_deserializer=CredentialStoreService__pb2.GetCredentialRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.GetAllCredentialsResponse.SerializeToString,
-            ),
-            'getAllCredentialsFromJWTToken': grpc.unary_unary_rpc_method_handler(
-                    servicer.getAllCredentialsFromJWTToken,
-                    request_deserializer=CredentialStoreService__pb2.TokenRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.GetAllCredentialsResponse.SerializeToString,
-            ),
-            'getBasicCredentials': grpc.unary_unary_rpc_method_handler(
-                    servicer.getBasicCredentials,
-                    request_deserializer=CredentialStoreService__pb2.TokenRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.Credentials.SerializeToString,
-            ),
-            'createAgentCredential': grpc.unary_unary_rpc_method_handler(
-                    servicer.createAgentCredential,
-                    request_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                    response_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            ),
-            'getAgentCredential': grpc.unary_unary_rpc_method_handler(
-                    servicer.getAgentCredential,
-                    request_deserializer=CredentialStoreService__pb2.GetCredentialRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            ),
-            'deleteAgentCredential': grpc.unary_unary_rpc_method_handler(
-                    servicer.deleteAgentCredential,
-                    request_deserializer=CredentialStoreService__pb2.CredentialMetadata.FromString,
-                    response_serializer=CredentialStoreService__pb2.OperationStatus.SerializeToString,
-            ),
-            'getCredentialByAgentBasicAuth': grpc.unary_unary_rpc_method_handler(
-                    servicer.getCredentialByAgentBasicAuth,
-                    request_deserializer=CredentialStoreService__pb2.TokenRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.GetAllCredentialsResponse.SerializeToString,
-            ),
-            'getCredentialByAgentJWTToken': grpc.unary_unary_rpc_method_handler(
-                    servicer.getCredentialByAgentJWTToken,
-                    request_deserializer=CredentialStoreService__pb2.TokenRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.GetAllCredentialsResponse.SerializeToString,
-            ),
-            'validateAgentJWTToken': grpc.unary_unary_rpc_method_handler(
-                    servicer.validateAgentJWTToken,
-                    request_deserializer=CredentialStoreService__pb2.TokenRequest.FromString,
-                    response_serializer=CredentialStoreService__pb2.OperationStatus.SerializeToString,
-            ),
-    }
-    generic_handler = grpc.method_handlers_generic_handler(
-            'org.apache.custos.credential.store.service.CredentialStoreService', rpc_method_handlers)
-    server.add_generic_rpc_handlers((generic_handler,))
-
-
- # This class is part of an EXPERIMENTAL API.
-class CredentialStoreService(object):
-    """Missing associated documentation comment in .proto file."""
-
-    @staticmethod
-    def putCredential(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/putCredential',
-            CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            CredentialStoreService__pb2.OperationStatus.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def deleteCredential(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/deleteCredential',
-            CredentialStoreService__pb2.DeleteCredentialRequest.SerializeToString,
-            CredentialStoreService__pb2.OperationStatus.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getCredential(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getCredential',
-            CredentialStoreService__pb2.GetCredentialRequest.SerializeToString,
-            CredentialStoreService__pb2.CredentialMetadata.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getAllCredentials(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getAllCredentials',
-            CredentialStoreService__pb2.GetAllCredentialsRequest.SerializeToString,
-            CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getOperationMetadata(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getOperationMetadata',
-            CredentialStoreService__pb2.GetOperationsMetadataRequest.SerializeToString,
-            CredentialStoreService__pb2.GetOperationsMetadataResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getNewCustosCredential(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getNewCustosCredential',
-            CredentialStoreService__pb2.GetNewCustosCredentialRequest.SerializeToString,
-            CredentialStoreService__pb2.CredentialMetadata.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getOwnerIdFromToken(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getOwnerIdFromToken',
-            CredentialStoreService__pb2.TokenRequest.SerializeToString,
-            CredentialStoreService__pb2.GetOwnerIdResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getCustosCredentialFromToken(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getCustosCredentialFromToken',
-            CredentialStoreService__pb2.TokenRequest.SerializeToString,
-            CredentialStoreService__pb2.CredentialMetadata.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getCustosCredentialFromClientId(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getCustosCredentialFromClientId',
-            CredentialStoreService__pb2.GetCredentialRequest.SerializeToString,
-            CredentialStoreService__pb2.CredentialMetadata.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getAllCredentialsFromToken(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getAllCredentialsFromToken',
-            CredentialStoreService__pb2.TokenRequest.SerializeToString,
-            CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getMasterCredentials(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getMasterCredentials',
-            CredentialStoreService__pb2.GetCredentialRequest.SerializeToString,
-            CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getAllCredentialsFromJWTToken(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getAllCredentialsFromJWTToken',
-            CredentialStoreService__pb2.TokenRequest.SerializeToString,
-            CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getBasicCredentials(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getBasicCredentials',
-            CredentialStoreService__pb2.TokenRequest.SerializeToString,
-            CredentialStoreService__pb2.Credentials.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def createAgentCredential(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/createAgentCredential',
-            CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            CredentialStoreService__pb2.CredentialMetadata.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getAgentCredential(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getAgentCredential',
-            CredentialStoreService__pb2.GetCredentialRequest.SerializeToString,
-            CredentialStoreService__pb2.CredentialMetadata.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def deleteAgentCredential(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/deleteAgentCredential',
-            CredentialStoreService__pb2.CredentialMetadata.SerializeToString,
-            CredentialStoreService__pb2.OperationStatus.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getCredentialByAgentBasicAuth(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getCredentialByAgentBasicAuth',
-            CredentialStoreService__pb2.TokenRequest.SerializeToString,
-            CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getCredentialByAgentJWTToken(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/getCredentialByAgentJWTToken',
-            CredentialStoreService__pb2.TokenRequest.SerializeToString,
-            CredentialStoreService__pb2.GetAllCredentialsResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def validateAgentJWTToken(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.credential.store.service.CredentialStoreService/validateAgentJWTToken',
-            CredentialStoreService__pb2.TokenRequest.SerializeToString,
-            CredentialStoreService__pb2.OperationStatus.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/FederatedAuthenticationService_pb2.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/FederatedAuthenticationService_pb2.py
deleted file mode 100644
index 5286ff3..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/FederatedAuthenticationService_pb2.py
+++ /dev/null
@@ -1,1007 +0,0 @@
-# -*- coding: utf-8 -*-
-
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements. See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership. The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License. You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing,
-#   software distributed under the License is distributed on an
-#   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#   KIND, either express or implied. See the License for the
-#   specific language governing permissions and limitations
-#   under the License.
-
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: FederatedAuthenticationService.proto
-"""Generated protocol buffer code."""
-from google.protobuf.internal import enum_type_wrapper
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='FederatedAuthenticationService.proto',
-  package='org.apache.custos.federated.authentication.service',
-  syntax='proto3',
-  serialized_options=b'P\001Z\004./pb',
-  create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n$FederatedAuthenticationService.proto\x12\x32org.apache.custos.federated.authentication.service\x1a\x1cgoogle/protobuf/struct.proto\"\xbe\x01\n\x0e\x43lientMetadata\x12\x11\n\ttenant_id\x18\x01 \x01(\x03\x12\x13\n\x0btenant_name\x18\x02 \x01(\t\x12\r\n\x05scope\x18\x03 \x03(\t\x12\x12\n\ntenant_uRI\x18\x04 \x01(\t\x12\x10\n\x08\x63ontacts\x18\x05 \x03(\t\x12\x0f\n\x07\x63omment\x18\x06 \x01(\t\x12\x15\n\rredirect_uRIs\x18\x07 \x03(\t\x12\x11\n\tclient_id\x18\x08 \x01( [...]
-  ,
-  dependencies=[google_dot_protobuf_dot_struct__pb2.DESCRIPTOR,])
-
-_INSTITUTIONCACHETYPE = _descriptor.EnumDescriptor(
-  name='InstitutionCacheType',
-  full_name='org.apache.custos.federated.authentication.service.InstitutionCacheType',
-  filename=None,
-  file=DESCRIPTOR,
-  create_key=_descriptor._internal_create_key,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='WHITELIST', index=0, number=0,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='BACKLIST', index=1, number=1,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=1658,
-  serialized_end=1709,
-)
-_sym_db.RegisterEnumDescriptor(_INSTITUTIONCACHETYPE)
-
-InstitutionCacheType = enum_type_wrapper.EnumTypeWrapper(_INSTITUTIONCACHETYPE)
-WHITELIST = 0
-BACKLIST = 1
-
-
-
-_CLIENTMETADATA = _descriptor.Descriptor(
-  name='ClientMetadata',
-  full_name='org.apache.custos.federated.authentication.service.ClientMetadata',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_name', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.tenant_name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='scope', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.scope', index=2,
-      number=3, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_uRI', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.tenant_uRI', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='contacts', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.contacts', index=4,
-      number=5, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='comment', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.comment', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='redirect_uRIs', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.redirect_uRIs', index=6,
-      number=7, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.client_id', index=7,
-      number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.federated.authentication.service.ClientMetadata.performed_by', index=8,
-      number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=123,
-  serialized_end=313,
-)
-
-
-_REGISTERCLIENTRESPONSE = _descriptor.Descriptor(
-  name='RegisterClientResponse',
-  full_name='org.apache.custos.federated.authentication.service.RegisterClientResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.federated.authentication.service.RegisterClientResponse.client_id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_secret', full_name='org.apache.custos.federated.authentication.service.RegisterClientResponse.client_secret', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id_issued_at', full_name='org.apache.custos.federated.authentication.service.RegisterClientResponse.client_id_issued_at', index=2,
-      number=3, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_secret_expires_at', full_name='org.apache.custos.federated.authentication.service.RegisterClientResponse.client_secret_expires_at', index=3,
-      number=4, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_registration_uri', full_name='org.apache.custos.federated.authentication.service.RegisterClientResponse.client_registration_uri', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=316,
-  serialized_end=478,
-)
-
-
-_GETCLIENTREQUEST = _descriptor.Descriptor(
-  name='GetClientRequest',
-  full_name='org.apache.custos.federated.authentication.service.GetClientRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.federated.authentication.service.GetClientRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.federated.authentication.service.GetClientRequest.client_id', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=480,
-  serialized_end=536,
-)
-
-
-_GETCLIENTRESPONSE = _descriptor.Descriptor(
-  name='GetClientResponse',
-  full_name='org.apache.custos.federated.authentication.service.GetClientResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.client_id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_name', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.client_name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='redirect_uRIs', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.redirect_uRIs', index=2,
-      number=3, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='grant_types', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.grant_types', index=3,
-      number=4, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='scope', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.scope', index=4,
-      number=5, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id_issued_at', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.client_id_issued_at', index=5,
-      number=6, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='comment', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.comment', index=6,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_secret', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.client_secret', index=7,
-      number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_secret_expires_at', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.client_secret_expires_at', index=8,
-      number=9, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_registration_uri', full_name='org.apache.custos.federated.authentication.service.GetClientResponse.client_registration_uri', index=9,
-      number=10, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=539,
-  serialized_end=793,
-)
-
-
-_DELETECLIENTREQUEST = _descriptor.Descriptor(
-  name='DeleteClientRequest',
-  full_name='org.apache.custos.federated.authentication.service.DeleteClientRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.federated.authentication.service.DeleteClientRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.federated.authentication.service.DeleteClientRequest.client_id', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.federated.authentication.service.DeleteClientRequest.performed_by', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=795,
-  serialized_end=876,
-)
-
-
-_EMPTY = _descriptor.Descriptor(
-  name='Empty',
-  full_name='org.apache.custos.federated.authentication.service.Empty',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=878,
-  serialized_end=885,
-)
-
-
-_GETOPERATIONSMETADATAREQUEST = _descriptor.Descriptor(
-  name='GetOperationsMetadataRequest',
-  full_name='org.apache.custos.federated.authentication.service.GetOperationsMetadataRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='trace_id', full_name='org.apache.custos.federated.authentication.service.GetOperationsMetadataRequest.trace_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=887,
-  serialized_end=935,
-)
-
-
-_OPERATIONMETADATA = _descriptor.Descriptor(
-  name='OperationMetadata',
-  full_name='org.apache.custos.federated.authentication.service.OperationMetadata',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='event', full_name='org.apache.custos.federated.authentication.service.OperationMetadata.event', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='status', full_name='org.apache.custos.federated.authentication.service.OperationMetadata.status', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='time_stamp', full_name='org.apache.custos.federated.authentication.service.OperationMetadata.time_stamp', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.federated.authentication.service.OperationMetadata.performed_by', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=937,
-  serialized_end=1029,
-)
-
-
-_GETOPERATIONSMETADATARESPONSE = _descriptor.Descriptor(
-  name='GetOperationsMetadataResponse',
-  full_name='org.apache.custos.federated.authentication.service.GetOperationsMetadataResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='metadata', full_name='org.apache.custos.federated.authentication.service.GetOperationsMetadataResponse.metadata', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1031,
-  serialized_end=1151,
-)
-
-
-_CACHEMANIPULATIONREQUEST = _descriptor.Descriptor(
-  name='CacheManipulationRequest',
-  full_name='org.apache.custos.federated.authentication.service.CacheManipulationRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.federated.authentication.service.CacheManipulationRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='institution_ids', full_name='org.apache.custos.federated.authentication.service.CacheManipulationRequest.institution_ids', index=1,
-      number=2, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='type', full_name='org.apache.custos.federated.authentication.service.CacheManipulationRequest.type', index=2,
-      number=3, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performedBy', full_name='org.apache.custos.federated.authentication.service.CacheManipulationRequest.performedBy', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1154,
-  serialized_end=1333,
-)
-
-
-_STATUS = _descriptor.Descriptor(
-  name='Status',
-  full_name='org.apache.custos.federated.authentication.service.Status',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='status', full_name='org.apache.custos.federated.authentication.service.Status.status', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1335,
-  serialized_end=1359,
-)
-
-
-_INSTITUTIONOPERATIONRESPONSE = _descriptor.Descriptor(
-  name='InstitutionOperationResponse',
-  full_name='org.apache.custos.federated.authentication.service.InstitutionOperationResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1361,
-  serialized_end=1391,
-)
-
-
-_INSTITUTION = _descriptor.Descriptor(
-  name='Institution',
-  full_name='org.apache.custos.federated.authentication.service.Institution',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='entity_id', full_name='org.apache.custos.federated.authentication.service.Institution.entity_id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='organization_name', full_name='org.apache.custos.federated.authentication.service.Institution.organization_name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='display_name', full_name='org.apache.custos.federated.authentication.service.Institution.display_name', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='rand_s', full_name='org.apache.custos.federated.authentication.service.Institution.rand_s', index=3,
-      number=4, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1393,
-  serialized_end=1490,
-)
-
-
-_GETINSTITUTIONSIDSASRESPONSE = _descriptor.Descriptor(
-  name='GetInstitutionsIdsAsResponse',
-  full_name='org.apache.custos.federated.authentication.service.GetInstitutionsIdsAsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='entity_ids', full_name='org.apache.custos.federated.authentication.service.GetInstitutionsIdsAsResponse.entity_ids', index=0,
-      number=1, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1492,
-  serialized_end=1542,
-)
-
-
-_GETINSTITUTIONSRESPONSE = _descriptor.Descriptor(
-  name='GetInstitutionsResponse',
-  full_name='org.apache.custos.federated.authentication.service.GetInstitutionsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='institutions', full_name='org.apache.custos.federated.authentication.service.GetInstitutionsResponse.institutions', index=0,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1544,
-  serialized_end=1656,
-)
-
-_GETOPERATIONSMETADATARESPONSE.fields_by_name['metadata'].message_type = _OPERATIONMETADATA
-_CACHEMANIPULATIONREQUEST.fields_by_name['type'].enum_type = _INSTITUTIONCACHETYPE
-_GETINSTITUTIONSRESPONSE.fields_by_name['institutions'].message_type = _INSTITUTION
-DESCRIPTOR.message_types_by_name['ClientMetadata'] = _CLIENTMETADATA
-DESCRIPTOR.message_types_by_name['RegisterClientResponse'] = _REGISTERCLIENTRESPONSE
-DESCRIPTOR.message_types_by_name['GetClientRequest'] = _GETCLIENTREQUEST
-DESCRIPTOR.message_types_by_name['GetClientResponse'] = _GETCLIENTRESPONSE
-DESCRIPTOR.message_types_by_name['DeleteClientRequest'] = _DELETECLIENTREQUEST
-DESCRIPTOR.message_types_by_name['Empty'] = _EMPTY
-DESCRIPTOR.message_types_by_name['GetOperationsMetadataRequest'] = _GETOPERATIONSMETADATAREQUEST
-DESCRIPTOR.message_types_by_name['OperationMetadata'] = _OPERATIONMETADATA
-DESCRIPTOR.message_types_by_name['GetOperationsMetadataResponse'] = _GETOPERATIONSMETADATARESPONSE
-DESCRIPTOR.message_types_by_name['CacheManipulationRequest'] = _CACHEMANIPULATIONREQUEST
-DESCRIPTOR.message_types_by_name['Status'] = _STATUS
-DESCRIPTOR.message_types_by_name['InstitutionOperationResponse'] = _INSTITUTIONOPERATIONRESPONSE
-DESCRIPTOR.message_types_by_name['Institution'] = _INSTITUTION
-DESCRIPTOR.message_types_by_name['GetInstitutionsIdsAsResponse'] = _GETINSTITUTIONSIDSASRESPONSE
-DESCRIPTOR.message_types_by_name['GetInstitutionsResponse'] = _GETINSTITUTIONSRESPONSE
-DESCRIPTOR.enum_types_by_name['InstitutionCacheType'] = _INSTITUTIONCACHETYPE
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-ClientMetadata = _reflection.GeneratedProtocolMessageType('ClientMetadata', (_message.Message,), {
-  'DESCRIPTOR' : _CLIENTMETADATA,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.ClientMetadata)
-  })
-_sym_db.RegisterMessage(ClientMetadata)
-
-RegisterClientResponse = _reflection.GeneratedProtocolMessageType('RegisterClientResponse', (_message.Message,), {
-  'DESCRIPTOR' : _REGISTERCLIENTRESPONSE,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.RegisterClientResponse)
-  })
-_sym_db.RegisterMessage(RegisterClientResponse)
-
-GetClientRequest = _reflection.GeneratedProtocolMessageType('GetClientRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETCLIENTREQUEST,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.GetClientRequest)
-  })
-_sym_db.RegisterMessage(GetClientRequest)
-
-GetClientResponse = _reflection.GeneratedProtocolMessageType('GetClientResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETCLIENTRESPONSE,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.GetClientResponse)
-  })
-_sym_db.RegisterMessage(GetClientResponse)
-
-DeleteClientRequest = _reflection.GeneratedProtocolMessageType('DeleteClientRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETECLIENTREQUEST,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.DeleteClientRequest)
-  })
-_sym_db.RegisterMessage(DeleteClientRequest)
-
-Empty = _reflection.GeneratedProtocolMessageType('Empty', (_message.Message,), {
-  'DESCRIPTOR' : _EMPTY,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.Empty)
-  })
-_sym_db.RegisterMessage(Empty)
-
-GetOperationsMetadataRequest = _reflection.GeneratedProtocolMessageType('GetOperationsMetadataRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETOPERATIONSMETADATAREQUEST,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.GetOperationsMetadataRequest)
-  })
-_sym_db.RegisterMessage(GetOperationsMetadataRequest)
-
-OperationMetadata = _reflection.GeneratedProtocolMessageType('OperationMetadata', (_message.Message,), {
-  'DESCRIPTOR' : _OPERATIONMETADATA,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.OperationMetadata)
-  })
-_sym_db.RegisterMessage(OperationMetadata)
-
-GetOperationsMetadataResponse = _reflection.GeneratedProtocolMessageType('GetOperationsMetadataResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETOPERATIONSMETADATARESPONSE,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.GetOperationsMetadataResponse)
-  })
-_sym_db.RegisterMessage(GetOperationsMetadataResponse)
-
-CacheManipulationRequest = _reflection.GeneratedProtocolMessageType('CacheManipulationRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CACHEMANIPULATIONREQUEST,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.CacheManipulationRequest)
-  })
-_sym_db.RegisterMessage(CacheManipulationRequest)
-
-Status = _reflection.GeneratedProtocolMessageType('Status', (_message.Message,), {
-  'DESCRIPTOR' : _STATUS,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.Status)
-  })
-_sym_db.RegisterMessage(Status)
-
-InstitutionOperationResponse = _reflection.GeneratedProtocolMessageType('InstitutionOperationResponse', (_message.Message,), {
-  'DESCRIPTOR' : _INSTITUTIONOPERATIONRESPONSE,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.InstitutionOperationResponse)
-  })
-_sym_db.RegisterMessage(InstitutionOperationResponse)
-
-Institution = _reflection.GeneratedProtocolMessageType('Institution', (_message.Message,), {
-  'DESCRIPTOR' : _INSTITUTION,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.Institution)
-  })
-_sym_db.RegisterMessage(Institution)
-
-GetInstitutionsIdsAsResponse = _reflection.GeneratedProtocolMessageType('GetInstitutionsIdsAsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETINSTITUTIONSIDSASRESPONSE,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.GetInstitutionsIdsAsResponse)
-  })
-_sym_db.RegisterMessage(GetInstitutionsIdsAsResponse)
-
-GetInstitutionsResponse = _reflection.GeneratedProtocolMessageType('GetInstitutionsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETINSTITUTIONSRESPONSE,
-  '__module__' : 'FederatedAuthenticationService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.federated.authentication.service.GetInstitutionsResponse)
-  })
-_sym_db.RegisterMessage(GetInstitutionsResponse)
-
-
-DESCRIPTOR._options = None
-
-_FEDERATEDAUTHENTICATIONSERVICE = _descriptor.ServiceDescriptor(
-  name='FederatedAuthenticationService',
-  full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService',
-  file=DESCRIPTOR,
-  index=0,
-  serialized_options=None,
-  create_key=_descriptor._internal_create_key,
-  serialized_start=1712,
-  serialized_end=3198,
-  methods=[
-  _descriptor.MethodDescriptor(
-    name='addClient',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.addClient',
-    index=0,
-    containing_service=None,
-    input_type=_CLIENTMETADATA,
-    output_type=_REGISTERCLIENTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='updateClient',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.updateClient',
-    index=1,
-    containing_service=None,
-    input_type=_CLIENTMETADATA,
-    output_type=_EMPTY,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getClient',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.getClient',
-    index=2,
-    containing_service=None,
-    input_type=_GETCLIENTREQUEST,
-    output_type=_GETCLIENTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteClient',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.deleteClient',
-    index=3,
-    containing_service=None,
-    input_type=_DELETECLIENTREQUEST,
-    output_type=_EMPTY,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getOperationMetadata',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.getOperationMetadata',
-    index=4,
-    containing_service=None,
-    input_type=_GETOPERATIONSMETADATAREQUEST,
-    output_type=_GETOPERATIONSMETADATARESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='addToCache',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.addToCache',
-    index=5,
-    containing_service=None,
-    input_type=_CACHEMANIPULATIONREQUEST,
-    output_type=_STATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='removeFromCache',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.removeFromCache',
-    index=6,
-    containing_service=None,
-    input_type=_CACHEMANIPULATIONREQUEST,
-    output_type=_STATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getFromCache',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.getFromCache',
-    index=7,
-    containing_service=None,
-    input_type=_CACHEMANIPULATIONREQUEST,
-    output_type=_GETINSTITUTIONSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getInstitutions',
-    full_name='org.apache.custos.federated.authentication.service.FederatedAuthenticationService.getInstitutions',
-    index=8,
-    containing_service=None,
-    input_type=_CACHEMANIPULATIONREQUEST,
-    output_type=_GETINSTITUTIONSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-])
-_sym_db.RegisterServiceDescriptor(_FEDERATEDAUTHENTICATIONSERVICE)
-
-DESCRIPTOR.services_by_name['FederatedAuthenticationService'] = _FEDERATEDAUTHENTICATIONSERVICE
-
-# @@protoc_insertion_point(module_scope)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/FederatedAuthenticationService_pb2_grpc.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/FederatedAuthenticationService_pb2_grpc.py
deleted file mode 100644
index 09940f5..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/FederatedAuthenticationService_pb2_grpc.py
+++ /dev/null
@@ -1,347 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements. See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership. The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License. You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing,
-#   software distributed under the License is distributed on an
-#   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#   KIND, either express or implied. See the License for the
-#   specific language governing permissions and limitations
-#   under the License.
-
-# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
-"""Client and server classes corresponding to protobuf-defined services."""
-import grpc
-
-import custos.server.core.FederatedAuthenticationService_pb2 as FederatedAuthenticationService__pb2
-
-
-class FederatedAuthenticationServiceStub(object):
-    """Missing associated documentation comment in .proto file."""
-
-    def __init__(self, channel):
-        """Constructor.
-
-        Args:
-            channel: A grpc.Channel.
-        """
-        self.addClient = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/addClient',
-                request_serializer=FederatedAuthenticationService__pb2.ClientMetadata.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.RegisterClientResponse.FromString,
-                )
-        self.updateClient = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/updateClient',
-                request_serializer=FederatedAuthenticationService__pb2.ClientMetadata.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.Empty.FromString,
-                )
-        self.getClient = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/getClient',
-                request_serializer=FederatedAuthenticationService__pb2.GetClientRequest.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.GetClientResponse.FromString,
-                )
-        self.deleteClient = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/deleteClient',
-                request_serializer=FederatedAuthenticationService__pb2.DeleteClientRequest.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.Empty.FromString,
-                )
-        self.getOperationMetadata = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/getOperationMetadata',
-                request_serializer=FederatedAuthenticationService__pb2.GetOperationsMetadataRequest.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.GetOperationsMetadataResponse.FromString,
-                )
-        self.addToCache = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/addToCache',
-                request_serializer=FederatedAuthenticationService__pb2.CacheManipulationRequest.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.Status.FromString,
-                )
-        self.removeFromCache = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/removeFromCache',
-                request_serializer=FederatedAuthenticationService__pb2.CacheManipulationRequest.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.Status.FromString,
-                )
-        self.getFromCache = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/getFromCache',
-                request_serializer=FederatedAuthenticationService__pb2.CacheManipulationRequest.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.GetInstitutionsResponse.FromString,
-                )
-        self.getInstitutions = channel.unary_unary(
-                '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/getInstitutions',
-                request_serializer=FederatedAuthenticationService__pb2.CacheManipulationRequest.SerializeToString,
-                response_deserializer=FederatedAuthenticationService__pb2.GetInstitutionsResponse.FromString,
-                )
-
-
-class FederatedAuthenticationServiceServicer(object):
-    """Missing associated documentation comment in .proto file."""
-
-    def addClient(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def updateClient(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getClient(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def deleteClient(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getOperationMetadata(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def addToCache(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def removeFromCache(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getFromCache(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-    def getInstitutions(self, request, context):
-        """Missing associated documentation comment in .proto file."""
-        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
-        context.set_details('Method not implemented!')
-        raise NotImplementedError('Method not implemented!')
-
-
-def add_FederatedAuthenticationServiceServicer_to_server(servicer, server):
-    rpc_method_handlers = {
-            'addClient': grpc.unary_unary_rpc_method_handler(
-                    servicer.addClient,
-                    request_deserializer=FederatedAuthenticationService__pb2.ClientMetadata.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.RegisterClientResponse.SerializeToString,
-            ),
-            'updateClient': grpc.unary_unary_rpc_method_handler(
-                    servicer.updateClient,
-                    request_deserializer=FederatedAuthenticationService__pb2.ClientMetadata.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.Empty.SerializeToString,
-            ),
-            'getClient': grpc.unary_unary_rpc_method_handler(
-                    servicer.getClient,
-                    request_deserializer=FederatedAuthenticationService__pb2.GetClientRequest.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.GetClientResponse.SerializeToString,
-            ),
-            'deleteClient': grpc.unary_unary_rpc_method_handler(
-                    servicer.deleteClient,
-                    request_deserializer=FederatedAuthenticationService__pb2.DeleteClientRequest.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.Empty.SerializeToString,
-            ),
-            'getOperationMetadata': grpc.unary_unary_rpc_method_handler(
-                    servicer.getOperationMetadata,
-                    request_deserializer=FederatedAuthenticationService__pb2.GetOperationsMetadataRequest.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.GetOperationsMetadataResponse.SerializeToString,
-            ),
-            'addToCache': grpc.unary_unary_rpc_method_handler(
-                    servicer.addToCache,
-                    request_deserializer=FederatedAuthenticationService__pb2.CacheManipulationRequest.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.Status.SerializeToString,
-            ),
-            'removeFromCache': grpc.unary_unary_rpc_method_handler(
-                    servicer.removeFromCache,
-                    request_deserializer=FederatedAuthenticationService__pb2.CacheManipulationRequest.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.Status.SerializeToString,
-            ),
-            'getFromCache': grpc.unary_unary_rpc_method_handler(
-                    servicer.getFromCache,
-                    request_deserializer=FederatedAuthenticationService__pb2.CacheManipulationRequest.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.GetInstitutionsResponse.SerializeToString,
-            ),
-            'getInstitutions': grpc.unary_unary_rpc_method_handler(
-                    servicer.getInstitutions,
-                    request_deserializer=FederatedAuthenticationService__pb2.CacheManipulationRequest.FromString,
-                    response_serializer=FederatedAuthenticationService__pb2.GetInstitutionsResponse.SerializeToString,
-            ),
-    }
-    generic_handler = grpc.method_handlers_generic_handler(
-            'org.apache.custos.federated.authentication.service.FederatedAuthenticationService', rpc_method_handlers)
-    server.add_generic_rpc_handlers((generic_handler,))
-
-
- # This class is part of an EXPERIMENTAL API.
-class FederatedAuthenticationService(object):
-    """Missing associated documentation comment in .proto file."""
-
-    @staticmethod
-    def addClient(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/addClient',
-            FederatedAuthenticationService__pb2.ClientMetadata.SerializeToString,
-            FederatedAuthenticationService__pb2.RegisterClientResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def updateClient(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/updateClient',
-            FederatedAuthenticationService__pb2.ClientMetadata.SerializeToString,
-            FederatedAuthenticationService__pb2.Empty.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getClient(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/getClient',
-            FederatedAuthenticationService__pb2.GetClientRequest.SerializeToString,
-            FederatedAuthenticationService__pb2.GetClientResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def deleteClient(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/deleteClient',
-            FederatedAuthenticationService__pb2.DeleteClientRequest.SerializeToString,
-            FederatedAuthenticationService__pb2.Empty.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getOperationMetadata(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/getOperationMetadata',
-            FederatedAuthenticationService__pb2.GetOperationsMetadataRequest.SerializeToString,
-            FederatedAuthenticationService__pb2.GetOperationsMetadataResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def addToCache(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/addToCache',
-            FederatedAuthenticationService__pb2.CacheManipulationRequest.SerializeToString,
-            FederatedAuthenticationService__pb2.Status.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def removeFromCache(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/removeFromCache',
-            FederatedAuthenticationService__pb2.CacheManipulationRequest.SerializeToString,
-            FederatedAuthenticationService__pb2.Status.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getFromCache(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/getFromCache',
-            FederatedAuthenticationService__pb2.CacheManipulationRequest.SerializeToString,
-            FederatedAuthenticationService__pb2.GetInstitutionsResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
-
-    @staticmethod
-    def getInstitutions(request,
-            target,
-            options=(),
-            channel_credentials=None,
-            call_credentials=None,
-            insecure=False,
-            compression=None,
-            wait_for_ready=None,
-            timeout=None,
-            metadata=None):
-        return grpc.experimental.unary_unary(request, target, '/org.apache.custos.federated.authentication.service.FederatedAuthenticationService/getInstitutions',
-            FederatedAuthenticationService__pb2.CacheManipulationRequest.SerializeToString,
-            FederatedAuthenticationService__pb2.GetInstitutionsResponse.FromString,
-            options, channel_credentials,
-            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
diff --git a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/IamAdminService_pb2.py b/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/IamAdminService_pb2.py
deleted file mode 100644
index 9024a42..0000000
--- a/custos-client-sdks/custos-python-sdk/build/lib/custos/server/core/IamAdminService_pb2.py
+++ /dev/null
@@ -1,3689 +0,0 @@
-# -*- coding: utf-8 -*-
-
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements. See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership. The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License. You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing,
-#   software distributed under the License is distributed on an
-#   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#   KIND, either express or implied. See the License for the
-#   specific language governing permissions and limitations
-#   under the License.
-
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: IamAdminService.proto
-"""Generated protocol buffer code."""
-from google.protobuf.internal import enum_type_wrapper
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='IamAdminService.proto',
-  package='org.apache.custos.iam.service',
-  syntax='proto3',
-  serialized_options=b'P\001Z\004./pb',
-  create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x15IamAdminService.proto\x12\x1dorg.apache.custos.iam.service\x1a\x1bgoogle/protobuf/empty.proto\"\x90\x02\n\x12SetUpTenantRequest\x12\x11\n\ttenant_id\x18\x01 \x01(\x03\x12\x13\n\x0btenant_name\x18\x02 \x01(\t\x12\x16\n\x0e\x61\x64min_username\x18\x03 \x01(\t\x12\x17\n\x0f\x61\x64min_firstname\x18\x04 \x01(\t\x12\x16\n\x0e\x61\x64min_lastname\x18\x05 \x01(\t\x12\x13\n\x0b\x61\x64min_email\x18\x06 \x01(\t\x12\x16\n\x0e\x61\x64min_password\x18\x07 \x01(\t\x12\x12\n\nt [...]
-  ,
-  dependencies=[google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,])
-
-_FEDERATEDIDPS = _descriptor.EnumDescriptor(
-  name='FederatedIDPs',
-  full_name='org.apache.custos.iam.service.FederatedIDPs',
-  filename=None,
-  file=DESCRIPTOR,
-  create_key=_descriptor._internal_create_key,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='CILOGON', index=0, number=0,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='FACEBOOK', index=1, number=1,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='GOOGLE', index=2, number=2,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='LINKEDIN', index=3, number=3,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='TWITTER', index=4, number=4,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='CUSTOM_OIDC', index=5, number=5,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=6554,
-  serialized_end=6652,
-)
-_sym_db.RegisterEnumDescriptor(_FEDERATEDIDPS)
-
-FederatedIDPs = enum_type_wrapper.EnumTypeWrapper(_FEDERATEDIDPS)
-_MAPPERTYPES = _descriptor.EnumDescriptor(
-  name='MapperTypes',
-  full_name='org.apache.custos.iam.service.MapperTypes',
-  filename=None,
-  file=DESCRIPTOR,
-  create_key=_descriptor._internal_create_key,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='USER_ATTRIBUTE', index=0, number=0,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='USER_REALM_ROLE', index=1, number=1,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='USER_CLIENT_ROLE', index=2, number=2,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=6654,
-  serialized_end=6730,
-)
-_sym_db.RegisterEnumDescriptor(_MAPPERTYPES)
-
-MapperTypes = enum_type_wrapper.EnumTypeWrapper(_MAPPERTYPES)
-_CLAIMJSONTYPES = _descriptor.EnumDescriptor(
-  name='ClaimJSONTypes',
-  full_name='org.apache.custos.iam.service.ClaimJSONTypes',
-  filename=None,
-  file=DESCRIPTOR,
-  create_key=_descriptor._internal_create_key,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='STRING', index=0, number=0,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='LONG', index=1, number=1,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='INTEGER', index=2, number=2,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='BOOLEAN', index=3, number=3,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='JSON', index=4, number=4,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=6732,
-  serialized_end=6806,
-)
-_sym_db.RegisterEnumDescriptor(_CLAIMJSONTYPES)
-
-ClaimJSONTypes = enum_type_wrapper.EnumTypeWrapper(_CLAIMJSONTYPES)
-_RESOURCETYPES = _descriptor.EnumDescriptor(
-  name='ResourceTypes',
-  full_name='org.apache.custos.iam.service.ResourceTypes',
-  filename=None,
-  file=DESCRIPTOR,
-  create_key=_descriptor._internal_create_key,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='USER', index=0, number=0,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='AGENT', index=1, number=1,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=6808,
-  serialized_end=6844,
-)
-_sym_db.RegisterEnumDescriptor(_RESOURCETYPES)
-
-ResourceTypes = enum_type_wrapper.EnumTypeWrapper(_RESOURCETYPES)
-CILOGON = 0
-FACEBOOK = 1
-GOOGLE = 2
-LINKEDIN = 3
-TWITTER = 4
-CUSTOM_OIDC = 5
-USER_ATTRIBUTE = 0
-USER_REALM_ROLE = 1
-USER_CLIENT_ROLE = 2
-STRING = 0
-LONG = 1
-INTEGER = 2
-BOOLEAN = 3
-JSON = 4
-USER = 0
-AGENT = 1
-
-
-
-_SETUPTENANTREQUEST = _descriptor.Descriptor(
-  name='SetUpTenantRequest',
-  full_name='org.apache.custos.iam.service.SetUpTenantRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.SetUpTenantRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_name', full_name='org.apache.custos.iam.service.SetUpTenantRequest.tenant_name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='admin_username', full_name='org.apache.custos.iam.service.SetUpTenantRequest.admin_username', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='admin_firstname', full_name='org.apache.custos.iam.service.SetUpTenantRequest.admin_firstname', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='admin_lastname', full_name='org.apache.custos.iam.service.SetUpTenantRequest.admin_lastname', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='admin_email', full_name='org.apache.custos.iam.service.SetUpTenantRequest.admin_email', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='admin_password', full_name='org.apache.custos.iam.service.SetUpTenantRequest.admin_password', index=6,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_uRL', full_name='org.apache.custos.iam.service.SetUpTenantRequest.tenant_uRL', index=7,
-      number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='requester_email', full_name='org.apache.custos.iam.service.SetUpTenantRequest.requester_email', index=8,
-      number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='redirect_uRIs', full_name='org.apache.custos.iam.service.SetUpTenantRequest.redirect_uRIs', index=9,
-      number=10, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='custos_client_id', full_name='org.apache.custos.iam.service.SetUpTenantRequest.custos_client_id', index=10,
-      number=11, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=86,
-  serialized_end=358,
-)
-
-
-_CONFIGUREFEDERATEIDPREQUEST_CONFIGMAPENTRY = _descriptor.Descriptor(
-  name='ConfigMapEntry',
-  full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.ConfigMapEntry',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='key', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.ConfigMapEntry.key', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='value', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.ConfigMapEntry.value', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=b'8\001',
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=661,
-  serialized_end=709,
-)
-
-_CONFIGUREFEDERATEIDPREQUEST = _descriptor.Descriptor(
-  name='ConfigureFederateIDPRequest',
-  full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='type', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.type', index=1,
-      number=2, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_iD', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.client_iD', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_sec', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.client_sec', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='config_map', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.config_map', index=4,
-      number=5, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='requester_email', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.requester_email', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='idp_id', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.idp_id', index=6,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='scope', full_name='org.apache.custos.iam.service.ConfigureFederateIDPRequest.scope', index=7,
-      number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[_CONFIGUREFEDERATEIDPREQUEST_CONFIGMAPENTRY, ],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=361,
-  serialized_end=709,
-)
-
-
-_FEDERATEIDPRESPONSE = _descriptor.Descriptor(
-  name='FederateIDPResponse',
-  full_name='org.apache.custos.iam.service.FederateIDPResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='status', full_name='org.apache.custos.iam.service.FederateIDPResponse.status', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=711,
-  serialized_end=748,
-)
-
-
-_SETUPTENANTRESPONSE = _descriptor.Descriptor(
-  name='SetUpTenantResponse',
-  full_name='org.apache.custos.iam.service.SetUpTenantResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.SetUpTenantResponse.client_id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_secret', full_name='org.apache.custos.iam.service.SetUpTenantResponse.client_secret', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=750,
-  serialized_end=813,
-)
-
-
-_ISUSERNAMEAVAILABLEREQUEST = _descriptor.Descriptor(
-  name='IsUsernameAvailableRequest',
-  full_name='org.apache.custos.iam.service.IsUsernameAvailableRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.IsUsernameAvailableRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.IsUsernameAvailableRequest.access_token', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='user_name', full_name='org.apache.custos.iam.service.IsUsernameAvailableRequest.user_name', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=815,
-  serialized_end=903,
-)
-
-
-_CHECKINGRESPONSE = _descriptor.Descriptor(
-  name='CheckingResponse',
-  full_name='org.apache.custos.iam.service.CheckingResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='is_exist', full_name='org.apache.custos.iam.service.CheckingResponse.is_exist', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=905,
-  serialized_end=941,
-)
-
-
-_USERREPRESENTATION = _descriptor.Descriptor(
-  name='UserRepresentation',
-  full_name='org.apache.custos.iam.service.UserRepresentation',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.iam.service.UserRepresentation.id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='username', full_name='org.apache.custos.iam.service.UserRepresentation.username', index=1,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='first_name', full_name='org.apache.custos.iam.service.UserRepresentation.first_name', index=2,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='last_name', full_name='org.apache.custos.iam.service.UserRepresentation.last_name', index=3,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='password', full_name='org.apache.custos.iam.service.UserRepresentation.password', index=4,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='email', full_name='org.apache.custos.iam.service.UserRepresentation.email', index=5,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='temporary_password', full_name='org.apache.custos.iam.service.UserRepresentation.temporary_password', index=6,
-      number=8, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='realm_roles', full_name='org.apache.custos.iam.service.UserRepresentation.realm_roles', index=7,
-      number=9, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_roles', full_name='org.apache.custos.iam.service.UserRepresentation.client_roles', index=8,
-      number=10, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='attributes', full_name='org.apache.custos.iam.service.UserRepresentation.attributes', index=9,
-      number=11, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='state', full_name='org.apache.custos.iam.service.UserRepresentation.state', index=10,
-      number=12, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='creation_time', full_name='org.apache.custos.iam.service.UserRepresentation.creation_time', index=11,
-      number=13, type=1, cpp_type=5, label=1,
-      has_default_value=False, default_value=float(0),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='last_login_at', full_name='org.apache.custos.iam.service.UserRepresentation.last_login_at', index=12,
-      number=14, type=1, cpp_type=5, label=1,
-      has_default_value=False, default_value=float(0),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=944,
-  serialized_end=1264,
-)
-
-
-_GROUPREPRESENTATION = _descriptor.Descriptor(
-  name='GroupRepresentation',
-  full_name='org.apache.custos.iam.service.GroupRepresentation',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='name', full_name='org.apache.custos.iam.service.GroupRepresentation.name', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.iam.service.GroupRepresentation.id', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='realm_roles', full_name='org.apache.custos.iam.service.GroupRepresentation.realm_roles', index=2,
-      number=3, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_roles', full_name='org.apache.custos.iam.service.GroupRepresentation.client_roles', index=3,
-      number=4, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='attributes', full_name='org.apache.custos.iam.service.GroupRepresentation.attributes', index=4,
-      number=5, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='users', full_name='org.apache.custos.iam.service.GroupRepresentation.users', index=5,
-      number=6, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='sub_groups', full_name='org.apache.custos.iam.service.GroupRepresentation.sub_groups', index=6,
-      number=7, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='description', full_name='org.apache.custos.iam.service.GroupRepresentation.description', index=7,
-      number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='ownerId', full_name='org.apache.custos.iam.service.GroupRepresentation.ownerId', index=8,
-      number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1267,
-  serialized_end=1599,
-)
-
-
-_REGISTERUSERREQUEST = _descriptor.Descriptor(
-  name='RegisterUserRequest',
-  full_name='org.apache.custos.iam.service.RegisterUserRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.RegisterUserRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.RegisterUserRequest.access_token', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.RegisterUserRequest.client_id', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_sec', full_name='org.apache.custos.iam.service.RegisterUserRequest.client_sec', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='user', full_name='org.apache.custos.iam.service.RegisterUserRequest.user', index=4,
-      number=5, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.iam.service.RegisterUserRequest.performed_by', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1602,
-  serialized_end=1790,
-)
-
-
-_REGISTERUSERSREQUEST = _descriptor.Descriptor(
-  name='RegisterUsersRequest',
-  full_name='org.apache.custos.iam.service.RegisterUsersRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='users', full_name='org.apache.custos.iam.service.RegisterUsersRequest.users', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.RegisterUsersRequest.tenant_id', index=1,
-      number=2, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.RegisterUsersRequest.access_token', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.RegisterUsersRequest.client_id', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.iam.service.RegisterUsersRequest.performed_by', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1793,
-  serialized_end=1963,
-)
-
-
-_REGISTERUSERRESPONSE = _descriptor.Descriptor(
-  name='RegisterUserResponse',
-  full_name='org.apache.custos.iam.service.RegisterUserResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='is_registered', full_name='org.apache.custos.iam.service.RegisterUserResponse.is_registered', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1965,
-  serialized_end=2010,
-)
-
-
-_REGISTERUSERSRESPONSE = _descriptor.Descriptor(
-  name='RegisterUsersResponse',
-  full_name='org.apache.custos.iam.service.RegisterUsersResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='all_useres_registered', full_name='org.apache.custos.iam.service.RegisterUsersResponse.all_useres_registered', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='failed_users', full_name='org.apache.custos.iam.service.RegisterUsersResponse.failed_users', index=1,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2012,
-  serialized_end=2139,
-)
-
-
-_USERSEARCHMETADATA = _descriptor.Descriptor(
-  name='UserSearchMetadata',
-  full_name='org.apache.custos.iam.service.UserSearchMetadata',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='username', full_name='org.apache.custos.iam.service.UserSearchMetadata.username', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='first_name', full_name='org.apache.custos.iam.service.UserSearchMetadata.first_name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='last_name', full_name='org.apache.custos.iam.service.UserSearchMetadata.last_name', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='email', full_name='org.apache.custos.iam.service.UserSearchMetadata.email', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.iam.service.UserSearchMetadata.id', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2141,
-  serialized_end=2245,
-)
-
-
-_FINDUSERSREQUEST = _descriptor.Descriptor(
-  name='FindUsersRequest',
-  full_name='org.apache.custos.iam.service.FindUsersRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='user', full_name='org.apache.custos.iam.service.FindUsersRequest.user', index=0,
-      number=3, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='offset', full_name='org.apache.custos.iam.service.FindUsersRequest.offset', index=1,
-      number=4, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='limit', full_name='org.apache.custos.iam.service.FindUsersRequest.limit', index=2,
-      number=5, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.FindUsersRequest.tenant_id', index=3,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.FindUsersRequest.access_token', index=4,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.FindUsersRequest.client_id', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_sec', full_name='org.apache.custos.iam.service.FindUsersRequest.client_sec', index=6,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2248,
-  serialized_end=2442,
-)
-
-
-_USERSEARCHREQUEST = _descriptor.Descriptor(
-  name='UserSearchRequest',
-  full_name='org.apache.custos.iam.service.UserSearchRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='user', full_name='org.apache.custos.iam.service.UserSearchRequest.user', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.UserSearchRequest.tenant_id', index=1,
-      number=2, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.UserSearchRequest.access_token', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.UserSearchRequest.client_id', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_sec', full_name='org.apache.custos.iam.service.UserSearchRequest.client_sec', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.iam.service.UserSearchRequest.performed_by', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2445,
-  serialized_end=2631,
-)
-
-
-_FINDUSERSRESPONSE = _descriptor.Descriptor(
-  name='FindUsersResponse',
-  full_name='org.apache.custos.iam.service.FindUsersResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='users', full_name='org.apache.custos.iam.service.FindUsersResponse.users', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2633,
-  serialized_end=2718,
-)
-
-
-_RESETUSERPASSWORD = _descriptor.Descriptor(
-  name='ResetUserPassword',
-  full_name='org.apache.custos.iam.service.ResetUserPassword',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='username', full_name='org.apache.custos.iam.service.ResetUserPassword.username', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='password', full_name='org.apache.custos.iam.service.ResetUserPassword.password', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.ResetUserPassword.tenant_id', index=2,
-      number=3, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.ResetUserPassword.access_token', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.ResetUserPassword.client_id', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_sec', full_name='org.apache.custos.iam.service.ResetUserPassword.client_sec', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2721,
-  serialized_end=2856,
-)
-
-
-_DELETEUSERROLESREQUEST = _descriptor.Descriptor(
-  name='DeleteUserRolesRequest',
-  full_name='org.apache.custos.iam.service.DeleteUserRolesRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.DeleteUserRolesRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='username', full_name='org.apache.custos.iam.service.DeleteUserRolesRequest.username', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_roles', full_name='org.apache.custos.iam.service.DeleteUserRolesRequest.client_roles', index=2,
-      number=3, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='roles', full_name='org.apache.custos.iam.service.DeleteUserRolesRequest.roles', index=3,
-      number=4, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.DeleteUserRolesRequest.access_token', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.DeleteUserRolesRequest.client_id', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.iam.service.DeleteUserRolesRequest.performed_by', index=6,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.iam.service.DeleteUserRolesRequest.id', index=7,
-      number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2859,
-  serialized_end=3032,
-)
-
-
-_ADDUSERROLESREQUEST = _descriptor.Descriptor(
-  name='AddUserRolesRequest',
-  full_name='org.apache.custos.iam.service.AddUserRolesRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.AddUserRolesRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='usernames', full_name='org.apache.custos.iam.service.AddUserRolesRequest.usernames', index=1,
-      number=2, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='roles', full_name='org.apache.custos.iam.service.AddUserRolesRequest.roles', index=2,
-      number=3, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.AddUserRolesRequest.access_token', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.AddUserRolesRequest.client_id', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_level', full_name='org.apache.custos.iam.service.AddUserRolesRequest.client_level', index=5,
-      number=6, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.iam.service.AddUserRolesRequest.performed_by', index=6,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='agents', full_name='org.apache.custos.iam.service.AddUserRolesRequest.agents', index=7,
-      number=8, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3035,
-  serialized_end=3210,
-)
-
-
-_UPDATEUSERPROFILEREQUEST = _descriptor.Descriptor(
-  name='UpdateUserProfileRequest',
-  full_name='org.apache.custos.iam.service.UpdateUserProfileRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.UpdateUserProfileRequest.access_token', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.UpdateUserProfileRequest.tenant_id', index=1,
-      number=2, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='user', full_name='org.apache.custos.iam.service.UpdateUserProfileRequest.user', index=2,
-      number=3, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3213,
-  serialized_end=3345,
-)
-
-
-_ADDUSERRESPONSE = _descriptor.Descriptor(
-  name='AddUserResponse',
-  full_name='org.apache.custos.iam.service.AddUserResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='code', full_name='org.apache.custos.iam.service.AddUserResponse.code', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3347,
-  serialized_end=3378,
-)
-
-
-_GETOPERATIONSMETADATAREQUEST = _descriptor.Descriptor(
-  name='GetOperationsMetadataRequest',
-  full_name='org.apache.custos.iam.service.GetOperationsMetadataRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='trace_id', full_name='org.apache.custos.iam.service.GetOperationsMetadataRequest.trace_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3380,
-  serialized_end=3428,
-)
-
-
-_OPERATIONMETADATA = _descriptor.Descriptor(
-  name='OperationMetadata',
-  full_name='org.apache.custos.iam.service.OperationMetadata',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='event', full_name='org.apache.custos.iam.service.OperationMetadata.event', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='status', full_name='org.apache.custos.iam.service.OperationMetadata.status', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='time_stamp', full_name='org.apache.custos.iam.service.OperationMetadata.time_stamp', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performed_by', full_name='org.apache.custos.iam.service.OperationMetadata.performed_by', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3430,
-  serialized_end=3522,
-)
-
-
-_GETOPERATIONSMETADATARESPONSE = _descriptor.Descriptor(
-  name='GetOperationsMetadataResponse',
-  full_name='org.apache.custos.iam.service.GetOperationsMetadataResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='metadata', full_name='org.apache.custos.iam.service.GetOperationsMetadataResponse.metadata', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3524,
-  serialized_end=3623,
-)
-
-
-_DELETETENANTREQUEST = _descriptor.Descriptor(
-  name='DeleteTenantRequest',
-  full_name='org.apache.custos.iam.service.DeleteTenantRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.DeleteTenantRequest.tenant_id', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3625,
-  serialized_end=3665,
-)
-
-
-_ADDROLESREQUEST = _descriptor.Descriptor(
-  name='AddRolesRequest',
-  full_name='org.apache.custos.iam.service.AddRolesRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='roles', full_name='org.apache.custos.iam.service.AddRolesRequest.roles', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_level', full_name='org.apache.custos.iam.service.AddRolesRequest.client_level', index=1,
-      number=2, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.AddRolesRequest.tenant_id', index=2,
-      number=3, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.AddRolesRequest.client_id', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3668,
-  serialized_end=3811,
-)
-
-
-_GETROLESREQUEST = _descriptor.Descriptor(
-  name='GetRolesRequest',
-  full_name='org.apache.custos.iam.service.GetRolesRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='client_level', full_name='org.apache.custos.iam.service.GetRolesRequest.client_level', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.GetRolesRequest.tenant_id', index=1,
-      number=2, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.GetRolesRequest.client_id', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3813,
-  serialized_end=3890,
-)
-
-
-_ROLEREPRESENTATION = _descriptor.Descriptor(
-  name='RoleRepresentation',
-  full_name='org.apache.custos.iam.service.RoleRepresentation',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='name', full_name='org.apache.custos.iam.service.RoleRepresentation.name', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='description', full_name='org.apache.custos.iam.service.RoleRepresentation.description', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='composite', full_name='org.apache.custos.iam.service.RoleRepresentation.composite', index=2,
-      number=3, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.iam.service.RoleRepresentation.id', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3892,
-  serialized_end=3978,
-)
-
-
-_DELETEROLEREQUEST = _descriptor.Descriptor(
-  name='DeleteRoleRequest',
-  full_name='org.apache.custos.iam.service.DeleteRoleRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='client_level', full_name='org.apache.custos.iam.service.DeleteRoleRequest.client_level', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.DeleteRoleRequest.tenant_id', index=1,
-      number=2, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.DeleteRoleRequest.client_id', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='role', full_name='org.apache.custos.iam.service.DeleteRoleRequest.role', index=3,
-      number=4, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=3981,
-  serialized_end=4125,
-)
-
-
-_ALLROLES = _descriptor.Descriptor(
-  name='AllRoles',
-  full_name='org.apache.custos.iam.service.AllRoles',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='roles', full_name='org.apache.custos.iam.service.AllRoles.roles', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='scope', full_name='org.apache.custos.iam.service.AllRoles.scope', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=4127,
-  serialized_end=4218,
-)
-
-
-_ADDPROTOCOLMAPPERREQUEST = _descriptor.Descriptor(
-  name='AddProtocolMapperRequest',
-  full_name='org.apache.custos.iam.service.AddProtocolMapperRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='name', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.name', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='attribute_name', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.attribute_name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='claim_name', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.claim_name', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='claim_type', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.claim_type', index=3,
-      number=4, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.tenant_id', index=4,
-      number=6, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.client_id', index=5,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='mapper_type', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.mapper_type', index=6,
-      number=8, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='add_to_id_token', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.add_to_id_token', index=7,
-      number=9, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='add_to_access_token', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.add_to_access_token', index=8,
-      number=10, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='add_to_user_info', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.add_to_user_info', index=9,
-      number=11, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='multi_valued', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.multi_valued', index=10,
-      number=12, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='aggregate_attribute_values', full_name='org.apache.custos.iam.service.AddProtocolMapperRequest.aggregate_attribute_values', index=11,
-      number=13, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=4221,
-  serialized_end=4613,
-)
-
-
-_OPERATIONSTATUS = _descriptor.Descriptor(
-  name='OperationStatus',
-  full_name='org.apache.custos.iam.service.OperationStatus',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='status', full_name='org.apache.custos.iam.service.OperationStatus.status', index=0,
-      number=1, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=4615,
-  serialized_end=4648,
-)
-
-
-_ADDUSERATTRIBUTESREQUEST = _descriptor.Descriptor(
-  name='AddUserAttributesRequest',
-  full_name='org.apache.custos.iam.service.AddUserAttributesRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='attributes', full_name='org.apache.custos.iam.service.AddUserAttributesRequest.attributes', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='users', full_name='org.apache.custos.iam.service.AddUserAttributesRequest.users', index=1,
-      number=2, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.AddUserAttributesRequest.tenant_id', index=2,
-      number=3, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.AddUserAttributesRequest.client_id', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.AddUserAttributesRequest.access_token', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performedBy', full_name='org.apache.custos.iam.service.AddUserAttributesRequest.performedBy', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='agents', full_name='org.apache.custos.iam.service.AddUserAttributesRequest.agents', index=6,
-      number=7, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=4651,
-  serialized_end=4855,
-)
-
-
-_DELETEUSERATTRIBUTEREQUEST = _descriptor.Descriptor(
-  name='DeleteUserAttributeRequest',
-  full_name='org.apache.custos.iam.service.DeleteUserAttributeRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='attributes', full_name='org.apache.custos.iam.service.DeleteUserAttributeRequest.attributes', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='users', full_name='org.apache.custos.iam.service.DeleteUserAttributeRequest.users', index=1,
-      number=2, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenant_id', full_name='org.apache.custos.iam.service.DeleteUserAttributeRequest.tenant_id', index=2,
-      number=3, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_id', full_name='org.apache.custos.iam.service.DeleteUserAttributeRequest.client_id', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.DeleteUserAttributeRequest.access_token', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performedBy', full_name='org.apache.custos.iam.service.DeleteUserAttributeRequest.performedBy', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='agents', full_name='org.apache.custos.iam.service.DeleteUserAttributeRequest.agents', index=6,
-      number=7, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=4858,
-  serialized_end=5064,
-)
-
-
-_USERATTRIBUTE = _descriptor.Descriptor(
-  name='UserAttribute',
-  full_name='org.apache.custos.iam.service.UserAttribute',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='key', full_name='org.apache.custos.iam.service.UserAttribute.key', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='values', full_name='org.apache.custos.iam.service.UserAttribute.values', index=1,
-      number=2, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=5066,
-  serialized_end=5110,
-)
-
-
-_EVENTPERSISTENCEREQUEST = _descriptor.Descriptor(
-  name='EventPersistenceRequest',
-  full_name='org.apache.custos.iam.service.EventPersistenceRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenantId', full_name='org.apache.custos.iam.service.EventPersistenceRequest.tenantId', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='admin_event', full_name='org.apache.custos.iam.service.EventPersistenceRequest.admin_event', index=1,
-      number=2, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='event', full_name='org.apache.custos.iam.service.EventPersistenceRequest.event', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='enable', full_name='org.apache.custos.iam.service.EventPersistenceRequest.enable', index=3,
-      number=4, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='persistence_time', full_name='org.apache.custos.iam.service.EventPersistenceRequest.persistence_time', index=4,
-      number=5, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performedBy', full_name='org.apache.custos.iam.service.EventPersistenceRequest.performedBy', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=5113,
-  serialized_end=5255,
-)
-
-
-_GROUPSREQUEST = _descriptor.Descriptor(
-  name='GroupsRequest',
-  full_name='org.apache.custos.iam.service.GroupsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenantId', full_name='org.apache.custos.iam.service.GroupsRequest.tenantId', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='accessToken', full_name='org.apache.custos.iam.service.GroupsRequest.accessToken', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performedBy', full_name='org.apache.custos.iam.service.GroupsRequest.performedBy', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='clientId', full_name='org.apache.custos.iam.service.GroupsRequest.clientId', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='clientSec', full_name='org.apache.custos.iam.service.GroupsRequest.clientSec', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='groups', full_name='org.apache.custos.iam.service.GroupsRequest.groups', index=5,
-      number=6, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=5258,
-  serialized_end=5438,
-)
-
-
-_GROUPREQUEST = _descriptor.Descriptor(
-  name='GroupRequest',
-  full_name='org.apache.custos.iam.service.GroupRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenantId', full_name='org.apache.custos.iam.service.GroupRequest.tenantId', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='accessToken', full_name='org.apache.custos.iam.service.GroupRequest.accessToken', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performedBy', full_name='org.apache.custos.iam.service.GroupRequest.performedBy', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='clientId', full_name='org.apache.custos.iam.service.GroupRequest.clientId', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='clientSec', full_name='org.apache.custos.iam.service.GroupRequest.clientSec', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.iam.service.GroupRequest.id', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='group', full_name='org.apache.custos.iam.service.GroupRequest.group', index=6,
-      number=7, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=5441,
-  serialized_end=5631,
-)
-
-
-_GROUPSRESPONSE = _descriptor.Descriptor(
-  name='GroupsResponse',
-  full_name='org.apache.custos.iam.service.GroupsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='groups', full_name='org.apache.custos.iam.service.GroupsResponse.groups', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=5633,
-  serialized_end=5717,
-)
-
-
-_USERGROUPMAPPINGREQUEST = _descriptor.Descriptor(
-  name='UserGroupMappingRequest',
-  full_name='org.apache.custos.iam.service.UserGroupMappingRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenantId', full_name='org.apache.custos.iam.service.UserGroupMappingRequest.tenantId', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='accessToken', full_name='org.apache.custos.iam.service.UserGroupMappingRequest.accessToken', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performedBy', full_name='org.apache.custos.iam.service.UserGroupMappingRequest.performedBy', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='clientId', full_name='org.apache.custos.iam.service.UserGroupMappingRequest.clientId', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='clientSec', full_name='org.apache.custos.iam.service.UserGroupMappingRequest.clientSec', index=4,
-      number=5, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='username', full_name='org.apache.custos.iam.service.UserGroupMappingRequest.username', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='group_id', full_name='org.apache.custos.iam.service.UserGroupMappingRequest.group_id', index=6,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='membership_type', full_name='org.apache.custos.iam.service.UserGroupMappingRequest.membership_type', index=7,
-      number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=5720,
-  serialized_end=5903,
-)
-
-
-_AGENTCLIENTMETADATA = _descriptor.Descriptor(
-  name='AgentClientMetadata',
-  full_name='org.apache.custos.iam.service.AgentClientMetadata',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenantId', full_name='org.apache.custos.iam.service.AgentClientMetadata.tenantId', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='tenantURL', full_name='org.apache.custos.iam.service.AgentClientMetadata.tenantURL', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='redirectURIs', full_name='org.apache.custos.iam.service.AgentClientMetadata.redirectURIs', index=2,
-      number=3, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='clientName', full_name='org.apache.custos.iam.service.AgentClientMetadata.clientName', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token_life_time', full_name='org.apache.custos.iam.service.AgentClientMetadata.access_token_life_time', index=4,
-      number=5, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='performedBy', full_name='org.apache.custos.iam.service.AgentClientMetadata.performedBy', index=5,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='access_token', full_name='org.apache.custos.iam.service.AgentClientMetadata.access_token', index=6,
-      number=7, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=5906,
-  serialized_end=6081,
-)
-
-
-_AGENT = _descriptor.Descriptor(
-  name='Agent',
-  full_name='org.apache.custos.iam.service.Agent',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='id', full_name='org.apache.custos.iam.service.Agent.id', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='realm_roles', full_name='org.apache.custos.iam.service.Agent.realm_roles', index=1,
-      number=2, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='attributes', full_name='org.apache.custos.iam.service.Agent.attributes', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='isEnabled', full_name='org.apache.custos.iam.service.Agent.isEnabled', index=3,
-      number=4, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='creation_time', full_name='org.apache.custos.iam.service.Agent.creation_time', index=4,
-      number=5, type=1, cpp_type=5, label=1,
-      has_default_value=False, default_value=float(0),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='last_modified_at', full_name='org.apache.custos.iam.service.Agent.last_modified_at', index=5,
-      number=6, type=1, cpp_type=5, label=1,
-      has_default_value=False, default_value=float(0),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='client_roles', full_name='org.apache.custos.iam.service.Agent.client_roles', index=6,
-      number=7, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=6084,
-  serialized_end=6280,
-)
-
-
-_GETALLRESOURCES = _descriptor.Descriptor(
-  name='GetAllResources',
-  full_name='org.apache.custos.iam.service.GetAllResources',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='tenantId', full_name='org.apache.custos.iam.service.GetAllResources.tenantId', index=0,
-      number=1, type=3, cpp_type=2, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='clientId', full_name='org.apache.custos.iam.service.GetAllResources.clientId', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='resource_type', full_name='org.apache.custos.iam.service.GetAllResources.resource_type', index=2,
-      number=3, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=6282,
-  serialized_end=6404,
-)
-
-
-_GETALLRESOURCESRESPONSE = _descriptor.Descriptor(
-  name='GetAllResourcesResponse',
-  full_name='org.apache.custos.iam.service.GetAllResourcesResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='agents', full_name='org.apache.custos.iam.service.GetAllResourcesResponse.agents', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='users', full_name='org.apache.custos.iam.service.GetAllResourcesResponse.users', index=1,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=6407,
-  serialized_end=6552,
-)
-
-_CONFIGUREFEDERATEIDPREQUEST_CONFIGMAPENTRY.containing_type = _CONFIGUREFEDERATEIDPREQUEST
-_CONFIGUREFEDERATEIDPREQUEST.fields_by_name['type'].enum_type = _FEDERATEDIDPS
-_CONFIGUREFEDERATEIDPREQUEST.fields_by_name['config_map'].message_type = _CONFIGUREFEDERATEIDPREQUEST_CONFIGMAPENTRY
-_USERREPRESENTATION.fields_by_name['attributes'].message_type = _USERATTRIBUTE
-_GROUPREPRESENTATION.fields_by_name['attributes'].message_type = _USERATTRIBUTE
-_GROUPREPRESENTATION.fields_by_name['users'].message_type = _USERREPRESENTATION
-_GROUPREPRESENTATION.fields_by_name['sub_groups'].message_type = _GROUPREPRESENTATION
-_REGISTERUSERREQUEST.fields_by_name['user'].message_type = _USERREPRESENTATION
-_REGISTERUSERSREQUEST.fields_by_name['users'].message_type = _USERREPRESENTATION
-_REGISTERUSERSRESPONSE.fields_by_name['failed_users'].message_type = _USERREPRESENTATION
-_FINDUSERSREQUEST.fields_by_name['user'].message_type = _USERSEARCHMETADATA
-_USERSEARCHREQUEST.fields_by_name['user'].message_type = _USERSEARCHMETADATA
-_FINDUSERSRESPONSE.fields_by_name['users'].message_type = _USERREPRESENTATION
-_UPDATEUSERPROFILEREQUEST.fields_by_name['user'].message_type = _USERREPRESENTATION
-_GETOPERATIONSMETADATARESPONSE.fields_by_name['metadata'].message_type = _OPERATIONMETADATA
-_ADDROLESREQUEST.fields_by_name['roles'].message_type = _ROLEREPRESENTATION
-_DELETEROLEREQUEST.fields_by_name['role'].message_type = _ROLEREPRESENTATION
-_ALLROLES.fields_by_name['roles'].message_type = _ROLEREPRESENTATION
-_ADDPROTOCOLMAPPERREQUEST.fields_by_name['claim_type'].enum_type = _CLAIMJSONTYPES
-_ADDPROTOCOLMAPPERREQUEST.fields_by_name['mapper_type'].enum_type = _MAPPERTYPES
-_ADDUSERATTRIBUTESREQUEST.fields_by_name['attributes'].message_type = _USERATTRIBUTE
-_DELETEUSERATTRIBUTEREQUEST.fields_by_name['attributes'].message_type = _USERATTRIBUTE
-_GROUPSREQUEST.fields_by_name['groups'].message_type = _GROUPREPRESENTATION
-_GROUPREQUEST.fields_by_name['group'].message_type = _GROUPREPRESENTATION
-_GROUPSRESPONSE.fields_by_name['groups'].message_type = _GROUPREPRESENTATION
-_AGENT.fields_by_name['attributes'].message_type = _USERATTRIBUTE
-_GETALLRESOURCES.fields_by_name['resource_type'].enum_type = _RESOURCETYPES
-_GETALLRESOURCESRESPONSE.fields_by_name['agents'].message_type = _AGENT
-_GETALLRESOURCESRESPONSE.fields_by_name['users'].message_type = _USERREPRESENTATION
-DESCRIPTOR.message_types_by_name['SetUpTenantRequest'] = _SETUPTENANTREQUEST
-DESCRIPTOR.message_types_by_name['ConfigureFederateIDPRequest'] = _CONFIGUREFEDERATEIDPREQUEST
-DESCRIPTOR.message_types_by_name['FederateIDPResponse'] = _FEDERATEIDPRESPONSE
-DESCRIPTOR.message_types_by_name['SetUpTenantResponse'] = _SETUPTENANTRESPONSE
-DESCRIPTOR.message_types_by_name['IsUsernameAvailableRequest'] = _ISUSERNAMEAVAILABLEREQUEST
-DESCRIPTOR.message_types_by_name['CheckingResponse'] = _CHECKINGRESPONSE
-DESCRIPTOR.message_types_by_name['UserRepresentation'] = _USERREPRESENTATION
-DESCRIPTOR.message_types_by_name['GroupRepresentation'] = _GROUPREPRESENTATION
-DESCRIPTOR.message_types_by_name['RegisterUserRequest'] = _REGISTERUSERREQUEST
-DESCRIPTOR.message_types_by_name['RegisterUsersRequest'] = _REGISTERUSERSREQUEST
-DESCRIPTOR.message_types_by_name['RegisterUserResponse'] = _REGISTERUSERRESPONSE
-DESCRIPTOR.message_types_by_name['RegisterUsersResponse'] = _REGISTERUSERSRESPONSE
-DESCRIPTOR.message_types_by_name['UserSearchMetadata'] = _USERSEARCHMETADATA
-DESCRIPTOR.message_types_by_name['FindUsersRequest'] = _FINDUSERSREQUEST
-DESCRIPTOR.message_types_by_name['UserSearchRequest'] = _USERSEARCHREQUEST
-DESCRIPTOR.message_types_by_name['FindUsersResponse'] = _FINDUSERSRESPONSE
-DESCRIPTOR.message_types_by_name['ResetUserPassword'] = _RESETUSERPASSWORD
-DESCRIPTOR.message_types_by_name['DeleteUserRolesRequest'] = _DELETEUSERROLESREQUEST
-DESCRIPTOR.message_types_by_name['AddUserRolesRequest'] = _ADDUSERROLESREQUEST
-DESCRIPTOR.message_types_by_name['UpdateUserProfileRequest'] = _UPDATEUSERPROFILEREQUEST
-DESCRIPTOR.message_types_by_name['AddUserResponse'] = _ADDUSERRESPONSE
-DESCRIPTOR.message_types_by_name['GetOperationsMetadataRequest'] = _GETOPERATIONSMETADATAREQUEST
-DESCRIPTOR.message_types_by_name['OperationMetadata'] = _OPERATIONMETADATA
-DESCRIPTOR.message_types_by_name['GetOperationsMetadataResponse'] = _GETOPERATIONSMETADATARESPONSE
-DESCRIPTOR.message_types_by_name['DeleteTenantRequest'] = _DELETETENANTREQUEST
-DESCRIPTOR.message_types_by_name['AddRolesRequest'] = _ADDROLESREQUEST
-DESCRIPTOR.message_types_by_name['GetRolesRequest'] = _GETROLESREQUEST
-DESCRIPTOR.message_types_by_name['RoleRepresentation'] = _ROLEREPRESENTATION
-DESCRIPTOR.message_types_by_name['DeleteRoleRequest'] = _DELETEROLEREQUEST
-DESCRIPTOR.message_types_by_name['AllRoles'] = _ALLROLES
-DESCRIPTOR.message_types_by_name['AddProtocolMapperRequest'] = _ADDPROTOCOLMAPPERREQUEST
-DESCRIPTOR.message_types_by_name['OperationStatus'] = _OPERATIONSTATUS
-DESCRIPTOR.message_types_by_name['AddUserAttributesRequest'] = _ADDUSERATTRIBUTESREQUEST
-DESCRIPTOR.message_types_by_name['DeleteUserAttributeRequest'] = _DELETEUSERATTRIBUTEREQUEST
-DESCRIPTOR.message_types_by_name['UserAttribute'] = _USERATTRIBUTE
-DESCRIPTOR.message_types_by_name['EventPersistenceRequest'] = _EVENTPERSISTENCEREQUEST
-DESCRIPTOR.message_types_by_name['GroupsRequest'] = _GROUPSREQUEST
-DESCRIPTOR.message_types_by_name['GroupRequest'] = _GROUPREQUEST
-DESCRIPTOR.message_types_by_name['GroupsResponse'] = _GROUPSRESPONSE
-DESCRIPTOR.message_types_by_name['UserGroupMappingRequest'] = _USERGROUPMAPPINGREQUEST
-DESCRIPTOR.message_types_by_name['AgentClientMetadata'] = _AGENTCLIENTMETADATA
-DESCRIPTOR.message_types_by_name['Agent'] = _AGENT
-DESCRIPTOR.message_types_by_name['GetAllResources'] = _GETALLRESOURCES
-DESCRIPTOR.message_types_by_name['GetAllResourcesResponse'] = _GETALLRESOURCESRESPONSE
-DESCRIPTOR.enum_types_by_name['FederatedIDPs'] = _FEDERATEDIDPS
-DESCRIPTOR.enum_types_by_name['MapperTypes'] = _MAPPERTYPES
-DESCRIPTOR.enum_types_by_name['ClaimJSONTypes'] = _CLAIMJSONTYPES
-DESCRIPTOR.enum_types_by_name['ResourceTypes'] = _RESOURCETYPES
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-SetUpTenantRequest = _reflection.GeneratedProtocolMessageType('SetUpTenantRequest', (_message.Message,), {
-  'DESCRIPTOR' : _SETUPTENANTREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.SetUpTenantRequest)
-  })
-_sym_db.RegisterMessage(SetUpTenantRequest)
-
-ConfigureFederateIDPRequest = _reflection.GeneratedProtocolMessageType('ConfigureFederateIDPRequest', (_message.Message,), {
-
-  'ConfigMapEntry' : _reflection.GeneratedProtocolMessageType('ConfigMapEntry', (_message.Message,), {
-    'DESCRIPTOR' : _CONFIGUREFEDERATEIDPREQUEST_CONFIGMAPENTRY,
-    '__module__' : 'IamAdminService_pb2'
-    # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.ConfigureFederateIDPRequest.ConfigMapEntry)
-    })
-  ,
-  'DESCRIPTOR' : _CONFIGUREFEDERATEIDPREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.ConfigureFederateIDPRequest)
-  })
-_sym_db.RegisterMessage(ConfigureFederateIDPRequest)
-_sym_db.RegisterMessage(ConfigureFederateIDPRequest.ConfigMapEntry)
-
-FederateIDPResponse = _reflection.GeneratedProtocolMessageType('FederateIDPResponse', (_message.Message,), {
-  'DESCRIPTOR' : _FEDERATEIDPRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.FederateIDPResponse)
-  })
-_sym_db.RegisterMessage(FederateIDPResponse)
-
-SetUpTenantResponse = _reflection.GeneratedProtocolMessageType('SetUpTenantResponse', (_message.Message,), {
-  'DESCRIPTOR' : _SETUPTENANTRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.SetUpTenantResponse)
-  })
-_sym_db.RegisterMessage(SetUpTenantResponse)
-
-IsUsernameAvailableRequest = _reflection.GeneratedProtocolMessageType('IsUsernameAvailableRequest', (_message.Message,), {
-  'DESCRIPTOR' : _ISUSERNAMEAVAILABLEREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.IsUsernameAvailableRequest)
-  })
-_sym_db.RegisterMessage(IsUsernameAvailableRequest)
-
-CheckingResponse = _reflection.GeneratedProtocolMessageType('CheckingResponse', (_message.Message,), {
-  'DESCRIPTOR' : _CHECKINGRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.CheckingResponse)
-  })
-_sym_db.RegisterMessage(CheckingResponse)
-
-UserRepresentation = _reflection.GeneratedProtocolMessageType('UserRepresentation', (_message.Message,), {
-  'DESCRIPTOR' : _USERREPRESENTATION,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.UserRepresentation)
-  })
-_sym_db.RegisterMessage(UserRepresentation)
-
-GroupRepresentation = _reflection.GeneratedProtocolMessageType('GroupRepresentation', (_message.Message,), {
-  'DESCRIPTOR' : _GROUPREPRESENTATION,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GroupRepresentation)
-  })
-_sym_db.RegisterMessage(GroupRepresentation)
-
-RegisterUserRequest = _reflection.GeneratedProtocolMessageType('RegisterUserRequest', (_message.Message,), {
-  'DESCRIPTOR' : _REGISTERUSERREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.RegisterUserRequest)
-  })
-_sym_db.RegisterMessage(RegisterUserRequest)
-
-RegisterUsersRequest = _reflection.GeneratedProtocolMessageType('RegisterUsersRequest', (_message.Message,), {
-  'DESCRIPTOR' : _REGISTERUSERSREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.RegisterUsersRequest)
-  })
-_sym_db.RegisterMessage(RegisterUsersRequest)
-
-RegisterUserResponse = _reflection.GeneratedProtocolMessageType('RegisterUserResponse', (_message.Message,), {
-  'DESCRIPTOR' : _REGISTERUSERRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.RegisterUserResponse)
-  })
-_sym_db.RegisterMessage(RegisterUserResponse)
-
-RegisterUsersResponse = _reflection.GeneratedProtocolMessageType('RegisterUsersResponse', (_message.Message,), {
-  'DESCRIPTOR' : _REGISTERUSERSRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.RegisterUsersResponse)
-  })
-_sym_db.RegisterMessage(RegisterUsersResponse)
-
-UserSearchMetadata = _reflection.GeneratedProtocolMessageType('UserSearchMetadata', (_message.Message,), {
-  'DESCRIPTOR' : _USERSEARCHMETADATA,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.UserSearchMetadata)
-  })
-_sym_db.RegisterMessage(UserSearchMetadata)
-
-FindUsersRequest = _reflection.GeneratedProtocolMessageType('FindUsersRequest', (_message.Message,), {
-  'DESCRIPTOR' : _FINDUSERSREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.FindUsersRequest)
-  })
-_sym_db.RegisterMessage(FindUsersRequest)
-
-UserSearchRequest = _reflection.GeneratedProtocolMessageType('UserSearchRequest', (_message.Message,), {
-  'DESCRIPTOR' : _USERSEARCHREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.UserSearchRequest)
-  })
-_sym_db.RegisterMessage(UserSearchRequest)
-
-FindUsersResponse = _reflection.GeneratedProtocolMessageType('FindUsersResponse', (_message.Message,), {
-  'DESCRIPTOR' : _FINDUSERSRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.FindUsersResponse)
-  })
-_sym_db.RegisterMessage(FindUsersResponse)
-
-ResetUserPassword = _reflection.GeneratedProtocolMessageType('ResetUserPassword', (_message.Message,), {
-  'DESCRIPTOR' : _RESETUSERPASSWORD,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.ResetUserPassword)
-  })
-_sym_db.RegisterMessage(ResetUserPassword)
-
-DeleteUserRolesRequest = _reflection.GeneratedProtocolMessageType('DeleteUserRolesRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETEUSERROLESREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.DeleteUserRolesRequest)
-  })
-_sym_db.RegisterMessage(DeleteUserRolesRequest)
-
-AddUserRolesRequest = _reflection.GeneratedProtocolMessageType('AddUserRolesRequest', (_message.Message,), {
-  'DESCRIPTOR' : _ADDUSERROLESREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.AddUserRolesRequest)
-  })
-_sym_db.RegisterMessage(AddUserRolesRequest)
-
-UpdateUserProfileRequest = _reflection.GeneratedProtocolMessageType('UpdateUserProfileRequest', (_message.Message,), {
-  'DESCRIPTOR' : _UPDATEUSERPROFILEREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.UpdateUserProfileRequest)
-  })
-_sym_db.RegisterMessage(UpdateUserProfileRequest)
-
-AddUserResponse = _reflection.GeneratedProtocolMessageType('AddUserResponse', (_message.Message,), {
-  'DESCRIPTOR' : _ADDUSERRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.AddUserResponse)
-  })
-_sym_db.RegisterMessage(AddUserResponse)
-
-GetOperationsMetadataRequest = _reflection.GeneratedProtocolMessageType('GetOperationsMetadataRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETOPERATIONSMETADATAREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GetOperationsMetadataRequest)
-  })
-_sym_db.RegisterMessage(GetOperationsMetadataRequest)
-
-OperationMetadata = _reflection.GeneratedProtocolMessageType('OperationMetadata', (_message.Message,), {
-  'DESCRIPTOR' : _OPERATIONMETADATA,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.OperationMetadata)
-  })
-_sym_db.RegisterMessage(OperationMetadata)
-
-GetOperationsMetadataResponse = _reflection.GeneratedProtocolMessageType('GetOperationsMetadataResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETOPERATIONSMETADATARESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GetOperationsMetadataResponse)
-  })
-_sym_db.RegisterMessage(GetOperationsMetadataResponse)
-
-DeleteTenantRequest = _reflection.GeneratedProtocolMessageType('DeleteTenantRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETETENANTREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.DeleteTenantRequest)
-  })
-_sym_db.RegisterMessage(DeleteTenantRequest)
-
-AddRolesRequest = _reflection.GeneratedProtocolMessageType('AddRolesRequest', (_message.Message,), {
-  'DESCRIPTOR' : _ADDROLESREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.AddRolesRequest)
-  })
-_sym_db.RegisterMessage(AddRolesRequest)
-
-GetRolesRequest = _reflection.GeneratedProtocolMessageType('GetRolesRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETROLESREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GetRolesRequest)
-  })
-_sym_db.RegisterMessage(GetRolesRequest)
-
-RoleRepresentation = _reflection.GeneratedProtocolMessageType('RoleRepresentation', (_message.Message,), {
-  'DESCRIPTOR' : _ROLEREPRESENTATION,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.RoleRepresentation)
-  })
-_sym_db.RegisterMessage(RoleRepresentation)
-
-DeleteRoleRequest = _reflection.GeneratedProtocolMessageType('DeleteRoleRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETEROLEREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.DeleteRoleRequest)
-  })
-_sym_db.RegisterMessage(DeleteRoleRequest)
-
-AllRoles = _reflection.GeneratedProtocolMessageType('AllRoles', (_message.Message,), {
-  'DESCRIPTOR' : _ALLROLES,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.AllRoles)
-  })
-_sym_db.RegisterMessage(AllRoles)
-
-AddProtocolMapperRequest = _reflection.GeneratedProtocolMessageType('AddProtocolMapperRequest', (_message.Message,), {
-  'DESCRIPTOR' : _ADDPROTOCOLMAPPERREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.AddProtocolMapperRequest)
-  })
-_sym_db.RegisterMessage(AddProtocolMapperRequest)
-
-OperationStatus = _reflection.GeneratedProtocolMessageType('OperationStatus', (_message.Message,), {
-  'DESCRIPTOR' : _OPERATIONSTATUS,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.OperationStatus)
-  })
-_sym_db.RegisterMessage(OperationStatus)
-
-AddUserAttributesRequest = _reflection.GeneratedProtocolMessageType('AddUserAttributesRequest', (_message.Message,), {
-  'DESCRIPTOR' : _ADDUSERATTRIBUTESREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.AddUserAttributesRequest)
-  })
-_sym_db.RegisterMessage(AddUserAttributesRequest)
-
-DeleteUserAttributeRequest = _reflection.GeneratedProtocolMessageType('DeleteUserAttributeRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETEUSERATTRIBUTEREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.DeleteUserAttributeRequest)
-  })
-_sym_db.RegisterMessage(DeleteUserAttributeRequest)
-
-UserAttribute = _reflection.GeneratedProtocolMessageType('UserAttribute', (_message.Message,), {
-  'DESCRIPTOR' : _USERATTRIBUTE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.UserAttribute)
-  })
-_sym_db.RegisterMessage(UserAttribute)
-
-EventPersistenceRequest = _reflection.GeneratedProtocolMessageType('EventPersistenceRequest', (_message.Message,), {
-  'DESCRIPTOR' : _EVENTPERSISTENCEREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.EventPersistenceRequest)
-  })
-_sym_db.RegisterMessage(EventPersistenceRequest)
-
-GroupsRequest = _reflection.GeneratedProtocolMessageType('GroupsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GROUPSREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GroupsRequest)
-  })
-_sym_db.RegisterMessage(GroupsRequest)
-
-GroupRequest = _reflection.GeneratedProtocolMessageType('GroupRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GROUPREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GroupRequest)
-  })
-_sym_db.RegisterMessage(GroupRequest)
-
-GroupsResponse = _reflection.GeneratedProtocolMessageType('GroupsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GROUPSRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GroupsResponse)
-  })
-_sym_db.RegisterMessage(GroupsResponse)
-
-UserGroupMappingRequest = _reflection.GeneratedProtocolMessageType('UserGroupMappingRequest', (_message.Message,), {
-  'DESCRIPTOR' : _USERGROUPMAPPINGREQUEST,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.UserGroupMappingRequest)
-  })
-_sym_db.RegisterMessage(UserGroupMappingRequest)
-
-AgentClientMetadata = _reflection.GeneratedProtocolMessageType('AgentClientMetadata', (_message.Message,), {
-  'DESCRIPTOR' : _AGENTCLIENTMETADATA,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.AgentClientMetadata)
-  })
-_sym_db.RegisterMessage(AgentClientMetadata)
-
-Agent = _reflection.GeneratedProtocolMessageType('Agent', (_message.Message,), {
-  'DESCRIPTOR' : _AGENT,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.Agent)
-  })
-_sym_db.RegisterMessage(Agent)
-
-GetAllResources = _reflection.GeneratedProtocolMessageType('GetAllResources', (_message.Message,), {
-  'DESCRIPTOR' : _GETALLRESOURCES,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GetAllResources)
-  })
-_sym_db.RegisterMessage(GetAllResources)
-
-GetAllResourcesResponse = _reflection.GeneratedProtocolMessageType('GetAllResourcesResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETALLRESOURCESRESPONSE,
-  '__module__' : 'IamAdminService_pb2'
-  # @@protoc_insertion_point(class_scope:org.apache.custos.iam.service.GetAllResourcesResponse)
-  })
-_sym_db.RegisterMessage(GetAllResourcesResponse)
-
-
-DESCRIPTOR._options = None
-_CONFIGUREFEDERATEIDPREQUEST_CONFIGMAPENTRY._options = None
-
-_IAMADMINSERVICE = _descriptor.ServiceDescriptor(
-  name='IamAdminService',
-  full_name='org.apache.custos.iam.service.IamAdminService',
-  file=DESCRIPTOR,
-  index=0,
-  serialized_options=None,
-  create_key=_descriptor._internal_create_key,
-  serialized_start=6847,
-  serialized_end=12592,
-  methods=[
-  _descriptor.MethodDescriptor(
-    name='setUPTenant',
-    full_name='org.apache.custos.iam.service.IamAdminService.setUPTenant',
-    index=0,
-    containing_service=None,
-    input_type=_SETUPTENANTREQUEST,
-    output_type=_SETUPTENANTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='updateTenant',
-    full_name='org.apache.custos.iam.service.IamAdminService.updateTenant',
-    index=1,
-    containing_service=None,
-    input_type=_SETUPTENANTREQUEST,
-    output_type=_SETUPTENANTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteTenant',
-    full_name='org.apache.custos.iam.service.IamAdminService.deleteTenant',
-    index=2,
-    containing_service=None,
-    input_type=_DELETETENANTREQUEST,
-    output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='configureFederatedIDP',
-    full_name='org.apache.custos.iam.service.IamAdminService.configureFederatedIDP',
-    index=3,
-    containing_service=None,
-    input_type=_CONFIGUREFEDERATEIDPREQUEST,
-    output_type=_FEDERATEIDPRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='addRolesToTenant',
-    full_name='org.apache.custos.iam.service.IamAdminService.addRolesToTenant',
-    index=4,
-    containing_service=None,
-    input_type=_ADDROLESREQUEST,
-    output_type=_ALLROLES,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='addProtocolMapper',
-    full_name='org.apache.custos.iam.service.IamAdminService.addProtocolMapper',
-    index=5,
-    containing_service=None,
-    input_type=_ADDPROTOCOLMAPPERREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getRolesOfTenant',
-    full_name='org.apache.custos.iam.service.IamAdminService.getRolesOfTenant',
-    index=6,
-    containing_service=None,
-    input_type=_GETROLESREQUEST,
-    output_type=_ALLROLES,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteRole',
-    full_name='org.apache.custos.iam.service.IamAdminService.deleteRole',
-    index=7,
-    containing_service=None,
-    input_type=_DELETEROLEREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='isUsernameAvailable',
-    full_name='org.apache.custos.iam.service.IamAdminService.isUsernameAvailable',
-    index=8,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='registerUser',
-    full_name='org.apache.custos.iam.service.IamAdminService.registerUser',
-    index=9,
-    containing_service=None,
-    input_type=_REGISTERUSERREQUEST,
-    output_type=_REGISTERUSERRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='enableUser',
-    full_name='org.apache.custos.iam.service.IamAdminService.enableUser',
-    index=10,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_USERREPRESENTATION,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='disableUser',
-    full_name='org.apache.custos.iam.service.IamAdminService.disableUser',
-    index=11,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_USERREPRESENTATION,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='isUserEnabled',
-    full_name='org.apache.custos.iam.service.IamAdminService.isUserEnabled',
-    index=12,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='isUserExist',
-    full_name='org.apache.custos.iam.service.IamAdminService.isUserExist',
-    index=13,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_CHECKINGRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getUser',
-    full_name='org.apache.custos.iam.service.IamAdminService.getUser',
-    index=14,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_USERREPRESENTATION,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='findUsers',
-    full_name='org.apache.custos.iam.service.IamAdminService.findUsers',
-    index=15,
-    containing_service=None,
-    input_type=_FINDUSERSREQUEST,
-    output_type=_FINDUSERSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='resetPassword',
-    full_name='org.apache.custos.iam.service.IamAdminService.resetPassword',
-    index=16,
-    containing_service=None,
-    input_type=_RESETUSERPASSWORD,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='grantAdminPrivilege',
-    full_name='org.apache.custos.iam.service.IamAdminService.grantAdminPrivilege',
-    index=17,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='removeAdminPrivilege',
-    full_name='org.apache.custos.iam.service.IamAdminService.removeAdminPrivilege',
-    index=18,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='registerAndEnableUsers',
-    full_name='org.apache.custos.iam.service.IamAdminService.registerAndEnableUsers',
-    index=19,
-    containing_service=None,
-    input_type=_REGISTERUSERSREQUEST,
-    output_type=_REGISTERUSERSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='addUserAttributes',
-    full_name='org.apache.custos.iam.service.IamAdminService.addUserAttributes',
-    index=20,
-    containing_service=None,
-    input_type=_ADDUSERATTRIBUTESREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteUserAttributes',
-    full_name='org.apache.custos.iam.service.IamAdminService.deleteUserAttributes',
-    index=21,
-    containing_service=None,
-    input_type=_DELETEUSERATTRIBUTEREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='addRolesToUsers',
-    full_name='org.apache.custos.iam.service.IamAdminService.addRolesToUsers',
-    index=22,
-    containing_service=None,
-    input_type=_ADDUSERROLESREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteUser',
-    full_name='org.apache.custos.iam.service.IamAdminService.deleteUser',
-    index=23,
-    containing_service=None,
-    input_type=_USERSEARCHREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteRolesFromUser',
-    full_name='org.apache.custos.iam.service.IamAdminService.deleteRolesFromUser',
-    index=24,
-    containing_service=None,
-    input_type=_DELETEUSERROLESREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='updateUserProfile',
-    full_name='org.apache.custos.iam.service.IamAdminService.updateUserProfile',
-    index=25,
-    containing_service=None,
-    input_type=_UPDATEUSERPROFILEREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getOperationMetadata',
-    full_name='org.apache.custos.iam.service.IamAdminService.getOperationMetadata',
-    index=26,
-    containing_service=None,
-    input_type=_GETOPERATIONSMETADATAREQUEST,
-    output_type=_GETOPERATIONSMETADATARESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='configureEventPersistence',
-    full_name='org.apache.custos.iam.service.IamAdminService.configureEventPersistence',
-    index=27,
-    containing_service=None,
-    input_type=_EVENTPERSISTENCEREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='createGroups',
-    full_name='org.apache.custos.iam.service.IamAdminService.createGroups',
-    index=28,
-    containing_service=None,
-    input_type=_GROUPSREQUEST,
-    output_type=_GROUPSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='updateGroup',
-    full_name='org.apache.custos.iam.service.IamAdminService.updateGroup',
-    index=29,
-    containing_service=None,
-    input_type=_GROUPREQUEST,
-    output_type=_GROUPREPRESENTATION,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='deleteGroup',
-    full_name='org.apache.custos.iam.service.IamAdminService.deleteGroup',
-    index=30,
-    containing_service=None,
-    input_type=_GROUPREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='findGroup',
-    full_name='org.apache.custos.iam.service.IamAdminService.findGroup',
-    index=31,
-    containing_service=None,
-    input_type=_GROUPREQUEST,
-    output_type=_GROUPREPRESENTATION,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='getAllGroups',
-    full_name='org.apache.custos.iam.service.IamAdminService.getAllGroups',
-    index=32,
-    containing_service=None,
-    input_type=_GROUPREQUEST,
-    output_type=_GROUPSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='addUserToGroup',
-    full_name='org.apache.custos.iam.service.IamAdminService.addUserToGroup',
-    index=33,
-    containing_service=None,
-    input_type=_USERGROUPMAPPINGREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='removeUserFromGroup',
-    full_name='org.apache.custos.iam.service.IamAdminService.removeUserFromGroup',
-    index=34,
-    containing_service=None,
-    input_type=_USERGROUPMAPPINGREQUEST,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='createAgentClient',
-    full_name='org.apache.custos.iam.service.IamAdminService.createAgentClient',
-    index=35,
-    containing_service=None,
-    input_type=_AGENTCLIENTMETADATA,
-    output_type=_SETUPTENANTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='configureAgentClient',
-    full_name='org.apache.custos.iam.service.IamAdminService.configureAgentClient',
-    index=36,
-    containing_service=None,
-    input_type=_AGENTCLIENTMETADATA,
-    output_type=_OPERATIONSTATUS,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
... 22250 lines suppressed ...