AMQP RealtimeTrigger

AMQP RealtimeTrigger

Certified

Stream AMQP messages into real-time executions

Creates one execution per message with manual ACK by default until the trigger is stopped, using consumer tag Kestra and serde STRING by default. Use the batch Trigger for time/volume-based batching; deprecated url remains for compatibility—prefer host/port/virtualHost.

yaml
type: io.kestra.plugin.amqp.RealtimeTrigger

Consume a message from a AMQP queue in real-time.

yaml
id: amqp
namespace: company.team

tasks:
  - id: log
    type: io.kestra.plugin.core.log.Log
    message: "{{ trigger.data }}"

triggers:
  - id: realtime_trigger
    type: io.kestra.plugin.amqp.RealtimeTrigger
    host: localhost
    port: 5672
    username: guest
    password: "{{ secret('AMQP_PASSWORD') }}"
    virtualHost: /my_vhost
    queue: amqpTrigger.queue
Properties

Broker host

Hostname or IP of the RabbitMQ broker; required unless using the deprecated url.

Queue name to consume

AMQP queue to read from; required and must already exist.

DefaultSTRING
Possible Values
STRINGJSON

Payload serde format

Controls how message bodies are read and written; use STRING for raw text or JSON for structured data. Defaults to STRING.

Defaultfalse

Specifies whether a trigger is allowed to start a new execution even if a previous run is still in progress.

Defaultfalse

Automatic acknowledgment

When true, the broker acknowledges messages as soon as they are delivered. When false, the trigger ACKs after emitting the execution event.

DefaultKestra

Consumer tag

Client-supplied consumer tag used for tracing and cancellations; defaults to Kestra in tasks and triggers.

Password

Password for the connection; required when the broker enforces authentication.

Default5672

Broker port

TCP port for AMQP connections; defaults to 5672.

SubTypestring
Possible Values
CREATEDSUBMITTEDRUNNINGPAUSEDRESTARTEDKILLINGSUCCESSWARNINGFAILEDKILLEDCANCELLEDQUEUEDRETRYINGRETRIEDSKIPPEDBREAKPOINTRESUBMITTED

List of execution states after which a trigger should be stopped (a.k.a. disabled).

Username

Username for the connection; uses broker default (often guest) when not set.

Default/

Virtual host

Broker virtual host path; defaults to /.

Defaulttrue

A condition that determines whether the trigger should run.

A Pebble expression evaluated at trigger time. The trigger fires only when the expression evaluates to a truthy value (true, a non-empty string, a non-zero number). Use this to gate trigger execution on dynamic runtime values such as execution labels, flow variables, or environment conditions.

Identifier of the publishing application

MIME content encoding of the message body

MIME content type of the message body

Correlation identifier used to match replies to requests

Deserialized message body

Delivery mode: 1 for non-persistent, 2 for persistent

Formatduration

Time-to-live before the message expires

Arbitrary application-specific message headers

Application message identifier

Message priority, 0 to 9

Queue name replies should be sent to

Formatdate-time

Time the message was created

Identifier of the user that published the message