| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 | [[query-dsl-parent-id-query]]=== Parent ID query++++<titleabbrev>Parent ID</titleabbrev>++++Returns child documents <<parent-join,joined>> to a specific parent document.You can use a <<parent-join,join>> field mapping to create parent-childrelationships between documents in the same index.[[parent-id-query-ex-request]]==== Example request[[parent-id-index-setup]]===== Index setupTo use the `parent_id` query, your index must include a <<parent-join,join>>field mapping. To see how you can set up an index for the `parent_id` query, trythe following example.. Create an index with a <<parent-join,join>> field mapping.+--[source,console]----PUT /my-index-000001{  "mappings": {    "properties": {      "my-join-field": {        "type": "join",        "relations": {          "my-parent": "my-child"        }      }    }  }}----// TESTSETUP--. Index a parent document with an ID of `1`.+--[source,console]----PUT /my-index-000001/_doc/1?refresh{  "text": "This is a parent document.",  "my-join-field": "my-parent"}------. Index a child document of the parent document.+--[source,console]----PUT /my-index-000001/_doc/2?routing=1&refresh{  "text": "This is a child document.",  "my_join_field": {    "name": "my-child",    "parent": "1"  }}------[[parent-id-query-ex-query]]===== Example queryThe following search returns child documents for a parent document with an ID of`1`.[source,console]----GET /my-index-000001/_search{  "query": {      "parent_id": {          "type": "my-child",          "id": "1"      }  }}----[[parent-id-top-level-params]]==== Top-level parameters for `parent_id``type`::(Required, string) Name of the child relationship mapped for the<<parent-join,join>> field.`id`::(Required, string) ID of the parent document. The query will return childdocuments of this parent document.`ignore_unmapped`::+--(Optional, boolean) Indicates whether to ignore an unmapped `type` and notreturn any documents instead of an error. Defaults to `false`.If `false`, {es} returns an error if the `type` is unmapped.You can use this parameter to query multiple indices that may not contain the`type`.--
 |