Elastic Stack (ELK Stack) Security Endpoint Management API

Interact with and manage endpoints running the Elastic Defend integration.

Business capability
Threat Detection & Response Management BC-620.30

Operations 29

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 /api/endpoint/action List endpoint response actions · Get response actions #
Ask an LLM
“What response actions have been run against my endpoints?”
“Can I filter response action history by user or date range?”
Tell an agent
List all endpoint response actions.
Show response actions run on agents {agent_ids}.
GET /api/endpoint/action_status Get pending response action status for agents · Get response actions status #
Ask an LLM
“Do any of my agents have response actions still pending?”
“What is the response action status for a set of endpoint agents?”
Tell an agent
Check the response action status for agents {agent_ids}.
Show pending action counts for agent {agent_ids}.
GET /api/endpoint/action/{action_id} Get details of a response action · Get action details #
Ask an LLM
“Did a specific response action complete successfully?”
“What output did one particular response action return?”
Tell an agent
Show the details of response action {action_id}.
Check whether action {action_id} finished.
GET /api/endpoint/action/{action_id}/file/{file_id} Get info about a response action file · Get file information #
Ask an LLM
“What file was collected by a get-file response action, and how big is it?”
“Is a retrieved endpoint file ready for download yet?”
Tell an agent
Show information for file {file_id} from action {action_id}.
Check the status of file {file_id} retrieved by action {action_id}.
GET /api/endpoint/action/{action_id}/file/{file_id}/download Download a file from a response action · Download a file #
Ask an LLM
“How can I download a file that was pulled from an endpoint?”
“What password opens the zip archive of a retrieved endpoint file?”
Tell an agent
Download file {file_id} from response action {action_id}.
Save the zipped file {file_id} collected by action {action_id}.
POST /api/endpoint/action/cancel Cancel a pending response action · Cancel a response action #
Ask an LLM
“Can I cancel a response action that is still pending on a host?”
“Is cancelling a running response action supported for every agent type?”
Tell an agent destructive · confirm first
Cancel the pending response action on endpoint {endpoint_ids}.
Cancel the running action on {endpoint_ids} with comment {comment}.
POST /api/endpoint/action/execute Run a shell command on an endpoint · Run a command #
Ask an LLM
“Can I run a shell command remotely on a compromised host?”
“How do I execute a command on an endpoint and capture its output?”
Tell an agent
Run the shell command {parameters} on endpoint {endpoint_ids}.
Execute a command on {endpoint_ids} and link it to case {case_ids}.
POST /api/endpoint/action/get_file Retrieve a file from an endpoint · Get a file #
Ask an LLM
“Can I pull a suspicious file off a host for analysis?”
“What do I need to collect a file from an endpoint by path?”
Tell an agent
Retrieve the file at {parameters} from endpoint {endpoint_ids}.
Collect a file from host {endpoint_ids} for alert {alert_ids}.
POST /api/endpoint/action/isolate Isolate an endpoint from the network · Isolate an endpoint #
Ask an LLM
“How do I cut a compromised host off from the network?”
“Does an isolated endpoint stay isolated until someone releases it?”
Tell an agent
Isolate endpoint {endpoint_ids} from the network.
Network-isolate host {endpoint_ids} with the note {comment}.
POST /api/endpoint/action/kill_process Terminate a process on an endpoint · Terminate a process #
Ask an LLM
“Can I kill a malicious process running on a host?”
“What details do I need to terminate a process by PID on an endpoint?”
Tell an agent destructive · confirm first
Kill process {parameters} on endpoint {endpoint_ids}.
Terminate the running process on {endpoint_ids} tied to alert {alert_ids}.
POST /api/endpoint/action/memory_dump Capture a memory dump from a host · Generate a memory dump from the host machine #
Ask an LLM
“Can I capture a memory dump from a host under investigation?”
“Is a memory dump taken of the whole machine or a single process?”
Tell an agent
Generate a memory dump on endpoint {endpoint_ids}.
Capture memory from {endpoint_ids} using options {parameters}.
POST /api/endpoint/action/run_script Run a script on a host · Run a script #
Ask an LLM
“Can I run a remediation script on a host remotely?”
“Which agent types support running a script as a response action?”
Tell an agent
Run script {parameters} on endpoint {endpoint_ids}.
Run a script on {endpoint_ids} for agent type {agent_type}.
POST /api/endpoint/action/running_procs List processes running on an endpoint · Get running processes #
Ask an LLM
“What processes are running on a suspicious host right now?”
“Can I pull a live process list from an endpoint?”
Tell an agent
Get the running processes on endpoint {endpoint_ids}.
Pull a process list from {endpoint_ids} for case {case_ids}.
POST /api/endpoint/action/scan Scan a file or folder for malware · Scan a file or directory #
Ask an LLM
“Can I trigger a malware scan of a folder on a host?”
“Is it possible to scan one specific file on an endpoint?”
Tell an agent
Scan the path {parameters} on endpoint {endpoint_ids} for malware.
Run a malware scan on {endpoint_ids}.
GET /api/endpoint/action/state Check whether response action encryption is on · Get actions state #
Ask an LLM
“Is encryption enabled for endpoint response actions?”
“What is the overall state of the response actions feature?”
Tell an agent
Check the response actions state.
Tell me if response action encryption is enabled.
POST /api/endpoint/action/suspend_process Suspend a process on an endpoint · Suspend a process #
Ask an LLM
“Can I pause a suspicious process without killing it?”
“What do I need to suspend a running process on a host?”
Tell an agent
Suspend process {parameters} on endpoint {endpoint_ids}.
Freeze the running process on {endpoint_ids} with note {comment}.
POST /api/endpoint/action/unisolate Release an isolated endpoint · Release an isolated endpoint #
Ask an LLM
“How do I bring an isolated host back onto the network?”
“Can I release several isolated endpoints at once?”
Tell an agent
Release endpoint {endpoint_ids} from isolation.
Unisolate host {endpoint_ids} and note {comment}.
POST /api/endpoint/action/upload Upload a file to an endpoint · Upload a file #
Ask an LLM
“Can I push a file onto a host during an investigation?”
“Where does a file uploaded to an endpoint end up?”
Tell an agent
Upload {file} to endpoint {endpoint_ids}.
Send the file {file} to host {endpoint_ids} with options {parameters}.
GET /api/endpoint/metadata List endpoint host metadata · Get a metadata list #
Ask an LLM
“Which endpoints are enrolled and what is their host status?”
“Can I list only unhealthy or offline endpoints?”
Tell an agent
List endpoint hosts with status {host_statuses}.
Show endpoints matching {kuery} with status {host_statuses}.
GET /api/endpoint/metadata/{id} Get host metadata for one endpoint · Get metadata #
Ask an LLM
“What OS and agent version is a specific endpoint running?”
“Which policy is applied to one particular host?”
Tell an agent
Show host metadata for endpoint {id}.
Get the details of endpoint {id}.
GET /api/endpoint/policy_response Get an endpoint's latest policy response · Get a policy response #
Ask an LLM
“Did the endpoint security policy apply successfully on a host?”
“Why is a policy failing on a particular agent?”
Tell an agent
Show the latest policy response for agent {agent_id}.
Check policy application status on agent {agent_id}.
GET /api/endpoint/protection_updates_note/{package_policy_id} Get a protection updates note · Get a protection updates note #
Ask an LLM
“What note is recorded about protection updates for a policy?”
“Why were protection updates pinned on a package policy?”
Tell an agent
Show the protection updates note for policy {package_policy_id}.
Read the protection note on {package_policy_id}.
POST /api/endpoint/protection_updates_note/{package_policy_id} Write the protection updates note for a policy · Create or update a protection updates note #
Ask an LLM
“Can I record why protection updates were paused on a policy?”
“How do I change the protection updates note on a package policy?”
Tell an agent
Set the protection updates note on policy {package_policy_id} to {note}.
Save the note {note} for protection updates on {package_policy_id}.
GET /api/endpoint/scripts_library List scripts in the script library · Get a list of scripts #
Ask an LLM
“What scripts are in my endpoint script library?”
“Can I search the script library by name or platform?”
Tell an agent
List all scripts in the script library.
Find library scripts matching {kuery}.
POST /api/endpoint/scripts_library Add a script to the script library · Create script #
Ask an LLM
“How do I add a new script to the endpoint script library?”
“Which platforms can a library script target?”
Tell an agent
Upload {file} as script {name} for platform {platform} as {file_type}.
Create library script {name} from {file} ({file_type}) for {platform}, tagged {tags}.
DELETE /api/endpoint/scripts_library/{script_id} Delete a script from the library · Delete a script #
Ask an LLM
“Can I remove an outdated script from the script library?”
“Is deleting a library script permanent?”
Tell an agent destructive · confirm first
Delete library script {script_id}.
Remove script {script_id} from the script library.
GET /api/endpoint/scripts_library/{script_id} Get a script from the library · Get script #
Ask an LLM
“What does a specific script in the library do and which platform is it for?”
“Does one library script require input when it runs?”
Tell an agent
Show library script {script_id}.
Get the details and instructions of script {script_id}.
PATCH /api/endpoint/scripts_library/{script_id} Update a script in the library · Update script #
Ask an LLM
“Can I change just the description of a library script?”
“How do I replace the file behind an existing library script?”
Tell an agent
Rename library script {script_id} to {name}.
Replace the file of script {script_id} with {file}.
GET /api/endpoint/scripts_library/{script_id}/download Download a library script file · Download a script file #
Ask an LLM
“Can I download the file behind a script in the library?”
“Where do I get the source of a library script to review it?”
Tell an agent
Download the file for library script {script_id}.
Fetch the script source of {script_id}.

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-security-endpoint-management-api-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-security-endpoint-management-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    name: Kibana Team
  description: The Kibana REST APIs enable you to manage resources such as connectors, data views, and saved objects.
  title: Kibana Security Endpoint Management API
  version: ''
  x-doc-license:
    name: Attribution-NonCommercial-NoDerivatives 4.0 International
    url: https://creativecommons.org/licenses/by-nc-nd/4.0/
  x-feedbackLink:
    label: Feedback
    url: https://github.com/elastic/docs-content/issues/new?assignees=&labels=feedback%2Ccommunity&projects=&template=api-feedback.yaml&title=%5BFeedback%5D%3A+
servers:
- url: https://{kibana_url}
  variables:
    kibana_url:
      default: localhost:5601
security:
- apiKeyAuth: []
- basicAuth: []
tags:


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