Elastic Stack · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Elasticsearch Request & Response Specification ml data frame API
19 actions
19 updates
phrasing
extends
openapi/elk-stack-ml-data-frame-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 19 · first 16 shown; the file carries all of them
$.info
$.paths['/_ml/data_frame/analytics/{id}'].get
$.paths['/_ml/data_frame/analytics/{id}'].put
$.paths['/_ml/data_frame/analytics/{id}'].delete
$.paths['/_ml/data_frame/_evaluate'].post
$.paths['/_ml/data_frame/analytics/_explain'].get
$.paths['/_ml/data_frame/analytics/_explain'].post
$.paths['/_ml/data_frame/analytics/{id}/_explain'].get
$.paths['/_ml/data_frame/analytics/{id}/_explain'].post
$.paths['/_ml/data_frame/analytics'].get
$.paths['/_ml/data_frame/analytics/_stats'].get
$.paths['/_ml/data_frame/analytics/{id}/_stats'].get
$.paths['/_ml/data_frame/analytics/_preview'].get
$.paths['/_ml/data_frame/analytics/_preview'].post
$.paths['/_ml/data_frame/analytics/{id}/_preview'].get
$.paths['/_ml/data_frame/analytics/{id}/_preview'].post
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 ml data frame API
version: 1.0.0
extends: openapi/elk-stack-ml-data-frame-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: 18
- target: $.paths['/_ml/data_frame/analytics/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get data frame analytics job configs by ID
effect: read
questions:
- What source, destination and analysis is a specific data frame analytics job configured with?
- Can I fetch several data frame analytics jobs at once with a comma-separated list or wildcard?
instructions:
- text: Show the configuration of data frame analytics job {id}.
slots:
id: path.id
- text: Get configs for the data frame analytics jobs matching {id}, excluding generated fields.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}'].put
update:
x-apievangelist-phrasing:
intent: Create a data frame analytics job
effect: write
questions:
- How do I set up outlier detection, regression or classification on an index?
- Can I cap the memory a new data frame analytics job is allowed to use?
- Will the destination index be created for me when the analytics job starts?
instructions:
- text: Create data frame analytics job {id} reading from {source}, writing to {dest}, running {analysis}.
slots:
id: path.id
source: requestBody.source
dest: requestBody.dest
analysis: requestBody.analysis
- text: Create analytics job {id} with a model memory limit of {model_memory_limit}.
slots:
id: path.id
model_memory_limit: requestBody.model_memory_limit
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a data frame analytics job
effect: destructive
questions:
- How do I remove a data frame analytics job I no longer need?
- Can I force-delete a data frame analytics job that is still running?
instructions:
- text: Delete data frame analytics job {id}.
slots:
id: path.id
- text: Force delete the analytics job {id} even though it is running.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/_evaluate'].post
update:
x-apievangelist-phrasing:
intent: Evaluate data frame analytics results
effect: read
questions:
- How accurate is my classification model compared with the ground truth in its results index?
- Can I compute evaluation metrics like AUC ROC or mean squared error on an analytics results index?
instructions:
- text: Evaluate the analytics results in index {index} using {evaluation}.
slots:
index: requestBody.index
evaluation: requestBody.evaluation
- text: Compute evaluation metrics {evaluation} for index {index}, limited to documents matching {query}.
slots:
evaluation: requestBody.evaluation
index: requestBody.index
query: requestBody.query
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/_explain'].get
update:
x-apievangelist-phrasing:
intent: Explain an unsaved analytics config via GET
effect: read
questions:
- Before creating a job, which fields would a draft data frame analytics config include or skip, using the GET form?
- What memory would a not-yet-created analytics job need, asked over GET?
instructions:
- text: Explain field selection and memory for a draft analytics config on {source} via GET.
slots:
source: requestBody.source
- text: Using the GET explain call, estimate memory for analysis {analysis} before I create the job.
slots:
analysis: requestBody.analysis
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/_explain'].post
update:
x-apievangelist-phrasing:
intent: Explain an unsaved analytics config via POST
effect: read
questions:
- Can I POST a draft analytics config and get back which fields it would analyze?
- How much memory would a proposed analytics job need, sending the draft config by POST?
instructions:
- text: POST a draft analytics config with source {source} and dest {dest} and explain its field selection.
slots:
source: requestBody.source
dest: requestBody.dest
- text: Send analysis {analysis} by POST to estimate its memory before creating a job.
slots:
analysis: requestBody.analysis
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}/_explain'].get
update:
x-apievangelist-phrasing:
intent: Explain an existing analytics job via GET
effect: read
questions:
- Why were certain fields left out of an existing data frame analytics job, checked with GET?
- What memory does an already-created analytics job estimate it needs, via the GET explain?
instructions:
- text: Explain the field selection of existing analytics job {id} using GET.
slots:
id: path.id
- text: GET the memory estimate for data frame analytics job {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}/_explain'].post
update:
x-apievangelist-phrasing:
intent: Explain an existing analytics job via POST
effect: read
questions:
- Can I POST to explain an existing analytics job, overriding some of its settings in the body?
- How would changing analyzed_fields affect an existing job's memory estimate, sent by POST?
instructions:
- text: POST an explain for analytics job {id} with analyzed fields {analyzed_fields}.
slots:
id: path.id
analyzed_fields: requestBody.analyzed_fields
- text: Explain existing job {id} by POST and report the estimated memory.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics'].get
update:
x-apievangelist-phrasing:
intent: List all data frame analytics jobs
effect: read
questions:
- What data frame analytics jobs exist on my cluster?
- Can I page through all analytics job configurations using from and size?
instructions:
- text: List every data frame analytics job configuration.
- text: Show {size} data frame analytics jobs starting at {from}.
slots:
size: query.size
from: query.from
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/_stats'].get
update:
x-apievangelist-phrasing:
intent: Get stats for all data frame analytics jobs
effect: read
questions:
- What is the progress and state of all my data frame analytics jobs?
- Can I get verbose statistics across every analytics job at once?
instructions:
- text: Show usage stats and progress for all data frame analytics jobs.
- text: Get verbose stats for every analytics job, {size} at a time.
slots:
size: query.size
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}/_stats'].get
update:
x-apievangelist-phrasing:
intent: Get stats for a data frame analytics job
effect: read
questions:
- How far along is a particular data frame analytics job?
- Is a specific analytics job running, stopped or failed?
instructions:
- text: Show the progress and state of analytics job {id}.
slots:
id: path.id
- text: Get verbose stats for data frame analytics job {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/_preview'].get
update:
x-apievangelist-phrasing:
intent: Preview features for a draft config via GET
effect: read
questions:
- What extracted feature values would a draft analytics config produce, previewed with GET?
- Can I sample the training features of a config I haven't saved yet using a GET request?
instructions:
- text: Preview the extracted features for draft config {config} via GET.
slots:
config: requestBody.config
- text: GET a feature preview for this unsaved analytics config {config}.
slots:
config: requestBody.config
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/_preview'].post
update:
x-apievangelist-phrasing:
intent: Preview features for a draft config via POST
effect: read
questions:
- Can I POST a draft analytics config and see sample extracted features?
- What would the feature rows look like for a proposed config sent by POST?
instructions:
- text: POST draft config {config} and show me the extracted feature preview.
slots:
config: requestBody.config
- text: Preview features of proposed analytics config {config} with a POST request.
slots:
config: requestBody.config
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}/_preview'].get
update:
x-apievangelist-phrasing:
intent: Preview features of an existing job via GET
effect: read
questions:
- What feature values does an existing analytics job extract, previewed via GET?
- Can I check the training data an existing job will see before starting it, using GET?
instructions:
- text: GET a feature preview for analytics job {id}.
slots:
id: path.id
- text: Show sample extracted features for existing job {id} via GET.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}/_preview'].post
update:
x-apievangelist-phrasing:
intent: Preview features of an existing job via POST
effect: read
questions:
- Can I preview an existing analytics job's features with a POST request?
- What rows would an existing job extract, fetched by POST?
instructions:
- text: POST a feature preview request for analytics job {id}.
slots:
id: path.id
- text: Preview extracted features for existing job {id} using POST.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}/_start'].post
update:
x-apievangelist-phrasing:
intent: Start a data frame analytics job
effect: write
questions:
- How do I kick off a data frame analytics job I've created?
- Can I restart an analytics job after stopping it?
instructions:
- text: Start data frame analytics job {id}.
slots:
id: path.id
- text: Start analytics job {id} and wait up to {timeout} for it to begin.
slots:
id: path.id
timeout: query.timeout
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}/_stop'].post
update:
x-apievangelist-phrasing:
intent: Stop data frame analytics jobs
effect: write
questions:
- How can I pause a running data frame analytics job?
- Is there a force option to stop an analytics job that won't stop cleanly?
instructions:
- text: Stop data frame analytics job {id}.
slots:
id: path.id
- text: Force stop analytics job {id} within {timeout}.
slots:
id: path.id
timeout: query.timeout
method: generated
generated: '2026-09-26'
- target: $.paths['/_ml/data_frame/analytics/{id}/_update'].post
update:
x-apievangelist-phrasing:
intent: Update a data frame analytics job
effect: write
questions:
- Can I raise the memory limit on an analytics job after creating it?
- Which settings of a data frame analytics job can I change, like description or max threads?
instructions:
- text: Update analytics job {id} to a model memory limit of {model_memory_limit}.
slots:
id: path.id
model_memory_limit: requestBody.model_memory_limit
- text: Change the description of analytics job {id} to {description}.
slots:
id: path.id
description: requestBody.description
method: generated
generated: '2026-09-26'