OverviewGetting StartedAPI Reference

Documentación de PulseAPI

PulseAPI monitorea tus endpoints de API y te alerta cuando algo falla. Esta documentación cubre configuración, la API REST y conceptos clave.

Conceptos clave

Endpoints

URLs que deseas monitorear. Cada endpoint se verifica en un intervalo configurable (1 min a 1 hora) mediante HTTP.

Verificaciones

Sondas de monitoreo individuales. Cada check registra código de estado, tiempo de respuesta y resultados opcionales de aserciones.

Alertas

Se activan automáticamente tras 2+ fallos consecutivos. Las alertas de recuperación se envían cuando el endpoint vuelve. Las alertas de respuesta lenta están limitadas a 1/hora.

Páginas de estado

Páginas públicas que muestran el estado de los endpoints, barras de disponibilidad e incidentes. Soportan dominios personalizados y branding.

Incidentes

Rastrea interrupciones con actualizaciones de línea de tiempo, niveles de severidad y postmortems. Los suscriptores son notificados automáticamente.

URL base

https://api.pulseapi.tech

Todos los endpoints de la API son relativos a esta URL base.

Endpoints públicos (sin auth)

Estos endpoints sirven los mismos datos que tus clientes ven en la página alojada. Seguro llamarlos desde el navegador; ideales para embeber el estado en tu propia app, README o docs.

GET/status/:slugDatos de estado

JSON con metadata de la página, estado general, estados de endpoints, arrays de uptime, incidentes y componentes.

SSE/sse/status/:slugStream en tiempo real (SSE)

Stream Server-Sent Events — recibe cambios de estado, nuevos incidentes y resultados de checks al instante. Sin polling.

GET/badge/:slug/uptime.svgBadges embebibles

Badges SVG compatibles con Shields.io: porcentaje de uptime, estado actual y tiempo de respuesta promedio. Pégalos en cualquier README o landing.

Ejemplo en tiempo real

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))
})

Ejemplo rápido

# 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"

¿Listo para empezar? Lee la Primeros pasos o salta a la Referencia de API.