Additional Info
Requires Mule Enterprise License |
Yes |
Requires Entitlement |
No |
Mule Version |
3.7.0 or higher |
Configs
Basic authentication
<microsoft-azure-service-bus:basic-authentication-config>
Connection Management
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
name |
The name of this configuration. With this name can be later referenced. |
x |
||
sharedAccessKeyName |
x |
|||
sharedAccessKey |
x |
|||
namespace |
x |
|||
skipConnectivityTest |
boolean |
false |
|
|
operationTimeout |
long |
30000 |
|
|
minimumRetryBackoff |
long |
0 |
|
|
maximumRetryBackoff |
long |
30000 |
|
|
maximumRetryCount |
int |
10 |
|
|
threadPoolSize |
int |
20 |
|
Connection string
<microsoft-azure-service-bus:connection-string-config>
Connection Management
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
name |
The name of this configuration. With this name can be later referenced. |
x |
||
connectionString |
x |
|||
namespace |
x |
|||
skipConnectivityTest |
boolean |
false |
|
|
operationTimeout |
long |
30000 |
|
|
minimumRetryBackoff |
long |
0 |
|
|
maximumRetryBackoff |
long |
30000 |
|
|
maximumRetryCount |
int |
10 |
|
|
threadPoolSize |
int |
20 |
|
Processors
Publish message
<microsoft-azure-service-bus:publish>
DataSense enabled
Sends a message to a Queue. The sending can be synchronous or asynchronous. Synchronous messages will block the flow until the operation is finished and the message has been sent to Azure Service Bus. This means that the sending is reliable and once this operation finishes we can be sure that the message is in the bus. Asynchronous messages will execute the sending in a separate thread and unblock the flow. This allows for automatic batching of messages, which will have a higher performance but will not be a reliable source of messaging. This means that if the operation has finished, we cannot be sure that it has been properly finished until we see the messages in the bus.
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
destination |
Name of the queue to publish the message to. |
x |
||
messageId |
The message identifier is an application-defined value that uniquely identifies the message and its payload. The identifier is a free-form string and can reflect a GUID or an identifier derived from the application context. |
|
||
body |
The body of the message. |
#[payload] |
|
|
correlationId |
Allows an application to specify a context for the message for the purposes of correlation, for example reflecting the MessageId of a message that is being replied to. |
|
||
contentType |
The content type of the body. Default value is application/json. |
|
||
sessionId |
For session-aware entities, this application-defined value specifies the session affiliation of the message. Messages with the same session identifier are subject to summary locking and enable exact in-order processing and demultiplexing. For session-unaware entities, this value is ignored. |
|
||
replyTo |
ReplyTo |
This optional and application-defined object is a standard way to express a reply path to the receiver of the message. When a sender expects a reply, it sets the value to the absolute or relative path of the queue or topic it expects the reply to be sent to. |
|
|
label |
This property enables the application to indicate the purpose of the message to the receiver in a standardized fashion, similar to an email subject line. The mapped AMQP property is "subject". |
|
||
partitionKey |
For partitioned entities, setting this value enables assigning related messages to the same internal partition, so that submission sequence order is correctly recorded. The partition is chosen by a hash function over this value and cannot be chosen directly. For session-aware entities, the session ID property overrides this value. |
|
||
asyncFlag |
Flag that indicates if the request is to be sent in a synchronous or asynchronous mode. Synchronous sending is reliable but slow and the operation will not return until it has finished sending the message, while asynchronous sending is unreliable but fast and will not care if the message is actually sent or not. Default value is true. |
true |
|
|
timeToLive |
This value is the relative duration in milliseconds after which the message expires, starting from the instant the message has been accepted and stored by the broker. When not set explicitly, the assumed value is the DefaultTimeToLive set for the respective queue or topic. A message-level TimeToLive value cannot be longer than the entity's DefaultTimeToLive setting and it is silently adjusted if it does. |
|
||
scheduledEnqueueTimeUTC |
For messages that are only made available for retrieval after a delay, this property defines the UTC instant at which the message will be logically enqueued, sequenced, and therefore made available for retrieval. The expected format is 'yyyy-mm-ddThh:mm:ss.millisZ' (For example: '2025-08-13T09:28:27.141Z'). |
|
||
customProperties |
Map of user application properties set to the message. |
|
Publish batch of messages
<microsoft-azure-service-bus:publish-message-batch>
DataSense enabled
Sends a list of messages to a queue. These messages only contain the body and are separated by a delimiter defined as a parameter. The sending can be synchronous or asynchronous. Synchronous messages will block the flow until the operation is finished and the message has been sent to Azure Service Bus. This means that the sending is reliable and once this operation finishes we can be sure that the message is in the bus. Asynchronous messages will execute the sending in a separate thread and unblock the flow. This allows for automatic batching of messages, which will have a higher performance but will not be a reliable source of messaging. This means that if the operation has finished, we cannot be sure that it has been properly finished until we see the messages in the bus.
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
destination |
Name of the destination to publish the messages to. |
x |
||
messages |
List of Objects that represents messages (properties and contents). |
#[payload] |
|
|
asyncFlag |
Flag that indicates if the request is to be sent in a synchronous or asynchronous mode. Synchronous sending is reliable but slow and the operation will not return until it has finished sending the message, while asynchronous sending is unreliable but fast and will not care if the message is actually sent or not. Default value is true. |
true |
|
Publish batch of complex messages
<microsoft-azure-service-bus:publish-complex-message-batch>
DataSense enabled
Sends a list of messages to a Queue. These messages can contain multiple attributes (such as MessageID) that can be defined in the message. This gives a greater control over the messages being sent but makes the usage more complex. The sending can be synchronous or asynchronous. Synchronous messages will block the flow until the operation is finished and the message has been sent to Azure Service Bus. This means that the sending is reliable and once this operation finishes we can be sure that the message is in the bus. Asynchronous messages will execute the sending in a separate thread and unblock the flow. This allows for automatic batching of messages, which will have a higher performance but will not be a reliable source of messaging. This means that if the operation has finished, we cannot be sure that it has been properly finished until we see the messages in the bus.
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
destination |
Name of the queue to publish the messages to. |
x |
||
messages |
List of Objects that represents messages (properties and contents). |
#[payload] |
|
|
asyncFlag |
Flag that indicates if the request is to be sent in a synchronous or asynchronous mode. Synchronous sending is reliable but slow and the operation will not return until it has finished sending the message, while asynchronous sending is unreliable but fast and will not care if the message is actually sent or not. Default value is true. |
true |
|
Get queue size
<microsoft-azure-service-bus:get-queue-size>
DataSense enabled
Gets the current amount of messages that are in a determined queue on Azure Service Bus.
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
queue |
The queue to count the messages on. |
x |
Get subscription size
<microsoft-azure-service-bus:get-subscription-size>
DataSense enabled
Gets the current amount of messages that are in a determined topic on Azure Service Bus.
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
subscriptionPath |
The path of the subscription. |
x |
Acknowledge message
<microsoft-azure-service-bus:acknowledge-message>
ACK message stored in the current source
Abandon message
<microsoft-azure-service-bus:abandon-message>
Abandon message Async stored in the current receiver
List queues
<microsoft-azure-service-bus:list-queues>
Retrieves all existing listQueues from the service bus instance
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
Returns
Return Java Type | Description |
---|---|
A List of Queue Object containing every existing queue |
Get queue
<microsoft-azure-service-bus:get-queue>
DataSense enabled
Retrieves the specified queue from the service bus instance
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
queue |
The name of the queue |
x |
Returns
Return Java Type | Description |
---|---|
A Queue Object containing the representation of the queue retrieved |
Create queue
<microsoft-azure-service-bus:create-queue>
Creates a queue in the service bus instance
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
queue |
A name for the queue to create. |
x |
||
lockDuration |
Determines the amount of time in seconds in which a message should be locked for processing by a receiver. After this period, the message is unlocked and available for consumption by the next receiver. |
60 |
|
|
maxSizeInMegabytes |
MaxSizeInMegabytes |
Specifies the maximum queue size in megabytes. Any attempt to enqueue a message that will cause the queue to exceed this value will fail. Valid values are: 1024, 2048, 3072, 4096, 5120. |
_1024 |
|
requiresDuplicateDetection |
If true, validates the duplication on messages received |
false |
|
|
requiresSession |
If set to true, the queue will be session-aware and only SessionReceiver will be supported. Session-aware queues are not supported through REST. |
false |
|
|
deadLetteringOnMessageExpiration |
This field controls how the Service Bus handles a message with an expired TTL. If it is enabled and a message expires, Service Bus moves the message from the queue into the queue’s dead-letter sub-queue. If disabled, message is permanently deleted from the queue. |
false |
|
|
enableBatchedOperations |
Enables or disables service-side batching behavior when performing operations for the specific queue. When enabled, Service Bus collects/batches multiple operations to the back end, in order to be more efficient with the connection. If you want lower operation latency, you can disable this feature. |
true |
|
|
defaultMsgTTL |
Depending on whether DeadLettering is enabled, a message is automatically moved to the DeadLetterQueue or deleted if it has been stored in the queue for longer than the specified time. Default -1 is Max TTL on Azure. |
-1 |
|
|
duplicateDetectionHistoryTimeWindow |
Specifies the time in seconds to span during which Service Bus detects message duplication. |
600 |
|
|
maxDeliveryCount |
The maximum number of times Service Bus tries to deliver a message before being dead-lettered or discarded. |
10 |
|
Update queue
<microsoft-azure-service-bus:update-queue>
DataSense enabled
Updates the specified queue in the service bus instance
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
queue |
The name of the queue to update |
x |
||
enableBatchedOperations |
Enables or disables service-side batching behavior when performing operations for the specific queue. When enabled, Service Bus collects/batches multiple operations to the back end, in order to be more efficient with the connection. If you want lower operation latency, you can disable this feature. |
|
||
defaultMsgTTL |
When DeadLettering is enabled, a message is automatically moved to the DeadLetterQueue or deleted if it has been stored in the queue for longer than the specified time. |
|
||
duplicateDetectionHistoryTimeWindow |
When Requieres duplicate detection is set to true, specifies the time in seconds to span during which Service Bus detects message duplication. |
|
||
maxDeliveryCount |
The maximum number of times Service Bus tries to deliver a message before being dead-lettered or discarded. |
|
Delete queue
<microsoft-azure-service-bus:delete-queue>
DataSense enabled
Deletes the specified queue in the service bus instance
List topics
<microsoft-azure-service-bus:list-topics>
Retrieves all existing listTopics from the service bus instance
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
Returns
Return Java Type | Description |
---|---|
A List of Topic Object containing every existing topic when there is an error |
Get topic
<microsoft-azure-service-bus:get-topic>
DataSense enabled
Retrieves the specified topic from the service bus instance
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
topic |
The name of the topic |
x |
Returns
Return Java Type | Description |
---|---|
A Topic Object containing the representation of the retrieved topic |
Create topic
<microsoft-azure-service-bus:create-topic>
Creates a topic in the service bus instance
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
topic |
A name for the topic to update. |
x |
||
maxSizeInMegabytes |
MaxSizeInMegabytes |
Specifies the maximum topic size in megabytes. Any attempt to enqueue a message that will cause the topic to exceed this value will fail. Valid values are: 1024, 2048, 3072, 4096, 5120. |
_1024 |
|
requiresDuplicateDetection |
If true, validates the duplication on messages received |
false |
|
|
enableBatchedOperations |
Enables or disables service-side batching behavior when performing operations for the specific topic. When enabled, Service Bus collects/batches multiple operations to the back end, in order to be more efficient with the connection. If you want lower operation latency, you can disable this feature. |
true |
|
|
defaultMsgTTL |
Depending on whether DeadLettering is enabled, a message is automatically moved to the DeadLetterQueue or deleted if it has been stored in the topic for longer than the specified time. Default -1 is Max TTL on Azure. |
-1 |
|
|
duplicateDetectionHistoryTimeWindow |
Specifies the time in seconds to span during which Service Bus detects message duplication. |
600 |
|
Update topic
<microsoft-azure-service-bus:update-topic>
DataSense enabled
Updates the specified topic from the service bus instance
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
topic |
A name for the topic to create. |
x |
||
enableBatchedOperations |
Enables or disables service-side batching behavior when performing operations for the specific topic. When enabled, Service Bus collects/batches multiple operations to the back end, in order to be more efficient with the connection. If you want lower operation latency, you can disable this feature. |
|
||
defaultMsgTTL |
When DeadLettering is enabled, a message is automatically moved to the DeadLetterQueue or deleted if it has been stored in the topic for longer than the specified time. Default -1 is Max TTL on Azure. |
|
||
duplicateDetectionHistoryTimeWindow |
Specifies the time in seconds to span during which Service Bus detects message duplication. |
|
Delete topic
<microsoft-azure-service-bus:delete-topic>
DataSense enabled
Deletes the specified topic from the service bus instance
List subscriptions
<microsoft-azure-service-bus:list-subscriptions>
DataSense enabled
Retrieves all listSubscriptions from the specified topic
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
topic |
The name of the topic |
x |
Returns
Return Java Type | Description |
---|---|
A List of Subscription Object containing every existing subscription in the topic |
Get subscription
<microsoft-azure-service-bus:get-subscription>
DataSense enabled
Retrieves the specified subscription from the specified topic
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
subscriptionPath |
The path of the subscription. |
x |
Returns
Return Java Type | Description |
---|---|
A Subscription Object containing the representation of the retrieved subscription |
Create subscription
<microsoft-azure-service-bus:create-subscription>
DataSense enabled
Creates a subscription in the specified topic
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
topic |
The name of the topic |
x |
||
subscription |
The name of the subscription |
x |
||
lockDuration |
The default lock duration is applied to subscriptions that do not define a lock duration. You can only set this property at subscription creation time. |
60 |
|
|
requiresSession |
You can only set this property at subscription creation time. If set to true, the subscription will be session-aware and only SessionReceiver will be supported. |
false |
|
|
deadLetteringOnMessageExpiration |
This field controls how Service Bus handles a message with an expired TTL. If it is enabled and a message expires, Service Bus moves the message from the queue into the subscription’s dead-letter sub-queue. If disabled, message is permanently deleted from the subscription’s main queue. Settable only at subscription creation time. |
false |
|
|
deadLetteringOnFilterEvaluationExceptions |
Determines how Service Bus handles a message that causes an error during a subscription’s filter evaluation. If the value is set to true, the message that caused the error is moved to the subscription’s dead-letter queue. Otherwise, it is discarded. By default, this parameter is set to true, enabling you to investigate the cause of the error. It can occur from a malformed message or some incorrect assumptions being made in the filter about the form of the message. Settable only at subscription creation time. |
false |
|
|
enableBatchedOperations |
Enables or disables service-side batching behavior when performing operations for the specific queue. When enabled, Service Bus will collect/batch multiple operations to the backend to be more connection efficient. If you want lower operation latency, then you can disable this feature. |
true |
|
|
defaultMsgTTL |
When DeadLettering is enabled, a message is automatically moved to the DeadLetterQueue or deleted if it has been stored in the topic for longer than the specified time. Default -1 is Max TTL on Azure. |
-1 |
|
|
maxDeliveryCount |
The maximum number of times Service Bus tries to deliver a message before that message is dead lettered or discarded. |
10 |
|
Returns
Return Java Type | Description |
---|---|
An xml containing the representation of the created subscription |
Update subscription
<microsoft-azure-service-bus:update-subscription>
DataSense enabled
Updates the specified subscription from the specified topic
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
subscriptionPath |
The name of the subscription path |
x |
||
enableBatchedOperations |
Enables or disables service-side batching behavior when performing operations for the specific queue. When enabled, Service Bus will collect/batch multiple operations to the backend to be more connection efficient. If you want lower operation latency, then you can disable this feature. |
|
||
defaultMsgTTL |
When DeadLettering is enabled, a message is automatically moved to the DeadLetterQueue or deleted if it has been stored in the topic for longer than the specified time. Default -1 is Max TTL on Azure. |
|
||
maxDeliveryCount |
The maximum number of times Service Bus tries to deliver a message before that message is dead lettered or discarded. |
|
Returns
Return Java Type | Description |
---|---|
An xml containing the representation of the updated subscription |
Delete subscription
<microsoft-azure-service-bus:delete-subscription>
DataSense enabled
Deletes the specified subscription from the specified topic
List rules
<microsoft-azure-service-bus:list-rules>
DataSense enabled
Retrieves all listRules from the specified topic and subscription
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
subscriptionPath |
The name of the topic |
x |
Returns
Return Java Type | Description |
---|---|
A List of Rule Object containing every existing rule in the specified subscription and topic |
Get rule
<microsoft-azure-service-bus:get-rule>
DataSense enabled
Retrieves the specified rule from the specified topic and subscription
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
rulePath |
The name of the topic/subscription/rule |
x |
Returns
Return Java Type | Description |
---|---|
A Rule Object containing the representation of the retrieved rule |
Create rule
<microsoft-azure-service-bus:create-rule>
DataSense enabled
Creates a rule in the specified topic and subscription
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
subscriptionPath |
The name of the topic |
x |
||
ruleName |
The name of the rule to create |
x |
||
sqlExpressionFilter |
The sql expression for filtering messages. SqlFilter must be selected in the filter type in order to be applied. Example: MyProperty = 'value' |
|
||
correlationIdFilter |
The id to match in case the filter is a CorrelationFilter |
|
||
ruleFilterType |
Valid values are: SqlFilter: A type of Filter that is represented by SQL expression. TrueFilter/FalseFiilter: A handy shortcut for always returning true or false. |
|
||
sqlExpressionAction |
The sql expression of the action to be performed. Example: SET MyProperty = 'ABC'. |
|
||
actionType |
Represents the filter actions which are allowed for the transformation of a message that have been matched by a filter expression. |
|
Returns
Return Java Type | Description |
---|---|
An XML containing the representation of the created rule |
Update rule
<microsoft-azure-service-bus:update-rule>
DataSense enabled
Updates the specified rule from the specified topic and subscription
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
rulePath |
The name of the topic/subscription/path |
x |
||
sqlExpressionFilter |
The sql expression for filtering messages. SqlFilter must be selected in the filter type in order to be applied. Example: MyProperty = 'value' |
|
||
correlationIdFilter |
The id to match in case the filter is a CorrelationFilter |
|
||
ruleFilterType |
Valid values are: SqlFilter: A type of Filter that is represented by SQL expression. TrueFilter/FalseFiilter: A handy shortcut for always returning true or false. |
|
||
sqlExpressionAction |
The sql expression of the action to be performed. Example: SET MyProperty = 'ABC'. |
|
||
actionType |
Represents the filter actions which are allowed for the transformation of a message that have been matched by a filter expression. |
|
Returns
Return Java Type | Description |
---|---|
An XML containing the representation of the created rule |
Delete rule
<microsoft-azure-service-bus:delete-rule>
DataSense enabled
Deletes the specified rule from the specified topic and subscription
Sources
Queue listener
<microsoft-azure-service-bus:queue-listener>
Receive messages from specific queue, returns Message received in callback
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
callback |
SourceCallback |
mule object to retrieve message received. |
x |
|
queue |
The queue name to listen, to receive from deadLetter 'SubscriptionName/$deadletterqueue' without quotes should be referenced. |
x |
||
ackMode |
ReceiveMode |
MANUAL: user has to Manual ACK messages or Abandon them. AUTOACK: message is ACK from queue and deleted from it when is received. |
AUTOMATIC |
|
serverTimeout |
Specify a connection time in milliseconds to the server (it will wait until a message is available or returns null other case). Default time 60000 milliseconds. |
60000 |
|
|
prefetchCount |
When Prefetch is enabled in any of the official Service Bus clients, the receiver quietly acquires more messages, up to the PrefetchCount limit, beyond what the application initially asked for. Setting this to 0 will disable prefetching. |
100 |
|
|
cronExpression |
UNIX cron expression that represent the time to trigger the receiver action. For example '0 0 * * *' (whitout quotes) will receive message at 00:00 every day. |
|
||
maxMessageCount |
int |
Maximum number of messages to receive during the scheduled task. Default 100. |
100 |
|
Returns
Return Java Type | Description |
---|---|
StopSourceCallback |
the SourceCallback callback that will provide messages. |
Subscription listener
<microsoft-azure-service-bus:subscription-listener>
Receive messages from specific queue, returns Message received in callback
Attributes
Name | Java Type | Description | Default Value | Required |
---|---|---|---|---|
config-ref |
Specify which config to use |
x |
||
callback |
SourceCallback |
mule object to retrieve message received. |
x |
|
topic |
The topic that contains the subscription. |
x |
||
subscription |
The name of the subscription to listen to, to receive from deadLetter 'SubscriptionName/$deadletterqueue' without quotes should be referenced. |
x |
||
ackMode |
ReceiveMode |
MANUAL: user has to Manual ACK messages or Abandon them. AUTOACK: message is ACK from queue and deleted from it when is received. |
AUTOMATIC |
|
serverTimeout |
Specify a connection time in seconds to the server (it will wait until a message is available or returns null other case). Default time 60 seconds. |
60000 |
|
|
prefetchCount |
When Prefetch is enabled in any of the official Service Bus clients, the receiver quietly acquires more messages, up to the PrefetchCount limit, beyond what the application initially asked for. Setting this to 0 will disable prefetching. |
100 |
|
|
cronExpression |
UNIX cron expression that represent the time to trigger the receiver action. For example '0 0 * * *' (whitout quotes) will receive message at 00:00 every day. |
|
||
maxMessageCount |
int |
Maximum number of messages to receive during the scheduled task. Default 100. |
100 |
|
Returns
Return Java Type | Description |
---|---|
StopSourceCallback |
the SourceCallback callback that will provide messages. |