soap
handlers
The SOAP handler is experimental and should not be used in production deployments.
Edge meshes do not support SOAP handlers.
The SOAP handler allows you to consume SOAP WSDL
files and generate a remote executable schema for those services.
Copied to your clipboard{"meshConfig": {"sources": [{"name": "SoapSource","handler": {"soap": {"source": "http://<Commerce Host>/soap?wsdl&services=customerCustomerRepositoryV1","wsdl": "http://<Commerce Host>/soap?wsdl&services=customerCustomerRepositoryV1","operationHeaders": {"x-operation-header-key": "sample-x-operation-header-value"},"schemaHeaders": {"x-schema-header-key": "sample-x-schema-header-value"}}}}]}}
If your source handler's schema is modified, you must update your mesh to allow API Mesh to cache any changes.
Add SOAP handlers to your mesh:
Copied to your clipboard{"meshConfig": {"sources": [{"name": "SoapSource","handler": {"soap": {"source": "http://<Commerce Host>/soap?wsdl&services=customerCustomerRepositoryV1","wsdl": "http://<Commerce Host>/soap?wsdl&services=customerCustomerRepositoryV1","operationHeaders": {"x-operation-header-key": "sample-x-operation-header-value"},"schemaHeaders": {"x-schema-header-key": "sample-x-schema-header-value"}}}}]}}
SOAP limitations
The experimental SOAP handler has the following limitations:
- A
source
field and awsdl
field (with identical values) are required- This redundancy is a temporary limitation and will be addressed in a future release.
- If you do not provide an expected argument, you will receive an
undefined
error.- This error will be clarified in a future release.
context.headers
are not available insideoperationHeaders
mutations
must be used when querying
Querying
When querying a SOAP source inside a mesh, use a mutation
instead of a query
, as illustrated in the following example:
Copied to your clipboardmutation {catalogProductRepositoryV1Get(sku: "product_dynamic_249"editMode: truestoreId: 1forceReload: true),catalogCategoryListV1GetList(searchCriteria:"category")}
Config API reference
source
(type:String
, required) - URL to your WSDL, must be identical towsdl
wsdl
(type:String
, required) - URL to your WSDL, must be identical to thesource
schemaHeaders
(type:Any
) - JSON object for adding headers to API calls for runtime schema introspection- You can also provide a
.js
or.ts
file path that exportsschemaHeaders
as an object.
- You can also provide a
operationHeaders
(type:JSON
) - JSON object for adding headers to API calls for runtime operation execution