Image Removed
deem.com
Overview
Deem provides the User Profile web service for partners and third-party application providers to create, update, disable, or retrieve user profiles. A user profile is a collection of personal data associated to a specific user. User profiles provide the raw user data upon which services transact. Profile data must be securely managed by applications and services. This document provides a technical specification to help partners access the User Profile web service in Deem from web service clients.
...
Note: For technical specifications for session management and single sign-on (SSO) integration, see Implementing Single Sign-On (SSO) for Desktop.
Configuring the Web Service Subscription
...
Code Block |
---|
language | xml |
---|
theme | Confluence |
---|
collapse | true |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<updateResponse xmlns="http://webservices.reardencommerce.com/userprofile/">
<responseCode xmlns="">OK</responseCode>
<responseDataSet xmlns="">
<responseData>
<companyId>84</companyId>
<externalId>testuser</externalId>
<externalIdSet/>
</responseData>
</responseDataSet>
</updateResponse>
</soapenv:Body>
</soapenv:Envelope> |
...
Retrieving a Batch of User Profiles
If you need to retrieve any user profile data, you can send a “getPageRequest”. The first time you send this request, you need to specify a timestamp. The timestamp returns only profiles that were modified after the specified date and time. In the response, you receive a batch of user profiles (up to the maximum amount configured for your subscription; default is 100).
In addition, two important metadata fields are returned at the bottom of the response:
Field Name | Description |
---|
recordsRemaining | Indicates if there are any more profiles remaining to retrieve that were modified after the previous “getPageRequest”. If the value is “true”, there are more profiles to retrieve. If the value is “false”, there are no profiles to retrieve at this time. |
conversationID | This ID is established between the partner application and Deem after the very first “getPageRequest” is processed. This same ID value should be sent in subsequent requests to retrieve any remaining profile data. |
Note: After you receive a conversationID from your very first response, you should continue to send that conversationID in every subsequent request to avoid performing duplicate retrievals of the same profiles. We recommend that you not establish a new conversationID.
Tip: If a response returns a value of “false” for the “recordsRemaining” field, you can still make subsequent requests (using the same conversationID) if any previously pulled profiles have been recently updated. This is useful if you want to retrieve updated profiles as they become available.
Sample Initial Get Request SOAP Message
Code Block |
---|
language | xml |
---|
theme | Confluence |
---|
collapse | true |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<AuthHeader xmlns="http://webservices.reardencommerce.com/userprofile/">
<login>kentest</login>
<password>MySharedSecret</password>
<companyDomain>TestSite</companyDomain>
</AuthHeader>
</soapenv:Header>
<soapenv:Body>
<getPageRequest xmlns="http://webservices.reardencommerce.com/userprofile/">
<timestamp>2001-10-01T22:17:07.00</timestamp>
</getPageRequest>
</soapenv:Body>
</soapenv:Envelope> |
Sample Initial Get Response SOAP Message
Code Block |
---|
language | xml |
---|
theme | Confluence |
---|
collapse | true |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<getPageResponse xmlns="http://webservices.reardencommerce.com/userprofile/">
<customerSet xmlns="">
<user>
<externalID>Z002J0KF</externalID>
<domain>testcompany</domain>
<accountStatus>Inactive</accountStatus>
<employeeStatus>A</employeeStatus>
<userInfo is-modified="true" last-updated="2014-10-05T05:42:01.000Z">
<accountType>0</accountType>
<employeeID>121569</employeeID>
<employeeType>VIP</employeeType>
<userName>582064</userName>
<firstName>Test1</firstName>
<lastName>User1</lastName>
<email>email1@deem.com</email>
<costCenter>25025</costCenter>
<departmentCode>RC-CA DF CS BA 2</departmentCode>
<departmentName>S</departmentName>
<businessUnit>SPD010</businessUnit>
<jobLevel>1111</jobLevel>
<jobTitle>SCICS</jobTitle>
<division>SPD</division>
<misField1>PCMYES</misField1>
<misField2>ENG</misField2>
<misField5>5</misField5>
<workPhone>
<number>5068551096</number>
</workPhone>
<groupwareID>email1@deem.com</groupwareID>
<vipIndicator>false</vipIndicator>
</userInfo>
<customFieldSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z">
<customFieldCollection>
<name>addtlContact</name>
<customField>
<name>mgrEmail</name>
<value>mgrEmail@deem.com</value>
</customField>
</customFieldCollection>
</customFieldSet>
<servicePreferences is-modified="true" last-updated="2014-10-05T05:42:01.000Z">
<airlinePreferences>
<homeAirport/>
<mealPreference/>
<seatPreference/>
<farePreference>-9</farePreference>
</airlinePreferences>
<carRentalPreferences>
<defaultTransmissionType/>
<defaultNumDoors/>
<defaultCarType/>
</carRentalPreferences>
<defaultAirChargeCardNumber/>
<defaultHotelChargeCardNumber/>
<defaultCarChargeCardNumber/>
</servicePreferences>
<delegateSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<passportSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<nationalIDCardSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<visaSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<chargeCardSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<userCredentialsSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<userExternalIdSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z">
<reardenPNRSyncID>402691</reardenPNRSyncID>
<myProfileOrgID>0</myProfileOrgID>
<myProfileTravelerID>0</myProfileTravelerID>
</userExternalIdSet>
<roleSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<timestamp>2014-10-05T05:42:01.000Z</timestamp>
</user>
<user>
<externalID>Z0026XSF</externalID>
<domain>testcompany</domain>
<accountStatus>Inactive</accountStatus>
<employeeStatus>A</employeeStatus>
<userInfo is-modified="true" last-updated="2014-10-05T05:42:01.000Z">
<accountType>0</accountType>
<employeeID>121211</employeeID>
<employeeType>VIP</employeeType>
<userName>581706</userName>
<firstName>Test2</firstName>
<lastName>User2</lastName>
<email>email2@deem.com</email>
<costCenter>51358</costCenter>
<departmentCode>HC CX NAM CA DX MK</departmentCode>
<departmentName>H</departmentName>
<businessUnit>HDX024</businessUnit>
<jobLevel>1111</jobLevel>
<jobTitle>MSDBU</jobTitle>
<division>HSC</division>
<misField1>PCMYES</misField1>
<misField2>ENG</misField2>
<misField5>5</misField5>
<workPhone>
<number>4165289214</number>
</workPhone>
<groupwareID>email2@deem.com</groupwareID>
<vipIndicator>false</vipIndicator>
</userInfo>
<customFieldSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z">
<customFieldCollection>
<name>addtlContact</name>
<customField>
<name>mgrEmail</name>
<value>mgrEmail@deem.com</value>
</customField>
</customFieldCollection>
</customFieldSet>
<servicePreferences is-modified="true" last-updated="2014-10-05T05:42:01.000Z">
<airlinePreferences>
<homeAirport/>
<mealPreference/>
<seatPreference/>
<farePreference>-9</farePreference>
</airlinePreferences>
<carRentalPreferences>
<defaultTransmissionType/>
<defaultNumDoors/>
<defaultCarType/>
</carRentalPreferences>
<defaultAirChargeCardNumber/>
<defaultHotelChargeCardNumber/>
<defaultCarChargeCardNumber/>
</servicePreferences>
<delegateSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<passportSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<nationalIDCardSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<visaSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<chargeCardSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<userCredentialsSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<userExternalIdSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z">
<reardenPNRSyncID>402706</reardenPNRSyncID>
<myProfileOrgID>0</myProfileOrgID>
<myProfileTravelerID>0</myProfileTravelerID>
</userExternalIdSet>
<roleSet is-modified="true" last-updated="2014-10-05T05:42:01.000Z"/>
<timestamp>2014-10-05T05:42:01.000Z</timestamp>
</user>
</customerSet>
<recordsRemaining xmlns="">true</recordsRemaining>
<conversationID xmlns="">17881</conversationID>
</getPageResponse>
</soapenv:Body>
</soapenv:Envelope> |
...
Sample Subsequent Get Request SOAP Message
Code Block |
---|
language | xml |
---|
theme | Confluence |
---|
collapse | true |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<AuthHeader xmlns="http://webservices.reardencommerce.com/userprofile/">
<login>kentest</login>
<password>MySharedSecret</password>
<companyDomain>TestSite</companyDomain>
</AuthHeader>
</soapenv:Header>
<soapenv:Body>
<getPageRequest xmlns="http://webservices.reardencommerce.com/userprofile/">
<conversationID>17881</conversationID>
<timestamp>2014-01-05T16:00:00.000</timestamp>
</getPageRequest>
</soapenv:Body>
</soapenv:Envelope> |
Sample Subsequent Get Request SOAP Message
Code Block |
---|
language | xml |
---|
theme | Confluence |
---|
collapse | true |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<getPageResponse xmlns="http://webservices.reardencommerce.com/userprofile/">
<customerSet xmlns=""/>
<recordsRemaining xmlns="">false</recordsRemaining>
<conversationID xmlns="">17881</conversationID>
</getPageResponse>
</soapenv:Body>
</soapenv:Envelope> |