Announcing the Saviynt Knowledge Exchange unifying the Saviynt forums, documentation, training,
and more in a single search tool across platforms. Read the announcement here.

Second call with condition for creating an account with SOAP connection

navneetv
Regular Contributor II
Regular Contributor II

Hello 

we have a use case, where the account should be created with a last name(1), In case we have a user with the same first name and last name. So we want to add an Auto-Incrmental numerical value at the end of the last name. could you please advise or help with it?

example  first name: John   Lastname  should be: Davis1

In this case, we have a user with the same first name and last name 

Here is the CREATE ACCOUNT JSON. We are using a SOAP connection. Not sure, if SOAP supports two calls with the condition for account creation. I found one post where the second call with the condition is used but it is a Rest connection

https://forums.saviynt.com/t5/identity-governance/make-second-call-depending-on-call1-response-messa...

 

[{
"CONNECTION": "netsuite",
"REQUESTXML": "${String timestamp=new Date().getTime().toLong().toString().substring(0, 10);String nonce=java.util.UUID.randomUUID().toString().replace('-', '').substring(0, 20); String signature=org.apache.commons.codec.digest.HmacUtils.hmacSha256( (CONSUMER_SECRET+'&'+TOKEN_SECRET).getBytes() , (ACCOUNT+'&'+CONSUMER_KEY+'&'+TOKEN_ID+'&'+nonce+'&'+timestamp).getBytes() ).encodeAsBase64(); return '<soap:Envelope xmlns:soap=\"<endpointurl>>\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"><soap:Header><platformMsgs:tokenPassport><platformMsgs:account>'+ACCOUNT+'</platformMsgs:account><platformMsgs:consumerKey>'+CONSUMER_KEY+'</platformMsgs:consumerKey><platformMsgs:token>'+TOKEN_ID+'</platformMsgs:token><platformMsgs:signature algorithm=\"HMAC-SHA256\">'+signature+'</platformMsgs:signature><platformMsgs:nonce>'+nonce+'</platformMsgs:nonce><platformMsgs:timestamp>'+timestamp+'</platformMsgs:timestamp></platformMsgs:tokenPassport><platformMsgs:preferences><platformMsgs:ignoreReadOnlyFields>true</platformMsgs:ignoreReadOnlyFields></platformMsgs:preferences></soap:Header><soap:Body>'+'<upsertList xmlns=\"<UR_nameL>\"><record externalId=\"'+user.username+'\" xsi:type=\"q1:Employee\"><q1:firstName>'+user.firstname+'</q1:firstName><q1:lastName>'+user.lastname+'</q1:lastName><q1:email>'+user.email+'</q1:email><q1:department xsi:type=\"platformCore:RecordRef\" internalId=\"'+user.customproperty47+'\"/><q1:subsidiary xsi:type=\"platformCore:RecordRef\" internalId=\"'+user.customproperty48+'\"/><q1:supervisor xsi:type=\"platformCore:RecordRef\" externalId=\"'+user.owner+'\"/><q1:employeeType xsi:type=\"platformCore:RecordRef\" internalId=\"'+user.customproperty49+'\"/><q1:title>'+user.title+'</q1:title><purchaseOrderApprovalLimit>'+user.customproperty44+'</purchaseOrderApprovalLimit><q1:customFieldList xmlns=\"urn:core_2021_1.platform.webservices.netsuite.com\"><customField scriptId=\"custentity_rctrackingid\" xsi:type=\"StringCustomFieldRef\"><value>'+user.username+'</value></customField><customField scriptId=\"custentity_management_level\" xsi:type=\"StringCustomFieldRef\"><value>'+user.customproperty52+'</value></customField></q1:customFieldList></record></upsertList>'+'</soap:Body></soap:Envelope>';}",
"REQUESTPARAMS": {
"Content-Type": "text/xml",
"SOAPAction": "upsertList"
},
"RESPONSEMAPPING": {
"AFTERSUBMITFAILED": "Body.upsertListResponse.writeResponseList.writeResponse.status.statusDetail.afterSubmitFailed",
"CODE": "Body.upsertListResponse.writeResponseList.writeResponse.status.statusDetail.code",
"MESSAGE": "Body.upsertListResponse.writeResponseList",
"task.provisioningcomments": "Body.upsertListResponse.writeResponseList.writeResponse.status.@isSuccess",
"RESPONSECODE": "Body.upsertListResponse.writeResponseList.writeResponse.status.@isSuccess"
},
"SUCCESSCRITERIA": "RESPONSECODE=true"
}]
 

Hi Saviynt Team,

could you please suggest here? how to second call in SOAP connection and how to add an auto-incremental number in the last name, if the first call failed to create the account due to a duplicate name. 

[This message has been edited by moderator to merge reply comment]

 
6 REPLIES 6

SB
Saviynt Employee
Saviynt Employee

Let me check on this and will update.


Regards,
Sahil

navneetv
Regular Contributor II
Regular Contributor II

Hi @SB,

did you get a chance to work on it? 

SB
Saviynt Employee
Saviynt Employee

Hi @navneetv I am still checking on this and will update you.


Regards,
Sahil

SB
Saviynt Employee
Saviynt Employee

I checked this and making a 2nd call based on the response of 1st call in SOAP is currently not supported. You can raise it as an enhancement request on the ideas portal (https://ideas.saviynt.com) with all the details (like Response of call1 - if duplicate name found or valid entry etc)


Regards,
Sahil

navneetv
Regular Contributor II
Regular Contributor II

thanks @SB for checking this. I will submit the request to Ideas Portal 

navneetv
Regular Contributor II
Regular Contributor II

Hi @SB is this function available in SOAP for adding conditions in CreateJSON or RemoveAccessJSON?