Click HERE to see how Saviynt Intelligence is transforming the industry. |
08/21/2024 11:16 PM
Hello Team
We are able to import from a XML Response using REST Connector the below objects successfully like below:
1.AccountImport
2.Entitlements Import
3.Role Account-Entilement Mapping
We are facing issue in importing the BU Account Entitlement mapping from XML Response using REST Connector.
Note: We cannot use the SOAP Connector due to certain limitations with the application API's because the Access Token can only be retrieved from a REST call.
Below is the Sample XML Response (Removed unnecessary information in the response):
AccountUserID is the AccountID value in Saviynt and the entitlement information is present under the Business Units attribute in the SOAP response and the Entitlement Value is the ID parameter in the response.
XML Response:
<RetrieveResponseMsg xmlns="http://test.com">
<OverallStatus>OK</OverallStatus>
<RequestID>8c87c4d8-edd1-4f39-b3c9-222222</RequestID>
<Results xsi:type="AccountUserAccount">
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUser>
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUserID>23456222q</AccountUserID>
<UserID> SSM tetstss</UserID>
<Name>tetstss</Name>
<Email>SMtetst@test.com</Email>
<ActiveFlag>false</ActiveFlag>
<Delete>0</Delete>
</AccountUser>
<Account>
<PartnerKey xsi:nil="true" />
<ID>4500010069</ID>
<ObjectID xsi:nil="true" />
<AccountType>None</AccountType>
<Name>Cartier BU</Name>
<IsActive>1</IsActive>
<CustomerID>0</CustomerID>
<Subscription xsi:nil="true" />
</Account>
</Results>
<Results xsi:type="AccountUserAccount">
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUser>
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUserID>2345622234</AccountUserID>
<UserID> SSM tetstss22</UserID>
<Name>tetstss22</Name>
<Email>SMtetst22@test.com</Email>
<ActiveFlag>false</ActiveFlag>
<Delete>0</Delete>
</AccountUser>
<Account>
<PartnerKey xsi:nil="true" />
<ID>4500010069</ID>
<ObjectID xsi:nil="true" />
<AccountType>None</AccountType>
<Name>Cartier BU</Name>
<IsActive>1</IsActive>
<CustomerID>0</CustomerID>
<Subscription xsi:nil="true" />
</Account>
</Results>
</RetrieveResponseMsg>
Please can you help on this?
Thanks
Sumalatha
08/22/2024 10:11 PM
Hello @sumalatham,
We are checking on it, we will keep you posted.
Thanks.
08/22/2024 11:34 PM
Hi @sumalatham , could you please highlight the business unit in response and also payload for a single user.
08/27/2024 04:27 AM
Hello @NM
Please find the API payload, response and AccountENTImportJSON in the attachment.
Thanks
Sumalatha
08/27/2024 04:32 AM
08/28/2024 12:40 AM
Hello Team
I am able to map account to entitlements for Users who have single BU.
API Response:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="https://test.com" xmlns:xsi=https://test.com" xmlns:xsd="https://test.com" xmlns:wsa="http://schemassss.xmlsoap.org/w" x>
<soap:Body>
<RetrieveResponseMsg xmlns="http://exacttarget.com/wsdl/passartnerAPId">
<OverallStatus>OK</OverallStatus>
<RequestID>433-ass4bbc-8a3f-002d51b657b1</RequestID>
<Results xsi:type="AccountUserAccount">
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUser>
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUserID>71044204023</AccountUserID> !------USER ID-------!
<UserID>IAMTestUser2@test.com.dev</UserID>
<Name>IAMTestUser2 f IAMTestUser2 l</Name>
<Email>IAMTestUser2@test.com.dev</Email>
<ActiveFlag>true</ActiveFlag>
<Delete>0</Delete>
</AccountUser>
<Account>
<PartnerKey xsi:nil="true" />
<ID>50000847022</ID>!------BU ID-------!
<ObjectID xsi:nil="true" />
<AccountType>None</AccountType>
<Name>Chloé test QA</Name>
<IsActive>1</IsActive>
<CustomerID>0</CustomerID>
<Subscription xsi:nil="true" />
</Account>
</Results>
</RetrieveResponseMsg>
</soap:Body>
</soap:Envelope>
But if user have more than one BU then we are unable to map these two entitlements to account for that user like below:
API Response:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="https://test.com" xmlns:xsi=https://test.com" xmlns:xsd="https://test.com" xmlns:wsa="http://schemassss.xmlsoap.org/w" x>
<soap:Body>
<RetrieveResponseMsg xmlns="http://exacttarget.com/wsdl/passartnerAPId">
<OverallStatus>OK</OverallStatus>
<RequestID>433-ass4bbc-8a3f-002d51b657b1</RequestID>
<Results xsi:type="AccountUserAccount">
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUser>
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUserID>7104420401</AccountUserID> !------USER ID-------!
<UserID>IAMTestUser2@test.com.dev</UserID>
<Name>IAMTestUser2 f IAMTestUser2 l</Name>
<Email>IAMTestUser2@test.com.dev</Email>
<ActiveFlag>true</ActiveFlag>
<Delete>0</Delete>
</AccountUser>
<Account>
<PartnerKey xsi:nil="true" />
<ID>50000847022</ID>!------BU ID-------!
<ObjectID xsi:nil="true" />
<AccountType>None</AccountType>
<Name>Chloé test QA</Name>
<IsActive>1</IsActive>
<CustomerID>0</CustomerID>
<Subscription xsi:nil="true" />
</Account>
</Results>
<Results xsi:type="AccountUserAccount">
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUser>
<PartnerKey xsi:nil="true" />
<ObjectID xsi:nil="true" />
<AccountUserID>7104420401</AccountUserID> !------USER ID-------!
<UserID>IAMTestUser2@test.com.dev</UserID>
<Name>IAMTestUser2 f IAMTestUser2 l</Name>
<Email>IAMTestUser2@test.com.dev</Email>
<ActiveFlag>true</ActiveFlag>
<Delete>0</Delete>
</AccountUser>
<Account>
<PartnerKey xsi:nil="true" />
<ID>5000100712</ID> !------BU ID-------!
<ObjectID xsi:nil="true" />
<AccountType>None</AccountType>
<Name>Cartier testQA</Name>
<IsActive>1</IsActive>
<CustomerID>0</CustomerID>
<Subscription xsi:nil="true" />
</Account>
</Results>
</RetrieveResponseMsg>
</soap:Body>
</soap:Envelope>
We are using below snippet in the json:
"listField": "soap:Envelope.soap:Body.RetrieveResponseMsg",
"entIdPath": "Results.Account.ID",
"accIdPath": "Results.AccountUser.AccountUserID",
"entKeyField": "entitlementID",
"acctKeyField": "accountID"
Please help on this?
Thanks
Sumalatha