跳转到主要内容
ClickStack 提供 REST API,可用于以编程方式管理仪表盘、告警和数据源。该 API 同时适用于 托管 ClickStack (ClickHouse Cloud) 和 ClickStack 开源 部署,不过两者的端点和身份验证机制有所不同。

API 参考文档

对于托管 ClickStack,需通过 ClickHouse Cloud API 访问 API。ClickStack 的端点可在 Cloud API 规范 中查看。以下端点可用:
资源操作
仪表盘创建、列出、获取、更新和删除仪表盘
告警创建、列出、获取、更新和删除告警
数据源列出数据源

身份验证

托管 ClickStack 通过 HTTP Basic Authentication 使用 ClickHouse Cloud API key 进行身份验证。要创建和管理 API key,请参阅管理 API key使用 HTTP Basic Authentication 时,需提供 key ID 和 secret:
export KEY_ID=<your_key_id>
export KEY_SECRET=<your_key_secret>

curl --user $KEY_ID:$KEY_SECRET \
  https://api.clickhouse.cloud/v1/organizations/<ORG_ID>/services/<SERVICE_ID>/clickstack/dashboards

Base URL 和请求格式

所有托管 ClickStack API 请求都会发送到 ClickHouse Cloud API:
https://api.clickhouse.cloud/v1/organizations/<ORG_ID>/services/<SERVICE_ID>/clickstack/<resource>
你可以在 ClickHouse Cloud 控制台的 Organization → Organization details 中找到 Organization IDService ID 可在服务 URL 或服务详情页面中查看。

示例:列出仪表盘

curl --user $KEY_ID:$KEY_SECRET \
  https://api.clickhouse.cloud/v1/organizations/<ORG_ID>/services/<SERVICE_ID>/clickstack/dashboards

示例:创建告警

curl -X POST --user $KEY_ID:$KEY_SECRET \
  -H "Content-Type: application/json" \
  -d '{
    "dashboardId": "<DASHBOARD_ID>",
    "tileId": "<TILE_ID>",
    "threshold": 100,
    "interval": "1h",
    "source": "tile",
    "thresholdType": "above",
    "channel": {
      "type": "webhook",
      "webhookId": "<WEBHOOK_ID>"
    },
    "name": "Error Spike Alert",
    "message": "Error rate exceeded 100 in the last hour"
  }' \
  https://api.clickhouse.cloud/v1/organizations/<ORG_ID>/services/<SERVICE_ID>/clickstack/alerts
最后修改于 2026年6月10日