NV ToolkitFormat · Validate · Convert

XML Tools

SOAP Formatter

Turn captured SOAP envelopes into readable XML — Header and Body cleanly indented, namespaces intact.

In short

Format SOAP envelopes online: beautify request and response XML, validate structure, and inspect Header and Body in a collapsible tree. Free, private.

By NaveenKumar T · Updated

Learn: XML Namespaces Explained: Prefixes, Default Namespaces and Common Errors

  • Envelope-aware sample
  • Namespace prefixes preserved
  • Tree view of Header/Body

Runs entirely in your browser — nothing you paste or open here is uploaded, logged, or stored.How we handle data →

Example

SOAP Formatter: input and output

A captured SOAP request calling GetStock — the single-line shape you'd copy out of a network log.

Input · xml
<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:m="https://example.com/inventory"><soap:Header><m:RequestId>REQ-8841</m:RequestId></soap:Header><soap:Body><m:GetStock><m:Sku>MON-27U</m:Sku></m:GetStock></soap:Body></soap:Envelope>
Output · xml
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:m="https://example.com/inventory">
  <soap:Header>
    <m:RequestId>REQ-8841</m:RequestId>
  </soap:Header>
  <soap:Body>
    <m:GetStock>
      <m:Sku>MON-27U</m:Sku>
    </m:GetStock>
  </soap:Body>
</soap:Envelope>

Header and Body separate onto their own indented blocks — RequestId in the Header, the GetStock operation and its Sku parameter in the Body — exactly the split you check first when debugging a SOAP call.

Learn more

Debugging SOAP by reading envelopes

SOAP debugging is envelope archaeology: did the Header carry the right credentials, did the Body contain the operation you intended, what fault detail came back? Captured messages are single-line and namespace-dense — formatted, the same envelope answers those questions at a glance.

The formatter validates as it works, so truncated captures (a cut-off </soap:Envelope> is common in size-limited logs) are flagged with the exact position instead of formatting misleadingly. Envelopes captured from a browser or a log are often Base64-wrapped or entity-escaped first: Base64 to XML decodes and validates in one step, and XML unescape turns `&lt;soap:Body&gt;` back into markup. The service contract itself opens in the WSDL formatter.

Envelope structure in 20 seconds

Everything in a SOAP envelope lives in <Envelope>: an optional <Header> for metadata (auth tokens, correlation ids, WS-* extensions) and a mandatory <Body> carrying the operation payload — or a <Fault> when things go wrong. Faults' faultcode and faultstring are the first things to read; the tree view puts them two clicks away.

SOAP 1.1 vs SOAP 1.2
SOAP 1.1SOAP 1.2
Envelope namespacehttp://schemas.xmlsoap.org/soap/envelope/http://www.w3.org/2003/05/soap-envelope
HTTP Content-Typetext/xmlapplication/soap+xml
Operation name carried inseparate SOAPAction headerContent-Type action parameter
Fault element namesfaultcode, faultstring, faultactor, detailCode, Reason (with Text), Node, Role, Detail

Help

Frequently asked questions

Everything you need to know about the SOAP Formatter.

01How do I use the SOAP Formatter?

Paste a SOAP request or response (straight from logs or a network capture) and press Format. The envelope re-indents with Header and Body clearly separated; Tree view drills into the payload without the angle-bracket noise.

02Can I format SOAP messages copied from logs?

That's the primary use case. Log pipelines strip newlines, leaving envelopes as single lines. Paste the captured message; if escaping crept in along the way (\" or &quot;), clean that first, then format. The result is the readable request/response you needed for debugging.

03Where is the error message in a SOAP fault, and why does its shape differ between services?

Inside <Body>, in a <Fault> element. SOAP 1.1 faults carry faultcode and faultstring; SOAP 1.2 faults carry Code and Reason (with a Text child) under the http://www.w3.org/2003/05/soap-envelope namespace. The envelope's own namespace tells you which version you're reading, and the tree view puts either pair two clicks from the top.

04How do I tell SOAP 1.1 from SOAP 1.2?

By the envelope's namespace and the request's Content-Type. SOAP 1.1 declares http://schemas.xmlsoap.org/soap/envelope/ and travels as text/xml with the operation named in a separate SOAPAction header. SOAP 1.2 declares http://www.w3.org/2003/05/soap-envelope and travels as application/soap+xml, with the action folded into a Content-Type parameter instead of a separate header.

Keep working

Related tools

Learn the format

Related guides

All guides →