[[java-docs-delete]] === Delete API The delete API allows one to delete a typed JSON document from a specific index based on its id. The following example deletes the JSON document from an index called twitter, under a type called `_doc`, with id valued 1: [source,java] -------------------------------------------------- DeleteResponse response = client.prepareDelete("twitter", "_doc", "1").get(); -------------------------------------------------- For more information on the delete operation, check out the {ref}/docs-delete.html[delete API] docs. [[java-docs-delete-by-query]] === Delete By Query API The delete by query API allows one to delete a given set of documents based on the result of a query: ["source","java",subs="attributes,callouts,macros"] -------------------------------------------------- include-tagged::{client-reindex-tests}/ReindexDocumentationIT.java[delete-by-query-sync] -------------------------------------------------- <1> query <2> index <3> execute the operation <4> number of deleted documents As it can be a long running operation, if you wish to do it asynchronously, you can call `execute` instead of `get` and provide a listener like: ["source","java",subs="attributes,callouts,macros"] -------------------------------------------------- include-tagged::{client-reindex-tests}/ReindexDocumentationIT.java[delete-by-query-async] -------------------------------------------------- <1> query <2> index <3> listener <4> number of deleted documents