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
application.listClient.[].firstName
(for array search)application.listClient.[].lastName
(for array search)application.listClient.[].department
(for array search)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"}] |
searchByPaths | Array | Yes (for array search) | Array search field-value pairs | [{"key": "list.[].field", "value": "val"}] |
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" |
searchKey (String)
"application.client.personalInfo.firstName"
"application.client.address.city"
"application.client.business.industry"
searchKeys
or searchByPaths
. 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
or searchByPaths
.searchKeys (Array)
[]
notation.Format:searchKey
or searchByPaths
. Choose one approach.searchByPaths (Array)
[]
notation to search within array elements. This searches through all items in the array and is the recommended approach for array searches.Format:searchKeys
searchKey
or searchKeys
. Choose one approach.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
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 failedHR needs to find employees
Search within employee arrays
Get comprehensive results
Refine search if needed
Customer calls with issue
Search by multiple criteria
Get comprehensive results
Resolve customer issue
Array Search Optimization
[]
notation in Process SettingsPerformance optimization
processDefinitionNames
and states
Data Modeling
Security & Compliance
Error Handling
No Search Results
[]
notation for array field searchesArray Search Issues
[]
notation in field pathsearchKeys
vs searchByPaths
)[]
for arrays (e.g., list.[].field
)[]
notationsearchByPaths
for array searches when possibleSearch Timeout Errors
processDefinitionNames
, states
)Invalid Search Key Errors
[]
notation for array field searchesConnection Issues