Skip to main content
Back to Challenges
📄

SOAP API

Practice with XML-based SOAP web services

SOAP Endpoint:https://api.qa-practice.dev/api/soap(POST)
WSDL:https://api.qa-practice.dev/api/soap(GET)

Request Editor

Available Operations

UsersGetUsers

Get all users

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:GetUsers/>
  </soap:Body>
</soap:Envelope>
UsersGetUser

Get user by ID

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:GetUser>
      <id>1</id>
    </tns:GetUser>
  </soap:Body>
...
UsersCreateUser

Create a new user

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:CreateUser>
      <name>John Doe</name>
      <email>john@example.com</email>
    </tns:CreateUser>
...
ProductsGetProducts

Get all products (optional category filter)

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:GetProducts/>
  </soap:Body>
</soap:Envelope>
ProductsGetProduct

Get product by ID

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:GetProduct>
      <id>1</id>
    </tns:GetProduct>
  </soap:Body>
...
PostsGetPosts

Get all posts (optional userId filter)

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:GetPosts/>
  </soap:Body>
</soap:Envelope>
PostsGetPost

Get post by ID

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:GetPost>
      <id>1</id>
    </tns:GetPost>
  </soap:Body>
...
CalculatorAdd

Add two numbers

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:Add>
      <a>10</a>
      <b>5</b>
    </tns:Add>
...
CalculatorMultiply

Multiply two numbers

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:tns="http://api.qa-practice.dev/soap">
  <soap:Body>
    <tns:Multiply>
      <a>7</a>
      <b>6</b>
    </tns:Multiply>
...

WSDL Schema Types

User

  • id: string
  • name: string
  • email: string
  • createdAt: string

Product

  • id: string
  • name: string
  • price: decimal
  • description: string
  • category: string
  • inStock: boolean

Post

  • id: string
  • userId: string
  • title: string
  • body: string
  • createdAt: string

💡 Tips for Testing

  • • Content-Type header must be text/xml or application/soap+xml
  • • Use the namespace tns: prefix for operations
  • • Self-closing tags work for parameterless operations: <tns:GetUsers/>
  • • WSDL is available via GET request to the same endpoint
  • • Calculator operations (Add, Subtract, Multiply, Divide) are great for quick testing

SOAP endpoint with WSDL schema support