Search for specific data across process instances using Elasticsearch-powered indexing for fast, precise results.
Elasticsearch Configuration
Kafka Topics
KAFKA_TOPIC_DATA_SEARCH_IN
configured for requestsKAFKA_TOPIC_DATA_SEARCH_OUT
configured for responsesProcess Data
Set up your data process
Create a search process
Configure search parameters
Handle search results
application.client.personalInfo.firstName
application.client.personalInfo.lastName
application.client.personalInfo.email
KAFKA_TOPIC_DATA_SEARCH_IN
KAFKA_TOPIC_DATA_SEARCH_OUT
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" |
searchByPaths | Array | No | Search within array elements | [{"key": "application.[].firstName", "value": "John"}] |
searchKey (String)
"application.client.personalInfo.firstName"
"application.client.address.city"
"application.client.business.industry"
searchKeys
. Choose one approach.value (String)
searchKey
.Usage: Must match the stored value exactly (case-sensitive).Examples:"Johnson"
- searches for exact lastName match"Technology"
- searches for exact industry match"Active"
- searches for exact status matchsearchKey
, not with searchKeys
.searchKeys (Array)
searchKey
. Choose one approach.searchByPaths (Array)
[]
notation to search within array elements. This searches through all items in the array.Example:processDefinitionNames (Array)
["client_onboarding"]
- search only in client processes["employee_registration", "contractor_onboarding"]
- search in multiple process typesapplicationIds (Array)
["8dd20844-2dc5-4445-83a5-bbbcc82bed5f"]
- search in specific app["app-1-uuid", "app-2-uuid", "app-3-uuid"]
- search across multiple appsstates (Array)
"CREATED"
- Process instance created but not started"STARTED"
- Process is currently running"FINISHED"
- Process completed successfully"FAILED"
- Process encountered an error and stopped"TERMINATED"
- Process was manually stopped/cancelled"ONHOLD"
- Process is paused or waiting for external input["FINISHED"]
- only completed processes["STARTED", "ONHOLD"]
- active or paused processes["FAILED", "TERMINATED"]
- processes that didn’t complete normally["FINISHED"]
for most business searches to get complete data.processStartDateAfter (String)
YYYY-MM-DDTHH:MM:SSZ
)Examples:"2024-01-01T00:00:00Z"
- processes started after Jan 1, 2024"2024-06-15T09:30:00Z"
- processes started after June 15, 2024 at 9:30 AM"2024-03-01T00:00:00Z"
"2024-05-20T00:00:00Z"
processStartDateBefore (String)
YYYY-MM-DDTHH:MM:SSZ
)Examples:"2024-12-31T23:59:59Z"
- processes started before end of 2024"2024-06-30T23:59:59Z"
- processes started before end of June 2024"2024-01-01T00:00:00Z"
"2024-03-31T23:59:59Z"
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 |
["FINISHED"]
for most business searches to ensure you’re getting complete, reliable data.result
(Array): List of matching process instances, automatically sorted by processStartDate
in descending order (newest first)
processInstanceUUID
: Unique process identifierstate
: Current process stateprocessStartDate
: When the process starteddata
: The actual process data with your searchable fieldstooManyResults
(Boolean): True if more than 50 results found (limit applied)success
(Boolean): Whether the search completed successfullyerrorMessage
(String): Error details if search failedCustomer calls with issue
Search by multiple criteria
Get comprehensive results
Resolve customer issue
Performance optimization
processDefinitionNames
and states
Data Modeling
Security & Compliance
Error Handling
No Search Results
Search Timeout Errors
processDefinitionNames
, states
)Invalid Search Key Errors
Connection Issues