Ok -- first of all I love elasticsearch. It's an amazing tool that's doing exactly what I want it to.
That said.. your documentation is so myopic it's worthless. The context of the code samples are so limited in scope it makes learning the API a bloody nightmare. I mean quite seriously, there is so little context to every code sample, the Auto Complete in an IDE gives you more information.. which means why have the docs at all?
Case in point..
https://www.elastic.co/guide/en/elasticsearch/client/java-api/5.6/java-admin-indices.html
The Admin API isn't supported by the HighLevelRestClient.. but allllll of the code samples for the Admin API say: client.indices().admin() or whatever.. functions that exist only on the transport client. All of your code samples for the high level rest client refer to it as client as well. This is infuriating trying to dig through an API that isn't even supported. And only through significant googling and swimming through code did I finally discover what the documentation was actually telling me.
Your documentation needs serious re-work if you care about your users at all. By re-work, I mean actual code samples for every supported version of the product showing context of how to implement the api not just a one line snippet that makes the titanic assumption that we already know the context. Because in this case.. The context was quite misleading.