SOAP
Overview
The SOAP connector enables your Leena AI Agents to integrate with web services defined by WSDL (Web Services Description Language), facilitating automated interactions with SOAP-based APIs and web services.
SOAP (Simple Object Access Protocol) is a lightweight protocol used to create web APIs, typically using Extensible Markup Language (XML). It supports a wide range of communication protocols across the internet, including HTTP, SMTP (Simple Mail Transfer Protocol), and TCP (Transmission Control Protocol). The Leena AI SOAP connector focuses on the HTTP protocol only and relies on application-layer protocols for message transmission and negotiation.
API Details
Leena AI integrates with SOAP web services via WSDL endpoints and HTTP protocol.
For more information on SOAP specifications, refer to the official W3C SOAP documentation.
Setup
The SOAP connector uses industry-standard authentication protocols to secure communication with SOAP web services.
Prerequisites
Before setting up the SOAP connector, ensure you have:
- Access to the WSDL (Web Services Description Language) endpoint URL
- Credentials for the SOAP web service (username, password, or API keys as applicable)
- Knowledge of the authentication method required by your SOAP service
- Access to your Leena AI workspace with connector management permissions
- Administrator access to configure connector settings
Authentication Methods
The SOAP connector supports multiple authentication protocols:
Basic Authentication Security
BasicAuthSecurity uses standard HTTP Basic Authentication with username and password credentials.
WS-Security (Username Token)
WSSecurity implements WS-Security standards with UsernameToken and Password support. The options object can contain the following properties:
- passwordType: Select between 'PasswordDigest' or 'PasswordText' (default: 'PasswordText')
- hasTimeStamp: Adds Timestamp element to the security header (default: true)
- hasTokenCreated: Adds Created element to the security header (default: true)
- hasNonce: Adds Nonce element to the security header (default: false)
- mustUnderstand: Adds mustUnderstand=1 attribute to security tag (default: false)
- actor: If set, adds Actor attribute with given value to security tag (default: '')
Get Credentials
The credentials required depend on your SOAP web service provider. Typical credentials include:
- WSDL URL: The endpoint that hosts the Web Services Description Language file
- Username: The user account for authentication
- Password: The account password or API token
- Authentication Type: Verify which authentication method (Basic Auth or WS-Security) your service requires
Consult your SOAP service provider's documentation for specific credential retrieval instructions.
Add Connection
Here is how to add a connection on Leena AI:
- Log in to your Leena AI workspace
- Navigate to Settings > Integrations
- Search for "SOAP" and select it from the list to add a new connector
- Start configuring the connector:
- WSDL URL: Enter the complete URL to your SOAP web service WSDL endpoint
- Authentication Type: Select the appropriate authentication method (Basic Auth or WS-Security)
- Username: Enter your service account username
- Password: Enter your service account password or API token
- Security Options: Configure WS-Security parameters if using WS-Security authentication
- Test the connection to verify the WSDL is accessible and credentials are valid
- Save the connector configuration
Actions
The following actions are supported for the SOAP connector:
Execute SOAP WSDL
Executes SOAP methods defined in the WSDL by interacting with the web service. The Agent can leverage this action to invoke specific operations available in the SOAP web service, such as fetching data, updating records, or triggering business processes.
Description
This action retrieves all available methods from the WSDL endpoint and allows you to execute any of them. Methods are automatically fetched and displayed based on the configured WSDL URL for the connector instance.
Use Cases
- Workday Integration: Fetch position details, department information, or user data from Workday
- HR Operations: Apply leave on behalf of users or retrieve employee information
- Data Retrieval: Fetch department details, applicant information, or other organizational data
- Business Process Automation: Execute custom SOAP methods for enterprise workflows
- Data Updates: Modify records in SOAP-based systems through available operations
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description | Example |
|---|---|---|
| Method | Select the SOAP method to execute. Available methods are auto-fetched from the WSDL and displayed as options | Applicants, Positions, GetUserDetails |
| Input Body | Specify the input format (JSON or XML) and provide the corresponding request body | JSON or XML |
Optional
| Name | Description |
|---|---|
| Request Headers | Additional HTTP headers to include in the SOAP request |
| Timeout | Maximum time to wait for the SOAP response (in seconds) |
Sample JSON Input
{
"method": "Positions",
"input": {
"startIndex": 0,
"count": 10,
"filter": "Active"
}
}{
"method": "GetUserDetails",
"input": {
"userId": "USER123",
"department": "Engineering"
}
}{
"method": "ApplyLeave",
"input": {
"employeeId": "EMP456",
"leaveType": "Annual",
"startDate": "2025-08-27",
"endDate": "2025-08-29",
"reason": "Vacation"
}
}Sample XML Input
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPositions>
<startIndex>0</startIndex>
<count>10</count>
<filter>Active</filter>
</GetPositions>
</soap:Body>
</soap:Envelope>Response
Upon successful execution, the action returns:
- The SOAP service response containing the requested data
- Response data in XML format (parsed and presented as JSON when applicable)
- Result code and status message indicating success or failure
- Any error messages if the SOAP call fails
- Response timestamp
Advanced Configuration
Security Protocol Methods
The SOAP connector supports custom security implementations through the following methods:
- addOptions(options): Accepts an options argument that is passed directly to the HTTP request
- addHeaders(headers): Accepts an argument with HTTP headers to add custom header information
- toXML(): Returns a string of XML to be appended to the SOAP headers (not executed if postProcess is also defined)
- postProcess(xml, envelopeKey): Receives the assembled request XML plus envelope key, and returns processed XML. Executed before options.postProcess
Best Practices
- Ensure all credentials are kept secure and never shared in logs or documentation
- Test the WSDL endpoint accessibility before configuring the connector
- Verify that the authentication method matches your service provider's requirements
- Monitor SOAP request/response times and optimize based on performance requirements
- Use appropriate XML or JSON input formats based on your SOAP service requirements
- Implement error handling in workflows that use Execute SOAP WSDL actions
Updated about 19 hours ago
