201 lines
4.1 KiB
Markdown
201 lines
4.1 KiB
Markdown
---
|
|
layout: default
|
|
title: Simulate an ingest pipeline
|
|
parent: Ingest APIs
|
|
grand_parent: REST API reference
|
|
nav_order: 13
|
|
---
|
|
|
|
# Simulate a pipeline
|
|
|
|
Simulates an ingest pipeline with any example documents set you specify.
|
|
|
|
## Example
|
|
|
|
```
|
|
POST /_ingest/pipeline/{id}/_simulate
|
|
{
|
|
"docs": [
|
|
{
|
|
"_index": "index",
|
|
"_id": "id",
|
|
"_source": {
|
|
"location": "document-name"
|
|
}
|
|
},
|
|
{
|
|
"_index": "index",
|
|
"_id": "id",
|
|
"_source": {
|
|
"location": "document-name"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
## Path and HTTP methods
|
|
|
|
Simulate the last ingest pipeline created
|
|
|
|
```
|
|
GET _ingest/pipeline/_simulate
|
|
POST _ingest/pipeline/_simulate
|
|
```
|
|
|
|
Simulate a single pipeline based on the pipeline's ID.
|
|
|
|
```
|
|
GET _ingest/pipeline/{id}/_simulate
|
|
POST _ingest/pipeline/{id}/_simulate
|
|
```
|
|
|
|
## URL parameters
|
|
|
|
Parameter | Type | Description
|
|
:--- | :--- | :---
|
|
verbose | boolean | Verbose mode. Display data output for each processor in executed pipeline
|
|
|
|
## Request body fields
|
|
|
|
Field | Type | Description
|
|
:--- | :--- | :---
|
|
`pipeline` | object | The pipeline you want to simulate. When included without the pipeline `{id}` inside the request path, the response simulates the last pipeline created
|
|
`docs` | array of objects | The documents you want to use to test the pipeline
|
|
|
|
The `docs` field can include the following subfields:
|
|
|
|
Field | Type | Description
|
|
:--- | :--- | :---
|
|
`id` (Optional) | string | An optional identifier for the document. Cannot be used elsewhere in the index
|
|
`index` (Optional) | string |The index where the documents transformed data will be stored
|
|
`source` | object | The documents JSON body
|
|
|
|
## Response
|
|
|
|
### Specify pipeline in request body
|
|
|
|
```json
|
|
{
|
|
"docs" : [
|
|
{
|
|
"doc" : {
|
|
"_index" : "index",
|
|
"_type" : "_doc",
|
|
"_id" : "id",
|
|
"_source" : {
|
|
"location" : "new-new",
|
|
"field2" : "_value"
|
|
},
|
|
"_ingest" : {
|
|
"timestamp" : "2022-02-03T23:12:11.337706671Z"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"doc" : {
|
|
"_index" : "index",
|
|
"_type" : "_doc",
|
|
"_id" : "id",
|
|
"_source" : {
|
|
"location" : "new-new",
|
|
"field2" : "_value"
|
|
},
|
|
"_ingest" : {
|
|
"timestamp" : "2022-02-03T23:12:11.337721296Z"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### Specify pipeline ID inside path
|
|
|
|
```json
|
|
{
|
|
"docs" : [
|
|
{
|
|
"doc" : {
|
|
"_index" : "index",
|
|
"_type" : "_doc",
|
|
"_id" : "id",
|
|
"_source" : {
|
|
"field-name" : "value",
|
|
"location" : "document-name"
|
|
},
|
|
"_ingest" : {
|
|
"timestamp" : "2022-02-03T21:47:05.382744877Z"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"doc" : {
|
|
"_index" : "index",
|
|
"_type" : "_doc",
|
|
"_id" : "id",
|
|
"_source" : {
|
|
"field-name" : "value",
|
|
"location" : "document-name"
|
|
},
|
|
"_ingest" : {
|
|
"timestamp" : "2022-02-03T21:47:05.382803544Z"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### Receive verbose response
|
|
|
|
With the `verbose` parameter set to `true`, the response shows how each processor transform the specified document.
|
|
|
|
```json
|
|
{
|
|
"docs" : [
|
|
{
|
|
"processor_results" : [
|
|
{
|
|
"processor_type" : "set",
|
|
"status" : "success",
|
|
"doc" : {
|
|
"_index" : "index",
|
|
"_type" : "_doc",
|
|
"_id" : "id",
|
|
"_source" : {
|
|
"field-name" : "value",
|
|
"location" : "document-name"
|
|
},
|
|
"_ingest" : {
|
|
"pipeline" : "35678",
|
|
"timestamp" : "2022-02-03T21:45:09.414049004Z"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"processor_results" : [
|
|
{
|
|
"processor_type" : "set",
|
|
"status" : "success",
|
|
"doc" : {
|
|
"_index" : "index",
|
|
"_type" : "_doc",
|
|
"_id" : "id",
|
|
"_source" : {
|
|
"field-name" : "value",
|
|
"location" : "document-name"
|
|
},
|
|
"_ingest" : {
|
|
"pipeline" : "35678",
|
|
"timestamp" : "2022-02-03T21:45:09.414093212Z"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
``` |