This is the latest release in the 6.x.x family. For EI 7.0.0, click here.

All docs This doc

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

The Address endpoint is an endpoint defined by specifying the EPR (Endpoint Reference) and other attributes of the configuration.

Table of Contents

XML configuration
XML Configuration
XML Configuration

Code Block
<address uri="endpoint address" [format="soap11|soap12|pox|rest|get"] [optimize="mtom|swa"]
    [encoding="charset encoding"]
    [statistics="enable|disable"] [trace="enable|disable"]>

    <enableSec [policy="key"]/>?
    <enableAddressing [version="final|submission"] [separateListener="true|false"]/>?

        <duration>timeout duration in milliseconds</duration>



Address endpoint attributes




EPR of the target endpoint.


Message format for the endpoint.


Method to optimize the attachments.


The charset encoding to use for the endpoint.


This enables statistics for the endpoint.


This enables trace for the endpoint.

Other elements

QoS for the endpoint

QoS (Quality of Service) aspects such as WS-Security and WS-Addressing may be enabled on messages sent to an endpoint using enableSec and enableAddressing elements. Optionally, the WS-Security policies could be specified using the policy attribute.

QoS configuration

enableSec [policy="key"]

This enables WS-Security for the message which is sent to the endpoint. The optional policy attribute specifies the WS-Security policy.

enableAddressing [version="final | submission"] [seperateListener=" true | false"]

This enables WS-Addressing for the message which is sent to the endpoint. User can specify to have separate listener with version final or submission.

Endpoint timeout

The parameters available to configure an endpoint time out are as follows.


Timeout duration that should elapse before the end point is timed out.


This parameter is used to specify the action to perform once an endpoint has timed out. The available options are as follows.

  • discard: If this is selected, the responses which arrive after the endpoint has timed out will be discarded.
  • fault: If this is selected, a fault is triggered when the endpoint is timed out.

You can specify a value that is 1 millisecond less than the time duration you specify for the endpoint time out for the synapse.timeout_handler_interval property in the <EI_Home>/conf/ file. This would minimise the number of late responses from the backend.

Marking an endpoint for suspension

The markForSuspension element contains the following parameters which affect the suspension of a  endpoint which would be timed out after a specified time duration.


This parameter is used to specify one or more error codes which can cause the endpoint to be marked for suspension when they are returned by the endpoint. Multiple error codes can be specified separated by comas. See SynpaseConstant class for a list of available error codes.


Number of retries before go into suspended state.

The number of times the endpoint should be allowed to retry sending the response before it is marked for suspension.


The delay between each try.

Suspending the endpoint on failure 
Suspending Endpoint on Failure
Suspending Endpoint on Failure

Leaf endpoints(Address and WSDL) can be suspended if they are detected as failed endpoints. When an endpoint is in in suspended state for a specified time duration following a failure, it cannot process any new messages. The following formula determines the wait time before the next attempt.

next suspension time period = Max (Initial Suspension duration * (progression factor*  try count *), Maximum Duration)

All the variables in the above formula are configuration values used to calculate the try count. Try count is the number of tries carried out after the endpoint is suspended. The increase in the try count causes an increase in the next suspension time period. This time period is bound to a maximum duration. 

The parameters available to configure a suspension of an endpoint due to failure are as follows.

Parameter NameDescription

A comma separated error code list which can be returned by the endpoint.

This parameter is used to specify one or more error codes which can cause the endpoint to be suspended when they are returned from the endpoint. Multiple error codes can be specified, separated by commas.

initialDurationThe number of milliseconds after which the endpoint should be suspended when it is being suspended for the first time.
progressionFactorThe progression factor for the geometric series. See the above formula for a more detailed description.
maximumDurationThe maximum duration (in milliseconds) to suspend the endpoint.
Following are the sample address URI definition.


Sample Address






[email protected]


vfs:file:///home/user/directory\ vfs:">file:///home/user/file\ vfs:




The parameters available to configure the endpoint are as follows.

Parameter NameDescription
NameThe unique name of the endpoint.

The URL of the endpoint. You can test the availability of the given URL by clicking Test.


If you want to define the URL with environment properties, you can define it as shown below.


<?xml version="1.0" encoding="UTF-8"?>
<endpoint xmlns="" name="JSON_EP">
  <address uri="$SYSTEM:VAR"/>

Here VAR is the url you need to have set as environment property.

This is useful when you need to need to deploy the endpoint in a container.

Show Advanced Options

This section is used to enter advanced settings for the endpoint. The advanced options specific for the Address endpoint are as follows.

  • Format- The message format for the endpoint. The available values are as follows.
    • Leave As-Is: If this is selected, no transformation is done to the outgoing message.
    • SOAP 1.1: If this is selected the message is transformed to SOAP 1.1.
    • SOAP 1.2: If this is selected the message is transformed to SOAP 1.2.
    • Plain Old XML (POX): If this is selected the message is transformed to plain old XML format.
    • Representational State Transfer (REST) - If this is selected, the message is transformed to REST.
    • GET: If this is selected, the message is transformed to a HTTP Get Request.
  • Optimize- Optimization for the message, which transfers binary data. The available values are as follows.
    • Leave As-Is - If this is selected, there will be no special optimization. The original message will be kept.
    • SwA - If this is selected, the message is optimized as a SwA (SOAP with Attachment) message.
    • MTOM - If this is selected, the message is optimized using a MTOM (message transmission optimization mechanism).

The rest of the advanced options are common for Address, WSDL, Default endpoints. See the description of common options in Managing Endpoints.

Add PropertyThis section is used to add properties to an endpoint.

Description of the Address Endpoint in WSO2 EI.