FlowX.AI Data Search
Search for specific data across process instances using Elasticsearch-powered indexing for fast, precise results.
The Data Search service enables you to find specific data across process instances within your FlowX.AI platform. It uses Elasticsearch to perform fast, indexed searches across process data.
Simple Search
Search by a single field and value
Advanced Search
Search using multiple criteria simultaneously
Cross-Application
Search across multiple applications
Date Filtering
Filter results by process creation dates
Prerequisites
Before using the Data Search service, ensure you have:
Quick start
Set up your data process
Create a process that stores searchable data and configure field indexing.
Create a search process
Build a process with Kafka Send/Receive actions for search functionality.
Configure search parameters
Define your search criteria using simple or advanced syntax.
Handle search results
Process the returned data and display results to users.
1. Set up your data process
First, create a process that contains searchable data. Add a Service Task with a business rule:
Critical Step: After creating your data structure, you must configure field indexing in Process Settings → Data Search for the search to work.
Configure Field Indexing
Navigate to Process Settings → Data Search and add the field paths you want to search:
Fields that we indexed in our example:
application.client.personalInfo.firstName
application.client.personalInfo.lastName
application.client.personalInfo.email
2. Create your search process
Create a new process with a Send Message Task:
Configuration:
- Action Type: Kafka Send Action
- Topic:
KAFKA_TOPIC_DATA_SEARCH_IN
3. Configure search parameters
Choose your search approach based on your needs:
Use when searching by a single field:
Use when searching by a single field:
Use when searching by multiple criteria (AND logic):
searchKeys
must match for a result to be returned.Search across multiple applications:
Filter by process creation dates:
4. Handle search results
Add a Receive Message Task with:
- Data Stream:
KAFKA_TOPIC_DATA_SEARCH_OUT
Success response example:
Search parameters reference
Quick reference table
Parameter | Type | Mandatory | Description | Example |
---|---|---|---|---|
searchKey | String | Yes | Single field path to search | "application.client.personalInfo.lastName" |
value | String | Yes | Value to search for (with searchKey) | "Johnson" |
searchKeys | Array | Yes (if multiple fields) | Multiple field-value pairs (AND logic) | [{"key": "field1", "value": "val1"}] |
processDefinitionNames | Array | Yes | Limit to specific processes | ["client_onboarding"] |
applicationIds | Array | No | Search across applications | ["uuid-1", "uuid-2"] |
states | Array | No | Filter by process states | ["FINISHED", "STARTED"] |
processStartDateAfter | String | No | Include processes after date | "2024-01-01T00:00:00Z" |
processStartDateBefore | String | No | Include processes before date | "2024-12-31T23:59:59Z" |
Basic search parameters
Filtering parameters
Date range parameters
Process states explained
Understanding process states is crucial for effective searching:
State | Description | When to Use |
---|---|---|
CREATED | Process instance exists but hasn’t started execution | Rarely used for business searches |
STARTED | Process is actively running | Find ongoing processes, current workload |
FINISHED | Process completed successfully | Most common for business data searches |
FAILED | Process encountered an error | Error analysis, troubleshooting |
TERMINATED | Process was manually cancelled | Audit trails, cancelled applications |
ONHOLD | Process is paused/waiting | Active cases needing attention |
Recommendation: Use ["FINISHED"]
for most business searches to ensure you’re getting complete, reliable data.
Response structure
The search returns a JSON object with these fields:
result
(Array): List of matching process instances, automatically sorted byprocessStartDate
in descending order (newest first)processInstanceUUID
: Unique process identifierstate
: Current process stateprocessStartDate
: When the process starteddata
: The actual process data with your searchable fields
tooManyResults
(Boolean): True if more than 50 results found (limit applied)success
(Boolean): Whether the search completed successfullyerrorMessage
(String): Error details if search failed
Use cases & examples
HR employee lookup
Search for employees by department, position, or location across HR systems.
Compliance Auditing
Locate specific transactions or approvals for regulatory compliance.
Business Intelligence
Analyze process data patterns and generate reports.
Real-world example: Customer support search
Customer calls with issue
Support agent needs to find customer’s account quickly.
Search by multiple criteria
Get comprehensive results
Receive full customer profile with account details, order history, and support tickets.
Resolve customer issue
Use the retrieved data to address the customer’s concern effectively.