When you need to call external REST APIs from your BAMOE workflows, the last thing you want is to write custom code for every integration. With BAMOE 9.5.0, we're bringing REST integration capabilities right where you need them—directly in your BPMN workflows with zero custom coding required.
The Problem We're Solving
Picture this: You're building a workflow that needs to fetch user data from an external API, submit orders to an ERP system, or sync information with a third-party service. In BAMOE v8, this was straightforward with built-in Work Item Handlers. But in BAMOE v9, you had to write custom code for common scenarios like authenticated API calls or sending JSON payloads.
You know you need REST integration, but implementing it shouldn't require custom Java code, dependency management, or complex configuration. You want to focus on your business logic, not integration plumbing.
What's New in BAMOE 9.5.0
We've introduced the BAMOE WorkItemHandlers Library—a curated collection of officially supported Work Item Handlers that make external system integration seamless. The first member of this library is the enhanced Kogito REST Work Item Handler, which brings enterprise-grade REST API capabilities directly into your workflows.
Here's what you get out of the box:
Enhanced REST Work Item Handler (org.kie.kogito:kogito-rest-workitem)
-
Full HTTP method support (GET, POST, PUT, DELETE, PATCH)
-
Three flexible authentication strategies for different scenarios
-
JSON request and response handling
-
Custom headers and query parameters
-
Configurable request timeouts
-
Comprehensive error handling
REST Service Call Task in BPMN Editor
-
Available by default in the task palette—no setup required
-
Visual configuration through an interactive properties panel
-
No Work Item Definition (.wid) files needed
-
Follows the same design patterns as Gen AI and AI Agent Tasks

Pre-Configured Accelerators
-
All BAMOE Workflow Accelerators include the REST WIH dependency
-
Configuration templates in application.properties
-
Ready to use immediately in new projects
What's Different from BAMOE v8?
Backward Compatible: Existing workflows using the REST WIH continue to work without modification. No breaking changes.
New Capabilities:
-
Enhanced authentication with token propagation and configuration
-
Visual configuration through the BPMN Editor
-
Improved payload handling for POST/PUT/PATCH requests
-
No Work Item Definition (.wid) files required
Migration: BAMOE v8 users can upgrade without changes to existing workflows. New features are opt-in.
Getting Started
For BPMN Workflow Authors
Step 1: Add the Task to Your Workflow
Open your workflow in BAMOE Canvas or Developer Tools for VS Code. The REST Service Call Task is already available in your task palette—just drag it onto your canvas.
Step 2: Configure Basic Settings
In the properties panel, configure your REST call:
Method: GET
Url: https://api.example.com/users/#{userId}
AccessTokenAcquisitionStrategy: propagated
RequestTimeout: 60000
Step 3: Choose Your Authentication Strategy

Select how to obtain access tokens:
-
propagated: Use the token from the current user session
-
configured: Use a pre-configured token from application properties
-
none: No authentication for public APIs
Step 4: Add Headers and Query Parameters (Optional)
Use the HEADER_ and QUERY_ prefixes to add custom headers and query parameters:
HEADER_Content-Type: application/json
HEADER_Authorization: Bearer #{token}
Step 5: Configure Request Payload (For POST, PUT, PATCH)
Map a process variable to the ContentData input to send JSON payloads:
ContentData: #{userPayload}
The handler automatically serializes your Java objects to JSON.
Step 6: Map the Response
Configure the Result output to capture the API response.
For Business Service Developers
Add the Maven Dependency (Pre-configured in accelerators)
<dependency>
<groupId>org.kie.kogito</groupId>
<artifactId>kogito-rest-workitem</artifactId>
</dependency>
Configure Access Tokens for the configured Strategy
Add tokens to your application.properties:
kogito.processes.<processId>.<RestServiceCallTaskId>.access_token=${ACCESS_TOKEN}
Set the environment variable:
export ACCESS_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Enable Debug Logging (For troubleshooting)
quarkus.log.category."org.kogito.workitem.rest".level=DEBUG
quarkus.log.category."org.kie.kogito.process.workitems".level=DEBUG
Real-World Benefits
Here's what this means for your day-to-day operations:
-
Zero Custom Code: Configure REST calls visually in the BPMN Editor—no Java programming required
-
Faster Development: Drag, drop, and configure instead of writing and testing custom integration code
-
Secure by Default: Built-in support for token-based authentication with multiple strategies
-
Better Maintainability: Visual configuration is easier to understand and modify than custom code
-
Reduced Operational Overhead: No need to manage custom Work Item Handler deployments
Validation and Development-Time Feedback
The BPMN Editor provides real-time validation as you configure your REST Service Call Task:
-
Required field validation: Ensures Url and AccessTokenAcquisitionStrategy are provided
-
Method validation: Checks that ContentData is only used with POST, PUT, or PATCH
-
Authentication validation: Verifies RestServiceCallTaskId is provided when using configured strategy
These validations help you catch configuration issues during development, before deployment.
Try It Out
Examples:
-
process-rest-workitem-quarkus - Quarkus example showcasing authentication strategies and payload handling
-
process-rest-workitem-springboot - Spring Boot example with comprehensive configuration patterns
Both examples demonstrate:
Summary
The BAMOE WorkItemHandlers Library simplifies external system integration in BAMOE v9. The enhanced REST Work Item Handler provides:
Zero-code integration - Configure visually in the BPMN Editor
Secure authentication - Multiple token strategies for different scenarios
Pre-configured accelerators - Start building immediately
Backward compatible - Existing workflows continue to work