> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devhelm.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Status Data Guide

> Track third-party service health with dependencies, uptime queries, and incident monitoring

This guide covers how to use the Status Data API to track the health of services your applications depend on. For conceptual background, see [Status Data overview](/status-data/overview).

## Browse the service catalog

List available services:

<CodeGroup>
  ```bash CLI theme={null}
  devhelm services list
  ```

  ```bash API theme={null}
  curl https://api.devhelm.io/api/v1/services?limit=20
  ```
</CodeGroup>

Filter by category:

```bash theme={null}
curl "https://api.devhelm.io/api/v1/services?category=cloud-infrastructure&limit=20"
```

Get a specific service by slug:

```bash theme={null}
curl https://api.devhelm.io/api/v1/services/github
```

## Add service dependencies

Add services you depend on so DevHelm notifies you when their status changes:

```bash theme={null}
curl -X POST https://api.devhelm.io/api/v1/service-subscriptions/github \
  -H "Authorization: Bearer $DEVHELM_API_TOKEN"
```

Dependencies connect the Status Data system to your notification policies. When a tracked service has an incident, DevHelm evaluates your policies and alerts through configured channels.

<Note>
  Free plans support up to 10 service dependencies. Paid plans have unlimited dependencies.
</Note>

## Query uptime data

Get historical uptime for a service:

```bash theme={null}
curl "https://api.devhelm.io/api/v1/services/github/uptime?period=30d&granularity=daily" \
  -H "Authorization: Bearer $DEVHELM_API_TOKEN"
```

Response includes overall uptime percentage and time-bucketed data:

```json theme={null}
{
  "overallUptimePct": 99.95,
  "period": "30d",
  "granularity": "daily",
  "buckets": [
    { "timestamp": "2026-04-01T00:00:00Z", "uptimePct": 100.0 },
    { "timestamp": "2026-04-02T00:00:00Z", "uptimePct": 99.8 }
  ]
}
```

### Available periods and granularity

| Period | Description   | Allowed granularity          |
| ------ | ------------- | ---------------------------- |
| `24h`  | Last 24 hours | `hourly`, `daily`            |
| `7d`   | Last 7 days   | `hourly`, `daily`            |
| `30d`  | Last 30 days  | `hourly`, `daily`, `monthly` |
| `90d`  | Last 90 days  | `hourly`, `daily`, `monthly` |
| `1y`   | Last year     | `daily`, `monthly`           |
| `2y`   | Last 2 years  | `daily`, `monthly`           |
| `all`  | All history   | `daily`, `monthly`           |

## View components

Services break down into components (e.g., API, dashboard, CDN):

```bash theme={null}
curl https://api.devhelm.io/api/v1/services/github/components
```

Get uptime for a specific component:

```bash theme={null}
curl "https://api.devhelm.io/api/v1/services/github/components/<component-id>/uptime?period=30d"
```

## Track incidents

List incidents for a service:

```bash theme={null}
# Active incidents
curl "https://api.devhelm.io/api/v1/services/github/incidents?status=active"

# Resolved incidents
curl "https://api.devhelm.io/api/v1/services/github/incidents?status=resolved"

# Cross-service incidents
curl "https://api.devhelm.io/api/v1/services/incidents?status=active"
```

Get incident details with timeline:

```bash theme={null}
curl https://api.devhelm.io/api/v1/services/github/incidents/<incident-id>
```

## View maintenance windows

Check scheduled maintenance for a service:

```bash theme={null}
curl https://api.devhelm.io/api/v1/services/github/maintenances
```

## Resource groups

Group related monitors and services together for aggregate health tracking:

```bash theme={null}
# Create a resource group
curl -X POST https://api.devhelm.io/api/v1/resource-groups \
  -H "Authorization: Bearer $DEVHELM_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Payment Stack",
    "description": "All payment-related monitors and services"
  }'

# Add members
curl -X POST https://api.devhelm.io/api/v1/resource-groups/<group-id>/members \
  -H "Authorization: Bearer $DEVHELM_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "memberType": "monitor",
    "memberId": "<monitor-id>"
  }'
```

Resource groups aggregate health across monitors and services, and can suppress member-level alerts when a group-level incident is active.

## Next steps

<CardGroup cols={2}>
  <Card title="Alerting guide" icon="bell" href="/guides/alerting">
    Configure notifications for status data incidents.
  </Card>

  <Card title="API Reference" icon="book" href="/api-reference">
    Full Status Data API endpoint reference.
  </Card>
</CardGroup>
