Start now
Monitors

Monitors


Add Monitor

Request

POST /monitors

Parameters

NameTypeDescription
namestringRequired -- Name of the Monitor
titlestringTitle of Monitor for Status Page (Optional)
typestringRequired -- Scheme or Protocol
urnstringRequired -- Urn address
intervalint64Required -- Interval in seconds
regionsarrayRequired -- An array of regions ids
descriptionstringMonitor description
groupsarrayAn array of groups uuid
degradedThresholdfloat64Degraded value in seconds
apdexThresholdfloat64Apdex value in seconds

Request Payload Example

{
  "name": "Example Monitor",
  "title": "Title for Example Monitor",
  "type": "https",
  "urn": "example.com",
  "interval": "2",
  "description": "Description",
  "regions": [ 1, 5 ],
  "groups": [ "93742199-d3d4-4a0a-a7bb-9e66e0a3f83b", "c5623708-3fa4-4598-afc4-d134ca3a2ea8" ],
  "degradedThreshold": 2,
  "apdexThreshold": 0.75`
}

Request Curl Example

curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
-d \
  '{
      "name":"Example Monitor",
      "title":"Title for Example Monitor",
      "type":"https",
      "urn":"example.com",
      "intervalId":2,
      "description":"Description",
      "regions":[ 1, 5 ],
      "groups":["93742199-d3d4-4a0a-a7bb-9e66e0a3f83b", "c5623708-3fa4-4598-afc4-d134ca3a2ea8"],
      "degradedThreshold":2,
      "apdexThreshold":0.75`
  }' \
"https://api.statsignal.dev/v1/monitors"

Response Example

Status: 201 Created

{
  "uuid": "3373ceee-9da4-46b4-ab62-212b1b864823",
  "name": "Example Monitor",
  "title": "Title for Example Monitor",
  "type": "https",
  "urn": "example.com",
  "description": "Description",
  "interval": "2",
  "regions": [
    1,
    5
  ],
  "groups": [
    "93742199-d3d4-4a0a-a7bb-9e66e0a3f83b",
    "c5623708-3fa4-4598-afc4-d134ca3a2ea8"
  ],
  "degradedThreshold": 2,
  "apdexThreshold": 0.75,
  "createdAt": "2020-11-2rT06:36:31Z",
}

 


Edit Monitor

Request

PATCH /monitors/uuid

Parameter

NameTypeDescription
uuidstringRequired -- Monitor uuid
namestringName of the Monitor
titlestringTitle of Monitor for Status Page (Optional)
typestringScheme or Protocol
urnstringUrn address
intervalint64Interval in seconds
regionsarrayAn array of regions ids
descriptionstringMonitor description
groupsarrayAn array of groups uuid
degradedThresholdfloat64Degraded value in seconds
apdexThresholdfloat64Apdex value in seconds

Request Payload Example

{
  "name": "Example Monitor",
  "title": "Title for Example Monitor",
  "type": "https",
  "urn": "example.com",
  "description": "Description",
  "interval": "2",
  "regions": [ 1, 5 ],
  "groups": [ "93742199-d3d4-4a0a-a7bb-9e66e0a3f83b", "c5623708-3fa4-4598-afc4-d134ca3a2ea8" ],
  "degradedThreshold": 2,
  "apdexThreshold": 0.75`
}

Request Curl Example

curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
-d \
  '{
      "name":"Example Monitor",
      "title":"Title for Example Monitor",
      "type":"https",
      "urn":"example.com",
      "intervalId":2,
      "description":"Description",
      "regions":[ 1, 5 ],
      "groups":["93742199-d3d4-4a0a-a7bb-9e66e0a3f83b", "c5623708-3fa4-4598-afc4-d134ca3a2ea8"],
      "degradedThreshold":2,
      "apdexThreshold":0.75`
  }' \
"https://api.statsignal.dev/v1/monitors/3373ceee-9da4-46b4-ab62-212b1b864823"

Response Example

Status: 200 updated

