REST API
编辑REST API
编辑某些 Kibana 功能通过 REST API 提供,这非常适合创建与 Kibana 的集成或自动化 Kibana 配置和部署的某些方面。
在 9.0 中,将限制对 Kibana 内部 API 端点的访问。请将所有集成迁移到公开记录的 API。
有关最新详细信息,请参阅 Kibana API。
使用 API
编辑在任何 Kibana API 端点之前添加 kbn:
并通过 开发工具 > 控制台 发送请求。例如
`GET kbn:/api/index_management/indices`
注意:如果从非默认 Kibana 空间运行,这将自动在 API 请求上添加前缀 s/{space_id}/
。
身份验证
编辑Kibana API 支持基于密钥和令牌的身份验证。
基于令牌的身份验证
编辑要使用基于令牌的身份验证,您需要使用与登录 Elastic 时相同的用户名和密码。在给定的 HTTP 工具中,并在可用时,您可以选择使用其基本身份验证选项,用户名和密码存储在其中以便作为调用的一部分传递。
基于密钥的身份验证
编辑要使用基于密钥的身份验证,您需要使用 Elastic 控制台创建 API 密钥,然后在 API 调用的标头中指定该密钥。
有关 API 密钥的信息,请参阅 API 密钥。
API 调用
编辑API 调用是无状态的。您发出的每个请求都与其他调用隔离,并且必须包含 Kibana 满足请求所需的所有信息。API 请求返回 JSON 输出,这是一种机器可读的格式,非常适合自动化。
对 API 端点的调用需要不同的操作。要与 Kibana API 交互,请使用以下操作
- GET - 获取信息。
- POST - 添加新信息。
- PUT - 更新现有信息。
- PATCH - 对现有信息应用部分修改。
- DELETE - 删除信息。
请求头
编辑对于所有 API,您必须使用请求头。Kibana API 支持 kbn-xsrf
和 Content-Type
标头。
-
kbn-xsrf: true
-
默认情况下,您必须对所有 API 调用使用
kbn-xsrf
,以下情况除外- API 端点使用
GET
或HEAD
操作 - 路径使用
server.xsrf.allowlist
设置允许 - 使用
server.xsrf.disableProtection
设置禁用 XSRF 保护
- API 端点使用
-
Content-Type: application/json
- 仅在您在 API 请求中发送有效负载时适用。Kibana API 请求和响应使用 JSON。通常,如果您包含
kbn-xsrf
标头,则还必须包含Content-Type
标头。
请求头示例
curl -X POST \ https://127.0.0.1:5601/api/spaces/space \ -H 'Content-Type: application/json' \ -H 'kbn-xsrf: true' \ -d '{ "id": "sales", "name": "Sales", "description": "This is your Sales Space!", "disabledFeatures": [] } '