Skip to main content
POST
/
monitor
Create a Monitor
curl --request POST \
  --url https://api.alerty.ai/monitor \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z",
  "name": "<string>",
  "resourceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "recipients": [
    {
      "id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
      "createdAt": "2023-11-07T05:31:56Z",
      "updatedAt": "2023-11-07T05:31:56Z",
      "integration": {
        "id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
        "createdAt": "2023-11-07T05:31:56Z",
        "updatedAt": "2023-11-07T05:31:56Z",
        "configuration": {
          "teamId": "<string>",
          "accessToken": "<string>",
          "incomingWebhookURL": "<string>",
          "channelID": "<string>"
        }
      },
      "integrationOverride": {
        "teamId": "<string>",
        "accessToken": "<string>",
        "incomingWebhookURL": "<string>",
        "channelID": "<string>"
      }
    }
  ],
  "pollDurationInterval": "P3Y6M4DT12H30M5S",
  "description": "<string>",
  "snoozedUntil": "2023-11-07T05:31:56Z",
  "query": "<string>"
}
'
import requests

url = "https://api.alerty.ai/monitor"

payload = {
"id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "<string>",
"resourceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"recipients": [
{
"id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"integration": {
"id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"configuration": {
"teamId": "<string>",
"accessToken": "<string>",
"incomingWebhookURL": "<string>",
"channelID": "<string>"
}
},
"integrationOverride": {
"teamId": "<string>",
"accessToken": "<string>",
"incomingWebhookURL": "<string>",
"channelID": "<string>"
}
}
],
"pollDurationInterval": "P3Y6M4DT12H30M5S",
"description": "<string>",
"snoozedUntil": "2023-11-07T05:31:56Z",
"query": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
id: '5df33a85-2b9c-40e3-8854-760ee3b8efc7',
createdAt: '2023-11-07T05:31:56Z',
updatedAt: '2023-11-07T05:31:56Z',
name: '<string>',
resourceId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
recipients: [
{
id: '5df33a85-2b9c-40e3-8854-760ee3b8efc7',
createdAt: '2023-11-07T05:31:56Z',
updatedAt: '2023-11-07T05:31:56Z',
integration: {
id: '5df33a85-2b9c-40e3-8854-760ee3b8efc7',
createdAt: '2023-11-07T05:31:56Z',
updatedAt: '2023-11-07T05:31:56Z',
configuration: {
teamId: '<string>',
accessToken: '<string>',
incomingWebhookURL: '<string>',
channelID: '<string>'
}
},
integrationOverride: {
teamId: '<string>',
accessToken: '<string>',
incomingWebhookURL: '<string>',
channelID: '<string>'
}
}
],
pollDurationInterval: 'P3Y6M4DT12H30M5S',
description: '<string>',
snoozedUntil: '2023-11-07T05:31:56Z',
query: '<string>'
})
};

fetch('https://api.alerty.ai/monitor', 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.alerty.ai/monitor",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'id' => '5df33a85-2b9c-40e3-8854-760ee3b8efc7',
'createdAt' => '2023-11-07T05:31:56Z',
'updatedAt' => '2023-11-07T05:31:56Z',
'name' => '<string>',
'resourceId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'recipients' => [
[
'id' => '5df33a85-2b9c-40e3-8854-760ee3b8efc7',
'createdAt' => '2023-11-07T05:31:56Z',
'updatedAt' => '2023-11-07T05:31:56Z',
'integration' => [
'id' => '5df33a85-2b9c-40e3-8854-760ee3b8efc7',
'createdAt' => '2023-11-07T05:31:56Z',
'updatedAt' => '2023-11-07T05:31:56Z',
'configuration' => [
'teamId' => '<string>',
'accessToken' => '<string>',
'incomingWebhookURL' => '<string>',
'channelID' => '<string>'
]
],
'integrationOverride' => [
'teamId' => '<string>',
'accessToken' => '<string>',
'incomingWebhookURL' => '<string>',
'channelID' => '<string>'
]
]
],
'pollDurationInterval' => 'P3Y6M4DT12H30M5S',
'description' => '<string>',
'snoozedUntil' => '2023-11-07T05:31:56Z',
'query' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api.alerty.ai/monitor"

