Querying events from ElasticSearch

I’m querying Elasticsearch for my exported events to get a history of workflow instances and jobs executed. I’m having trouble deserializing the response from ES to the correct model from Zeebe protocol using Jackson.

final RestHighLevelClient client = new RestHighLevelClient(RestClient.builder(new HttpHost("localhost", 9200, "http")));

final SearchRequest searchRequest = new SearchRequest("zeebe-record_job_0.25.0_*");
final QueryBuilder matchQueryBuilder = QueryBuilders.matchQuery("intent", "CREATED");
final SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(matchQueryBuilder);
searchRequest.source(sourceBuilder);

final SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);

final ObjectMapper MAPPER = new ObjectMapper();
final SearchHit[] searchHits = searchResponse.getHits().getHits();

final CopiedRecord<JobRecord> value = MAPPER.readValue(searchHits[0].getSourceAsString(), JobRecord.class);

For completeness, the above returns an error because the partitionId field from the Record wrapper isn’t recognized. I can’t figure out how to deserialze the response with the templated Record interface.

Any suggestions for turning the ES response into a Zeebe model I can work with? Suggestions or recommendations for querying Elasticsearch, in general, greatly appreciated.