Elastic Stack · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Kibana Elastic Agents API

19 actions 19 updates phrasing extends openapi/elk-stack-elastic-agents-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.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 19 · first 16 shown; the file carries all of them

$.info
$.paths['/api/fleet/agent_status/data'].get
$.paths['/api/fleet/agents'].get
$.paths['/api/fleet/agents'].post
$.paths['/api/fleet/agents/{agentId}'].get
$.paths['/api/fleet/agents/{agentId}'].put
$.paths['/api/fleet/agents/{agentId}'].delete
$.paths['/api/fleet/agents/{agentId}/effective_config'].get
$.paths['/api/fleet/agents/{agentId}/migrate'].post
$.paths['/api/fleet/agents/{agentId}/privilege_level_change'].post
$.paths['/api/fleet/agents/{agentId}/uploads'].get
$.paths['/api/fleet/agents/available_versions'].get
$.paths['/api/fleet/agents/bulk_migrate'].post
$.paths['/api/fleet/agents/bulk_privilege_level_change'].post
$.paths['/api/fleet/agents/files/{fileId}'].delete
$.paths['/api/fleet/agents/files/{fileId}/{fileName}'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Kibana Elastic Agents API
  version: 1.0.0
extends: openapi/elk-stack-elastic-agents-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['/api/fleet/agent_status/data'].get
  update:
    x-apievangelist-phrasing:
      intent: Check which data streams agents are sending to
      effect: read
      questions:
      - Is my newly enrolled agent actually sending data yet?
      - Which data streams is a given agent writing to?
      instructions:
      - text: Check incoming data for agents {agent_ids}.
        slots:
          agent_ids: query.agentsIds
      - text: Show data from agents {agent_ids} for package {pkg_name}.
        slots:
          agent_ids: query.agentsIds
          pkg_name: query.pkgName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents'].get
  update:
    x-apievangelist-phrasing:
      intent: List Fleet agents
      effect: read
      questions:
      - Which Elastic Agents are enrolled in Fleet?
      - Can I list only agents that are eligible for an upgrade?
      - How can I include inactive agents in my agent list?
      instructions:
      - text: List all enrolled Fleet agents.
      - text: Find agents matching {kuery}.
        slots:
          kuery: query.kuery
      - text: List agents page {page} with {per_page} per page.
        slots:
          page: query.page
          per_page: query.perPage
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents'].post
  update:
    x-apievangelist-phrasing:
      intent: Find agents by action IDs
      effect: read
      questions:
      - Which agents were targeted by a particular Fleet action?
      - Can I look up agents from a list of action IDs?
      instructions:
      - text: Get the agents associated with actions {action_ids}.
        slots:
          action_ids: requestBody.actionIds
      - text: Show which agents action {action_ids} applied to.
        slots:
          action_ids: requestBody.actionIds
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/{agentId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a Fleet agent
      effect: read
      questions:
      - What status and policy does a specific agent have?
      - Can I see CPU and memory metrics for one agent?
      instructions:
      - text: Show agent {agent_id}.
        slots:
          agent_id: path.agentId
      - text: Get agent {agent_id} with metrics included.
        slots:
          agent_id: path.agentId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/{agentId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update an agent's tags or metadata
      effect: write
      questions:
      - Can I add tags to an enrolled agent?
      - How do I set user-provided metadata on an agent?
      instructions:
      - text: Set the tags on agent {agent_id} to {tags}.
        slots:
          agent_id: path.agentId
          tags: requestBody.tags
      - text: Update metadata of agent {agent_id} to {metadata}.
        slots:
          agent_id: path.agentId
          metadata: requestBody.user_provided_metadata
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/{agentId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a Fleet agent
      effect: destructive
      questions:
      - How do I remove an agent record from Fleet?
      - Can I delete an agent that no longer exists?
      instructions:
      - text: Delete agent {agent_id}.
        slots:
          agent_id: path.agentId
      - text: Remove agent {agent_id} from Fleet.
        slots:
          agent_id: path.agentId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/{agentId}/effective_config'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an agent's effective configuration
      effect: read
      questions:
      - What configuration is an agent actually running with?
      - Can I see the merged effective config of one agent?
      instructions:
      - text: Show the effective config of agent {agent_id}.
        slots:
          agent_id: path.agentId
      - text: Fetch the running configuration for {agent_id}.
        slots:
          agent_id: path.agentId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/{agentId}/migrate'].post
  update:
    x-apievangelist-phrasing:
      intent: Migrate one agent to another cluster
      effect: write
      questions:
      - Can I move a single agent to a different Fleet cluster?
      - What do I need to migrate an agent to a new Fleet Server?
      instructions:
      - text: Migrate agent {agent_id} to {uri} using token {token}.
        slots:
          agent_id: path.agentId
          uri: requestBody.uri
          token: requestBody.enrollment_token
      - text: Move agent {agent_id} to cluster {uri} with enrollment token {token}.
        slots:
          agent_id: path.agentId
          uri: requestBody.uri
          token: requestBody.enrollment_token
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/{agentId}/privilege_level_change'].post
  update:
    x-apievangelist-phrasing:
      intent: Make one agent run unprivileged
      effect: write
      questions:
      - Can I switch a single agent to run without root privileges?
      - How do I drop an agent down to unprivileged mode?
      instructions:
      - text: Change agent {agent_id} to unprivileged.
        slots:
          agent_id: path.agentId
      - text: Run agent {agent_id} unprivileged as user {user_info}.
        slots:
          agent_id: path.agentId
          user_info: requestBody.user_info
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/{agentId}/uploads'].get
  update:
    x-apievangelist-phrasing:
      intent: List files uploaded by an agent
      effect: read
      questions:
      - What diagnostic files has a particular agent uploaded?
      - Can I see an agent's upload history?
      instructions:
      - text: List the uploads from agent {agent_id}.
        slots:
          agent_id: path.agentId
      - text: Show files uploaded by {agent_id}.
        slots:
          agent_id: path.agentId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/available_versions'].get
  update:
    x-apievangelist-phrasing:
      intent: List agent versions available for upgrade
      effect: read
      questions:
      - Which Elastic Agent versions can I upgrade to?
      - What is the newest agent version Fleet offers?
      instructions:
      - text: List available Elastic Agent versions.
      - text: Show the versions my agents can be upgraded to.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/bulk_migrate'].post
  update:
    x-apievangelist-phrasing:
      intent: Migrate many agents to another cluster
      effect: write
      questions:
      - Can I move a batch of agents to a new cluster at once?
      - Is there a dry run before bulk migrating agents?
      instructions:
      - text: Migrate agents {agents} to {uri} with token {token}.
        slots:
          agents: requestBody.agents
          uri: requestBody.uri
          token: requestBody.enrollment_token
      - text: 'Dry-run migrating {agents} to {uri} using token {token}: {dry_run}.'
        slots:
          agents: requestBody.agents
          uri: requestBody.uri
          token: requestBody.enrollment_token
          dry_run: requestBody.dryRun
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/bulk_privilege_level_change'].post
  update:
    x-apievangelist-phrasing:
      intent: Make many agents run unprivileged
      effect: write
      questions:
      - Can I switch a whole group of agents to unprivileged mode?
      - What batch size is used when bulk-changing agent privileges?
      instructions:
      - text: Change agents {agents} to unprivileged.
        slots:
          agents: requestBody.agents
      - text: Bulk-drop privileges for {agents} in batches of {batch_size}.
        slots:
          agents: requestBody.agents
          batch_size: requestBody.batchSize
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/files/{fileId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a file uploaded by an agent
      effect: destructive
      questions:
      - Can I remove a diagnostics bundle an agent uploaded?
      - How do I delete an old agent upload to free space?
      instructions:
      - text: Delete uploaded file {file_id}.
        slots:
          file_id: path.fileId
      - text: Remove agent upload {file_id}.
        slots:
          file_id: path.fileId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/files/{fileId}/{fileName}'].get
  update:
    x-apievangelist-phrasing:
      intent: Download a file uploaded by an agent
      effect: read
      questions:
      - How can I download the diagnostics file an agent uploaded?
      - Where do I retrieve an agent's uploaded file by name?
      instructions:
      - text: Download file {file_name} with ID {file_id}.
        slots:
          file_name: path.fileName
          file_id: path.fileId
      - text: Fetch agent upload {file_id} named {file_name}.
        slots:
          file_id: path.fileId
          file_name: path.fileName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/setup'].get
  update:
    x-apievangelist-phrasing:
      intent: Check whether Fleet is ready to enroll agents
      effect: read
      questions:
      - Is Fleet ready to enroll agents yet?
      - Which Fleet requirements are still missing in my deployment?
      instructions:
      - text: Check the Fleet setup status.
      - text: Tell me what Fleet needs before agents can enroll.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/setup'].post
  update:
    x-apievangelist-phrasing:
      intent: Initialize Fleet
      effect: write
      questions:
      - How do I trigger Fleet setup?
      - Is it safe to call Fleet initialization more than once?
      instructions:
      - text: Initialize Fleet.
      - text: Run Fleet setup again with the kbn-xsrf header set to {xsrf}.
        slots:
          xsrf: header.kbn-xsrf
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/agents/tags'].get
  update:
    x-apievangelist-phrasing:
      intent: List tags used across agents
      effect: read
      questions:
      - What tags are applied to my enrolled agents?
      - Can I include tags from inactive agents?
      instructions:
      - text: List all agent tags.
      - text: Show tags on agents matching {kuery}.
        slots:
          kuery: query.kuery
      method: generated
      generated: '2026-09-26'