Elastic Stack · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Kibana data views API
16 actions
16 updates
phrasing
extends
openapi/elk-stack-data-views-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 16
$.info
$.paths['/api/data_views'].get
$.paths['/api/data_views/data_view'].post
$.paths['/api/data_views/data_view/{viewId}'].get
$.paths['/api/data_views/data_view/{viewId}'].post
$.paths['/api/data_views/data_view/{viewId}'].delete
$.paths['/api/data_views/data_view/{viewId}/fields'].post
$.paths['/api/data_views/data_view/{viewId}/runtime_field'].put
$.paths['/api/data_views/data_view/{viewId}/runtime_field'].post
$.paths['/api/data_views/data_view/{viewId}/runtime_field/{fieldName}'].get
$.paths['/api/data_views/data_view/{viewId}/runtime_field/{fieldName}'].post
$.paths['/api/data_views/data_view/{viewId}/runtime_field/{fieldName}'].delete
$.paths['/api/data_views/default'].get
$.paths['/api/data_views/default'].post
$.paths['/api/data_views/swap_references'].post
$.paths['/api/data_views/swap_references/_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 Kibana data views API
version: 1.0.0
extends: openapi/elk-stack-data-views-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: 15
- target: $.paths['/api/data_views'].get
update:
x-apievangelist-phrasing:
intent: List all data views in a Kibana space
effect: read
questions:
- What data views are available in my Kibana space?
- Which index patterns have been set up as data views?
instructions:
- text: List every data view in this space.
- text: Show me all data views and their IDs.
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view'].post
update:
x-apievangelist-phrasing:
intent: Create a data view
effect: write
questions:
- How do I create a data view over my logs indices in Kibana?
- Can a data view point at several data streams or aliases at once?
instructions:
- text: Create a data view defined as {data_view}.
slots:
data_view: requestBody.data_view
- text: Create data view {data_view}, overwriting any existing one with the same name ({override}).
slots:
data_view: requestBody.data_view
override: requestBody.override
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}'].get
update:
x-apievangelist-phrasing:
intent: Get a data view
effect: read
questions:
- What index pattern and fields does a particular data view use?
- Which runtime fields are defined on one data view?
instructions:
- text: Show data view {view_id}.
slots:
view_id: path.viewId
- text: Get the fields and pattern of data view {view_id}.
slots:
view_id: path.viewId
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}'].post
update:
x-apievangelist-phrasing:
intent: Update a data view
effect: write
questions:
- Can I change the index pattern of an existing data view?
- Is it possible to refresh a data view's field list while updating it?
instructions:
- text: Update data view {view_id} with {data_view}.
slots:
view_id: path.viewId
data_view: requestBody.data_view
- text: Change data view {view_id} to {data_view} and refresh its fields ({refresh_fields}).
slots:
view_id: path.viewId
data_view: requestBody.data_view
refresh_fields: requestBody.refresh_fields
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a data view
effect: destructive
questions:
- Can a deleted data view be recovered?
- How do I remove a data view I no longer use?
instructions:
- text: Delete data view {view_id}.
slots:
view_id: path.viewId
- text: Permanently remove data view {view_id}.
slots:
view_id: path.viewId
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}/fields'].post
update:
x-apievangelist-phrasing:
intent: Set labels and formats on data view fields
effect: write
questions:
- Can I give a field a custom label or description in a data view?
- Where do I override the display format for a field?
instructions:
- text: Update field metadata on data view {view_id} to {fields}.
slots:
view_id: path.viewId
fields: requestBody.fields
- text: Set custom labels and formats {fields} in data view {view_id}.
slots:
fields: requestBody.fields
view_id: path.viewId
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}/runtime_field'].put
update:
x-apievangelist-phrasing:
intent: Create or replace a runtime field
effect: write
questions:
- Can I upsert a runtime field so it's replaced if it already exists?
- What happens to an existing runtime field when I put a new definition?
instructions:
- text: Create or replace runtime field {name} on data view {view_id} with {runtime_field}.
slots:
name: requestBody.name
view_id: path.viewId
runtime_field: requestBody.runtimeField
- text: Upsert runtime field {name} in {view_id} using definition {runtime_field}.
slots:
name: requestBody.name
view_id: path.viewId
runtime_field: requestBody.runtimeField
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}/runtime_field'].post
update:
x-apievangelist-phrasing:
intent: Add a new runtime field to a data view
effect: write
questions:
- How do I add a computed field to a data view without reindexing?
- Can a new runtime field use a Painless script?
instructions:
- text: Add runtime field {name} to data view {view_id} with {runtime_field}.
slots:
name: requestBody.name
view_id: path.viewId
runtime_field: requestBody.runtimeField
- text: 'Create a new Painless runtime field {name} on {view_id}: {runtime_field}.'
slots:
name: requestBody.name
view_id: path.viewId
runtime_field: requestBody.runtimeField
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}/runtime_field/{fieldName}'].get
update:
x-apievangelist-phrasing:
intent: Get a runtime field from a data view
effect: read
questions:
- What script does a specific runtime field run?
- What type is one runtime field in my data view?
instructions:
- text: Show runtime field {field_name} in data view {view_id}.
slots:
field_name: path.fieldName
view_id: path.viewId
- text: Get the definition of {field_name} from {view_id}.
slots:
field_name: path.fieldName
view_id: path.viewId
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}/runtime_field/{fieldName}'].post
update:
x-apievangelist-phrasing:
intent: Update an existing runtime field
effect: write
questions:
- Can I tweak just the script of an existing runtime field?
- Does updating a runtime field change only the properties I send?
instructions:
- text: Update runtime field {field_name} in {view_id} with {runtime_field}.
slots:
field_name: path.fieldName
view_id: path.viewId
runtime_field: requestBody.runtimeField
- text: 'Modify existing runtime field {field_name} on data view {view_id}: {runtime_field}.'
slots:
field_name: path.fieldName
view_id: path.viewId
runtime_field: requestBody.runtimeField
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/data_view/{viewId}/runtime_field/{fieldName}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a runtime field
effect: destructive
questions:
- How do I remove a runtime field from a data view?
- Can I drop a computed field I no longer need?
instructions:
- text: Delete runtime field {field_name} from data view {view_id}.
slots:
field_name: path.fieldName
view_id: path.viewId
- text: Remove {field_name} from {view_id}.
slots:
field_name: path.fieldName
view_id: path.viewId
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/default'].get
update:
x-apievangelist-phrasing:
intent: Get the default data view
effect: read
questions:
- Which data view is the default in this space?
- What data view does Kibana fall back to when none is picked?
instructions:
- text: Show the default data view ID.
- text: Tell me which data view is set as default.
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/default'].post
update:
x-apievangelist-phrasing:
intent: Set the default data view
effect: write
questions:
- How do I change which data view is the default in my space?
- Can I force a new default data view even if one is already set?
instructions:
- text: Make {data_view_id} the default data view.
slots:
data_view_id: requestBody.data_view_id
- text: Set {data_view_id} as default, forcing the change ({force}).
slots:
data_view_id: requestBody.data_view_id
force: requestBody.force
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/swap_references'].post
update:
x-apievangelist-phrasing:
intent: Repoint saved objects to another data view
effect: write
questions:
- Can I move all dashboards from one data view to another?
- Is it possible to delete the old data view after swapping references?
instructions:
- text: Swap saved object references from {from_id} to {to_id}.
slots:
from_id: requestBody.fromId
to_id: requestBody.toId
- text: Repoint references from data view {from_id} to {to_id} and delete the old one ({delete}).
slots:
from_id: requestBody.fromId
to_id: requestBody.toId
delete: requestBody.delete
method: generated
generated: '2026-09-26'
- target: $.paths['/api/data_views/swap_references/_preview'].post
update:
x-apievangelist-phrasing:
intent: Preview a data view reference swap
effect: read
questions:
- Which saved objects would be affected if I swap data views?
- Can I dry-run a data view reference swap before applying it?
instructions:
- text: Preview swapping references from {from_id} to {to_id}.
slots:
from_id: requestBody.fromId
to_id: requestBody.toId
- text: List the objects that would move from {from_id} to {to_id} without changing anything.
slots:
from_id: requestBody.fromId
to_id: requestBody.toId
method: generated
generated: '2026-09-26'