1"use strict";(self.webpackChunkbeeceptor_docs=self.webpackChunkbeeceptor_docs||[]).push([["2262"],{25693(e,t,s){s.r(t),s.d(t,{metadata:()=>o,default:()=>p,frontMatter:()=>n,contentTitle:()=>a,toc:()=>d,assets:()=>l});var o=JSON.parse('{"id":"features/protocols/features-soap-mock-from-wsdl","title":"Mock SOAP Server from WSDL","description":"Build intelligent SOAP mock server from WSDL. Beeceptor\'s uses AI to build contextual test data. Inspect all operations with dynamic request/response envelopes. No code, fast setup, AI-powered test data.","source":"@site/docs/features/protocols/features-soap-server-from-wsdl.md","sourceDirName":"features/protocols","slug":"/soap-server-from-wsdl","permalink":"/docs/soap-server-from-wsdl","draft":false,"unlisted":false,"tags":[{"inline":true,"label":"Features","permalink":"/docs/tags/features"}],"version":"current","sidebarPosition":3,"frontMatter":{"id":"features-soap-mock-from-wsdl","slug":"/soap-server-from-wsdl","title":"Mock SOAP Server from WSDL","description":"Build intelligent SOAP mock server from WSDL. Beeceptor\'s uses AI to build contextual test data. Inspect all operations with dynamic request/response envelopes. No code, fast setup, AI-powered test data.","keywords":["AI","SOAP","WSDL","Contracts"],"sidebar_label":"SOAP server from WSDL","sidebar_position":3,"tags":["Features"]},"sidebar":"tutorialSidebar","previous":{"title":"GraphQL server from SDL","permalink":"/docs/graphql-mock-server"},"next":{"title":"gRPC server from Proto","permalink":"/docs/grpc-mock-server"}}'),i=s(74848),r=s(28453);let n={id:"features-soap-mock-from-wsdl",slug:"/soap-server-from-wsdl",title:"Mock SOAP Server from WSDL",description:"Build intelligent SOAP mock server from WSDL. Beeceptor's uses AI to build contextual test data. Inspect all operations with dynamic request/response envelopes. No code, fast setup, AI-powered test data.",keywords:["AI","SOAP","WSDL","Contracts"],sidebar_label:"SOAP server from WSDL",sidebar_position:3,tags:["Features"]},a,l={},d=[{value:"Importing WSDL Specifications",id:"importing-wsdl-specifications",level:2},{value:"AI Backed Test Data",id:"ai-backed-test-data",level:2},{value:"Inspecting payloads",id:"inspecting-payloads",level:2},{value:"SOAP Action & Operation Matching",id:"soap-action--operation-matching",level:2},{value:"Realistic Test Data",id:"realistic-test-data",level:2},{value:"SOAP Fault Handling",id:"soap-fault-handling",level:2}];function c(e){let t={admonition:"admonition",code:"code",h2:"h2",img:"img",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(t.p,{children:["Beeceptor now allows you to create intelligent ",(0,i.jsx)(t.strong,{children:"SOAP mock servers"})," directly from WSDL specifications, making it easier to develop, test & integrate SOAP-based connections. Beeceptor automatically generates fully structured request and response envelopes, enriched with dynamic test data using modern AI and large language model (LLM) capabilities. You get a fully functional mock server\u2014no coding or additional deployment required."]}),"\n",(0,i.jsx)(t.p,{children:"Whether you're consuming a third-party SOAP API, validating client integrations, or simulating legacy systems, this feature offers a fast, realistic, and customizable mock environment. Beeceptor is compatible with WSDL 1.1, as well as SOAP 1.1 and 1.2 protocols."}),"\n",(0,i.jsx)(t.h2,{id:"importing-wsdl-specifications",children:"Importing WSDL Specifications"}),"\n",(0,i.jsx)(t.p,{children:"You can start by uploading your WSDL specification in one of two ways:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:["File Upload: Simply drag and drop a ",(0,i.jsx)(t.code,{children:".wsdl"})," or ",(0,i.jsx)(t.code,{children:".xml"})," file, or browse to select from your local system."]}),"\n",(0,i.jsx)(t.li,{children:"URL Input: Alternatively, provide a direct link to your WSDL specification for Beeceptor to fetch it remotely."}),"\n"]}),"\n",(0,i.jsx)("div",{style:{width:"100%",textAlign:"center","margin-bottom":"20px"},children:(0,i.jsx)("video",{loop:!0,autoPlay:!0,muted:!0,style:{width:"80%"},title:"Create SOAP mock server from WSDL URL",children:(0,i.jsx)("source",{src:"/docs/videos/wsdl-upload-fetch-from-url.mp4",type:"video/mp4"})})}),"\n",(0,i.jsx)(t.admonition,{type:"info",children:(0,i.jsxs)(t.p,{children:["External imports (such as ",(0,i.jsx)(t.code,{children:"<import>"})," and ",(0,i.jsx)(t.code,{children:"<include>"})," elements that reference external files) are currently not supported. This is planned for a future update."]})}),"\n",(0,i.jsx)(t.h2,{id:"ai-backed-test-data",children:"AI Backed Test Data"}),"\n",(0,i.jsxs)(t.p,{children:["Once uploaded, Beeceptor processes the file in real time and displays live status updates while parsing and generating the mock operations. Beeceptor AI looks at the request and response envelops and ",(0,i.jsx)(t.strong,{children:"generates contextual test data"}),". In addition to this, it can reuse request envelop parameters and send in the operation's response. This makes your SOAP operation responses as real as possible and demo worthy."]}),"\n",(0,i.jsx)("div",{style:{width:"100%",textAlign:"center"},children:(0,i.jsx)("video",{loop:!0,autoPlay:!0,muted:!0,style:{width:"80%"},title:"Create SOAP mock server from WSDL URL",children:(0,i.jsx)("source",{src:"/docs/videos/wsdl-to-soap-mocks.mp4",type:"video/mp4"})})}),"\n",(0,i.jsx)(t.h2,{id:"inspecting-payloads",children:"Inspecting payloads"}),"\n",(0,i.jsx)(t.p,{children:"The mock server dashboard gives you an organized view of all operations derived from your WSDL specification. This makes it easy to inspect each SOAP operation, including the request and response envelopes, message bindings, and associated ports. For WSDL-powered mock servers, the dashboard automatically lists all available operations parsed from the contract, allowing you to explore without switching contexts or tools."}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.img,{alt:"inspect request and response envelopes for SOAP operations",src:s(28328).A+"",width:"2206",height:"870"})}),"\n",(0,i.jsx)(t.h2,{id:"soap-action--operation-matching",children:"SOAP Action & Operation Matching"}),"\n",(0,i.jsxs)(t.p,{children:["Once your SOAP mock server is ready, you can begin interacting with it immediately. You can invoke SOAP operations using standard HTTP POST requests and the ",(0,i.jsx)(t.code,{children:"SOAPAction"})," header. The endpoint automatically matches requests based on multiple factors, including:"]}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:["The SOAP action mentioned in the ",(0,i.jsx)(t.code,{children:"Content-Type"})," request header"]}),"\n",(0,i.jsxs)(t.li,{children:["The SOAP action value from the ",(0,i.jsx)(t.code,{children:"SOAPAction"})," request header."]}),"\n",(0,i.jsx)(t.li,{children:"WS-Addressing headers (if present)"}),"\n",(0,i.jsx)(t.li,{children:"Operation name inside the request envelope"}),"\n",(0,i.jsx)(t.li,{children:"The request URL"}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"This multi-layered matching logic ensures compatibility with various client implementations, even those that may not strictly follow the specification."}),"\n",(0,i.jsxs)(t.p,{children:["The mock server also support serving spec definition. You can make a request to the base URL of your mock server with ",(0,i.jsx)(t.code,{children:"?wsdl"})," and Beeceptor will respond with original specification for client SDK generation."]}),"\n",(0,i.jsx)(t.h2,{id:"realistic-test-data",children:"Realistic Test Data"}),"\n",(0,i.jsx)(t.p,{children:"Beeceptor uses Handlebars compatible template engine to generate realistic and dynamic data for response envelops. For example, string fields might contain full names or email addresses, while date fields reflect proper ISO timestamps. This helps simulate real-world usage and improves integration testing."}),"\n",(0,i.jsx)(t.p,{children:"You also have full control over the generated mocks. The AI generated response is fully specification compliant. If needed, you can override any AI-generated response with a custom payload or manually adjust request templates."}),"\n",(0,i.jsx)(t.h2,{id:"soap-fault-handling",children:"SOAP Fault Handling"}),"\n",(0,i.jsxs)(t.p,{children:["Beeceptor detects and processes fault definitions (",(0,i.jsx)(t.code,{children:"<fault>"})," elements) within the WSDL to generate corresponding SOAP fault envelopes. These can be triggered through the UI or as part of a rule, allowing you to simulate various error scenarios such as authentication failures, missing data, or server exceptions."]})]})}function p(e={}){let{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},28328(e,t,s){s.d(t,{A:()=>
1o});let o=s.p+"assets/images/soap-operations-popup-bf2eab7ab7224d49ebb593b873dcd03a.png"},28453(e,t,s){s.d(t,{R:()=>n,x:()=>a});var o=s(96540);let i={},r=o.createContext(i);function n(e){let t=o.useContext(r);return o.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:n(e.components),o.createElement(r.Provider,{value:t},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.