Logic Nodes

Logic nodes run silently. The customer never sees them. They evaluate conditions, call external systems, set variable values, and route the flow based on rules.

Condition

The Condition node evaluates one or more rules and sends the flow down a different path depending on the result. There is always an Else path for when none of the rules match. The node can evaluate any variable in the workflow: customer answers, system values, or data returned from an API call.

Field

Description

Description

A short label for what the node is checking (for example, "Check account type"). Appears on the canvas card and in publish-check error messages.

Condition groups

One or more rule groups. Each group produces its own output handle on the canvas. Conditions within a group are evaluated top to bottom. Give each group a clear name, because this becomes the handle label on the canvas. When you select the Add new condition button, you are prompted to provide a text and select a variable to redirect the flow when the conditions are met.

Fallback

The Else path, taken when no condition group matches.

API

The API node sends a request to an external REST or SOAP service and maps the response into workflow variables. It has three output handles: default (success), On Error, and On Timeout.

Use a SOAP request to connect to legacy or enterprise SOAP services directly, without building an intermediary REST service. SOAP requests are configured manually. WSDL import and operation discovery are not supported, so you enter the endpoint, SOAP version, headers, and request XML yourself. SOAP requests follow the same timeout, retry, payload limit, and error behavior as REST requests.

Field

Required

Description

Request

Yes

The type of service to call: REST or SOAP. The fields that follow change based on your selection.

Method

Yes (REST only)

GET, POST, PUT, PATCH, or DELETE.

SOAP Version

Yes (SOAP only)

SOAP 1.1 or SOAP 1.2. Select the version the target service supports. The default is SOAP 1.1. The platform builds the request and adds the HTTP headers that the selected version requires.

URL

Yes

The endpoint URL of the REST or SOAP service. Must start with http:// or https://. Supports {{variable}} interpolation anywhere in the URL. To insert a variable, select the variable icon { } in the field, then search for and select a system variable (such as chatHistory, currentDate, currentDateTime, or currentTime) or a workflow variable. To create a variable, select + Add New Variable. In the New Custom Variable form, enter a Name, confirm the Type (defaults to string), optionally enter a Description, and select Create. The same variable picker is available in the Query Parameters, Headers, and Body fields.

Description

No

A short note about what the API call does.

Authentication

Yes

How the request authenticates with the target service. For REST requests, select No Auth, Bearer Token, API Key, OAuth 2.0 Client Credentials, or eGain Auth Token. For SOAP requests, select one of the following:

  • None: The request is sent without authentication.

  • eGain Auth Token: The request uses the eGain authentication token. This is the default.

  • An external credential: A saved credential listed under From External Credentials, such as Basic Auth or OAuth.

To create a credential without leaving the workflow, select + Add New Credential. In the New Credential panel, enter a Credential Name, select an Authentication Type, and enter the details for that type (for Basic Auth, the Username and Password). Optionally, set an Expiry Date & Time in your local time zone. This date is used only for internal notifications and does not change the actual expiry of the credential. Select Save & Store Credential. The credential is stored on the External Credentials tab and is available across Agentic Studio.

Credentials, tokens, and authorization headers are stored securely and are masked in the UI, logs, and error messages.

Query Parameters

No

Key-value pairs sent with the request. For each parameter, enter a name in the Parameter field and enter a fixed value in the Value field, or select the variable icon { } to insert a workflow variable that is resolved at runtime. Select + Add Parameter to include additional parameters.

Headers

No

Key-value pairs added to the request header. For each header, enter the header name in the Key field. In the Value field, enter a fixed value, or select the variable icon { } and select a variable whose value is sent at runtime (for example, a header named Time with the value currentTime). Select + Add Header to include additional headers. For SOAP requests, you do not need to add the headers that the SOAP version requires. The platform adds them based on the selected SOAP version.

Body

Yes

The request body. Supports variable interpolation.

  • REST: Pick a content type (JSON, form-encoded, or plain text). This field is available for POST, PUT, and PATCH methods only.

  • SOAP: In the Request XML field, enter the complete SOAP envelope and body. Select the variable icon { } to insert workflow variables into the XML. For example:
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
      <soap:Body>{{value}}</soap:Body>
    </soap:Envelope>

