Elastic Stack (ELK Stack) Transform API

The transform API from Elastic Stack (ELK Stack) — 13 operation(s) for transform.

Operations 17

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /_transform/{transform_id} Get a transform's configuration · Get transforms #
Ask an LLM
“What source, destination and pivot does a particular transform use?”
“Can I look up several transforms by wildcard?”
Tell an agent
Show the configuration of transform {transform_id}.
Get config for transforms matching {transform_id}.
PUT /_transform/{transform_id} Create a transform · Create a transform #
Ask an LLM
“How do I pivot raw events into an entity-centric summary index?”
“Can a new transform keep only the latest document per entity?”
Tell an agent
Create transform {transform_id} from source {source} into destination {dest}.
Create transform {transform_id} reading {source}, writing {dest}, grouped by pivot {pivot}.
DELETE /_transform/{transform_id} Delete a transform · Delete a transform #
Ask an LLM
“Can I delete a transform and its destination index together?”
“Is it possible to delete a transform that's still running?”
Tell an agent destructive · confirm first
Delete transform {transform_id}.
Force-delete {transform_id} and its destination index.
GET /_transform/_node_stats Get transform usage per node · Get node stats #
Ask an LLM
“How are transforms distributed across my cluster's nodes?”
“What transform activity is each node handling?”
Tell an agent
Show transform node stats.
Get per-node transform usage.
GET /_transform List all transforms · Get transforms #
Ask an LLM
“Which transforms exist in my cluster?”
“Can I page through every transform configuration?”
Tell an agent
List all transforms.
List transforms from {from}, {size} at a time.
GET /_transform/{transform_id}/_stats Get a transform's stats · Get transform stats #
Ask an LLM
“Is my transform running, and how many documents has it processed?”
“Can I get just basic stats to make the call faster?”
Tell an agent
Show stats for transform {transform_id}.
Get basic health and checkpoint stats for {transform_id}.
GET /_transform/{transform_id}/_preview Preview an existing transform's output · Preview a transform #
Ask an LLM
“What results would an existing transform produce right now?”
“How many rows does a transform preview return at most?”
Tell an agent
Preview transform {transform_id}.
Show sample output of saved transform {transform_id} with a GET request.
POST /_transform/{transform_id}/_preview Preview an existing transform via POST · Preview a transform #
Ask an LLM
“Can I preview a saved transform using a POST request?”
“Which call previews an existing transform with a request body?”
Tell an agent
Using POST, preview transform {transform_id}.
POST a preview for {transform_id} with a {timeout} timeout.
GET /_transform/_preview Preview a draft transform config · Preview a transform #
Ask an LLM
“Can I see what a transform would produce before I create it?”
“Does previewing a draft transform also suggest mappings for the destination?”
Tell an agent
Preview a transform from {source} pivoted by {pivot}.
Show sample results for a draft transform keeping latest docs per {latest} from {source}.
POST /_transform/_preview Preview a draft transform config via POST · Preview a transform #
Ask an LLM
“Can I POST an unsaved transform definition to preview its results?”
“Which POST call tests a transform config I haven't saved?”
Tell an agent
Using POST, preview an unsaved transform from {source} into {dest}.
POST a draft transform with pivot {pivot} on {source} to preview it.
POST /_transform/{transform_id}/_reset Reset a transform · Reset a transform #
Ask an LLM
“Can I reset a transform so it reprocesses from scratch?”
“Does resetting a transform delete its destination index?”
Tell an agent destructive · confirm first
Reset transform {transform_id}.
Force-reset running transform {transform_id}.
POST /_transform/{transform_id}/_schedule_now Run a transform immediately · Schedule a transform to start now #
Ask an LLM
“Can I make a transform process new data now instead of waiting for its frequency?”
“Is it possible to defer an instant transform run?”
Tell an agent
Run transform {transform_id} now.
Schedule {transform_id} to process new data immediately, deferred by {defer}.
POST /_transform/set_upgrade_mode Toggle transform upgrade mode · Set upgrade_mode for transform indices #
Ask an LLM
“How do I prepare transform indices for a cluster upgrade?”
“Can I turn off transform upgrade mode after upgrading?”
Tell an agent
Set transform upgrade mode to {enabled}.
Enable cluster-wide transform upgrade mode.
POST /_transform/{transform_id}/_start Start a transform · Start a transform #
Ask an LLM
“Does starting a transform create its destination index automatically?”
“Can I start a transform from a specific point in time?”
Tell an agent
Start transform {transform_id}.
Start {transform_id} processing from {from}.
POST /_transform/{transform_id}/_stop Stop transforms · Stop transforms #
Ask an LLM
“Can I stop a transform after its current checkpoint finishes?”
“Is there a way to stop several transforms at once?”
Tell an agent
Stop transform {transform_id}.
Stop {transform_id} after the next checkpoint and wait for completion.
POST /_transform/{transform_id}/_update Update a transform · Update a transform #
Ask an LLM
“When do changes to a running transform take effect?”
“Can I change an existing transform's frequency or destination?”
Tell an agent
Update transform {transform_id} to run every {frequency}.
Change the description of existing transform {transform_id} to {description}.
POST /_transform/_upgrade Upgrade all transforms · Upgrade all transforms #
Ask an LLM
“How do I bring old transform configurations up to the current format?”
“Can I dry-run a transform upgrade to see what would change?”
Tell an agent
Upgrade all transforms to the latest format.
Do a transform upgrade with dry run set to {dry_run}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/elk-stack:elk-stack-transform-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

elk-stack-transform-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Elasticsearch Request & Response Specification Transform API
  license:
    name: Apache 2.0
    url: https://github.com/elastic/elasticsearch-specification/blob/main/LICENSE
  version: ''
tags:


# --- truncated at 32 KB (615 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/elk-stack/refs/heads/main/openapi/elk-stack-transform-api-openapi.yml