PulseAPI 文档
PulseAPI 监控您的 API 端点,并在出现问题时发出告警。本文档涵盖设置、REST API 和核心概念。
核心概念
端点
您要监控的 URL。每个端点按可配置的间隔(1 分钟到 1 小时)通过 HTTP 检查。
检查
单次监控探测。每次检查记录状态码、响应时间和可选的断言结果。
告警
连续 2 次以上失败后自动触发。端点恢复时发送恢复告警。慢响应告警限制为每小时 1 次。
状态页
显示端点健康状态、可用性条和事件的公开页面。支持自定义域名和品牌。
事件
通过时间线更新、严重级别和事后分析跟踪故障。订阅者会自动收到通知。
基础 URL
所有 API 端点均相对于此基础 URL。
公共端点 (无需认证)
这些端点返回与托管状态页相同的数据。可安全从浏览器调用,适合将状态嵌入你自己的应用、README 或文档。
GET
/status/:slug状态数据返回包含页面元数据、总体状态、端点状态、正常运行时间数组、事件和组件的 JSON。
SSE
/sse/status/:slug实时流 (SSE)Server-Sent Events 流 — 即时接收状态变化、新事件和检查结果。无需轮询。
GET
/badge/:slug/uptime.svg嵌入式徽章兼容 Shields.io 的 SVG 徽章:正常运行时间百分比、当前状态、平均响应时间。可用于任意 README 或落地页。
实时示例
const es = new EventSource('https://api.pulseapi.tech/sse/status/acme')
es.addEventListener('status:changed', (e) => {
const payload = JSON.parse(e.data)
updateBanner(payload.status)
})
es.addEventListener('incident:created', (e) => {
showNotification(JSON.parse(e.data))
})快速示例
# Create an API key in Dashboard > Settings > API Keys, then:
# List your endpoints
curl -H "Authorization: pk_live_abc123..." \
https://api.pulseapi.tech/endpoints
# Create a new endpoint
curl -X POST https://api.pulseapi.tech/endpoints \
-H "Authorization: pk_live_abc123..." \
-H "Content-Type: application/json" \
-d '{"name":"My API","url":"https://api.example.com/health","method":"GET","checkInterval":300,"timeout":10}'
# Check uptime stats
curl -H "Authorization: pk_live_abc123..." \
"https://api.pulseapi.tech/endpoints/ENDPOINT_ID/stats?period=24h"