Skip to main content
POST
/
api
/
v1
/
resource-groups
Create a new resource group
curl --request POST \
  --url https://api.devhelm.io/api/v1/resource-groups \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "description": "<string>",
  "alertPolicyId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "defaultFrequency": 43215,
  "defaultRegions": [
    "<string>"
  ],
  "defaultAlertChannels": [
    "3c90c3cc-0d44-4b50-8888-8dd25736052a"
  ],
  "defaultEnvironmentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "healthThresholdType": "COUNT",
  "healthThresholdValue": 50,
  "suppressMemberAlerts": true,
  "confirmationDelaySeconds": 300,
  "recoveryCooldownMinutes": 30
}
'
{
  "data": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "organizationId": 123,
    "name": "<string>",
    "slug": "<string>",
    "description": "<string>",
    "alertPolicyId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "defaultFrequency": 123,
    "defaultRegions": [
      "<string>"
    ],
    "defaultRetryStrategy": {
      "type": "<string>",
      "maxRetries": 123,
      "interval": 123
    },
    "defaultAlertChannels": [
      "3c90c3cc-0d44-4b50-8888-8dd25736052a"
    ],
    "defaultEnvironmentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "healthThresholdType": "COUNT",
    "healthThresholdValue": 123,
    "suppressMemberAlerts": true,
    "confirmationDelaySeconds": 123,
    "recoveryCooldownMinutes": 123,
    "health": {
      "status": "operational",
      "totalMembers": 123,
      "operationalCount": 123,
      "activeIncidents": 123,
      "thresholdStatus": "healthy",
      "failingCount": 123
    },
    "members": [
      {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "groupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "memberType": "<string>",
        "monitorId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "name": "<string>",
        "slug": "<string>",
        "subscriptionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "status": "operational",
        "effectiveFrequency": "<string>",
        "createdAt": "2023-11-07T05:31:56Z",
        "uptime24h": 123,
        "chartData": [
          123
        ],
        "avgLatencyMs": 123,
        "p95LatencyMs": 123,
        "lastCheckedAt": "2023-11-07T05:31:56Z",
        "monitorType": "<string>",
        "environmentName": "<string>"
      }
    ],
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z"
  }
}

Authorizations

Authorization
string
header
required

API key (dh_live_...) or Auth0 JWT token

Body

application/json

Request body for creating a resource group

name
string
required

Human-readable name for this group

Maximum string length: 255
description
string | null

Optional description

alertPolicyId
string<uuid> | null

Optional notification policy to apply for this group

defaultFrequency
integer<int32> | null

Default check frequency in seconds applied to members (30–86400)

Required range: 30 <= x <= 86400
defaultRegions
(string | null)[] | null

Default regions applied to member monitors

Default regions applied to member monitors

defaultRetryStrategy
object

Default retry strategy for member monitors; null clears

defaultAlertChannels
(string<uuid> | null)[] | null

Default alert channel IDs applied to member monitors

Default alert channel IDs applied to member monitors

defaultEnvironmentId
string<uuid> | null

Default environment ID applied to member monitors

healthThresholdType
enum<string> | null

Health threshold type: COUNT or PERCENTAGE

Available options:
COUNT,
PERCENTAGE
healthThresholdValue
number | null

Health threshold value: count (0+) or percentage (0–100)

Required range: 0 < x < 100
suppressMemberAlerts
boolean | null

Suppress member-level alert notifications when group manages alerting

confirmationDelaySeconds
integer<int32> | null

Confirmation delay in seconds before group incident creation (0–600)

Required range: 0 <= x <= 600
recoveryCooldownMinutes
integer<int32> | null

Recovery cooldown in minutes after group incident resolves (0–60)

Required range: 0 <= x <= 60

Response

201 - */*

Created

data
object

Resource group with health summary and optional member details