Announcing the SAVIYNT KNOWLEDGE EXCHANGE unifying the Saviynt forums, documentation, training, and more in a single search tool across platforms. Click HERE to read the Announcement.

Salesforce Provisioning error - ProfileId mandatory

Sheba
New Contributor III
New Contributor III

Hi,

we are using Salesforce OOTB connector, while creating account, we are getting the below error,

we have also created a dynamic attribute. below is the create account json we are using

Error in user creation errorCode: MALFORMED_IDmessage: Profile ID: id value of incorrect type: null

{
"Alias":"${user?.getFirstname()}",
"Email":"${user?.getEmail()}",
"Username":"${user?.getEmail()}",
"CommunityNickname":"${user?.getFirstname()}${user?.getLastname()}",
"FirstName":"${user?.getFirstname()}",
"LastName":"${user?.getLastname()}",
"TimeZoneSidKey":"America/Los_Angeles",
"LocaleSidKey":"en_US","EmailEncodingKey":"ISO-8859-1",
"ProfileId":"${profileId}",
"LanguageLocaleKey":"en_US",
"IsActive":true,
"FederationIdentifier":"${user?.getEmail()}"
}

7 REPLIES 7

Darshanjain
Saviynt Employee
Saviynt Employee

It looks like the profileID is going as Null, it takes entitlementid as profile id if you are requesting as per the mapping, if you dont want the mapping pass a hard code value or a default value for profile_id

if you have created Dynamic attribute and passing profile id when you are making the request then make sure it has valid entry ( you can try passing a default value and try for one user it should work ).

Generally profileid is sent a default value for a specific set of users, if you want to use DA and fetch it for create account json please use below id

"${requestAccessAttributes.get('Profileid')} where Profileid is the DA name

sk
All-Star
All-Star

So what is profileId here? is it dynamic attribute? if so what is the value you are selecting as part of creation?


Regards,
Saathvik
If this reply answered your question, please Accept As Solution and give Kudos to help others facing similar issue.

Sheba
New Contributor III
New Contributor III

ProfileId is a unique ID which we are getting from salesforce during Profile import. I tried with the dynamic attr, seems like its still pass as null. then I removed my json from createAccount json and tried with the default seems like its working. creating the account fine in the target

But I am wondering why the dynamic attr returning null, below is my dynamic attr.

Sheba_0-1677224147344.png

 

 

Can you check in requestaccessattrs table to see if the value is stored for that request. Also you can save that dynamic attribute to any accounts column ( like customproperty5 ) and then you can use "${requestAccessAttributes.customproperty5} 

For DA:

"${requestAccessAttributes.get('Profileid')} 

Sheba
New Contributor III
New Contributor III

Hi Darshan,

Thank you for your reply, I am trying to create account as birthright via tech rules not via request,in that case requestaccessattrs table will be empty right, so we can't use dynamic attr if we try to assign via tech rule as a birthright?

 

Thanks,

Sheba

Yes in that case you have to pass default value, also you can use null condition check if the value is null in requestaccessattrs table then pass a default value . ( Generally  the customers i have implemented they wanted the profile id to be default for all users )

Darshanjain
Saviynt Employee
Saviynt Employee

These values have to be in Salesforce while doing a reconciliation you can capture those values so a default value or those values can be passed