123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- [role="xpack"]
- [testenv="basic"]
- [[put-enrich-policy-api]]
- === Create enrich policy API
- ++++
- <titleabbrev>Create enrich policy</titleabbrev>
- ++++
- Creates an enrich policy.
- ////
- [source,console]
- ----
- PUT /users
- {
- "mappings": {
- "properties": {
- "email": { "type": "keyword" }
- }
- }
- }
- ----
- ////
- [source,console]
- ----
- PUT /_enrich/policy/my-policy
- {
- "match": {
- "indices": "users",
- "match_field": "email",
- "enrich_fields": ["first_name", "last_name", "city", "zip", "state"]
- }
- }
- ----
- // TEST[continued]
- ////
- [source,console]
- --------------------------------------------------
- DELETE /_enrich/policy/my-policy
- --------------------------------------------------
- // TEST[continued]
- ////
- [[put-enrich-policy-api-request]]
- ==== {api-request-title}
- `PUT /_enrich/policy/<enrich-policy>`
- [[put-enrich-policy-api-prereqs]]
- ==== {api-prereq-title}
- // tag::enrich-policy-api-prereqs[]
- If you use {es} {security-features}, you must have:
- * `read` index privileges for any indices used
- * The `enrich_user` <<built-in-roles,built-in role>>
- // end::enrich-policy-api-prereqs[]
- [[put-enrich-policy-api-desc]]
- ==== {api-description-title}
- Use the create or update enrich policy API to create a new
- <<enrich-policy,enrich policy>>.
- [WARNING]
- ====
- include::../../enrich.asciidoc[tag=update-enrich-policy]
- ====
- [[put-enrich-policy-api-path-params]]
- ==== {api-path-parms-title}
- `<enrich-policy>`::
- (Required, string)
- Name of the enrich policy to create or update.
- [role="child_attributes"]
- [[put-enrich-policy-api-request-body]]
- ==== {api-request-body-title}
- `<policy-type>`::
- (Required, object)
- Configures the enrich policy. The field key is the enrich policy type. Valid key
- values are:
- +
- --
- `geo_match`:::
- Matches enrich data to incoming documents based on a
- <<query-dsl-geo-shape-query,`geo_shape` query>>. For an example, see
- <<geo-match-enrich-policy-type>>.
- `match`:::
- Matches enrich data to incoming documents based on a
- <<query-dsl-term-query,`term` query>>. For an example, see
- <<match-enrich-policy-type>>.
- --
- +
- .Properties of `<policy-type>`
- [%collapsible%open]
- ====
- `indices`::
- (Required, String or array of strings)
- One or more source indices used to create the enrich index.
- +
- If multiple indices are specified, they must share a common `match_field`.
- `match_field`::
- (Required, string)
- Field in source indices used to match incoming documents.
- `enrich_fields`::
- (Required, Array of strings)
- Fields to add to matching incoming documents. These fields must be present in
- the source indices.
- `query`::
- (Optional, <<query-dsl,Query DSL query object>>)
- Query used to filter documents in the enrich index. The policy only uses
- documents matching this query to enrich incoming documents. Defaults to a
- <<query-dsl-match-all-query,`match_all`>> query.
- ====
|