Die SOAP-Schnittstelle - Spectrum_OnDemand - web_services - 23 - 23.1

Spectrum-Webdienste-Handbuch

Product type
Software
Portfolio
Integrate
Product family
Spectrum™ software
Product
Spectrum™ software > Web Services
Version
23.1
ft:locale
de-DE
Product name
Spectrum Technology Platform
ft:title
Spectrum-Webdienste-Handbuch
First publish date
2007
ft:lastEdition
2023-10-25
ft:lastPublication
2023-10-25T07:20:03.279000

Der Spectrum Technology Platform-Server gewährt den Zugriff auf Dienste anhand von SOAP im „document/literal“-Modus. „Document/literal“-Webservices stellen das mit WS-I kompatible Format für Webservices dar.

Navigieren Sie zum folgenden Pfad, um die auf Ihrem Spectrum Technology Platform-Server verfügbaren SOAP-Webservices anzuzeigen:

http://server:port/soap

Anmerkung: Standardmäßig verwendet Spectrum Technology Platform den Port 8080 für die HTTP-Kommunikation. Eventuell hat Ihr Administrator einen anderen Port konfiguriert.
Anmerkung: Informationen zu HTTP-Statuscodes finden Sie unter HTTP-Statuscodes.

WSDL-URL

Die WSDL für einen Spectrum Technology Platform-Webservice lautet:

http://server:port/soap/service_name?wsdl

https://OnDemandServer/soap/service_name?wsdl

Eine Liste der Spectrum Technology Platform-Server finden Sie unter Herstellen einer Verbindung zu -Servern.

Beispiel:

http://myserver:8080/soap/ValidateAddress?wsdl

https://spectrum.precisely.com/soap/ValidateAddress?wsdl

Bei dem Webservice-Modell handelt es sich um ein allgemeines Modell für alle Dienste. Die WSDL für jeden Spectrum Technology Platform-Webservice enthält dieselbe Definition von Datentypen und Vorgängen. Das Unterscheidungsmerkmal der WSDL bilden der Zieldienst und die Werte (Optionen und Daten), die zur Laufzeit bereitgestellt werden.

Anmerkung: Wir fügen eventuell neue Felder oder Optionen hinzu, ohne Sie zu benachrichtigen. Neue Elemente sind stets optional, sodass Sie Ihren Code nicht ändern müssen, um eine Kompatibilität sicherzustellen, es sei denn, Sie möchten sie verwenden. Wenn wir Felder oder Optionen entfernen, kündigen wir die Änderungen im Voraus an, sodass Ihnen ausreichend Zeit bleibt, um Ihren Code zu aktualisieren.
Wichtig: Überprüfen Sie Antworten des Webservices nicht anhand der WSDL. Spectrum Technology Platform-WSDLs sind so gestaltet, dass sie im Laufe der Zeit erweitert werden, sodass alle Elemente in der WSDL optional sind. Das bedeutet, dass die Überprüfung einer Antwort anhand der WSDL keine hilfreichen Ergebnisse liefert.

Benutzerfelder

Sie können zusätzliche Felder über den Webservice übergeben, auch wenn der Webservice diese nicht verwendet. Diese Felder werden unverändert im Element <user_fields> der Antwort zurückgegeben. Beispiel: Die folgende Anforderung enthält ein Benutzerfeld mit der Bezeichnung id und einem Wert von 5:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:val="http://www.pb.com/spectrum/services/ValidateAddress">    <soapenv:Header/>    <soapenv:Body>       <val:ValidateAddressRequest>          <val:input_port>             <val:Address>                <val:AddressLine1>3001 summer</val:AddressLine1>                <val:City>stamford</val:City>                <val:StateProvince>ct</val:StateProvince>                 <val:user_fields>                   <val:user_field>                      <val:name>id</val:name>                      <val:value>5</val:value>                   </val:user_field>                </val:user_fields>             </val:Address>          </val:input_port>       </val:ValidateAddressRequest>    </soapenv:Body> </soapenv:Envelope>

