Guidelines for Modifying Users via SOAP Request in CA Identity Manager
search cancel

Guidelines for Modifying Users via SOAP Request in CA Identity Manager

book

Article ID: 440686

calendar_today

Updated On:

Products

CA Identity Manager CA Identity Suite

Issue/Introduction

The user reported difficulty sending a SOAP API request to modify a user in CA Identity Manager.

Despite following available references and trying multiple configurations, the user was unable to determine the correct structure for the request body.

Environment

  • Product: CA Identity Manager
  • Version: 14.5 SP1 CHF2 and v15

Resolution

To successfully modify a user via SOAP, verify and use the following configurations:

  1. Identify the WSDL Address:

    • Navigate to the Admin Console > Environments and click on your environment name to find the Alias.

    • Standard WSDL (All web-service enabled tasks): https://[HOSTNAME]/iam/im/TEWS6/identityEnv?wsdl
    • Public WSDL (Only public web-service enabled tasks): https://[HOSTNAME]/iam/im/TEWS6/pubidentityEnv?wsdl
  2. Request Endpoint: Send the SOAP request to: https://[HOSTNAME]/iam/im/TEWS6/identityEnv

  3. Sample Request Structure: A standard modify user request will be send using protected alias which requires authentication so it should include the administrator login, password, and the target User ID.

    • Authentication: ADMIN_LOGIN and PASSWORD
    • Target: USER_ID (e.g., testmodifyuser)
  4. Verify Task Status: After sending the request, a response containing a unique transaction ID (e.g. from the lab:1ad9d99c-9b194ae6-64c03275-9a7321) will be returned. You can verify the status of this operation using the Task Status Query with the same administrator credentials and the returned transaction ID. A successful operation will show a status of Completed for events such as ModifyUserEvent and SynchronizeUserEvent.

Additional Information

As for simple modify user Title and Prefix with SOAP, send to:

https://<ip or hostname of IM>:<IM Access port>/iam/im/TEWS6/identityEnv

The request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsdl="http://tews6/wsdl">
   <soapenv:Header>
      <wsdl:ModifyUserTaskContext>
         <!--You may enter the following 11 items in any order-->
         <wsdl:admin_id>ADMIN_LOGIN</wsdl:admin_id>
         
         <wsdl:admin_password>PASSWORD</wsdl:admin_password>
        

      </wsdl:ModifyUserTaskContext>
   </soapenv:Header>
   <soapenv:Body>
      <wsdl:ModifyUser>
         <wsdl:ModifyUserSearch>

            <wsdl:Subject index="?">
               <!--You have a CHOICE of the next 5 items at this level-->
               <wsdl:UID>USER_ID</wsdl:UID>

            </wsdl:Subject>

         </wsdl:ModifyUserSearch>
         <wsdl:ModifyUserProfileTab>
 
            <wsdl:_PCT_NAME_PREFIX_PCT_>Mr.</wsdl:_PCT_NAME_PREFIX_PCT_>
  
            <wsdl:_PCT_TITLE_PCT_>Manager</wsdl:_PCT_TITLE_PCT_>
            
         </wsdl:ModifyUserProfileTab>
                      
     
            </wsdl:ModifyUser>
   </soapenv:Body>
</soapenv:Envelope>

 

Response is:

 

<soapenv:Envelope xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://tews6/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Body>
      <ImsStatus version="6.0">
         <transactionId>1ad9d99c-9b194ae6-64c03275-9a7321</transactionId>
      </ImsStatus>
   </soapenv:Body>
</soapenv:Envelope>

Which can be checked using Task Status Query:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsdl="http://tews6/wsdl">
   <soapenv:Header>
      <wsdl:TaskStatusSearchTaskContext>
         <!--You may enter the following 11 items in any order-->
         <wsdl:admin_id>ADMIN_LOGIN</wsdl:admin_id>
         
         <wsdl:admin_password>PASSWORD</wsdl:admin_password>

      </wsdl:TaskStatusSearchTaskContext>
   </soapenv:Header>
   <soapenv:Body>
      <wsdl:TaskStatusSearch>
         <!--1 or more repetitions:-->
         <wsdl:Filter index="?">
            <wsdl:TaskId>1ad9d99c-9b194ae6-64c03275-9a7321</wsdl:TaskId>
         </wsdl:Filter>
      </wsdl:TaskStatusSearch>
   </soapenv:Body>
</soapenv:Envelope>

 

and gives response of:

<soapenv:Envelope xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://tews6/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Body>
      <TaskStatusQueryResult>
         <ImsStatus version="6.0">
            <transactionId/>
         </ImsStatus>
         <ResultItem>
            <ImsTaskDetails>
               <Name>Modify User</Name>
               <Id>1ad9d99c-9b194ae6-64c03275-9a7321</Id>
               <Description>Modify User task, User testmodifyuser</Description>
               <State>Completed</State>
               <SubmittedBy>ADMIN_LOGIN</SubmittedBy>
               <SubmittedTime>2026-05-15 10:37:32.753</SubmittedTime>
               <CompletedTime>2026-05-15 10:37:34.84</CompletedTime>
               <EventDetails>
                  <Name>SetPrimaryObjectAuditEvent</Name>
                  <Id>2b3682d7-0afc9f41-201f719c-5b3ba591</Id>
                  <Description>Set primary object to "testmodifyuser"</Description>
                  <State>completed</State>
                  <SubmittedTime>2026-05-15 10:37:33.397</SubmittedTime>
                  <CompletedTime>2026-05-15 10:37:33.48</CompletedTime>
               </EventDetails>
               <EventDetails>
                  <Name>ModifyUserEvent</Name>
                  <Id>2b36840a-0afc9f41-5187a1b7-47ec4e6d</Id>
                  <Description>Modify user "testmodifyuser (testmodifyuser)"</Description>
                  <State>completed</State>
                  <SubmittedTime>2026-05-15 10:37:33.607</SubmittedTime>
                  <CompletedTime>2026-05-15 10:37:34.203</CompletedTime>
               </EventDetails>
               <EventDetails>
                  <Name>SynchronizeUserEvent</Name>
                  <Id>2b3686d5-0afc9f41-1fa92619-ffb6cf5b</Id>
                  <Description>Synchronize user "testmodifyuser (testmodifyuser)"</Description>
                  <State>completed</State>
                  <SubmittedTime>2026-05-15 10:37:34.3</SubmittedTime>
                  <CompletedTime>2026-05-15 10:37:34.587</CompletedTime>
               </EventDetails>
            </ImsTaskDetails>
         </ResultItem>
      </TaskStatusQueryResult>
   </soapenv:Body>
</soapenv:Envelope>