Skip to main content

Options

The options of a call come from the options of the route's plugin (with expressions), and from the caller (query parameters and headers prefixed with x-ca-event-broker-opts-) for those the route allows (see The plugins). The admin API's try-it routes, webhooks and workflow functions take the same options, without the prefix.

Publishing​

OptionBrokers
topicKafka, Pulsar, MQTT, and as a fallback everywherewhere to
queueRabbitMQ (the default exchange), Artemis (anycast)
exchange, routing_keyRabbitMQ
channelRedis pub/sub
streamRedis streams
address, routing_typeArtemismulticast or anycast
keyKafka (record key), Artemis (group id)an event's partitionkey is its key too
partitionKafka
qos, retainedMQTT
priority, ttl, delay, deliver_at, durableArtemis
source, type, subjectallthe attributes a request does not give
linesallread the body line by line

Subscribing​

OptionBrokers
topic, topicsKafka, Pulsar, MQTT, everywheretopics: comma separated
queueRabbitMQ, Artemis (anycast)
exchange, routing_keyRabbitMQa queue of its own, bound to them
channelRedis pub/subglob patterns allowed
streamRedis streams
address, routing_type, selectorArtemisaddress::queue for a queue
group (group_id, subscription)Kafka, Pulsar, Redis streams, MQTT 5, Artemis (multicast)
subscription_typePulsarexclusive, shared, failover, key_shared
consumerRedis streamsa named consumer of the group
fromKafka, Pulsar, Redis streams, RabbitMQ streamslatest, earliest
from_timestampKafka, Pulsar, Redis streams, RabbitMQ streamsepoch millis
offset_from, offset_to, partitionKafka (offset_from on RabbitMQ streams too)
from_idRedis streamsan entry id, included
stream (true)RabbitMQthe queue is a stream
deliveryall with acksat-most-once, at-least-once
prefetchRabbitMQ, Redis streams, Artemis100
qosMQTT
client_id, group_instance_idKafka

Shaping the response​

Option
take, drop, durationhow many events to stream, to skip, for how long (millis)
formatcloudevents (the default) or raw
heartbeatmillis: an empty line (HTTP consumer), a comment (SSE, 15000 by default, 0 to stop)
acks, max_in_flightwebsocket: acks=client, and how many events wait for theirs (100)
publish_resultswebsocket: answer every frame published with its result

take, drop, duration, format and heartbeat are the only options a caller may set by default.

Request reply​

Option
reply_towhere the replies go: required
reply_optionshow to read them, as JSON
timeoutmillis, 10000