Das folgende Benutzerfeld wird unverändert in der Antwort zurückgegeben:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">    <soap:Body>       <ns3:ValidateAddressResponse xmlns:ns2="http://spectrum.pb.com/" xmlns:ns3="http://www.pb.com/spectrum/services/ValidateAddress">          <ns3:output_port>             <ns3:Address>                <ns3:Confidence>86</ns3:Confidence>                <ns3:RecordType>HighRise</ns3:RecordType>                <ns3:RecordType.Default>Y</ns3:RecordType.Default>                <ns3:CountryLevel>A</ns3:CountryLevel>                <ns3:ProcessedBy>USA</ns3:ProcessedBy>                <ns3:MatchScore>0</ns3:MatchScore>                <ns3:AddressLine1>3001 Summer St</ns3:AddressLine1>                <ns3:City>Stamford</ns3:City>                <ns3:StateProvince>CT</ns3:StateProvince>                <ns3:PostalCode>06905-4317</ns3:PostalCode>                <ns3:PostalCode.Base>06905</ns3:PostalCode.Base>                <ns3:PostalCode.AddOn>4317</ns3:PostalCode.AddOn>                <ns3:Country>United States Of America</ns3:Country>                <ns3:AdditionalInputData.Base/>                <ns3:POBoxOnlyDeliveryZone/>                <ns3:user_fields>                   <ns3:user_field>                      <ns3:name>id</ns3:name>                      <ns3:value>5</ns3:value>                   </ns3:user_field>                </ns3:user_fields>             </ns3:Address>          </ns3:output_port>       </ns3:ValidateAddressResponse>    </soap:Body> </soap:Envelope>
Anmerkung: Die Namen von Benutzerfeldern dürfen keine Zeichen enthalten, die in XML-Elementnamen ungültig sind. Leerzeichen sind beispielsweise nicht gültig.

Beispiel für SOAP-Anforderung

In der folgenden SOAP-Anforderung wird der ValidateAddress-Dienst aufgerufen. Die Abschnitte für Optionen und Zeilen hängen alle von den Metadaten für diesen speziellen Webdienst ab. Deshalb haben unterschiedliche Komponenten unterschiedliche Metadateneinträge. Zusätzlich gibt es einen Abschnitt „user_fields“, der Ihnen ermöglicht, Feldwerte zu übergeben, die unverändert in der Antwort zurückgegeben werden.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" ​xmlns:val="http://www.pb.com/spectrum/services/ValidateAddress">    <soapenv:Header/>    <soapenv:Body>       <val:ValidateAddressRequest>          <val:options>             <val:OutputFormattedOnFail>Y</val:OutputFormattedOnFail>          </val:options>          <val:input_port>             <val:Address>                <val:AddressLine1>1525B Kramer Lane</val:AddressLine1>                <val:AddressLine2>Suite 100</val:AddressLine2>                <val:PostalCode>78758</val:PostalCode>             </val:Address>          </val:input_port>       </val:ValidateAddressRequest>    </soapenv:Body> </soapenv:Envelope>

Beispiel für SOAP-Antwort

Im Rahmen der Beispielanforderung würde die folgende Antwort zurückgegeben werden.

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">    <soap:Body>       <ns3:ValidateAddressResponse xmlns:ns2="http://spectrum.pb.com/" ​xmlns:ns3="http://www.pb.com/spectrum/services/ValidateAddress">          <ns3:output_port>             <ns3:Address>                <ns3:Confidence>88</ns3:Confidence>                <ns3:RecordType>Normal</ns3:RecordType>                <ns3:CountryLevel>A</ns3:CountryLevel>                <ns3:ProcessedBy>USA</ns3:ProcessedBy>                <ns3:MatchScore>0</ns3:MatchScore>                <ns3:AddressLine1>1525B Kramer Ln Ste 100</ns3:AddressLine1>                <ns3:City>Austin</ns3:City>                <ns3:StateProvince>TX</ns3:StateProvince>                <ns3:PostalCode>78758-4227</ns3:PostalCode>                <ns3:PostalCode.Base>78758</ns3:PostalCode.Base>                <ns3:PostalCode.AddOn>4227</ns3:PostalCode.AddOn>                <ns3:Country>United States Of America</ns3:Country>                <ns3:user_fields/>             </ns3:Address>          </ns3:output_port>       </ns3:ValidateAddressResponse>    </soap:Body> </soap:Envelope>