返回顶部
k

kibana

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
293
下载量
0
收藏
概述
安装方式
版本历史

kibana

# Kibana Access Kibana saved objects, dashboards, data views, spaces, alerts, and fleet via managed API authentication. ## Quick Start ```bash python <<'EOF' import urllib.request, os, json req = urllib.request.Request('https://gateway.maton.ai/kibana/api/saved_objects/_find?type=dashboard') req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}') req.add_header('kbn-xsrf', 'true') print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) EOF ``` ## Base URL ``` https://gateway.maton.ai/kibana/{native-api-path} ``` The gateway proxies requests to your Kibana instance and automatically injects authentication. ## Authentication All requests require the Maton API key and the `kbn-xsrf` header: ``` Authorization: Bearer $MATON_API_KEY kbn-xsrf: true ``` **Environment Variable:** Set your API key as `MATON_API_KEY`: ```bash export MATON_API_KEY="YOUR_API_KEY" ``` ### Getting Your API Key 1. Sign in or create an account at [maton.ai](https://maton.ai) 2. Go to [maton.ai/settings](https://maton.ai/settings) 3. Copy your API key ## Connection Management Manage your Kibana connections at `https://ctrl.maton.ai`. ### List Connections ```bash python <<'EOF' import urllib.request, os, json req = urllib.request.Request('https://ctrl.maton.ai/connections?app=kibana&status=ACTIVE') req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}') print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) EOF ``` ### Create Connection ```bash python <<'EOF' import urllib.request, os, json data = json.dumps({'app': 'kibana'}).encode() req = urllib.request.Request('https://ctrl.maton.ai/connections', data=data, method='POST') req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}') req.add_header('Content-Type', 'application/json') print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) EOF ``` Open the returned `url` in a browser to complete authentication. You'll need to provide your Kibana API key. ### Delete Connection ```bash python <<'EOF' import urllib.request, os, json req = urllib.request.Request('https://ctrl.maton.ai/connections/{connection_id}', method='DELETE') req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}') print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) EOF ``` --- ## API Reference **Important:** All Kibana API requests require the `kbn-xsrf: true` header. ### Status & Features #### Get Status ```bash GET /kibana/api/status ``` **Response:** ```json { "name": "kibana", "uuid": "abc123", "version": { "number": "8.15.0", "build_hash": "..." }, "status": { "overall": {"level": "available"} } } ``` #### List Features ```bash GET /kibana/api/features ``` Returns list of all Kibana features and their capabilities. --- ### Saved Objects #### Find Saved Objects ```bash GET /kibana/api/saved_objects/_find?type={type} ``` **Query Parameters:** - `type` - Object type: `dashboard`, `visualization`, `index-pattern`, `search`, `lens`, `map` - `search` - Search query - `page` - Page number - `per_page` - Results per page (default 20, max 10000) - `fields` - Fields to return **Response:** ```json { "page": 1, "per_page": 20, "total": 5, "saved_objects": [ { "id": "abc123", "type": "dashboard", "attributes": { "title": "My Dashboard", "description": "Dashboard description" }, "version": "1", "updated_at": "2024-01-01T00:00:00.000Z" } ] } ``` #### Get Saved Object ```bash GET /kibana/api/saved_objects/{type}/{id} ``` #### Create Saved Object ```bash POST /kibana/api/saved_objects/{type}/{id} Content-Type: application/json { "attributes": { "title": "My Index Pattern", "timeFieldName": "@timestamp" } } ``` #### Update Saved Object ```bash PUT /kibana/api/saved_objects/{type}/{id} Content-Type: application/json { "attributes": { "title": "Updated Title" } } ``` #### Delete Saved Object ```bash DELETE /kibana/api/saved_objects/{type}/{id} ``` #### Bulk Operations ```bash POST /kibana/api/saved_objects/_bulk_get Content-Type: application/json [ {"type": "dashboard", "id": "abc123"}, {"type": "visualization", "id": "def456"} ] ``` --- ### Data Views #### List Data Views ```bash GET /kibana/api/data_views ``` **Response:** ```json { "data_view": [ { "id": "abc123", "title": "logs-*", "timeFieldName": "@timestamp" } ] } ``` #### Get Data View ```bash GET /kibana/api/data_views/data_view/{id} ``` #### Create Data View ```bash POST /kibana/api/data_views/data_view Content-Type: application/json { "data_view": { "title": "logs-*", "timeFieldName": "@timestamp" } } ``` **Response:** ```json { "data_view": { "id": "abc123", "title": "logs-*", "timeFieldName": "@timestamp" } } ``` #### Update Data View ```bash POST /kibana/api/data_views/data_view/{id} Content-Type: application/json { "data_view": { "title": "updated-logs-*" } } ``` #### Delete Data View ```bash DELETE /kibana/api/data_views/data_view/{id} ``` --- ### Spaces #### List Spaces ```bash GET /kibana/api/spaces/space ``` **Response:** ```json [ { "id": "default", "name": "Default", "description": "Default space", "disabledFeatures": [] } ] ``` #### Get Space ```bash GET /kibana/api/spaces/space/{id} ``` #### Create Space ```bash POST /kibana/api/spaces/space Content-Type: application/json { "id": "marketing", "name": "Marketing", "description": "Marketing team space", "disabledFeatures": [] } ``` #### Update Space ```bash PUT /kibana/api/spaces/space/{id} Content-Type: application/json { "id": "marketing", "name": "Marketing Team", "description": "Updated description" } ``` #### Delete Space ```bash DELETE /kibana/api/spaces/space/{id} ``` --- ### Alerting #### Find Alert Rules ```bash GET /kibana/api/alerting/rules/_find ``` **Query Parameters:** - `search` - Search query - `page` - Page number - `per_page` - Results per page **Response:** ```json { "page": 1, "per_page": 10, "total": 5, "data": [ { "id": "abc123", "name": "CPU Alert", "consumer": "alerts", "enabled": true, "rule_type_id": "metrics.alert.threshold" } ] } ``` #### Get Alert Rule ```bash GET /kibana/api/alerting/rule/{id} ``` #### Enable/Disable Rule ```bash POST /kibana/api/alerting/rule/{id}/_enable POST /kibana/api/alerting/rule/{id}/_disable ``` #### Mute/Unmute Rule ```bash POST /kibana/api/alerting/rule/{id}/_mute_all POST /kibana/api/alerting/rule/{id}/_unmute_all ``` #### Get Alerting Health ```bash GET /kibana/api/alerting/_health ``` --- ### Connectors (Actions) #### List Connectors ```bash GET /kibana/api/actions/connectors ``` **Response:** ```json [ { "id": "abc123", "name": "Email Connector", "connector_type_id": ".email", "is_preconfigured": false, "is_deprecated": false } ] ``` #### Get Connector ```bash GET /kibana/api/actions/connector/{id} ``` #### List Connector Types ```bash GET /kibana/api/actions/connector_types ``` #### Execute Connector ```bash POST /kibana/api/actions/connector/{id}/_execute Content-Type: application/json { "params": { "to": ["user@example.com"], "subject": "Alert", "message": "Alert triggered" } } ``` --- ### Fleet #### List Agent Policies ```bash GET /kibana/api/fleet/agent_policies ``` **Response:** ```json { "items": [ { "id": "abc123", "name": "Default policy", "namespace": "default", "status": "active" } ], "total": 1, "page": 1, "perPage": 20 } ``` #### List Agents ```bash GET /kibana/api/fleet/agents ``` #### List Packages ```bash GET /kibana/api/fleet/epm/packages ``` Returns all available integrations/packages. --- ### Security #### List Roles ```bash GET /kibana/api/security/role ``` **Response:** ```json [ { "name": "admin", "metadata": {}, "elasticsearch": { "cluster": ["all"], "indices": [...] }, "kibana": [...] } ] ``` #### Get Role ```bash GET /kibana/api/security/role/{name} ``` --- ### Cases #### Find Cases ```bash GET /kibana/api/cases/_find ``` **Query Parameters:** - `status` - `open`, `in-progress`, `closed` - `severity` - `low`, `medium`, `high`, `critical` - `page` - Page number - `perPage` - Results per page **Response:** ```json { "cases": [], "page": 1, "per_page": 20, "total": 0 } ``` --- ## Code Examples ### JavaScript ```javascript const response = await fetch('https://gateway.maton.ai/kibana/api/saved_objects/_find?type=dashboard', { headers: { 'Authorization': `Bearer ${process.env.MATON_API_KEY}`, 'kbn-xsrf': 'true' } }); const dashboards = await response.json(); console.log(dashboards); ``` ### Python ```python import os import requests response = requests.get( 'https://gateway.maton.ai/kibana/api/saved_objects/_find?type=dashboard', headers={ 'Authorization': f'Bearer {os.environ["MATON_API_KEY"]}', 'kbn-xsrf': 'true' } ) print(response.json()) ``` --- ## Notes - All requests require `kbn-xsrf: true` header - Saved object types: `dashboard`, `visualization`, `index-pattern`, `search`, `lens`, `map` - Data views are the modern replacement for index patterns - Spaces provide multi-tenancy support - Fleet manages Elastic Agents and integrations - Some operations require specific Kibana privileges ## Error Handling | Status | Meaning | |--------|---------| | 200 | Success | | 204 | No content (successful delete) | | 400 | Invalid request | | 401 | Invalid or missing authentication | | 403 | Permission denied | | 404 | Resource not found | | 409 | Conflict (e.g., object already exists) | ## Resources - [Kibana REST API Documentation](https://www.elastic.co/docs/api/doc/kibana/) - [Saved Objects API](https://www.elastic.co/guide/en/kibana/current/saved-objects-api.html) - [Alerting API](https://www.elastic.co/guide/en/kibana/current/alerting-apis.html) - [Fleet API](https://www.elastic.co/guide/en/fleet/current/fleet-apis.html) - [Maton Community](https://discord.com/invite/dBfFAcefs2) - [Maton Support](mailto:support@maton.ai)

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 kibana-1776114301 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 kibana-1776114301 技能

通过命令行安装

skillhub install kibana-1776114301

下载 Zip 包

⬇ 下载 kibana v1.0.0

文件大小: 4.39 KB | 发布时间: 2026-4-14 10:33

v1.0.0 最新 2026-4-14 10:33
Initial release: Kibana API skill with managed authentication and broad object management support.

- Provides secure, managed access to Kibana APIs via the Maton gateway.
- Supports operations for saved objects, dashboards, data views, spaces, alerting, connectors, and fleet.
- Includes quick-start code samples for Python and environment setup.
- Details for listing, creating, updating, and deleting Kibana resources.
- Guides for connection management through the Maton control portal.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部