[DOCS] Add minimalistic feature API docs (#212559)

This commit is contained in:
Lisa Cawley 2025-03-11 13:03:20 -07:00 committed by GitHub
parent 323cbdb9cd
commit 37a0a69d43
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 195 additions and 2 deletions

View file

@ -230,7 +230,11 @@ tags:
- name: system
x-displayName: System
description: |
Get information about the system status, resource usage, and installed plugins.
Get information about the system status, resource usage, features, and installed plugins.
- description: |
Get information about the system status, resource usage, features, and installed plugins.
name: system
x-displayName: System
- description: Check the upgrade status of your Elasticsearch cluster and reindex indices that were created in the previous major version. The assistant helps you prepare for the next major version of Elasticsearch.
name: upgrade
x-displayName: Upgrade assistant
@ -15105,6 +15109,89 @@ paths:
summary: Create a shared exception list
tags:
- Security Exceptions API
/api/features:
get:
description: |
Get information about all Kibana features. Features are used by spaces and security to refine and secure access to Kibana.
operationId: get-features
responses:
'200':
content:
application/json:
examples:
getFeaturesExample:
value: |
{
"features": [
{
"name": "tasks",
"description": "Manages task results"
},
{
"name": "security",
"description": "Manages configuration for Security features, such as users and roles"
},
{
"name": "searchable_snapshots",
"description": "Manages caches and configuration for searchable snapshots"
},
{
"name": "logstash_management",
"description": "Enables Logstash Central Management pipeline storage"
},
{
"name": "transform",
"description": "Manages configuration and state for transforms"
},
{
"name": "kibana",
"description": "Manages Kibana configuration and reports"
},
{
"name": "synonyms",
"description": "Manages synonyms"
},
{
"name": "async_search",
"description": "Manages results of async searches"
},
{
"name": "ent_search",
"description": "Manages configuration for Enterprise Search features"
},
{
"name": "machine_learning",
"description": "Provides anomaly detection and forecasting functionality"
},
{
"name": "geoip",
"description": "Manages data related to GeoIP database downloader"
},
{
"name": "watcher",
"description": "Manages Watch definitions and state"
},
{
"name": "fleet",
"description": "Manages configuration for Fleet"
},
{
"name": "enrich",
"description": "Manages data related to Enrich policies"
},
{
"name": "inference_plugin",
"description": "Inference plugin for managing inference services and inference"
}
]
}
schema:
type: object
description: Indicates a successful call
summary: Get features
tags:
- system
x-state: Technical Preview
/api/fleet/agent_download_sources:
get:
description: '[Required authorization] Route required privileges: ANY of [fleet-agent-policies-read OR fleet-settings-read].'

View file

@ -101,7 +101,7 @@ actions:
update:
x-displayName: "System"
description: >
Get information about the system status, resource usage, and installed plugins.
Get information about the system status, resource usage, features, and installed plugins.
# Remove extra tags from operations
- target: "$.paths[*][*].tags[1:]"
description: Remove all but first tag from operations

View file

@ -18,6 +18,7 @@ const { REPO_ROOT } = require('@kbn/repo-info');
`${REPO_ROOT}/x-pack/platform/plugins/shared/alerting/docs/openapi/bundled.yaml`,
`${REPO_ROOT}/x-pack/platform/plugins/shared/cases/docs/openapi/bundled.yaml`,
`${REPO_ROOT}/src/platform/plugins/shared/data_views/docs/openapi/bundled.yaml`,
`${REPO_ROOT}/x-pack/platform/plugins/shared/features/docs/openapi/feature_apis.yaml`,
`${REPO_ROOT}/x-pack/platform/plugins/shared/ml/common/openapi/ml_apis.yaml`,
`${REPO_ROOT}/src/core/packages/saved-objects/docs/openapi/bundled.yaml`,
`${REPO_ROOT}/x-pack/platform/plugins/private/upgrade_assistant/docs/openapi/upgrade_apis.yaml`,

View file

@ -0,0 +1,7 @@
# OpenAPI (Experimental)
The current self-contained spec file can be used for online tools like those found at https://openapi.tools/. This spec is experimental and may be incomplete or change later.
A guide about the openApi specification can be found at [https://spec.openapis.org/oas/latest](https://spec.openapis.org/oas/latest).
These files are joined with the rest of the Kibana APIs per `oas_docs/README.md`

View file

@ -0,0 +1,98 @@
openapi: 3.0.3
info:
title: Feature APIs
description: Kibana get feature APIs
version: "1.0.0"
license:
name: Elastic License 2.0
url: https://www.elastic.co/licensing/elastic-license
tags:
- name: system
description: System
servers:
- url: /
paths:
/api/features:
get:
summary: Get features
description: >
Get information about all Kibana features.
Features are used by spaces and security to refine and secure access to Kibana.
operationId: get-features
x-state: Technical Preview
tags:
- system
responses:
'200':
description: Indicates a successful call
content:
application/json:
schema:
type: object
examples:
getFeaturesExample:
value: |
{
"features": [
{
"name": "tasks",
"description": "Manages task results"
},
{
"name": "security",
"description": "Manages configuration for Security features, such as users and roles"
},
{
"name": "searchable_snapshots",
"description": "Manages caches and configuration for searchable snapshots"
},
{
"name": "logstash_management",
"description": "Enables Logstash Central Management pipeline storage"
},
{
"name": "transform",
"description": "Manages configuration and state for transforms"
},
{
"name": "kibana",
"description": "Manages Kibana configuration and reports"
},
{
"name": "synonyms",
"description": "Manages synonyms"
},
{
"name": "async_search",
"description": "Manages results of async searches"
},
{
"name": "ent_search",
"description": "Manages configuration for Enterprise Search features"
},
{
"name": "machine_learning",
"description": "Provides anomaly detection and forecasting functionality"
},
{
"name": "geoip",
"description": "Manages data related to GeoIP database downloader"
},
{
"name": "watcher",
"description": "Manages Watch definitions and state"
},
{
"name": "fleet",
"description": "Manages configuration for Fleet"
},
{
"name": "enrich",
"description": "Manages data related to Enrich policies"
},
{
"name": "inference_plugin",
"description": "Inference plugin for managing inference services and inference"
}
]
}