Stazus docs
Stazus docs

Introduction

Stazus documentationGet startedConcepts

Planned features

Feature availabilityStatus pages

Monitoring

MonitorsChecks and resultsLatency alertingMaintenance windows

Incident response

IncidentsNotificationsTeams and access

Developer API

Developer APIAuthenticationProjectsEndpointsAnalyticsIncidentsErrors and limitsMigrate from v1

Account and help

Account and security

Help

Support

Updates

Changelog
Changelog launchedDocumentation UpdatesDeveloper API v2Scope-aware maintenance windows
Developer API

Analytics

Query monitoring performance for a team, project, or endpoint.

Analytics routes require analytics:read.

Routes

Method and URLResult
GET /api/public/v2/analyticsTeam totals, health, series, and project comparison.
GET /api/public/v2/projects/:projectID/analyticsProject totals, series, incidents, and endpoint comparison.
GET /api/public/v2/endpoints/:endpointID/analyticsEndpoint totals, current state, incidents, and series.

These requests have no payload.

Select a time range

Use one preset window:

  • 1h
  • 6h
  • 24h
  • 7d
  • 30d
  • 90d

The default is 24h. You can replace window with both from and to as RFC 3339 timestamps.

buckets accepts 1 through 200. The default is 48.

curl \
  -H "Authorization: Bearer $SIFTR_DEVELOPER_TOKEN" \
  "https://siftr-backend.jdqc.dev/api/public/v2/analytics?window=7d&buckets=84"

Scheduled, unsuppressed checks contribute to analytics. Manual checks do not change the aggregates.

Stazus calculates p95 latency from at most the 10,000 most recent successful, scheduled, unsuppressed checks in the selected range. Counts, uptime, average, minimum, and maximum use all applicable checks in the range.

Team response

{
  "data": {
    "team_id": 7,
    "window": {
      "from": "2026-08-22T09:00:00Z",
      "to": "2026-08-23T09:00:00Z",
      "bucket_seconds": 1800
    },
    "health": {
      "enabled_endpoints": 12,
      "healthy_endpoints": 10,
      "failing_endpoints": 1,
      "unchecked_endpoints": 1
    },
    "totals": {
      "checks": 17280,
      "failures": 7,
      "uptime_percent": 99.9595,
      "avg_latency_ms": 142.7,
      "min_latency_ms": 61,
      "max_latency_ms": 2104,
      "p95_latency_ms": 311
    },
    "incidents": {
      "total": 2,
      "open": 1
    },
    "series": [
      {
        "bucket_start": "2026-08-22T09:00:00Z",
        "checks": 360,
        "failures": 0,
        "uptime_percent": 100,
        "avg_latency_ms": 138.2
      }
    ],
    "projects": []
  }
}

uptime_percent and latency values are null when the selected range has no applicable checks. Treat null as no data, not zero.

Project response

Project analytics uses the same window, totals, incidents, and series fields. It also returns an endpoints comparison array.

Each endpoint row contains:

  • endpoint_id
  • name
  • enabled
  • checks
  • failures
  • uptime_percent
  • avg_latency_ms
  • up
  • last_check_at

Endpoint response

Endpoint analytics uses the same aggregate fields. It also returns current:

{
  "up": true,
  "last_check_at": "2026-08-23T08:59:00Z",
  "last_status_code": 200,
  "last_latency_ms": 119,
  "consecutive_failures": 0
}

Last updated on

Endpoints

Read endpoint configuration, checks, and current alert state.

Incidents

Read, create, and modify incidents from an integration.

On this page

RoutesSelect a time rangeTeam responseProject responseEndpoint response