{
  "uuid": "3373ceee-9da4-46b4-ab62-212b1b864823",
  "name": "Example Monitor",
  "title": "Title for Example Monitor",
  "type": "http",
  "urn": "example.com",
  "description": "Description",
  "interval": "2",
  "regions": [
    1,
    5
  ],
  "groups": [
    "93742199-d3d4-4a0a-a7bb-9e66e0a3f83b",
    "c5623708-3fa4-4598-afc4-d134ca3a2ea8"
  ],
  "degradedThreshold": 2,
  "apdexThreshold": 0.75,
  "createdAt": "2020-11-2rT06:36:31Z",
  "updatedAt": "2020-11-2rT06:36:31Z"
}

 


Delete Monitor

Request

DELETE /monitors/uuid

Curl Example

curl -X DELETE \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/monitors/3373ceee-9da4-46b4-ab62-212b1b864823"

Response Example

Status: 204 deleted

 


Get Monitor

Request

GET /monitors/uuid

Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/monitors/5717a4f2-cedf-410b-8dc0-ac1d772c8c64"

Response Example

Status: 200 ok

{
  "uuid": "5717a4f2-cedf-410b-8dc0-ac1d772c8c64",
  "name": "Example Monitor",
  "title": "Title for Example Monitor",
  "type": "https",
  "urn": "example.com",
  "intervalId": 2,
  "description": "Description",
  "regions": [
    3,
    5,
    1
  ],
  "groups": [
    "93742199-d3d4-4a0a-a7bb-9e66e0a3f83b",
    "c5623708-3fa4-4598-afc4-d134ca3a2ea8"
  ],
  "degradedThreshold": 2,
  "apdexThreshold": 0.75,
  "createdAt": "2021-05-16T02:05:24.568781Z",
  "updatedAt": "2021-05-16T02:36:15.912994Z"
}

 


List Monitors

Request

GET /monitors

Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/monitors"

Response Example

Status: 200 ok
{
  "monitors": [
    {
      "uuid": "5717a4f2-cedf-410b-8dc0-ac1d772c8c64",
      "name": "Example Monitor",
      "title": "Title for Example Monitor",
      "type": "https",
      "urn": "example.com",
      "intervalId": 2,
      "description": "Description",
      "regions": [
        3,
        5,
        1
      ],
      "groups": [
        "93742199-d3d4-4a0a-a7bb-9e66e0a3f83b",
        "c5623708-3fa4-4598-afc4-d134ca3a2ea8"
      ],
      "degradedThreshold": 2,
      "apdexThreshold": 0.75,
      "createdAt": "2021-05-16T02:05:24.568781Z",
      "updatedAt": "2021-05-16T02:36:15.912994Z"
    },
    {
      "uuid": "d8cfe22d-7c4c-41a1-89aa-7277889146c2",
      "name": "Example Monitor 2",
      "title": "Title for Example Monitor 2",
      "type": "https",
      "urn": "example.com",
      "intervalId": 1,
      "description": "Description",
      "regions": [
        1,
        3
      ],
      "groups": [
        "93742199-d3d4-4a0a-a7bb-9e66e0a3f83b",
        "c5623708-3fa4-4598-afc4-d134ca3a2ea8"
      ],
      "degradedThreshold": 0,
      "apdexThreshold": 0,
      "createdAt": "2021-05-14T12:41:15.833378Z",
      "updatedAt": "2021-05-15T16:52:28.758982Z"
    }
  ],
  "paginator": {
    "recordOffset": 0,
    "pageSize": 10,
    "pagesCount": 1,
    "recordsCount": 2,
    "recordOffsetChanged": false
  }
}

Groups


Add Group

Request

POST /groups

Parameters

NameTypeDescription
namestringRequired -- Name of Group
titlestringTitle of Group for Status Page (Optional)
descriptionstringDescription of Group
colorstringRequired -- Color of Group Label
monitorsarrayMonitors uuid list

Request Payload Example

{
  "name": "Group Name",
  "title": "Group Title",
  "description": "Description",
  "color": "indigo",
  "monitors": ["9454e78d-29a2-42eb-90eb-963e9c1f349f", "2c593af2-ff1f-4a55-a33f-9ce8dd297990"]
}

