Skip to main content
DevHelm records uptime data for every service in the catalog. Query availability percentages over configurable time periods with different granularity levels to understand service reliability trends.

Querying service uptime

devhelm status-data uptime github --period 30d --granularity daily

Response format

{
  "overallUptimePct": 99.95,
  "period": "30d",
  "granularity": "daily",
  "source": "vendor_reported",
  "buckets": [
    {
      "timestamp": "2026-04-01T00:00:00Z",
      "uptimePct": 100.0,
      "totalPolls": 288
    },
    {
      "timestamp": "2026-04-02T00:00:00Z",
      "uptimePct": 99.8,
      "totalPolls": 288
    }
  ]
}

Periods and granularity

Available periods

PeriodDescription
24hLast 24 hours
7dLast 7 days
30dLast 30 days
90dLast 90 days
1yLast year
2yLast 2 years
allAll available history

Granularity options

GranularityDescription
hourlyOne data point per hour
dailyOne data point per day
monthlyOne data point per month

Period × granularity compatibility

Not all combinations are available:
Periodhourlydailymonthly
24hYesYes
7dYesYes
30dYesYesYes
90dYesYesYes
1yYesYes
2yYesYes
allYesYes
Hourly granularity is not available for periods of 1 year or longer due to data volume.

Uptime data sources

The source field indicates how uptime data is derived:
SourceDescription
vendor_reportedCalculated from the vendor’s reported component status
incident_derivedCalculated from incident records (used when vendor doesn’t report granular status)
poll_derivedCalculated from DevHelm’s polling results

Component uptime

Query uptime for a specific component of a service:
curl "https://api.devhelm.io/api/v1/services/github/components/<component-id>/uptime?period=30d" \
  -H "Authorization: Bearer $DEVHELM_API_TOKEN"
Components also include inline uptime summaries (24h, 7d, 30d) in the component listing response, so you can get a quick overview without separate uptime queries.

Inline uptime summary

When listing components, each includes an uptime object:
FieldTypeDescription
daydoubleLast 24 hours uptime percentage
weekdoubleLast 7 days uptime percentage
monthdoubleLast 30 days uptime percentage
sourcestringData source (see table above)

Data access tiers

Historical data depth depends on your plan:
PlanMax aggregated dataMax incident history
Free90 days90 days
Pro365 daysUnlimited
Team730 daysUnlimited
Business+UnlimitedUnlimited
Requesting a period that exceeds your plan’s limit returns only the available data within your tier. No error is returned — the response simply contains fewer buckets.

Uptime response fields

FieldTypeDescription
overallUptimePctdoubleOverall uptime percentage for the requested period
periodstringRequested period (e.g., 30d)
granularitystringRequested granularity (e.g., daily)
sourcestringHow uptime was calculated
bucketsarrayTime-series data points

Bucket fields

FieldTypeDescription
timestampdatetimeStart of the time bucket
uptimePctdoubleUptime percentage for this bucket
totalPollsintegerNumber of polls in this bucket
Service catalog browsing is public, but uptime data requires authentication and respects your plan’s data access tier.

Next steps

Services

Browse the catalog and view component-level detail.

Service incidents

View outages that caused uptime dips.

Dependencies

Track services and get alerted on status changes.

API Reference

Full Status Data API endpoint reference.