Elastic Stack · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Elasticsearch Request & Response Specification data stream API
22 actions
22 updates
phrasing
extends
openapi/elk-stack-data-stream-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Elastic Stack's API. It is a proposal applied on top of the contract, not a document Elastic Stack publishes.
What the actions change
x-apievangelist-phrasing
Targets 22 · first 16 shown; the file carries all of them
$.info
$.paths['/_data_stream/{name}'].get
$.paths['/_data_stream/{name}'].put
$.paths['/_data_stream/{name}'].delete
$.paths['/_data_stream/_stats'].get
$.paths['/_data_stream/{name}/_stats'].get
$.paths['/_data_stream/{name}/_lifecycle'].get
$.paths['/_data_stream/{name}/_lifecycle'].put
$.paths['/_data_stream/{name}/_options'].get
$.paths['/_data_stream/{name}/_options'].put
$.paths['/_data_stream/{name}/_options'].delete
$.paths['/{index}/_downsample/{target_index}'].post
$.paths['/{index}/_lifecycle/explain'].get
$.paths['/_lifecycle/stats'].get
$.paths['/_data_stream'].get
$.paths['/_data_stream/{name}/_mappings'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Elasticsearch Request & Response Specification data stream API
version: 1.0.0
extends: openapi/elk-stack-data-stream-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: 21
- target: $.paths['/_data_stream/{name}'].get
update:
x-apievangelist-phrasing:
intent: Get details of named data streams
effect: read
questions:
- What backing indices and template does a particular data stream use?
- Can I look up data streams matching a wildcard name pattern?
instructions:
- text: Get data stream {name}.
slots:
name: path.name
- text: Show details for data streams matching {name}, including defaults.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}'].put
update:
x-apievangelist-phrasing:
intent: Create a data stream
effect: write
questions:
- How do I create a data stream by hand instead of waiting for the first document?
- What do I need in place before I can create a data stream?
instructions:
- text: Create data stream {name}.
slots:
name: path.name
- text: Set up a new data stream called {name} using its matching index template.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}'].delete
update:
x-apievangelist-phrasing:
intent: Delete data streams and their backing indices
effect: destructive
questions:
- How do I delete a data stream along with all its backing indices?
- Can I delete several data streams at once using a wildcard?
instructions:
- text: Delete data stream {name} and its backing indices.
slots:
name: path.name
- text: Remove all data streams matching {name}.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/_stats'].get
update:
x-apievangelist-phrasing:
intent: Get stats for all data streams
effect: read
questions:
- How much storage are my data streams using overall?
- What's the latest timestamp across every data stream in the cluster?
instructions:
- text: Get statistics for every data stream.
- text: Show store size and backing index counts for all data streams.
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_stats'].get
update:
x-apievangelist-phrasing:
intent: Get stats for specific data streams
effect: read
questions:
- How big is one particular data stream and how many backing indices does it have?
- What's the maximum timestamp stored in a given data stream?
instructions:
- text: Get stats for data stream {name}.
slots:
name: path.name
- text: Show the store size of data streams matching {name}.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_lifecycle'].get
update:
x-apievangelist-phrasing:
intent: Get a data stream's lifecycle settings
effect: read
questions:
- What retention period is configured on a data stream's lifecycle?
- Is downsampling set up in this data stream's lifecycle?
instructions:
- text: Get the lifecycle configuration of data stream {name}.
slots:
name: path.name
- text: Show retention and downsampling lifecycle settings for {name}, including defaults.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_lifecycle'].put
update:
x-apievangelist-phrasing:
intent: Set retention and downsampling on a data stream
effect: write
questions:
- How do I keep only 30 days of data in a data stream?
- Can I add downsampling rounds to a data stream's lifecycle?
instructions:
- text: Set data retention on data stream {name} to {data_retention}.
slots:
name: path.name
data_retention: requestBody.data_retention
- text: Configure downsampling {downsampling} on the lifecycle of {name}.
slots:
downsampling: requestBody.downsampling
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_options'].get
update:
x-apievangelist-phrasing:
intent: Get a data stream's options
effect: read
questions:
- Is the failure store enabled on my data stream?
- What data stream options are currently configured?
instructions:
- text: Get the data stream options for {name}.
slots:
name: path.name
- text: Show whether failure store is on for data stream {name}.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_options'].put
update:
x-apievangelist-phrasing:
intent: Configure a data stream's failure store
effect: write
questions:
- How do I turn on the failure store so rejected documents are kept?
- Can I change data stream options on several streams at once?
instructions:
- text: Set failure store options {failure_store} on data stream {name}.
slots:
failure_store: requestBody.failure_store
name: path.name
- text: Enable the failure store on data stream {name}.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_options'].delete
update:
x-apievangelist-phrasing:
intent: Remove a data stream's options
effect: destructive
questions:
- How do I clear the failure store configuration from a data stream?
- Can I reset data stream options back to nothing?
instructions:
- text: Delete the data stream options from {name}.
slots:
name: path.name
- text: Clear all options configured on data streams matching {name}.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/{index}/_downsample/{target_index}'].post
update:
x-apievangelist-phrasing:
intent: Downsample a time series index
effect: write
questions:
- How do I shrink an old time series index by rolling metrics up to hourly buckets?
- Can I downsample by keeping the last value instead of aggregating?
instructions:
- text: Downsample index {index} into {target_index} at interval {fixed_interval}.
slots:
index: path.index
target_index: path.target_index
fixed_interval: requestBody.fixed_interval
- text: Downsample {index} to {target_index} every {fixed_interval} using sampling method {sampling_method}.
slots:
index: path.index
target_index: path.target_index
fixed_interval: requestBody.fixed_interval
sampling_method: requestBody.sampling_method
method: generated
generated: '2026-09-26'
- target: $.paths['/{index}/_lifecycle/explain'].get
update:
x-apievangelist-phrasing:
intent: Explain an index's data stream lifecycle status
effect: read
questions:
- Why hasn't my data stream's backing index rolled over or been deleted yet?
- Is there a lifecycle error on one of my backing indices?
instructions:
- text: Explain the data stream lifecycle status of {index}.
slots:
index: path.index
- text: Show time since rollover and any lifecycle errors for {index}.
slots:
index: path.index
method: generated
generated: '2026-09-26'
- target: $.paths['/_lifecycle/stats'].get
update:
x-apievangelist-phrasing:
intent: Get data stream lifecycle run statistics
effect: read
questions:
- How long do data stream lifecycle runs take and how many streams do they manage?
- Are lifecycle-managed data streams reporting errors?
instructions:
- text: Get statistics for data streams managed by a lifecycle.
- text: Show the last lifecycle run duration and managed stream count.
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream'].get
update:
x-apievangelist-phrasing:
intent: List all data streams
effect: read
questions:
- What data streams exist in my cluster?
- Can I include hidden data streams in the list?
instructions:
- text: List every data stream in the cluster.
- text: List all data streams with expand_wildcards {expand_wildcards}.
slots:
expand_wildcards: query.expand_wildcards
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_mappings'].get
update:
x-apievangelist-phrasing:
intent: Get a data stream's mappings
effect: read
questions:
- What field mappings does a data stream currently have?
- Has a mapping override been applied to this data stream on top of its template?
instructions:
- text: Get the mappings of data stream {name}.
slots:
name: path.name
- text: Show effective field mappings for {name}.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_mappings'].put
update:
x-apievangelist-phrasing:
intent: Override mappings on a data stream
effect: write
questions:
- How do I add a field mapping to one data stream without editing its index template?
- Can I preview a data stream mapping change with a dry run?
instructions:
- text: Override mappings on data stream {name} with properties {properties}.
slots:
name: path.name
properties: requestBody.properties
- text: Dry-run adding runtime fields {runtime} to data stream {name}.
slots:
runtime: requestBody.runtime
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_settings'].get
update:
x-apievangelist-phrasing:
intent: Get a data stream's settings
effect: read
questions:
- What index settings apply to a data stream right now?
- Were any setting overrides applied to this data stream?
instructions:
- text: Get the settings of data stream {name}.
slots:
name: path.name
- text: Show effective index settings for data stream {name}.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/{name}/_settings'].put
update:
x-apievangelist-phrasing:
intent: Override settings on a data stream
effect: write
questions:
- How do I change the number of replicas on one data stream without touching its template?
- Can I test a data stream settings override as a dry run first?
instructions:
- text: Set number of replicas to {number_of_replicas} on data stream {name}.
slots:
number_of_replicas: requestBody.number_of_replicas
name: path.name
- text: Override the refresh interval on {name} to {refresh_interval}.
slots:
name: path.name
refresh_interval: requestBody.refresh_interval
- text: Point data stream {name} at ILM policy {lifecycle}.
slots:
name: path.name
lifecycle: requestBody.lifecycle
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/_migrate/{name}'].post
update:
x-apievangelist-phrasing:
intent: Convert an index alias into a data stream
effect: write
questions:
- How do I turn an existing index alias into a data stream?
- What does an alias need before it can be migrated to a data stream?
instructions:
- text: Migrate alias {name} to a data stream.
slots:
name: path.name
- text: Convert index alias {name} and its indices into a data stream.
slots:
name: path.name
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/_modify'].post
update:
x-apievangelist-phrasing:
intent: Add or remove backing indices atomically
effect: write
questions:
- How do I add or remove a backing index from a data stream?
- Can several data stream modifications be applied in one atomic step?
instructions:
- text: Apply data stream modify actions {actions}.
slots:
actions: requestBody.actions
- text: 'Atomically run these add and remove backing index actions: {actions}.'
slots:
actions: requestBody.actions
method: generated
generated: '2026-09-26'
- target: $.paths['/_data_stream/_promote/{name}'].post
update:
x-apievangelist-phrasing:
intent: Promote a replicated data stream to regular
effect: write
questions:
- How do I turn a CCR-replicated data stream into a normal writable one after failover?
- Can I stop a data stream following its remote leader?
instructions:
- text: Promote replicated data stream {name} to a regular data stream.
slots:
name: path.name
- text: Make follower data stream {name} writable after cross-cluster failover.
slots:
name: path.name
method: generated
generated: '2026-09-26'