Request Curl Example

curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
-d \
  '{
    "name":"Group Name",
    "title":"Group Title",
    "description":"Description",
    "color":"indigo",
    "monitors":["f2afe863-9e18-49ff-8076-2d29ce52e131", "ca2b3709-12b3-4897-bf94-15c47d8fcdf2"]
  }' \
  "https://api.statsignal.dev/v1/groups"

Response Example

Status: 201 Created

{
  "groups": {
    "uuid": "bf959d9f-8175-4263-b66f-c2872bbc791a",
    "name": "Group Name",
    "title": "Group Title",
    "description": "Description",
    "color": "indigo",
    "monitors": ["9454e78d-29a2-42eb-90eb-963e9c1f349f", "2c593af2-ff1f-4a55-a33f-9ce8dd297990"],
    "createdAt": "2021-10-26T17:18:39.02089Z"
  }
}

 


Edit Group

Request

PATCH /groups/uuid

Parameters

NameTypeDescription
uuidstringRequired -- Group uuid
namestringGroup name
titlestringTitle of Group for Status Page (Optional)
descriptionstringDescription of Group
colorstringColor of Group Label
monitorsarrayMonitors uuid list

Request Payload Example

{
  "name": "Group Name",
  "title": "Group Title",
  "description": "Description",
  "color": "turquoise",
  "monitors": ["9454e78d-29a2-42eb-90eb-963e9c1f349f", "2c593af2-ff1f-4a55-a33f-9ce8dd297990"]
}

Request Curl Example

curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
-d \
  '{
    "name":"Group Name",
    "Title":"Group Title",
    "description":"Description",
    "color":"turquoise",
    "monitors":["9454e78d-29a2-42eb-90eb-963e9c1f349f", "2c593af2-ff1f-4a55-a33f-9ce8dd297990"]
  }' \
"https://api.statsignal.dev/v1/groups/35c1f181-508f-4f79-8120-dbbc9b671d73"

Response Example

Status: 200 updated

{
  "groups": {
    "uuid": "bf959d9f-8175-4263-b66f-c2872bbc791a",
    "name": "Group Name",
    "title": "Group Title",
    "description": "Description",
    "color": "turquoise",
    "monitors": ["9454e78d-29a2-42eb-90eb-963e9c1f349f", "2c593af2-ff1f-4a55-a33f-9ce8dd297990"],
    "createdAt": "2021-10-26T17:18:39.02089Z",
    "updatedAt": "2021-10-26T17:20:07.650351Z"
  }
}

 


Delete Group

Request

DELETE /groups/uuid

Curl Example

curl -X DELETE \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/groups/35c1f181-508f-4f79-8120-dbbc9b671d73"

Response Example

Status: 204 deleted

 


Get Group

Request

GET /group/uuid

Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/groups/bf959d9f-8175-4263-b66f-c2872bbc791a"

Response Example

Status: 200 ok

{
  "uuid": "bf959d9f-8175-4263-b66f-c2872bbc791a",
  "name": "Group Name",
  "title": "Group Title",
  "description": "Description",
  "color": "indigo",
  "monitors": ["9454e78d-29a2-42eb-90eb-963e9c1f349f", "2c593af2-ff1f-4a55-a33f-9ce8dd297990"],
  "createdAt": "2021-10-26T17:58:32.098389Z",
  "updatedAt": "2021-10-26T17:58:32.098389Z"
}

 


List Groups

Request

GET /groups

Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/groups"

Response Example

Status: 200 ok

{
  "groups": [
    {
      "uuid": "bf959d9f-8175-4263-b66f-c2872bbc791a",
      "name": "Group Name",
      "title": "Group Title",
      "description": "Description",
      "color": "indigo",
      "monitors": ["9454e78d-29a2-42eb-90eb-963e9c1f349f", "2c593af2-ff1f-4a55-a33f-9ce8dd297990"]
    },
    {
      "uuid": "c5623708-3fa4-4598-afc4-d134ca3a2ea8",
      "name": "Group Name 2",
      "title": "Group Title 2",
      "description": "Description",
      "color": "turquoise",
      "monitors": null
    }
  ],
  "paginator": {
    "recordOffset": 0,
    "pageSize": 10,
    "pagesCount": 1,
    "recordsCount": 2,
    "recordOffsetChanged": false
  }
}