Response

No

Maps values from the API response to workflow variables for use in downstream nodes. Select + Add Mapping, and then select the Source of the value:

  • Response Body: Maps a field from the response body. Enter the path to the field, and in Map to Variable, select the variable where the value is stored.

    • REST: Use dot notation to the field in the JSON response (for example, data.order.id).

    • SOAP: In the XML Path field, use element names separated by a forward slash (/) to the node in the XML response (for example, Body/GetUserResponse/User/Name). For repeated elements, use [n], where n is a 0-based index (for example, Body/GetUsersResponse/User[0]/Name). For attributes, use @ followed by the attribute name (for example, Body/GetUserResponse/User/@id).

    If a mapped field or node is missing from the response, the variable is handled the same way as a missing value in any API response.

  • Response Header: Maps the value of an HTTP response header, such as a correlation ID, pagination token, or rate-limit value. In Header Name, enter the name of the header (for example, X-Request-Id), and in Map to Variable, select the variable where the value is stored.

    • Header names are not case-sensitive. For example, x-request-id matches a returned X-Request-Id header.

    • The header value is stored as a single text string.

    • If a successful response does not include the header, the workflow continues and the remaining mappings are still processed. A text variable is set to blank, and a variable of another type, such as a number, keeps its previous value.

Add a mapping for each value you need. Each variable can receive only one value per API node. To remove a mapping, select the delete icon next to it. If the request fails or times out, no mappings are applied, and the flow follows the On Error or On Timeout path.

Success Condition

No

By default, HTTP 2xx responses are treated as success. To define a custom success rule, enter an expression here (for example, status === 200 && body.success === true). A SOAP Fault is always treated as a failure.

Timeout & Retry

Yes

Controls how long the node waits before giving up and how many times it retries. Connection (ms) sets the maximum time to establish a connection (default 5000 ms). Response (ms) sets the maximum time to wait for a response (default 30000 ms). Max Retries sets the number of retry attempts before the flow routes to the On Timeout path (default 0). Authentication and configuration failures are not retried.

Test

No

Lets you run the API call directly from the editor to inspect the live response before you set up the response mapping. Under Test values, enter a sample value for each variable used in the request, then select Test Request. This button is enabled only when you provide a valid URL.

SOAP errors

SOAP requests use the same error paths as REST requests:

  • A SOAP Fault, a malformed XML response, an authentication failure, or an HTTP or network failure routes the flow to the On Error path. Fault details are not mapped into response variables.

  • A request that exceeds the connection or response time limit, after all retries, routes the flow to the On Timeout path.

  • A request or response that exceeds the supported payload size fails.

Changes to a SOAP configuration apply to new calls after you save the node. They do not affect completed workflow runs.

Jump

The Jump node moves the flow to a different node elsewhere in the workflow without following a connected path. Use it to avoid duplicating sections that appear at the end of multiple branches. The Jump node has no output handle. It transfers control directly to its target.

Field

Description

Jump to

A dropdown listing all non-Start nodes in the current workflow. Select the target node. The target node must still exist at publish time.

Wait

The Wait node pauses the flow for a set number of seconds before continuing. The customer sees a heartbeat indicator in the chat during the pause. Use it when a workflow needs to give an external system time to process before checking a result.

Field

Description

Duration

The pause duration, in minutes and seconds.

Set Variable

The Set Variable node assigns a value to a variable without asking the customer anything. Use it to set default values, prepare data before an API call, or stamp derived fields for later branching.

Field

Description

Variable Assignments

Select Add Assignment, then select a variable from the list. In the Set To field, enter the value to assign to that variable. You can concatenate multiple variables in a single Set To value.

Query Filter

The Query Filter node adds search filter conditions to the session's queryOps system variable. This structure is passed to the AI Agent to narrow its knowledge base search. Each Query Filter node you add contributes to the running list of filters.

Field

Description

Description

Optional. A short label for the node.

Filter conditions

One or more filter clauses. Clauses are ANDed by default. Each clause has a combinator (AND/OR) for joining with the next clause.

Order By

Optional. Sorts the knowledge base results by a specified field, in ascending or descending order.

Top N

Optional. Limits the number of results returned.