Skip to content

Apache Pulsar Inbound Endpoint Reference

This reference page documents all the configuration parameters supported by the Apache Pulsar Inbound Endpoint. These parameters control how the inbound endpoint connects to the Pulsar server, what topics it subscribes to, the subscription type, message processing modes, and more. Use this table as a guide when configuring your inbound endpoint to ensure seamless and reliable integration with Apache Pulsar.

Parameter Display Name Description Required
topicNames Topic(s) Specifies a comma-separated list of Pulsar topic names to which the message is consumed.

The Topic field has the following format: {persistent|non-persistent}://tenant/namespace/topic

The first segment is the type of topic. The topic can be persistent or non-persistent. With persistent topics, all the messages are persisted to the disk. The second segment is the name of the domain or a tenant. The third segment is the namespace within the domain and the fourth segment is the name of the individual topic.
No
topicsPattern Topics Pattern Defines a regular expression pattern to match multiple topic names dynamically. This parameter is mutually exclusive with topicNames; only one of topicsPattern or topicNames should be specified. No
subscriptionName Subscription Name Unique identifier for the subscription. This name is used to track the consumer's position and state within the topic, allowing message delivery to resume from the last acknowledged message. Yes
subscriptionType Subscription Type Specifies the subscription mode for the consumer. Options include Exclusive (single consumer), Shared (round-robin across consumers), Failover (active-passive), and Key_Shared (key-based routing). The default value is Exclusive. No
subscriptionTopicsMode Subscription Topics Mode Determines which types of topics the consumer subscribes to: AllTopics (both persistent and non-persistent), PersistentOnly, or NonPersistentOnly.
This parameter is required when topicsPattern; is used and has no effect if topicNames is specified.
No
subscriptionInitialPosition Subscription Initial Position Sets the initial position in the topic when the subscription is created. Choose Latest to start from new messages or Earliest to consume from the beginning of the topic. No
contentType Message Content Type Indicates the expected content type of incoming Pulsar messages, such as application/json or text/plain. This helps with message parsing and processing. Yes
messageWaitTimeout Message Wait Timeout (in milliseconds) Maximum duration (in milliseconds) the consumer will wait for a message before timing out. Useful for controlling polling behavior in synchronous receive operations. No
processingMode Processing Mode Specifies whether messages are processed synchronously (Sync) or asynchronously (Async). Async mode can improve throughput by processing multiple messages concurrently. No
ackTimeoutMillis Ack Timeout (in milliseconds) Time limit (in milliseconds) for the consumer to acknowledge a message. If the timeout is exceeded, the message will be redelivered to another consumer. No
nackRedeliveryDelay Nack Redelivery Delay Specifies the delay (in milliseconds) before a negatively acknowledged message is redelivered to the consumer. Helps control retry intervals for failed messages. No
dlqTopic DLQ Topic Name of the Dead Letter Queue (DLQ) topic where messages that cannot be processed successfully after a maximum number of attempts are sent for further analysis or handling. No
dlqMaxRedeliverCount DLQ Max Redeliver Count Maximum number of times a message will be redelivered before being routed to the DLQ. Prevents infinite redelivery loops for problematic messages. No
batchReceiveEnabled Receive in Batch Enables batch receiving mode, allowing the consumer to receive multiple messages in a single call, which can improve throughput and reduce network overhead. No
batchingMaxMessages Batching Max Messages Sets the maximum number of messages that can be included in a single batch when batch receiving is enabled. No
batchingMaxBytes Batching Max Bytes Defines the maximum total size (in bytes) of messages in a batch. Batching will be triggered if this size is reached before the max messages or timeout. No
batchingTimeout Batching Timeout (in milliseconds) Specifies the maximum time (in milliseconds) to wait before delivering a batch, even if the batch is not full. Ensures timely message delivery. No
batchIndexAckEnabled Enable Batch Index Acknowledgment Enables acknowledgment at the individual message index level within a batch, allowing for more granular message processing and redelivery. No
maxPendingChunkedMessage Max Pending Chunked Message Maximum number of incomplete chunked messages that can be pending at any time. Helps control memory usage when handling large messages split into chunks. No
expiryTimeOfIncompleteChunkedMessageMillis Expiry Time Of Incomplete Chunked Message (in milliseconds) Time limit (in milliseconds) for assembling a complete chunked message. Incomplete messages exceeding this time will be discarded. No
autoAckOldestChunkedMessageOnQueueFull Auto Ack Oldest Chunked Message On Queue Full Automatically acknowledges and removes the oldest incomplete chunked message when the pending queue is full, preventing resource exhaustion. No
autoUpdatePartitions Auto Update Partitions Enables automatic detection and subscription to new partitions for partitioned topics, ensuring the consumer receives messages from all partitions. No
autoUpdatePartitionsIntervalSeconds Auto Update Partitions Interval (in seconds) Interval (in seconds) at which the consumer checks for new partitions in partitioned topics and updates its subscription accordingly. No
receiverQueueSize Receiver Queue Size Number of messages that can be queued by the consumer before being processed. Larger values can improve throughput but increase memory usage. No
maxTotalReceiverQueueSizeAcrossPartitions Max Total Receiver Queue Size Across Partitions Sets the maximum combined receiver queue size for all partitions of a partitioned topic, helping to control overall memory consumption. No
replicateSubscriptionState Replicate Subscription State Enables replication of the subscription state across multiple Pulsar clusters, supporting geo-replication and disaster recovery scenarios. No
readCompacted Read Compacted Configures the consumer to read only the latest value for each key from a compacted topic, reducing the number of messages delivered and improving efficiency. No