A client application must send a SOAP request to the PingFederate server specifying the requested web service and the specific method. For example, the following is a typical SOAP request for an IdP list using the SSO Directory Service.

<?xml version="1.0" encoding="UTF-8"?>
<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>
    <ns1:getIDPList
        soapenv:encodingStyle=
            "http://schemas.xmlsoap.org/soap/encoding/" 
        xmlns:ns1=
            "https://localhost:9031/ssodir/services/
                 SSODirectoryService"/>
  </soapenv:Body>
</soapenv:Envelope>

The PingFederate server's web service will return a response containing the list you requested. The following is an example of a typical SOAP response for an IdP list:

<?xml version="1.0" encoding="UTF-8" ?> 
<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>
    <getIDPListResponse 
        soapenv:encodingStyle=
            "http://schemas.xmlsoap.org/soap/encoding/">
      <getIDPListReturn
          soapenc:arrayType=
             "ns1:IDP[2]" xsi:type="soapenc:Array" 
           xmlns:ns1="urn:BeanService" 
           xmlns:soapenc=
             "http://schemas.xmlsoap.org/soap/encoding">
         <getIDPListReturn href="#id0" /> 
         <getIDPListReturn href="#id1" /> 
      </getIDPListReturn>
    </getIDPListResponse>
    <multiRef id="id0" soapenc:root="0" 
        soapenv:encodingStyle=
           "http://schemas.xmlsoap.org/soap/encoding/" 
          xsi:type="ns2:IDP" 
         xmlns:soapenc=
            "http://schemas.xmlsoap.org/soap/encoding/" 
          xmlns:ns2="urn:BeanService">
       <company xsi:type="xsd:string">MegaMarket</company> 
      <entityId xsi:type="xsd:string">www.megamarket.com
       </entityId> 
    </multiRef>
    <multiRef id="id1" soapenc:root="0" 
        soapenv:encodingStyle=
           "http://schemas.xmlsoap.org/soap/encoding/" 
          xsi:type="ns3:IDP" xmlns:ns3="urn:BeanService" 
         xmlns:soapenc=
            "http://schemas.xmlsoap.org/soap/encoding/">
      <company xsi:type="xsd:string">Ping</company> 
      <entityId
          xsi:type="xsd:string">pingfederate3:default:entityId
       </entityId> 
    </multiRef>
  </soapenv:Body>
</soapenv:Envelope>