Was genau bedeutet SOAP?
SOAP (Simple Object Access Protocol) ist ein Protokoll für den Austausch von Nachrichten in verteilten Umgebungen, also zwischen Systemen und Applikationen. Es wird verwendet, um Anwendungen miteinander zu verbinden und Daten über das Internet auszutauschen. SOAP basiert auf XML und wird oft in Kombination mit anderen Protokollen wie HTTP oder SMTP verwendet.
Eine API (Application Programming Interface) stellt eine Schnittstelle bereit, über die Applikationen und Systeme miteinander kommunizieren können, indem sie auf bestimmte Funktionen oder Daten einer Anwendung zugreifen. Für den Austausch nutzen die APIs meist ein bestimmtes Protokoll, wie REST, GraphQL oder eben SOAP. Nutzt eine API das Protokoll SOAP, spricht man von einer SAOP-API.
Kurz: SOAP ist ein Protokoll für den Austausch von Nachrichten das auf XML basiert und meist bei einer API zum Einsatz kommt.
Beispiel einer SOAP-Abfrage
Ein Beispiel für die Verwendung von SOAP könnte die Abfrage von Stammdaten eines Unternehmens sein. So könnten beispielsweise die Daten eines Unternehmens zwischen einem CRM- und einem ERP-System aussehen.
Über die folgende Anfrage werden beispielsweise die Informationen über einen bestimmten Kunden angefordert, indem seine Kundennummer übergeben wird. Die Anfrage wird in einer SOAP-Nachricht gesendet, die im XML-Format geschrieben ist. Weiter enthält die Nachricht Anforderungen an die Daten, sowie Authentifizierungs-Informationen, die meist erforderlich sind.
Anfrage
<soap:Envelope xmlns:soap=“http://www.w3.org/2003/05/soap-envelope“ xmlns:cust=“http://customerinfo.org/“>
<soap:Header/>
<soap:Body>
<cust:GetCustomerInfo>
<cust:CustomerID>12345</cust:CustomerID>
</cust:GetCustomerInfo>
</soap:Body>
</soap:Envelope>
Rückgabe
<soap:Envelope xmlns:soap=„http://www.w3.org/2003/05/soap-envelope“ xmlns:cust=„http://customerinfo.org/“>
<soap:Header/>
<soap:Body>
<cust:GetCustomerInfoResponse>
<cust:Customer>
<cust:Name>John Doe</cust:Name>
<cust:Address>123 Main Street</cust:Address>
<cust:City>Anytown</cust:City>
<cust:State>XX</cust:State>
<cust:Zip>12345</cust:Zip>
<cust:Phone>555-555-5555</cust:Phone>
</cust:Customer> </cust:GetCustomerInfoResponse>
</soap:Body>
</soap:Envelope>
Bitte beachte, dass dies nur ein Beispiel ist und dass sich die tatsächliche Implementierung von SOAP von Anwendung zu Anwendung unterscheidet.
Soweit du Unterstützung bei der Integration deiner Systeme über APIs suchst, unterstützen wir dich über unsere Professional Services rund um APIs und Integrated Data Intelligence gerne.