[role="xpack"]
[testenv="basic"]
[[enrich-processor]]
=== Enrich processor
++++
<titleabbrev>Enrich</titleabbrev>
++++

The `enrich` processor can enrich documents with data from another index.
See <<ingest-enriching-data,enrich data>> section for more information about how to set this up.

[[enrich-options]]
.Enrich Options
[options="header"]
|======
| Name               | Required  | Default              | Description
| `policy_name`      | yes       | -                    | The name of the enrich policy to use.
| `field`            | yes       | -                    | The field in the input document that matches the policies match_field used to retrieve the enrichment data. Supports <<accessing-template-fields,template snippets>>.
| `target_field`     | yes       | -                    | Field added to incoming documents to contain enrich data. This field contains both the `match_field` and `enrich_fields` specified in the <<enrich-policy-definition,enrich policy>>. Supports <<accessing-template-fields,template snippets>>.
| `ignore_missing`   | no        | false                | If `true` and `field` does not exist, the processor quietly exits without modifying the document
| `override`         | no        | true                 | If processor will update fields with pre-existing non-null-valued field. When set to `false`, such fields will not be touched.
| `max_matches`      | no        | 1                    | The maximum number of matched documents to include under the configured target field. The `target_field` will be turned into a json array if `max_matches` is higher than 1, otherwise `target_field` will become a json object. In order to avoid documents getting too large, the maximum allowed value is 128.
| `shape_relation`   | no        | `INTERSECTS`         | A spatial relation operator used to match the <<geo-shape,geo_shape>> of incoming documents to documents in the enrich index. This option is only used for `geo_match` enrich policy types. The <<spatial-strategy, geo_shape strategy>> mapping parameter determines which spatial relation operators are available. See <<_spatial_relations>> for operators and more information.

include::common-options.asciidoc[]
|======
