From 2e0896ce119dc798d4e413a0f5b256c3e8b94a0a Mon Sep 17 00:00:00 2001 From: ukumar-ks Date: Tue, 10 Mar 2026 10:38:19 +0530 Subject: [PATCH 1/2] Service mode json bugfix changes --- keepercommander/commands/scim.py | 9 +++++++-- keepercommander/service/util/parse_keeper_response.py | 9 +++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/keepercommander/commands/scim.py b/keepercommander/commands/scim.py index 9fd6a9bfd..d320984a7 100644 --- a/keepercommander/commands/scim.py +++ b/keepercommander/commands/scim.py @@ -152,12 +152,17 @@ def execute(self, params, node=None, **kwargs): api.communicate(params, rq) api.query_enterprise(params) + scim_url = get_scim_url(params, matched_node['node_id']) logging.info('') logging.info('SCIM ID: %d', rq['scim_id']) - logging.info('SCIM URL: %s', get_scim_url(params, matched_node['node_id'])) + logging.info('SCIM URL: %s', scim_url) logging.info('Provisioning Token: %s', token) logging.info('') - return token + return { + 'scim_id': rq['scim_id'], + 'scim_url': scim_url, + 'provisioning_token': token, + } def find_scim(param, name): # type: (KeeperParams, any) -> dict diff --git a/keepercommander/service/util/parse_keeper_response.py b/keepercommander/service/util/parse_keeper_response.py index 7f8f004f1..2b8afcf4d 100644 --- a/keepercommander/service/util/parse_keeper_response.py +++ b/keepercommander/service/util/parse_keeper_response.py @@ -118,6 +118,15 @@ def parse_response(command: str, response: Any, log_output: str = None) -> Dict[ Returns: Dict[str, Any]: Structured JSON response """ + if isinstance(response, dict) and 'scim create' in command: + if 'scim_id' in response and 'provisioning_token' in response: + base_cmd = command.split()[0] if command.split() else command + return { + "status": "success", + "command": base_cmd, + "message": "SCIM endpoint created successfully", + "data": response, + } # Preprocess response once response_str, is_from_log = KeeperResponseParser._preprocess_response(response, log_output) From 661ecad2b93c7a1b1e200155c3774111db84ad73 Mon Sep 17 00:00:00 2001 From: ukumar-ks Date: Tue, 10 Mar 2026 13:07:06 +0530 Subject: [PATCH 2/2] Added node prefix and unique group information with scim create command --- keepercommander/commands/scim.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/keepercommander/commands/scim.py b/keepercommander/commands/scim.py index d320984a7..ac580a3f0 100644 --- a/keepercommander/commands/scim.py +++ b/keepercommander/commands/scim.py @@ -153,6 +153,7 @@ def execute(self, params, node=None, **kwargs): api.communicate(params, rq) api.query_enterprise(params) scim_url = get_scim_url(params, matched_node['node_id']) + node_id = matched_node['node_id'] logging.info('') logging.info('SCIM ID: %d', rq['scim_id']) logging.info('SCIM URL: %s', scim_url) @@ -162,6 +163,10 @@ def execute(self, params, node=None, **kwargs): 'scim_id': rq['scim_id'], 'scim_url': scim_url, 'provisioning_token': token, + 'node_name': self.get_node_path(params, node_id), + 'node_id': node_id, + 'prefix': prefix or '', + 'unique_groups': kwargs.get('unique_groups', '') == 'on', }