QueryPage Sample SOAP Requests
This topic contains a number of sample SOAP requests and responses to illustrate the use of the QueryPage API.
Sample SOAP Request 1 - QueryPage with Field-level Filter
The following SOAP request queries for contact records
that have a ContactType like 'Customer*'
. It demonstrates
the use of optional attributes at the List of objects level: pagesize,
startrownum, and recordcountneeded, and the use of optional elements
<ViewMode> and <LOVLanguageMode>.
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/
XMLSchema-instance" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
secext-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>%%USERNAME%%</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">%%PASSWORD%%</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body>
<ContactQueryPage_Input xmlns="urn:crmondemand/ws/ecbs/contact/">
<ViewMode>Personal</ViewMode>
<LOVLanguageMode>LIC</LOVLanguageMode>
<ListOfContact pagesize="100" startrownum="0" recordcountneeded="true">
<Contact>
<ContactFirstName/>
<ContactLastName/>
<ContactType>LIKE 'Customer*'</ContactType>
<ContactEmail/>
<ListOfActivity>
<Activity>
<Subject/>
</Activity>
</ListOfActivity>
</Contact>
</ListOfContact>
</ContactQueryPage_Input>
</soap:Body>
</soap:Envelope>
Sample SOAP Response 1
The following SOAP response shows the list of 5 objects returned by SOAP request 1.
<?xml version="1.0" encoding="utf-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<ns:ContactQueryPage_Output xmlns:ns="urn:crmondemand/ws/ecbs/contact/">
<ListOfContact xmlns="urn:/crmondemand/xml/Contact/Data" recordcount="5" lastpage="true">
<Contact>
<ContactEmail></ContactEmail>
<ContactFirstName>D</ContactFirstName>
<ContactLastName>Dan</ContactLastName>
<ContactType>Customer</ContactType>
<ListOfActivity lastpage="true">
<Activity>
<Subject>Send D Dan welcome email</Subject>
</Activity>
</ListOfActivity>
</Contact>
<Contact>
<ContactEmail></ContactEmail>
<ContactFirstName>L</ContactFirstName>
<ContactLastName>Lak</ContactLastName>
<ContactType>Customer</ContactType>
<ListOfActivity lastpage="true">
<Activity>
<Subject>Send L Lak welcome email</Subject>
</Activity>
</ListOfActivity>
</Contact>
<Contact>
<ContactEmail></ContactEmail>
<ContactFirstName>NewCon6</ContactFirstName>
<ContactLastName>Con6</ContactLastName>
<ContactType>Customer</ContactType>
<ListOfActivity lastpage="true">
<Activity>
<Subject>Add activity to C Contacts</Subject>
</Activity>
</ListOfActivity>
</Contact>
<Contact>
<ContactEmail>n@l.com</ContactEmail>
<ContactFirstName>Nathan</ContactFirstName>
<ContactLastName>Lak</ContactLastName>
<ContactType>Customer</ContactType>
<ListOfActivity lastpage="true">
<Activity>
<Subject>Send Nathan Lak welcome email</Subject>
</Activity>
<Activity>
<Subject>Send Jordan Lak welcome email</Subject>
</Activity>
<Activity>
<Subject>Send J Lak welcome email</Subject>
</Activity>
<Activity>
<Subject>ActivityInsert Test R19</Subject>
</Activity>
<Activity>
<Subject>ActivityInsert Test R19 2</Subject>
</Activity>
<Activity>
<Subject>ActivityInsert Test R19 2</Subject>
</Activity>
</ListOfActivity>
</Contact>
<Contact>
<ContactEmail></ContactEmail>
<ContactFirstName>NewCon5</ContactFirstName>
<ContactLastName>NewCon5</ContactLastName>
<ContactType>Customer</ContactType>
<ListOfActivity lastpage="true"></ListOfActivity>
</Contact>
</ListOfContact>
</ns:ContactQueryPage_Output>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Sample SOAP Request 2 - QueryPage with searchspec, sortsequence and sortorder Attributes
The following SOAP request queries for Contact records by specifying a search criterion with an OR conjunction in the searchspec attribute.
The samples also demonstrate use of the optional pagesize, startrownum, and recordcountneeded attributes at the <ListOfObject> level.
In SOAP request 2a, pagesize = 5 and startrownum = 0, this request returns the 5 records starting at row 0 (first record) that match the search criteria.
In SOAP request 2b, pagesize = 5 and startrownum = 5, this request returns the next 5 records starting at row 5 (sixth record) that match the search criteria.
In addition, the sample demonstrates the sortsequence and sortorder attributes at the element level to specify the sort order and sort sequence of the whole result set (including rows of records not returned due to the pagesize limit). Note that across both responses, (SOAP response 2a and SOAP response 2b), the records are sorted accordinh to the specified sort sequence and sort order.
Sample SOAP Request 2a
In this SOAP request, pagesize = 5 and startrownum = 0:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/
XMLSchema-instance" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
secext-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>%%USERNAME%%</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">%%PASSWORD%%</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body>
<ContactQueryPage_Input xmlns="urn:crmondemand/ws/ecbs/contact/">
<ListOfContact pagesize="5" startrownum="0" recordcountneeded="true">
<Contact searchspec="[ContactLastName] LIKE 'C*' OR [ContactType] = 'Customer'">
<ContactFirstName></ContactFirstName>
<ContactLastName sortorder="DESC" sortsequence="2"></ContactLastName>
<ContactType sortorder="DESC" sortsequence="1"></ContactType>
</Contact>
</ListOfContact>
</ContactQueryPage_Input>
</soap:Body>
</soap:Envelope>
Sample SOAP Response 2a
The following SOAP response shows the list of 5 objects returned by SOAP request 2a:
<?xml version="1.0" encoding="utf-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<ns:ContactQueryPage_Output xmlns:ns="urn:crmondemand/ws/ecbs/contact/">
<ListOfContact xmlns="urn:/crmondemand/xml/Contact/Data" recordcount="54" lastpage="false">
<Contact>
<ContactFirstName>James</ContactFirstName>
<ContactLastName>Conners</ContactLastName>
<ContactType>Prospect</ContactType>
</Contact>
<Contact>
<ContactFirstName>Ruth</ContactFirstName>
<ContactLastName>Chou</ContactLastName>
<ContactType>Prospect</ContactType>
</Contact>
<Contact>
<ContactFirstName>Jason</ContactFirstName>
<ContactLastName>Cheney</ContactLastName>
<ContactType>Prospect</ContactType>
</Contact>
<Contact>
<ContactFirstName>Sean</ContactFirstName>
<ContactLastName>Thomas</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
<Contact>
<ContactFirstName>Carlos</ContactFirstName>
<ContactLastName>Santos</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
</ListOfContact>
</ns:ContactQueryPage_Output>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Sample SOAP Request 2b
In this SOAP request, pagesize = 5 and startrownum = 5
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/
XMLSchema-instance" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
secext-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>%%USERNAME%%</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">%%PASSWORD%%</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body>
<ContactQueryPage_Input xmlns="urn:crmondemand/ws/ecbs/contact/">
<ListOfContact pagesize="5" startrownum="5" recordcountneeded="true">
<Contact searchspec="[ContactLastName] LIKE 'C*' OR [ContactType] = 'Customer'">
<ContactFirstName></ContactFirstName>
<ContactLastName sortorder="DESC" sortsequence="2"></ContactLastName>
<ContactType sortorder="DESC" sortsequence="1"></ContactType>
</Contact>
</ListOfContact>
</ContactQueryPage_Input>
</soap:Body>
</soap:Envelope>
Sample SOAP Response 2b
The following SOAP response shows the list of 5 objects returned by the request in SOAP request 2b:
<?xml version="1.0" encoding="utf-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<ns:ContactQueryPage_Output xmlns:ns="urn:crmondemand/ws/ecbs/contact/">
<ListOfContact xmlns="urn:/crmondemand/xml/Contact/Data" recordcount="54" lastpage="false">
<Contact>
<ContactFirstName>Nick</ContactFirstName>
<ContactLastName>Ray</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
<Contact>
<ContactFirstName>Joanna</ContactFirstName>
<ContactLastName>Pressman</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
<Contact>
<ContactFirstName>Marianne</ContactFirstName>
<ContactLastName>Pok</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
<Contact>
<ContactFirstName>Brian</ContactFirstName>
<ContactLastName>Pittenger</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
<Contact>
<ContactFirstName>Marie</ContactFirstName>
<ContactLastName>Perkins</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
</ListOfContact>
</ns:ContactQueryPage_Output>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Sample SOAP Request 3 - QueryPage with NamedSearchSpec
The following SOAP request queries for contact records in a specific contact list by specifying the contact list name in the <NamedSearchSpec> element.
The following table shows the records in the C Contacts list from the Oracle CRM On Demand UI. There are a total of 11 records in the list, therefore the recordcount value returned in the SOAP response equals 11.
Row | Last Name | First Name | Contact Type | Owner Alias |
---|---|---|---|---|
0 |
Cuthbery |
David |
Customer |
Donna Jones |
1 |
Coxe |
Robin |
Customer |
Donna Jones |
2 |
Connolly |
John |
Customer |
Jeff Smith |
3 |
Connors |
James |
Prospect |
Jeff Smith |
4 |
Cone |
Alexander |
Customer |
Ian McAllistair |
5 |
Con6 |
NewCon6 |
Customer |
Joanne Brown |
6 |
Cohen |
Adam |
Customer |
Ian McAllistair |
7 |
Clatt |
Mark |
Customer |
Donna Jones |
8 |
Chu |
Will |
Customer |
Jeff Smith |
9 |
Chou |
Ruth |
Prospect |
Donna Jones |
10 |
Cheney |
Jason |
Prospect |
Ian McAllistair |
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/
XMLSchema-instance" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
secext-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>%%USERNAME%%</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">%%PASSWORD%%</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body>
<ContactQueryPage_Input xmlns="urn:crmondemand/ws/ecbs/contact/">
<NamedSearchSpec>C Contacts</NamedSearchSpec>
<ListOfContact pagesize="5" startrownum="0" recordcountneeded="true">
<Contact>
<ContactFirstName />
<ContactLastName />
<ContactType />
</Contact>
</ListOfContact>
</ContactQueryPage_Input>
</soap:Body>
</soap:Envelope>
Sample SOAP Response 3
The following SOAP response shows the list of contacts returned by sample SOAP request 3.
<?xml version="1.0" encoding="utf-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<ns:ContactQueryPage_Output xmlns:ns="urn:crmondemand/ws/ecbs/contact/">
<ListOfContact xmlns="urn:/crmondemand/xml/Contact/Data" recordcount="11" lastpage="false">
<Contact>
<ContactFirstName>David</ContactFirstName>
<ContactLastName>Cuthbery</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
<Contact>
<ContactFirstName>Robin</ContactFirstName>
<ContactLastName>Coxe</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
<Contact>
<ContactFirstName>John</ContactFirstName>
<ContactLastName>Connolly</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
<Contact>
<ContactFirstName>James</ContactFirstName>
<ContactLastName>Conners</ContactLastName>
<ContactType>Prospect</ContactType>
</Contact>
<Contact>
<ContactFirstName>Alexander</ContactFirstName>
<ContactLastName>Cone</ContactLastName>
<ContactType>Customer</ContactType>
</Contact>
</ListOfContact>
</ns:ContactQueryPage_Output>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>