Skip to content

NATS Messaging Integration with Orkes Conductor

To use the Event task, Event Handler, or enable Change Data Capture (CDC) in Orkes Conductor, you must integrate your Conductor cluster with the necessary message brokers. This guide explains how to integrate NATS Messaging with Orkes Conductor to publish and receive messages from queues. Here’s an overview:

  1. Get the required credentials from the NATS server.
  2. Configure a new NATS Messaging integration in Orkes Conductor.
  3. Set access limits to the message broker to govern which applications or groups can use it.

Step 1: Get the NATS server credentials

To integrate NATS Messaging with Orkes Conductor, retrieve the following credentials from your NATS server:

Step 2: Add an integration for NATS Messaging

After obtaining the credentials, add a NATS Messaging integration to your Conductor cluster.

To create a NATS Messaging integration:

  1. Go to Integrations > Connections and Resources from the left navigation menu on your Conductor cluster.
  2. Select + New integration.
  3. In the Message Broker section, choose NATS Messaging.
  4. Select + Add and enter the following parameters:
Parameters Description Required / Optional
Integration name A name for the integration. Required.
Server The NATS server URL. Required.
Connection Type The preferred connection type. Supported values:
  • Default–Standard NATS connection.
  • Jetstream–Advanced NATS connection with streaming capabilities.
Required.
Authentication Type The preferred authentication method. Supported values:
  • With Credentials
  • Without Credentials
Required.
Username The username of the NATS server. Required if Authentication Type is With Credentials.
Password The password associated with the username. Required if Authentication Type is With Credentials.
Select security protocol The security protocol for authenticating the connection. Supported values:
  • NONE
  • JWT–If selected, upload the JWT Credentials file.
  • TOKEN_BASED_AUTHENTICATION–If selected, obtain the JWT token from your NATS server using API.
Required.
Transport Layer Security The Transport Layer Security (TLS) security mechanism. Supported values:
  • NONE–No TLS security.
  • PEM–Uses PEM files for TLS security. If selected, upload the CA certificate PEM file.
  • JKS–Uses Java KeyStore for TLS security. If selected, upload the CA certificate JKS file.
Required.
Trust Store Authentication The preferred trust store authentication type. Supported values:
  • NONE–No TLS authentication.
  • usingPassword–Uses the trust store password for TLS authentication. If opted, enter the Trust Store Password.
Required if Transport Layer Security is JKS.
Connection Mechanism The connection mechanism for the Jetstream connection. Supported values:
  • With stream–The regular approach in a Jetstream connection, where each stream defines how the messages are stored and the retention limits.
  • With consumer–The mechanism that acts as an interface for clients to consume a subset of messages stored in a stream.
Required if the Connection Type is Jetstream.
Stream name The name of the stream for Jetstream connection. Required if:
  • Connection Type is JetStream
  • Connection Mechanism is With consumer.
Consumer name The name of the consumer for Jetstream connection. Required if:
  • Connection Type is JetStream
  • Connection Mechanism is With consumer.
Consumer type The type of consumer for Jetstream connection. Supported values:
  • Push–The server actively delivers messages to the client.
  • Pull–The client requests messages from the server when ready.
Required if:
  • Connection Type is JetStream
  • Connection Mechanism is With consumer.
Batch Count The batch size for each poll. Default is 100. Required if:
  • Connection Type is JetStream
  • Connection Mechanism is With consumer.
  • Consumer Type is Pull.
Pull Period The polling interval in milliseconds. Default is 500. Required if:
  • Connection Type is JetStream
  • Connection Mechanism is With consumer.
  • Consumer Type is Pull.
Pull batch wait time The wait time, in milliseconds, for each batch fetch. Required if:
  • Connection Type is JetStream
  • Connection Mechanism is With consumer.
  • Consumer Type is Pull.
Description A description of the integration. Required.
  1. (Optional) Toggle the Active button off if you don't want to activate the integration instantly.
  2. Select Save.

Step 3: Set access limits to integration

Once the integration is configured, set access controls to manage which applications or groups can use the message broker.

To provide access to an application or group:

  1. Go to Access Control > Applications or Groups from the left navigation menu on your Conductor cluster.
  2. Create a new group/application or select an existing one.
  3. In the Permissions section, select + Add Permission.
  4. In the Integration tab, select the required message broker and toggle the necessary permissions. The group or application can now access the message broker according to the configured permissions.

Next steps

With the integration in place, you can now: