Get a single service by slug or UUID with current status, components, and recent incidents
curl --request GET \
--url https://api.devhelm.io/api/v1/services/{slugOrId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.devhelm.io/api/v1/services/{slugOrId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.devhelm.io/api/v1/services/{slugOrId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.devhelm.io/api/v1/services/{slugOrId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.devhelm.io/api/v1/services/{slugOrId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.devhelm.io/api/v1/services/{slugOrId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devhelm.io/api/v1/services/{slugOrId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"slug": "<string>",
"name": "<string>",
"adapterType": "<string>",
"pollingIntervalSeconds": 123,
"enabled": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"recentIncidents": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>",
"status": "<string>",
"serviceSlug": "<string>",
"serviceName": "<string>",
"externalId": "<string>",
"impact": "<string>",
"startedAt": "2023-11-07T05:31:56Z",
"resolvedAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"shortlink": "<string>",
"detectedAt": "2023-11-07T05:31:56Z",
"vendorCreatedAt": "2023-11-07T05:31:56Z",
"affectedRegions": [
"<string>"
]
}
],
"components": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"externalId": "<string>",
"name": "<string>",
"status": "<string>",
"showcase": true,
"onlyShowIfDegraded": true,
"lifecycleStatus": "<string>",
"dataType": "full",
"hasUptime": true,
"displayAggregatedUptime": true,
"firstSeenAt": "2023-11-07T05:31:56Z",
"lastSeenAt": "2023-11-07T05:31:56Z",
"isGroup": true,
"description": "<string>",
"groupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"position": 123,
"startDate": "2023-11-07T05:31:56Z",
"vendorCreatedAt": "2023-11-07T05:31:56Z",
"region": "<string>",
"groupName": "<string>",
"childCount": 123,
"uptime": {
"source": "vendor_reported",
"day": 99.95,
"week": 99.98,
"month": 99.92
},
"statusChangedAt": "2023-11-07T05:31:56Z"
}
],
"activeMaintenances": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"externalId": "<string>",
"title": "<string>",
"status": "<string>",
"affectedComponents": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"status": "<string>"
}
],
"updates": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"body": "<string>",
"displayAt": "2023-11-07T05:31:56Z"
}
],
"impact": "<string>",
"shortlink": "<string>",
"scheduledFor": "2023-11-07T05:31:56Z",
"scheduledUntil": "2023-11-07T05:31:56Z",
"startedAt": "2023-11-07T05:31:56Z",
"completedAt": "2023-11-07T05:31:56Z"
}
],
"dataCompleteness": "<string>",
"slaPublished": true,
"category": "<string>",
"officialStatusUrl": "<string>",
"developerContext": "<string>",
"logoUrl": "<string>",
"currentStatus": {
"overallStatus": "<string>",
"lastPolledAt": "2023-11-07T05:31:56Z"
},
"componentsSummary": {
"totalCount": 123,
"includedCount": 123,
"groupComponentCounts": {}
},
"uptime": {
"source": "vendor_reported",
"day": 99.95,
"week": 99.98,
"month": 99.92
},
"seoMetadata": {
"shortDescription": "<string>",
"description": "<string>",
"about": "<string>"
},
"slaData": {
"slaType": "<string>",
"officialSla": {
"percentage": "<string>",
"scope": "<string>",
"measurement": "<string>",
"exclusions": "<string>",
"appliesToPlans": [
"<string>"
],
"notCovered": "<string>"
},
"serviceBreakdown": [
{
"service": "<string>",
"slaPercentage": "<string>",
"scope": "<string>",
"notes": "<string>"
}
],
"pricingTiers": [
{
"name": "<string>",
"slaPercentage": "<string>",
"priceFrom": "<string>"
}
],
"creditPolicy": {
"summary": "<string>",
"maxCreditPercent": 123,
"claimWindowDays": 123,
"creditApplicationDays": 123,
"tiers": [
{
"uptimeRange": "<string>",
"creditPercent": 123,
"formula": "<string>",
"notes": "<string>"
}
]
},
"noSlaContext": {
"reason": "<string>",
"historicalClaim": "<string>",
"supportSla": "<string>",
"enterpriseNote": "<string>"
},
"sourceUrls": {
"slaPage": "<string>",
"pricingPage": "<string>",
"tosPage": "<string>",
"statusPage": "<string>",
"allSlasPage": "<string>"
},
"lastResearched": "<string>",
"researchNotes": "<string>"
},
"relatedServices": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"slug": "<string>",
"name": "<string>",
"adapterType": "<string>",
"pollingIntervalSeconds": 123,
"enabled": true,
"published": true,
"slaPublished": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"componentCount": 123,
"activeIncidentCount": 123,
"dataCompleteness": "<string>",
"category": "<string>",
"officialStatusUrl": "<string>",
"developerContext": "<string>",
"logoUrl": "<string>",
"overallStatus": "<string>",
"uptime30d": 123
}
]
}
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}Status Data
Get a single service by slug or UUID with current status, components, and recent incidents
When summary=true, the inline components list is trimmed to groups + showcase leaves + currently-impacted leaves + ungrouped leaves, and a componentsSummary block is added with the trimmed counts. Powers SSR for vendors with hundreds of components (Snowflake, Cloudflare, DigitalOcean) without OOM-ing the renderer. Default false for full back-compat.
GET
/
api
/
v1
/
services
/
{slugOrId}
Get a single service by slug or UUID with current status, components, and recent incidents
curl --request GET \
--url https://api.devhelm.io/api/v1/services/{slugOrId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.devhelm.io/api/v1/services/{slugOrId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.devhelm.io/api/v1/services/{slugOrId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.devhelm.io/api/v1/services/{slugOrId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.devhelm.io/api/v1/services/{slugOrId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.devhelm.io/api/v1/services/{slugOrId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devhelm.io/api/v1/services/{slugOrId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"slug": "<string>",
"name": "<string>",
"adapterType": "<string>",
"pollingIntervalSeconds": 123,
"enabled": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"recentIncidents": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>",
"status": "<string>",
"serviceSlug": "<string>",
"serviceName": "<string>",
"externalId": "<string>",
"impact": "<string>",
"startedAt": "2023-11-07T05:31:56Z",
"resolvedAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"shortlink": "<string>",
"detectedAt": "2023-11-07T05:31:56Z",
"vendorCreatedAt": "2023-11-07T05:31:56Z",
"affectedRegions": [
"<string>"
]
}
],
"components": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"externalId": "<string>",
"name": "<string>",
"status": "<string>",
"showcase": true,
"onlyShowIfDegraded": true,
"lifecycleStatus": "<string>",
"dataType": "full",
"hasUptime": true,
"displayAggregatedUptime": true,
"firstSeenAt": "2023-11-07T05:31:56Z",
"lastSeenAt": "2023-11-07T05:31:56Z",
"isGroup": true,
"description": "<string>",
"groupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"position": 123,
"startDate": "2023-11-07T05:31:56Z",
"vendorCreatedAt": "2023-11-07T05:31:56Z",
"region": "<string>",
"groupName": "<string>",
"childCount": 123,
"uptime": {
"source": "vendor_reported",
"day": 99.95,
"week": 99.98,
"month": 99.92
},
"statusChangedAt": "2023-11-07T05:31:56Z"
}
],
"activeMaintenances": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"externalId": "<string>",
"title": "<string>",
"status": "<string>",
"affectedComponents": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"status": "<string>"
}
],
"updates": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"body": "<string>",
"displayAt": "2023-11-07T05:31:56Z"
}
],
"impact": "<string>",
"shortlink": "<string>",
"scheduledFor": "2023-11-07T05:31:56Z",
"scheduledUntil": "2023-11-07T05:31:56Z",
"startedAt": "2023-11-07T05:31:56Z",
"completedAt": "2023-11-07T05:31:56Z"
}
],
"dataCompleteness": "<string>",
"slaPublished": true,
"category": "<string>",
"officialStatusUrl": "<string>",
"developerContext": "<string>",
"logoUrl": "<string>",
"currentStatus": {
"overallStatus": "<string>",
"lastPolledAt": "2023-11-07T05:31:56Z"
},
"componentsSummary": {
"totalCount": 123,
"includedCount": 123,
"groupComponentCounts": {}
},
"uptime": {
"source": "vendor_reported",
"day": 99.95,
"week": 99.98,
"month": 99.92
},
"seoMetadata": {
"shortDescription": "<string>",
"description": "<string>",
"about": "<string>"
},
"slaData": {
"slaType": "<string>",
"officialSla": {
"percentage": "<string>",
"scope": "<string>",
"measurement": "<string>",
"exclusions": "<string>",
"appliesToPlans": [
"<string>"
],
"notCovered": "<string>"
},
"serviceBreakdown": [
{
"service": "<string>",
"slaPercentage": "<string>",
"scope": "<string>",
"notes": "<string>"
}
],
"pricingTiers": [
{
"name": "<string>",
"slaPercentage": "<string>",
"priceFrom": "<string>"
}
],
"creditPolicy": {
"summary": "<string>",
"maxCreditPercent": 123,
"claimWindowDays": 123,
"creditApplicationDays": 123,
"tiers": [
{
"uptimeRange": "<string>",
"creditPercent": 123,
"formula": "<string>",
"notes": "<string>"
}
]
},
"noSlaContext": {
"reason": "<string>",
"historicalClaim": "<string>",
"supportSla": "<string>",
"enterpriseNote": "<string>"
},
"sourceUrls": {
"slaPage": "<string>",
"pricingPage": "<string>",
"tosPage": "<string>",
"statusPage": "<string>",
"allSlasPage": "<string>"
},
"lastResearched": "<string>",
"researchNotes": "<string>"
},
"relatedServices": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"slug": "<string>",
"name": "<string>",
"adapterType": "<string>",
"pollingIntervalSeconds": 123,
"enabled": true,
"published": true,
"slaPublished": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"componentCount": 123,
"activeIncidentCount": 123,
"dataCompleteness": "<string>",
"category": "<string>",
"officialStatusUrl": "<string>",
"developerContext": "<string>",
"logoUrl": "<string>",
"overallStatus": "<string>",
"uptime30d": 123
}
]
}
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}{
"status": 404,
"code": "NOT_FOUND",
"message": "Monitor not found",
"timestamp": 1737302400000,
"requestId": "5b6f7a8c-1234-4d5e-9f0a-1b2c3d4e5f6a"
}Authorizations
API key (dh_live_...) or Auth0 JWT token
Path Parameters
Query Parameters
Return a curated subset of components (groups + showcase + impacted + ungrouped) and a componentsSummary block; default false
Resolve only published services (curated public pSEO set); 404 otherwise. Default false
Response
OK
Show child attributes
Show child attributes
List all enabled services (cursor-paginated)
Previous
List active components for a service with current status and inline uptime
Next
⌘I