Java High Level Rest Client Information

Hello everyone,

I would like to work on the Java high-level REST client. I was gonna start with implementing the delete by query api into the client. I am however confused as to what the query means. I am unsure if it is searching for an entire index and deleting that or searching for a specific set of shards and deleting those or just deleting all things that are returned by a search
Please help me understand what exactly should I implement.

Thank you,
Aviral

Have you read the relevant documentation?

Generally you'd use it against a specific index like POST twitter/_delete_by_query { ... }, but you can also use it against multiple indices POST twitter,blog/_docs,post/_delete_by_query { ... } or limit it to specific shards (based on a routing key) POST twitter/_delete_by_query?routing=1 { ... }. If I'm not mistaken the delete by query operation even supports aliases and filtered aliases.

So looking at all of this I'm not sure it's the best API to get started with, since it's not the easiest one and you need to know a lot of Elasticsearch concepts. There are some more missing features marked as easy in the meta-issue and I'd start with one of those: https://github.com/elastic/elasticsearch/issues/27205