Pages


Add Page

Request

POST /pages

Parameter

NameTypeDescription
namestringRequired -- Page Name
titlestringTitle of Pages for Status Page (Optional)
slugstringRequired -- Page Slug
customDomainstringCustom Domain
useGroupsboolIf the uuids of the items belong to groups, this field is true
itemsarrayUuids of Monitors or Groups
descriptionstringPage Description
logoFileBase64stringCustom Logo in base64 format
faviconFileBase64stringCustom Favicon in base64 format
googleAnalitycsIdstringGoogle Analitycs ID

Request Payload Example

{
  "name": "Example Site",
  "title": "Title for Example Site",
  "slug": "example",
  "customDomain": "status.example.com",
  "useGroups":true,
  "items": [ "4e0b948c-d558-466f-96f9-6758a2a7b23b", "3a46479a-7b6e-4c60-83b8-3769a22fa81f" ],
  "description": "Page Description",
  "logoFileBase64": "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV...",
  "faviconFileBase64": "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV...",
  "googleAnalitycsId": "GoogleAnalitycsID"
}

Request Curl Example

curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
-d \
  '{
    "name":"Example Site",
    "title":"Title for Example Site",
    "slug":"example",
    "customDomain":"status.example.com",
    "useGroups":true,
    "items":["4e0b948c-d558-466f-96f9-6758a2a7b23b", "3a46479a-7b6e-4c60-83b8-3769a22fa81f"],
    "description":"Page Description",
    "logoFileBase64":
      "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV...",
    "faviconFileBase64":
      "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV...",
    "googleAnalitycsId":"GoogleAnalyticsId"
  }' \
  "https://api.statsignal.dev/v1/pages"

Response Example

Status: 201 Created

{
  "pages": [
    {
      "uuid": "6cd3f796-eec0-4891-9892-9dcf19421443",
      "name": "Example Site",
      "title": "Title for Example Site",
      "slug": "example",
      "customDomain": "status.example.com",
      "useGroups":true,
      "items": [
        "4e0b948c-d558-466f-96f9-6758a2a7b23b",
        "3a46479a-7b6e-4c60-83b8-3769a22fa81f"
      ],
      "description": "Page Description",
      "logoUrl": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/logos/d8f88bd1-b0ab-475d-a92b-258c5ed2b0d7.png",
      "faviconUrl": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/favicons/d8f88bd1-b0ab-475d-a92b-258c5ed2b0d7.png",
      "customDomainState": "ready",
      "googleAnalitycsId": "GoogleAnalitycsID",
      "createdAt":"2021-05-13T17:32:49.117457Z"
    }
  ]
}

 


Edit Page

Request

PATCH /pages/uuid

Parameter

NameTypeDescription
uuidstringRequired -- Page Uuid
namestringPage Name
titlestringTitle of Pages for Status Page (Optional)
slugstringPage Slug
customDomainstringCustom Domain
useGroupsboolIf the uuids of the items belong to groups, this field is true
itemsarrayUuids of Monitors or Groups
descriptionstringPage Description
logoFileBase64stringCustom Logo in base64 format
faviconFileBase64stringCustom Favicon in base64 format
googleAnalitycsIdstringGoogle Analitycs ID

Request Payload Example

{
  "name": "Example Site",
  "title": "Title for Example Site",
  "slug": "example",
  "customDomain": "status.example.com",
  "useGroups":false,
  "items": [ "4e0b948c-d558-466f-96f9-6758a2a7b23b", "3a46479a-7b6e-4c60-83b8-3769a22fa81f" ],
  "description": "Page Description",
  "logoFileBase64": "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV...",
  "faviconFileBase64": "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV...",
  "googleAnalitycsId": "GoogleAnalyticsId"
}

Request Curl Example

curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
-d \
  '{
    "name":"Example Site",
    "title":"Title for Example Site",
    "slug":"example",
    "customDomain":"status.example.com",
    "useGroups":false,
    "items":["4e0b948c-d558-466f-96f9-6758a2a7b23b", "3a46479a-7b6e-4c60-83b8-3769a22fa81f"],
    "description":"Page Description",
    "logoFileBase64":
      "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV...",
    "faviconFileBase64":
      "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV...",
    "googleAnalitycsId":"GoogleAnalyticsId"
  }' \
  "https://api.statsignal.dev/v1/pages/6cd3f796-eec0-4891-9892-9dcf19421443"

Response Example

Status: 200 updated

{
  "pages": [
    {
      "uuid": "8965de03-3ebe-463a-9a3f-18db0486ed64",
      "name": "Example Site",
      "title": "Title for Example Site",
      "slug": "example",
      "customDomain": "status.example.com",
      "useGroups":false,
      "items": [
        "4e0b948c-d558-466f-96f9-6758a2a7b23b",
        "3a46479a-7b6e-4c60-83b8-3769a22fa81f"
      ],
      "description": "Page Description",
      "logoFileBase64": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/logos/d8f88bd1-b0ab-475d-a92b-258c5ed2b0d7.png",
      "faviconFileBase64": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/favicons/d8f88bd1-b0ab-475d-a92b-258c5ed2b0d7.png",
      "googleAnalitycsId": "GoogleAnalyticsId",
      "createdAt":"2021-05-13T17:40:04.615602Z",
      "updatedAt":"2021-05-13T18:14:30.411158186Z"
    }
  ]
}

 


Delete Page

Request

DELETE /pages/uuid

Curl Example

curl -X DELETE \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
  "https://api.statsignal.dev/v1/pages/6cd3f796-eec0-4891-9892-9dcf19421443"

Response Example

Status: 204 deleted

 


Get Page

Request

GET /page/uuid

Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
  "https://api.statsignal.dev/v1/pages/e278f98c-50e6-44ea-92ec-e625909c48dd"

Response Example

Status: 200 ok

{
  "uuid": "e278f98c-50e6-44ea-92ec-e625909c48dd",
  "name": "Example Site",
  "title": "Title for Example Site",
  "slug": "example",
  "customDomain": "status.example.com",
  "useGroups":true,
  "items": [
    "4e0b948c-d558-466f-96f9-6758a2a7b23b",
    "3a46479a-7b6e-4c60-83b8-3769a22fa81f"
  ],
  "description": "Page Description",
  "logoUrl": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/logos/3d75dc81-3260-414c-be7e-3c46383c343f.png",
  "faviconUrl": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/favicons/3d75dc81-3260-414c-be7e-3c46383c343f.png",
  "customDomainState": "ready",
  "googleAnalyticsId": "GoogleAnalyticsId",
  "createdAt":"2021-04-13T14:20:09.615602Z",
  "updatedAt":"2021-05-13T18:14:30.411158186Z"
}

 


List Pages

Request

GET /pages

Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
  "https://api.statsignal.dev/v1/pages"

Response Example

Status: 200 ok

{
  "pages": [
    {
      "uuid": "e278f98c-50e6-44ea-92ec-e625909c48dd",
      "name": "Example Site",
      "title": "Title for Example Site",
      "slug": "example",
      "customDomain": "status.example.com",
      "useGroups":true,
      "items": [
        "4e0b948c-d558-466f-96f9-6758a2a7b23b",
        "3a46479a-7b6e-4c60-83b8-3769a22fa81f"
      ],
      "description": "Page Description",
      "logoUrl": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/logos/3d75dc81-3260-414c-be7e-3c46383c343f.png",
      "faviconUrl": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/favicons/3d75dc81-3260-414c-be7e-3c46383c343f.png",
      "customDomainState": "ready",
      "googleAnalyticsId": "GoogleAnalyticsId",
      "createdAt":"2021-04-13T14:20:09.615602Z",
      "updatedAt":"2021-05-13T18:14:30.411158186Z"
    },
    {
      "uuid": "6cd3f796-eec0-4891-9892-9dcf19421443",
      "name": "My Service Site",
      "title": "Title for Example Site",
      "slug": "example",
      "customDomain": "status.example.com",
      "useGroups":false,
      "items": [
        "a8e61ff1-41bb-4eee-a9c9-8addb26e1480",
        "f8068559-4fb9-47ad-9fc0-bdd09c71b54f"
      ],
      "description": "Page Description",
      "logoUrl": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/logos/d8f88bd1-b0ab-475d-a92b-258c5ed2b0d7.png",
      "faviconUrl": "https://statsignal-public-production.s3-us-west-1.amazonaws.com/pages/favicons/d8f88bd1-b0ab-475d-a92b-258c5ed2b0d7.png",
      "customDomainState": "ready",
      "googleAnalyticsId": "GoogleAnalyticsId",
      "createdAt":"2021-05-13T17:40:04.615602Z",
      "updatedAt": "2021-05-13T19:01:40.878775Z"
    }
  ],
  "paginator": {
    "recordOffset": 0,
    "pageSize": 10,
    "pagesCount": 1,
    "recordsCount": 2
  }
}

Intervals


List Intervals

Request

GET /intervals

Request Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/intervals"

Response Example

Status: 200 ok

{
  "intervals": [
    {
      "id": 1,
      "seconds": 15,
    },
    {
      "id": 2,
      "seconds": 30,
    }
  ]
}

Regions


List Regions

Request

GET /regions

Request Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/regions"

Response Example

Status: 200 ok

{
  "regions": [
    {
      "id": 1,
      "name": "San Francisco",
      "country": "United States"
    },
    {
      "id": 2,
      "name": "New York",
      "country": "United States"
    }
  ]
}

Colors


List Colors

Request

GET /colors

Request Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/colors"

Response Example

Status: 200 ok

{
  "colors": [
    "plum",
    "darkorchid",
    "tan"
  ]
}

Webhooks

 


Subscribe to Webhook

Request

POST /webhooks

Parameters

NameTypeDescription
topicstringRequired -- Name of the topic to subscribe
urlstringRequired -- URL where the webhook subscription should send the POST request when the event occurs

Request Payload Example

{
  "topic": "monitors/status_change",
  "url": "https://report.example.com/status_change"
}

Request Curl Example

curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
-d \
  '{
    "topic":"monitors/status_change",
    "url":"https://report.example.com/status_change"
  }' \
"https://api.statsignal.dev/v1/webhooks"

Response Example

Status: 201 Created

{
  "webhook": {
    "uuid": "b7335e08-b376-42a4-a04f-5c871a1c75ac",
    "topic": "monitors/status_change",
    "url": "https://report.example.com/status_change",
    "createdAt": "2021-05-09T04:38:42.09448Z"
  }
}

 


Update Webhook Subscription

Request

PATCH /webhooks/uuid

Parameters

NameTypeDescription
uuidstringRequired -- Uuid of the webhook
urlstringRequired -- URL where the webhook subscription should send the POST request when the event occurs

Request Payload Example

{
  "url": "https://report.example.com/status_up"
}

Request Curl Example

curl -X PATCH \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
-d \
  '{
    "url":"https://report.example.com/status_up"
  }' \
"https://api.statsignal.dev/v1/webhooks/b7335e08-b376-42a4-a04f-5c871a1c75ac"

Response Example

Status: 200 Updated

{
  "uuid": "b7335e08-b376-42a4-a04f-5c871a1c75ac",
  "topic": "monitors/status_change",
  "url": "https://report.example.com/status_up",
  "createdAt": "2021-05-09T04:38:42.09448Z",
  "updatedAt": "2021-05-09T04:47:28.583677294Z"
}

 


Get Webhook Subscription

Request

GET /webhooks/uuid

Request Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/webhooks/b7335e08-b376-42a4-a04f-5c871a1c75ac"

Response Example

Status: 200 Ok

{
  "uuid": "b7335e08-b376-42a4-a04f-5c871a1c75ac",
  "topic": "monitors/status_change",
  "url": "https://report.example.com/status_change",
  "createdAt": "2021-05-09T04:38:42.09448Z",
  "updatedAt": "2021-05-09T04:47:28.583677294Z"
}

 


