Onify Hub API 2.3.0 released

Changelog for version 2.3.0

v2.3.0

Improve temporary files feature and impersonate process flow run.

Breaking

Temporary files

Temporary files are now stored as a blob in elasticsearch instead of on disk. The benefit is that files can be accessed from any instance of api or worker. This change requires the files index to be reindexed before pushing new temporary files.

curl example to reindex files index:

curl -X POST "http://hub-api:8181/api/v2/setup/database/reindex?indexes=dev-files" \
  -H  "accept: application/json" \
  -H  "Content-Type: application/json" \
  -H  "authorization: Bearer <bearertoken>" \
  -d "{}"
  • http://hub-api:8181: api url
  • indexes=dev-files: full name of files index including indexPrefix
  • -H "authorization: Bearer <bearertoken>": admin bearer token or admin token

Impersonate flow process

Add impersonate and hide process and state to process mapping.

curl example to reindex process index:

curl -X POST "http://hub-api:8181/api/v2/setup/database/reindex?indexes=dev-process" \
  -H  "accept: application/json" \
  -H  "Content-Type: application/json" \
  -H  "authorization: Bearer <bearertoken>" \
  -d "{}"
  • http://hub-api:8181: api url
  • indexes=dev-process: full name of process index including indexPrefix
  • -H "authorization: Bearer <bearertoken>": admin bearer token or admin token

Process signaling

The API has some endpoints that responds immediately and then performs the action in the background - asynchronous endpoints. Examples are running agent tasks and starting a workflow.

When calling an asynchronous endpoint with a flow service task, the result can be picked up by a succeeding message event. For the flow to know where to continue when the asynchronous work completes the service task must have a property named alert_stateid. The property value can be either the message event id or the id of the expected message.

Changes

breaking: asynchronous flow api calls requires the service task to define property alert_stateid
feature: impersonate flow execution by setting workflow impersonate
feature: add aggregations to workspace
fix: reindex now accepts indices without db.indexPrefix
fix: flow subprocess parallell loop of agent task signals correct result
fix: process.state.user is always string and not array
fix: default refresh to true in agent tasks
fix: store temporary files as blob in db for multi instance access
fix: stop defaulting refresh to false for all create/update/delete endpoints and rely on db.alwaysRefresh flag if not set
fix: update bpmn-engine to fix parallel loop bug
fix: add impersonate to process mapping
fix: improve logging on search failure
fix: allow anonymous user to submit form
fix: shutdown at SIGINT and SIGTERM
fix: stop process if resume fails
fix: allow admin to audit anonymous user