Skip to main content
SOAP

Fetch WSDL

RequestParseValidateEasy

What you will learn

  • WSDL describes the service contract โ€” operations, message types, endpoints. Clients often auto-generate from WSDL
  • Version WSDL separately from implementation โ€” consumers depend on it long after you forget which version is live
  • Test WSDL accessibility at documented URL โ€” missing WSDL = clients can't bootstrap. 404 on WSDL is a release blocker

Description

Retrieve and parse the WSDL document to discover operations.

Test Scenario

const response = await request.get('/api/soap?wsdl');
const wsdl = await response.text();
expect(wsdl).toContain('<definitions');
expect(wsdl).toContain('<portType');
Endpoint/api/soap?wsdl

Testing Tips

  • โ€ขWSDL describes available operations
  • โ€ขCheck portType for operations
  • โ€ขFind message formats in types section
// Playwright API Testing - SOAP
import { test, expect } from '@playwright/test';
test('SOAP request', async ({ request }) => {
const soapEnvelope = `<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetUsers xmlns="http://api.example.com/"/>
</soap:Body>
</soap:Envelope>`;
const response = await request.post('/api/soap', {
headers: { 'Content-Type': 'text/xml' },
data: soapEnvelope
});
expect(response.ok()).toBeTruthy();
const text = await response.text();
expect(text).toContain('soap:Envelope');
});

Challenge ID: soap-get-wsdl

2 frameworks available

API Playground

Send requests and inspect responses

Endpoint: /api/soap?wsdl

Press Enter to send