List Webhook Subscriptions

Request

GET /webhooks

Request Curl Example

curl -X GET \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/webhooks"

Response Example

Status: 200 Ok

{
  "webhook": [
    {
      "uuid": "b7335e08-b376-42a4-a04f-5c871a1c75ac",
      "topic": "monitors/status_change",
      "url": "https://report.example.com/status_change",
      "createdAt": "2021-05-09T04:38:42.09448Z",
      "updatedAt": "2021-05-09T04:47:28.583677294Z"
    },
    {
      "uuid": "e7b3dea9-a28b-4532-8cfe-281127769f30",
      "topic": "monitors/delete",
      "url": "https://report.example.com/delete",
      "createdAt": "2021-05-03T06:02:36.167066Z",
      "updatedAt": "2021-05-03T06:02:36.167066Z"
    }
  ],
  "paginator": {
    "recordOffset": 0,
    "pageSize": 10,
    "pagesCount": 1,
    "recordsCount": 2
  }
}

 


Unsubscribe from Webhook

Request

DELETE /webhooks/uuid

Request Curl Example

curl -X DELETE \
-H "Content-Type: application/json" \
-H "Authorization: Bearer d3d6763224e8f54ee5aeb08202b7eb101d97081876819cb48833d9f892185917" \
"https://api.statsignal.dev/v1/webhooks/b7335e08-b376-42a4-a04f-5c871a1c75ac"

Response Example

Status: 204 deleted

 


Events


Status Change Event

Topic name

monitors/status_change

Response Example

{
  "uuid": "ff1e8739-9407-4de5-92fd-8fb0b04cfcf4",
  "urn": "example.com",
  "type": "https",
  "name": "My service",
  "status": "up",
  "statusAt": "2021-05-15T13:01:03.195431-05:00"
}

 


Status Event

Topic names

monitors/status_up
monitors/status_degraded
monitors/status_disrupted
monitors/status_down
monitors/status_maintenance
monitors/status_paused
monitors/status_disabled

Response Example

{
  "uuid": "ff1e8739-9407-4de5-92fd-8fb0b04cfcf4",
  "urn": "example.com",
  "type": "https",
  "name": "My service",
  "statusAt": "2021-05-15T13:01:03.195431-05:00"
}

 


Create Event

Topic name

monitors/create

Response Example

{
  "uuid": "ff9c548a-11a6-4c4b-93bd-e1ba40cfd275",
  "urn": "example.com",
  "type": "https",
  "name": "My Service",
  "description": "Page description",
  "interval": 1,
  "regions": [
    1,
    2,
    3,
    4,
    5,
    6,
    7
  ],
  "groups": [
    "099b4065-781c-4d38-9d20-3b5d5b5ed54a",
    "9cf98709-5353-4e5b-9a46-870c7e733232"
  ],
  "createdAt": "2021-05-16T02:46:41.005441Z"
}

 


Update Event

Topic name

monitors/update

Response Example

{
  "uuid": "f4594773-130a-474c-ac2c-be60771e20b4",
  "urn": "example.com",
  "type": "https",
  "name": "My Service",
  "description": "Page description",
  "interval": 2,
  "regions": [
    1,
    2,
    3,
    4,
    5,
    6,
    7
  ],
  "groups": [
    "099b4065-781c-4d38-9d20-3b5d5b5ed54a",
    "9cf98709-5353-4e5b-9a46-870c7e733232"
  ],
  "updatedAt": "2021-05-16T02:50:15.660468Z"
}

 


Delete Event

Topic name

monitors/delete

Response Example

{
  "uuid": "ff9c548a-11a6-4c4b-93bd-e1ba40cfd275",
  "urn": "example.com",
  "type": "https",
  "name": "My Service",
  "description": "Page description",
  "interval": 1,
  "regions": null,
  "groups": null,
  "deletedAt": "2021-05-15T21:53:51.713307198-05:00"
}
Statsignal - Uptime monitoring and status page | Product Hunt
Statsignal is designed and built by 19 Signals LLC. Copyright ©2021 19 Signals LLC. All rights reserved.