Consume temporal io events

Hi Everyone,
We want our microservice to capture workflow executions history from the Temporal.
Is there any way to subscribe on events or build a kind of change data capture process?

It is not directly supported. What is the use case?

@maxim We are using as orchestrator for our data pipelines/integrations. We have to build our own UI and add some integrations management domain logic, so we have to build an “integration-manager” microservice that will provide an API for the UI and should encapsulate that logic and should be able to communicate with an orchestrator( Finally user should be able to manage integrations/workflows, to do crud operations, run the workflow, see the execution progress, history, statuses, errors, etc.

I see. What features are missing to implement all the required logic for “integration-manager” without the data capture?

I think we can implement everything by using Temporal SDK, for example, poll workflow history by schedule or we can even create activities that will emit our own events.
I was just wondering if there are any more elegant options.

My question is more about which features in Temporal APIs and SDKs are missing that require the data capture workaround?

I will get back to you if I find something missing.
One more question: I am trying to list workflow executions:

ListWorkflowExecutionsRequest req = ListWorkflowExecutionsRequest
ListWorkflowExecutionsResponse res = service.blockingStub().listWorkflowExecutions(req);

and getting: INVALID_ARGUMENT: Operation not support. Please use on ElasticSearch
Is ElasticSearch mandatory for this operation?

Yes, listWorkflowExecutions requires ES.