payload := strings.NewReader("{\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"name\": \"<string>\",\n \"resourceId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"recipients\": [\n {\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"integration\": {\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"configuration\": {\n \"teamId\": \"<string>\",\n \"accessToken\": \"<string>\",\n \"incomingWebhookURL\": \"<string>\",\n \"channelID\": \"<string>\"\n }\n },\n \"integrationOverride\": {\n \"teamId\": \"<string>\",\n \"accessToken\": \"<string>\",\n \"incomingWebhookURL\": \"<string>\",\n \"channelID\": \"<string>\"\n }\n }\n ],\n \"pollDurationInterval\": \"P3Y6M4DT12H30M5S\",\n \"description\": \"<string>\",\n \"snoozedUntil\": \"2023-11-07T05:31:56Z\",\n \"query\": \"<string>\"\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://api.alerty.ai/monitor")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"name\": \"<string>\",\n \"resourceId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"recipients\": [\n {\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"integration\": {\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"configuration\": {\n \"teamId\": \"<string>\",\n \"accessToken\": \"<string>\",\n \"incomingWebhookURL\": \"<string>\",\n \"channelID\": \"<string>\"\n }\n },\n \"integrationOverride\": {\n \"teamId\": \"<string>\",\n \"accessToken\": \"<string>\",\n \"incomingWebhookURL\": \"<string>\",\n \"channelID\": \"<string>\"\n }\n }\n ],\n \"pollDurationInterval\": \"P3Y6M4DT12H30M5S\",\n \"description\": \"<string>\",\n \"snoozedUntil\": \"2023-11-07T05:31:56Z\",\n \"query\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.alerty.ai/monitor")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"name\": \"<string>\",\n \"resourceId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"recipients\": [\n {\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"integration\": {\n \"id\": \"5df33a85-2b9c-40e3-8854-760ee3b8efc7\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"configuration\": {\n \"teamId\": \"<string>\",\n \"accessToken\": \"<string>\",\n \"incomingWebhookURL\": \"<string>\",\n \"channelID\": \"<string>\"\n }\n },\n \"integrationOverride\": {\n \"teamId\": \"<string>\",\n \"accessToken\": \"<string>\",\n \"incomingWebhookURL\": \"<string>\",\n \"channelID\": \"<string>\"\n }\n }\n ],\n \"pollDurationInterval\": \"P3Y6M4DT12H30M5S\",\n \"description\": \"<string>\",\n \"snoozedUntil\": \"2023-11-07T05:31:56Z\",\n \"query\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{
  "id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z",
  "name": "<string>",
  "resourceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "recipients": [
    {
      "id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
      "createdAt": "2023-11-07T05:31:56Z",
      "updatedAt": "2023-11-07T05:31:56Z",
      "integration": {
        "id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
        "createdAt": "2023-11-07T05:31:56Z",
        "updatedAt": "2023-11-07T05:31:56Z",
        "configuration": {
          "teamId": "<string>",
          "accessToken": "<string>",
          "incomingWebhookURL": "<string>",
          "channelID": "<string>"
        }
      },
      "integrationOverride": {
        "teamId": "<string>",
        "accessToken": "<string>",
        "incomingWebhookURL": "<string>",
        "channelID": "<string>"
      }
    }
  ],
  "pollDurationInterval": "P3Y6M4DT12H30M5S",
  "description": "<string>",
  "snoozedUntil": "2023-11-07T05:31:56Z",
  "query": "<string>",
  "resource": {
    "id": "5df33a85-2b9c-40e3-8854-760ee3b8efc7",
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z",
    "name": "<string>",
    "configuration": {
      "url": "<string>"
    }
  }
}
{
"description": "A descriptive error message",
"code": 1400,
"field": "name"
}
{
"description": "A descriptive error message",
"code": 1400,
"field": "name"
}
{
"description": "A descriptive error message",
"code": 1400,
"field": "name"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

resource monitor

id
string<uuid>
required

Unique identifier for the entity

Example:

"5df33a85-2b9c-40e3-8854-760ee3b8efc7"

createdAt
string<date-time>
required
updatedAt
string<date-time>
required
name
string
required

the monitor name

type
enum<string>
required

the monitor type

Available options:
UP_TIME,
LATENCY,
LOAD_TIME,
WEBSITE_TYPO,
STRIPE,
DOMAIN_EXPIRATION,
CERT_EXPIRATION,
CDN_CONFIGURATION,
CLOUDFLARE_REQUESTS,
CLOUDFRONT_REQUESTS,
STATUS_PAGE,
DATABASE_STORAGE_LIMIT,
DATABASE_CPU_USAGE,
DATABASE_MEMORY_USAGE
resourceId
string<uuid>
required
state
enum<string>
required

state of the monitor during its lifecycle

Available options:
ACTIVE,
PAUSED,
SNOOZED,
ERROR
status
enum<string>
required

status of the monitor

Available options:
NO_DATA,
OK,
ALERT,
WARN
priority
enum<string>
required

monitor priority

Available options:
NOT_DEFINED,
CRITICAL,
HIGH,
MEDIUM,
LOW,
INFO
recipients
object[]
required

the monitor recipients of the incidents/alerts notifications

pollDurationInterval
string<duration>

the interval in which the monitor will be checked

Example:

"P3Y6M4DT12H30M5S"

description
string

the monitor description

snoozedUntil
string<date-time>

until when the monitor will be in snoozed mode

query
string

the monitor query

resource
object

Response

monitor created

resource monitor

id
string<uuid>
required

Unique identifier for the entity

Example:

"5df33a85-2b9c-40e3-8854-760ee3b8efc7"

createdAt
string<date-time>
required
updatedAt
string<date-time>
required
name
string
required

the monitor name

type
enum<string>
required

the monitor type

Available options:
UP_TIME,
LATENCY,
LOAD_TIME,
WEBSITE_TYPO,
STRIPE,
DOMAIN_EXPIRATION,
CERT_EXPIRATION,
CDN_CONFIGURATION,
CLOUDFLARE_REQUESTS,
CLOUDFRONT_REQUESTS,
STATUS_PAGE,
DATABASE_STORAGE_LIMIT,
DATABASE_CPU_USAGE,
DATABASE_MEMORY_USAGE
resourceId
string<uuid>
required
state
enum<string>
required

state of the monitor during its lifecycle

Available options:
ACTIVE,
PAUSED,
SNOOZED,
ERROR
status
enum<string>
required

status of the monitor

Available options:
NO_DATA,
OK,
ALERT,
WARN
priority
enum<string>
required

monitor priority

Available options:
NOT_DEFINED,
CRITICAL,
HIGH,
MEDIUM,
LOW,
INFO
recipients
object[]
required

the monitor recipients of the incidents/alerts notifications

pollDurationInterval
string<duration>

the interval in which the monitor will be checked

Example:

"P3Y6M4DT12H30M5S"

description
string

the monitor description

snoozedUntil
string<date-time>

until when the monitor will be in snoozed mode

query
string

the monitor query

resource
object