Required dependencies
Ensure that you have the following dependencies in your project:Configuration
Ensure that you have the following configuration in yourapplication.yml or application.properties file:
Code sample for a Kafka producer
Kafka headers
Understanding Kafka headers in FlowX Integration
When integrating with FlowX Engine via Kafka, headers play a crucial role in message routing and processing. It’s essential to preserve and include all received headers in responses back to the FlowX Engine.Need help finding identifier values? Check out the Finding Identifiers and Parameters guide to learn where to locate workspace IDs, application IDs, build IDs, process instance UUIDs, and other identifiers in FlowX Designer.
Important headers
| Header | Purpose | Consequences If Missing |
|---|---|---|
fxContext | Identifies the target process/subprocess in the hierarchy | Messages may be incorrectly routed or not processed |
Fx-AppId | Identifies the application processing the message | Application context may be lost |
Fx-RootAppId | Identifies the original application that initiated the process chain | Process origin tracking may be lost; important for complex process hierarchies |
Fx-BuildId (deprecated since 5.0) | Contains the build identifier for versioning and traceability | Version-specific behaviors may be affected; debugging becomes more difficult |
Fx-Build-App-Version-Id | Contains the application version identifier for data querying | Version-specific behaviors may be affected; data queries may fail |
Fx-WorkspaceId | Identifies the workspace context for multi-tenant environments | Workspace isolation may be compromised; data queries may fail |
processInstanceId/processInstanceUuid | Primary keys for message correlation | Message correlation may fail |
Fx-ProcessName | Required for cross-process communication | ”Start another process via Kafka” functionality may break |
The fxContext header explained
ThefxContext header is particularly important for routing messages in architectures with embedded processes and subprocesses:
- For kafka-receive nodes in the root process:
fxContext = "main" - For an embedded subprocess with nodeId=4:
fxContext = "main:4" - For an embedded sub-subprocess with nodeId=12:
fxContext = "main:4:12"
Understanding Fx-RootAppId
TheFx-RootAppId header is used to track the originating application throughout the entire process chain. This is particularly important when:
- Multiple applications are involved in a workflow
- Processes spawn subprocesses across different components
- You need to trace a complete transaction back to its originating application
Fx-AppId which may change as a message passes through different components, Fx-RootAppId preserves the original initiator’s identity.
Best Practices
- Preserve All Headers: Always include all received Kafka headers in responses to the FlowX Engine.

