# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Elk Stack Ingest API version: 1.0.0 extends: openapi/elk-stack-ingest-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 22 - target: $.paths['/_ingest/geoip/database/{id}'].get update: x-apievangelist-phrasing: intent: Get a specific GeoIP database configuration effect: read questions: - How do I see the settings of one GeoIP database configuration by ID? - Can I look up several GeoIP database configs with a comma-separated list of IDs? instructions: - text: Get GeoIP database configuration {id}. slots: id: path.id - text: Show the MaxMind settings for GeoIP config {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/_ingest/geoip/database/{id}'].put update: x-apievangelist-phrasing: intent: Create or update a GeoIP database configuration effect: write questions: - How do I register a MaxMind GeoIP database for the geoip processor to download? - Can I replace an existing GeoIP database configuration with a new database name? instructions: - text: Create GeoIP database config {id} for database {name} with MaxMind settings {maxmind}. slots: id: path.id name: requestBody.name maxmind: requestBody.maxmind - text: Update GeoIP configuration {id} to use database {name}. slots: id: path.id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/_ingest/geoip/database/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a GeoIP database configuration effect: destructive questions: - How do I remove a GeoIP database configuration I no longer need? - Can I delete multiple GeoIP database configurations in one call? instructions: - text: Delete GeoIP database configuration {id}. slots: id: path.id - text: Remove GeoIP database configs {id} with a master timeout of {master_timeout}. slots: id: path.id master_timeout: query.master_timeout method: generated generated: '2026-09-26' - target: $.paths['/_ingest/ip_location/database/{id}'].get update: x-apievangelist-phrasing: intent: Get a specific IP location database configuration effect: read questions: - How do I view one IP location database configuration by its ID? - Which provider does a given IP location database config point at? instructions: - text: Get IP location database configuration {id}. slots: id: path.id - text: Show the ip_location database config named {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/_ingest/ip_location/database/{id}'].put update: x-apievangelist-phrasing: intent: Create or update an IP location database config effect: write questions: - How do I add an IPinfo or MaxMind database for the ip_location processor? - Can I change which database an IP location configuration downloads? instructions: - text: Create IP location database config {id} for database {name} from IPinfo {ipinfo}. slots: id: path.id name: requestBody.name ipinfo: requestBody.ipinfo - text: Set ip_location configuration {id} to MaxMind database {name} with {maxmind}. slots: id: path.id name: requestBody.name maxmind: requestBody.maxmind method: generated generated: '2026-09-26' - target: $.paths['/_ingest/ip_location/database/{id}'].delete update: x-apievangelist-phrasing: intent: Delete an IP location database configuration effect: destructive questions: - How do I remove an IP location database configuration? - Can I delete ip_location database configs by listing their IDs? instructions: - text: Delete IP location database configuration {id}. slots: id: path.id - text: Remove the ip_location database configs {id}, waiting up to {timeout}. slots: id: path.id timeout: query.timeout method: generated generated: '2026-09-26' - target: $.paths['/_ingest/pipeline/{id}'].get update: x-apievangelist-phrasing: intent: Get a specific ingest pipeline effect: read questions: - How do I see the processors defined in one ingest pipeline? - Can I fetch pipelines matching a wildcard ID in summary form only? instructions: - text: Get ingest pipeline {id}. slots: id: path.id - text: Show pipelines matching {id} with summary {summary}. slots: id: path.id summary: query.summary method: generated generated: '2026-09-26' - target: $.paths['/_ingest/pipeline/{id}'].put update: x-apievangelist-phrasing: intent: Create or update an ingest pipeline effect: write questions: - How do I create an ingest pipeline that transforms documents before they are indexed? - Can I only overwrite a pipeline if it's still at the version I expect? - What handles errors when a processor in my pipeline fails? instructions: - text: Create ingest pipeline {id} with processors {processors}. slots: id: path.id processors: requestBody.processors - text: Update pipeline {id} with processors {processors} only if its version is {if_version}. slots: id: path.id processors: requestBody.processors if_version: query.if_version - text: Add failure handlers {on_failure} to pipeline {id}. slots: on_failure: requestBody.on_failure id: path.id method: generated generated: '2026-09-26' - target: $.paths['/_ingest/pipeline/{id}'].delete update: x-apievangelist-phrasing: intent: Delete an ingest pipeline effect: destructive questions: - How do I delete an ingest pipeline I no longer use? - Can I remove several pipelines at once with a wildcard? instructions: - text: Delete ingest pipeline {id}. slots: id: path.id - text: Remove all pipelines matching {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/_ingest/geoip/stats'].get update: x-apievangelist-phrasing: intent: Get GeoIP database download statistics effect: read questions: - Have my GeoIP2 databases downloaded successfully on every node? - How many GeoIP database downloads have failed? instructions: - text: Show GeoIP download statistics. - text: Report which nodes have the GeoIP databases cached. method: generated generated: '2026-09-26' - target: $.paths['/_ingest/geoip/database'].get update: x-apievangelist-phrasing: intent: List all GeoIP database configurations effect: read questions: - Which GeoIP database configurations exist on my cluster? - What are all the GeoIP databases the geoip processor is set up to use? instructions: - text: List all GeoIP database configurations. - text: Show every configured geoip database. method: generated generated: '2026-09-26' - target: $.paths['/_ingest/ip_location/database'].get update: x-apievangelist-phrasing: intent: List all IP location database configurations effect: read questions: - Which IP location databases are configured in my cluster? - What ip_location database configurations have been registered so far? instructions: - text: List all IP location database configurations. - text: Show every ip_location database config. method: generated generated: '2026-09-26' - target: $.paths['/_ingest/pipeline'].get update: x-apievangelist-phrasing: intent: List all ingest pipelines effect: read questions: - What ingest pipelines are defined on this cluster? - Can I list all pipelines without their full processor definitions? instructions: - text: List all ingest pipelines. - text: Show every pipeline with summary set to {summary}. slots: summary: query.summary method: generated generated: '2026-09-26' - target: $.paths['/_ingest/processor/grok'].get update: x-apievangelist-phrasing: intent: List built-in grok patterns effect: read questions: - Which grok patterns are built in for parsing log lines? - Where can I see the pattern library the grok processor ships with? instructions: - text: List the built-in grok patterns. - text: Show the grok processor's pattern library. method: generated generated: '2026-09-26' - target: $.paths['/_ingest/pipeline/_simulate'].get update: x-apievangelist-phrasing: intent: Test an inline pipeline on sample documents effect: read questions: - How do I try out a pipeline definition on sample docs before saving it? - Can I see what each processor did to a document during a simulation? instructions: - text: Simulate inline pipeline {pipeline} against documents {docs}. slots: pipeline: requestBody.pipeline docs: requestBody.docs - text: Dry-run unsaved pipeline {pipeline} on {docs} with verbose per-processor output. slots: pipeline: requestBody.pipeline docs: requestBody.docs method: generated generated: '2026-09-26' - target: $.paths['/_ingest/pipeline/_simulate'].post update: x-apievangelist-phrasing: intent: Test an inline pipeline on sample docs (POST) effect: read questions: - Can I POST a draft pipeline and some documents to preview the transformed output? - Is there a POST route for pipeline simulation when my client can't send a GET body? instructions: - text: POST a pipeline simulation of {pipeline} over sample docs {docs}. slots: pipeline: requestBody.pipeline docs: requestBody.docs - text: Using POST, preview how definition {pipeline} rewrites {docs}, verbose {verbose}. slots: pipeline: requestBody.pipeline docs: requestBody.docs verbose: query.verbose method: generated generated: '2026-09-26' - target: $.paths['/_ingest/pipeline/{id}/_simulate'].get update: x-apievangelist-phrasing: intent: Test a saved pipeline on sample documents effect: read questions: - How do I check what an existing pipeline would do to a document without indexing it? - Can I debug a saved pipeline step by step against test data? instructions: - text: Simulate saved pipeline {id} against documents {docs}. slots: id: path.id docs: requestBody.docs - text: Run existing pipeline {id} over {docs} verbosely without indexing. slots: id: path.id docs: requestBody.docs method: generated generated: '2026-09-26' - target: $.paths['/_ingest/pipeline/{id}/_simulate'].post update: x-apievangelist-phrasing: intent: Test a saved pipeline on sample docs (POST) effect: read questions: - Can I POST test documents to a stored pipeline's simulate endpoint? - Is there a POST form of simulating an existing pipeline by ID? instructions: - text: POST documents {docs} to simulate stored pipeline {id}. slots: docs: requestBody.docs id: path.id - text: Using POST, test pipeline {id} on {docs} with verbose {verbose}. slots: id: path.id docs: requestBody.docs verbose: query.verbose method: generated generated: '2026-09-26' - target: $.paths['/_ingest/_simulate'].get update: x-apievangelist-phrasing: intent: Simulate full ingestion of documents effect: read questions: - How do I preview the final indexed form of documents, including default and final pipelines? - Can I simulate ingestion with substitute templates or mappings before changing them? instructions: - text: Simulate ingesting documents {docs} using pipeline substitutions {pipeline_substitutions}. slots: docs: requestBody.docs pipeline_substitutions: requestBody.pipeline_substitutions - text: Preview ingest of {docs} with index template substitutions {index_template_substitutions}. slots: docs: requestBody.docs index_template_substitutions: requestBody.index_template_substitutions method: generated generated: '2026-09-26' - target: $.paths['/_ingest/_simulate'].post update: x-apievangelist-phrasing: intent: Simulate full ingestion of documents (POST) effect: read questions: - Can I POST documents to the ingest simulator to check mappings and pipelines end to end? - Is there a POST form of simulating ingestion with a mapping addition? instructions: - text: POST an ingest simulation for {docs} with mapping addition {mapping_addition}. slots: docs: requestBody.docs mapping_addition: requestBody.mapping_addition - text: Using POST, simulate ingesting {docs} through default pipeline {pipeline}. slots: docs: requestBody.docs pipeline: query.pipeline method: generated generated: '2026-09-26' - target: $.paths['/_ingest/{index}/_simulate'].get update: x-apievangelist-phrasing: intent: Simulate ingesting documents into a given index effect: read questions: - How do I see what would happen if I indexed these docs into a specific index? - Can I test ingest into one index with component template substitutions? instructions: - text: Simulate ingesting {docs} into index {index}. slots: docs: requestBody.docs index: path.index - text: Preview {docs} landing in {index} with component template substitutions {component_template_substitutions}. slots: docs: requestBody.docs index: path.index component_template_substitutions: requestBody.component_template_substitutions method: generated generated: '2026-09-26' - target: $.paths['/_ingest/{index}/_simulate'].post update: x-apievangelist-phrasing: intent: Simulate ingesting into a given index (POST) effect: read questions: - Can I POST sample docs to one index's ingest simulator to validate mappings? - Is there a POST route for index-targeted ingest simulation with a merge type? instructions: - text: POST documents {docs} to simulate ingestion into {index}. slots: docs: requestBody.docs index: path.index - text: Using POST, simulate {docs} into {index} with mapping merge type {merge_type}. slots: docs: requestBody.docs index: path.index merge_type: query.merge_type method: generated generated: '2026-09-26'