# RabbitMQ - Message received - Workflow trigger | Docs - nodulz

Source: https://nodulz.com/docs/nodes/rabbitmq_trigger

Language: en

Start a workflow when a RabbitMQ message arrives

## Usage and specifics

Select the broker credential and destination: Kafka or MQTT topic, RabbitMQ queue or NATS subject. Configure groupId for Kafka, exchange and routingKey for RabbitMQ, qos and retain for MQTT. Publish triggers to open the subscription; simulated tests do not verify the broker. Make message processing idempotent.

Technical type : `rabbitmq_trigger`. Runtime : `nodulz`.

## Credentials and prerequisites

- [RabbitMQ](/docs/credentials) (`integration` / `rabbitmq`). Encrypted RabbitMQ broker connection

Create credentials in your nodulz instance’s Credentials area, then select them on the node. Availability depends on ownership and sharing. See the [credentials guide](/docs/credentials) for access and rotation.

## Parameters

Names below are technical keys. Defaults are not a ready-to-run configuration: complete fields required by your operation. Paths containing [] describe list items; some fields depend on the selected mode.

| Parameter | Type | Default | Values / limits |
| --- | --- | --- | --- |
| `credentialId` | `string` | `""` | - |
| `destination` | `string` | `""` | - |
| `message` | `string` | `"{\"hello\":\"world\"}"` | - |
| `key` | `string` | `""` | - |
| `groupId` | `string` | `""` | - |
| `fromBeginning` | `boolean` | `false` | - |
| `exchange` | `string` | `""` | - |
| `routingKey` | `string` | `""` | - |
| `qos` | `number` | `1` | -; ≥ 0, ≤ 2 |
| `retain` | `boolean` | `false` | - |
| `testPayload` | `string` | `""` | - |

## Configuration help

| Setting | Purpose and guidance |
| --- | --- |
| `credentialId`<br>Credential | Select a connection for this provider. It is encrypted and resolved using the workflow owner’s permissions. |
| `fromBeginning`<br>Read from beginning | Kafka only: starting point when this group has no committed offset. Existing offsets take precedence. |
| `qos`<br>Quality of service (QoS) | MQTT: 0 at most once, 1 at least once, 2 exactly once at protocol level. Does not guarantee a single workflow execution. |
| `retain`<br>Retain last message | MQTT broker retains the message for new subscribers. An empty message clears it. |
| `testPayload`<br>Test event (JSON) | Optional. Overrides simulated event fields during manual tests without connecting to the broker. |

## Initial configuration

Initial catalog configuration example, to adapt before running. Keep secrets in credentials.

```json
{
  "credentialId": "",
  "destination": "",
  "message": "{\"hello\":\"world\"}",
  "key": "",
  "groupId": "",
  "fromBeginning": false,
  "exchange": "",
  "routingKey": "",
  "qos": 1,
  "retain": false,
  "testPayload": ""
}
```

## Verification

Test with representative data. Check node output in the inspector and logs, then use editor mapping for downstream fields. A trigger test with a simulated payload does not validate external service delivery.

See also : [Expressions and data](/docs/expressions), [Executions](/docs/executions), [Node catalog](/docs/nodes).

## Explore further

- [Features - nodulz](https://nodulz.com/product/overview)
- [Node catalog - nodulz](https://nodulz.com/product/catalog)
- [MCP server - nodulz](https://nodulz.com/product/mcp)
- [Pricing - nodulz](https://nodulz.com/pricing)
- [Use cases and workflow automation - nodulz](https://nodulz.com/use-cases)
- [Choose what your workflows can do. - nodulz](https://nodulz.com/compare)
- [Documentation - nodulz](https://nodulz.com/docs)
