Elastic Stack · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Kibana Fleet managed integrations API

8 actions 8 updates phrasing extends openapi/elk-stack-fleet-managed-integrations-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 8

$.info
$.paths['/api/fleet/managed_integrations'].get
$.paths['/api/fleet/managed_integrations'].post
$.paths['/api/fleet/managed_integrations/_upgrade'].post
$.paths['/api/fleet/managed_integrations/_upgrade/dryrun'].post
$.paths['/api/fleet/managed_integrations/{policyId}'].get
$.paths['/api/fleet/managed_integrations/{policyId}'].put
$.paths['/api/fleet/managed_integrations/{policyId}'].delete

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 Fleet managed integrations API
  version: 1.0.0
extends: openapi/elk-stack-fleet-managed-integrations-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: 7
- target: $.paths['/api/fleet/managed_integrations'].get
  update:
    x-apievangelist-phrasing:
      intent: List managed integrations
      effect: read
      questions:
      - Which managed integrations are set up in Fleet?
      - Can I search managed integrations with a KQL filter?
      instructions:
      - text: List all managed integrations.
      - text: Find managed integrations matching {kuery}.
        slots:
          kuery: query.kuery
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/managed_integrations'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a managed integration
      effect: write
      questions:
      - How do I set up a new managed integration for a package?
      - Can I give a managed integration its own namespace?
      instructions:
      - text: Create managed integration {name} for package {package}.
        slots:
          name: requestBody.name
          package: requestBody.package
      - text: Add managed integration {name} using {package} in namespace {namespace}.
        slots:
          name: requestBody.name
          package: requestBody.package
          namespace: requestBody.namespace
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/managed_integrations/_upgrade'].post
  update:
    x-apievangelist-phrasing:
      intent: Upgrade managed integrations in bulk
      effect: write
      questions:
      - Can I upgrade several managed integrations to the installed package version at once?
      - How are failures reported when bulk-upgrading managed integrations?
      instructions:
      - text: Upgrade managed integrations {policy_ids}.
        slots:
          policy_ids: requestBody.policyIds
      - text: Apply the installed package version to policies {policy_ids}.
        slots:
          policy_ids: requestBody.policyIds
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/managed_integrations/_upgrade/dryrun'].post
  update:
    x-apievangelist-phrasing:
      intent: Preview a managed integration upgrade
      effect: read
      questions:
      - What would change if I upgraded my managed integrations?
      - Can I preview upgrading to a package version that isn't installed yet?
      instructions:
      - text: Preview upgrading managed integrations {policy_ids}.
        slots:
          policy_ids: requestBody.policyIds
      - text: Dry-run upgrading {policy_ids} to package version {pkg_version}.
        slots:
          policy_ids: requestBody.policyIds
          pkg_version: requestBody.pkgVersion
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/managed_integrations/{policyId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a managed integration
      effect: read
      questions:
      - What settings does one managed integration have?
      - Which package version is a specific managed integration on?
      instructions:
      - text: Show managed integration {policy_id}.
        slots:
          policy_id: path.policyId
      - text: Get the configuration of managed integration {policy_id}.
        slots:
          policy_id: path.policyId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/managed_integrations/{policyId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a managed integration's configuration
      effect: write
      questions:
      - Does updating a managed integration clear fields I leave out?
      - Can I change the package of an existing managed integration?
      instructions:
      - text: Replace managed integration {policy_id} with name {name} and package {package}.
        slots:
          policy_id: path.policyId
          name: requestBody.name
          package: requestBody.package
      - text: Rewrite {policy_id} as {name} on {package} with vars {vars}.
        slots:
          policy_id: path.policyId
          name: requestBody.name
          package: requestBody.package
          vars: requestBody.vars
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/fleet/managed_integrations/{policyId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a managed integration
      effect: destructive
      questions:
      - How do I remove a managed integration from Fleet?
      - Can I force-delete a managed integration?
      instructions:
      - text: Delete managed integration {policy_id}.
        slots:
          policy_id: path.policyId
      - text: Force-delete managed integration {policy_id} ({force}).
        slots:
          policy_id: path.policyId
          force: query.force
      method: generated
      generated: '2026-09-26'