Monitor Object
The Monitor Object in the API represents a monitored Service in Garmingo Status.
This is equal to the Monitors from the "Monitors" Tab in the Dashboard.
Properties
The Monitor Object itself has the following properties:
Property | Type | Description | Required |
---|---|---|---|
id | string | The unique identifier of the Monitor. | Yes |
displayName | string | The name of the Monitor. | Yes |
ttl | number | The checking interval of the Monitor. | Yes |
type | string | The type of the Monitor. | Yes |
region | string | The region of the Monitor. | Yes |
enabled | boolean | Whether the Monitor is enabled. | Yes |
retries | number | The number of retries the Monitor should do before marking the Service as down. | Yes |
keywords | string[] | List of keywords used to search for the Monitor. | Yes (can be empty) |
metadata | object | Additional metadata of the Monitor. | No |
settings | object | Configuration settings of the Monitor. | Yes |
lastCheck | Date | When the Monitor was last checked. | Yes |
proxyType | string | The proxy type used for the Monitor. | No |
proxyHost | string | The proxy host used for the Monitor. | No |
proxyPort | number | The proxy port used for the Monitor. | No |
proxyUsername | string | The proxy username used for the Monitor. | No |
proxyPassword | string | The proxy password used for the Monitor. | No |
currentStatus | boolean | The current status of the Monitor. | Yes |
Example
{
"id": "5f4b3b3b-0b3b-4b3b-0b3b-4b3b0b3b0b3b",
"displayName": "My Monitor",
"ttl": 60,
"type": "http",
"region": "eu-central",
"enabled": true,
"retries": 3,
"keywords": ["my", "monitor"],
"metadata": {
"key": "value"
},
"settings": {
"url": "https://example.com",
"method": "GET",
"headers": {
"Authorization": "Bearer my-token"
},
"body": null
},
"lastCheck": "2021-01-01T00:00:00.000Z",
"proxyType": "socks5",
"proxyHost": "proxy.example.com",
"proxyPort": 8080,
"proxyUsername": "my-username",
"proxyPassword": "my-password",
"currentStatus": true
}
CRUD Operation Objects
The base type of the Monitor Object is returned by the API for all READ operations.
For CREATE, UPDATE and DELETE operations, the Monitor Object is stripped down to the following properties:
Create Monitor Object
Property | Type | Description | Required | Default |
---|---|---|---|---|
displayName | string | The name of the Monitor. | Yes | |
enabled | boolean | Whether the Monitor is enabled. | No | true |
keywords | string[] | List of keywords for the Monitor. | No | [] |
settings | object | Configuration settings of the Monitor. | Yes | |
type | string | The type of the Monitor. | Yes | |
region | string | The region of the Monitor. | Yes | |
ttl | number | The checking interval of the Monitor. | Yes | |
retries | number | The number of retries for the Monitor. | Yes | |
proxyType | string | The proxy type for the Monitor. | No | |
proxyHost | string | The proxy host for the Monitor. | No | |
proxyPort | number | The proxy port for the Monitor. | No | |
proxyUsername | string | The proxy username for the Monitor. | No | |
proxyPassword | string | The proxy password for the Monitor. | No |
Example
{
"displayName": "My Monitor",
"enabled": true,
"keywords": ["my", "monitor"],
"settings": {
"url": "https://example.com",
"method": "GET",
"headers": {
"Authorization": "Bearer my-token"
},
"body": null
},
"type": "http",
"region": "eu-central",
"ttl": 60,
"retries": 3,
"proxyType": "socks5",
"proxyHost": "proxy.example.com",
"proxyPort": 8080,
"proxyUsername": "my-username",
"proxyPassword": "my-password"
}
Update Monitor Object
Property | Type | Description | Required | Default |
---|---|---|---|---|
displayName | string | The name of the Monitor. | No | |
enabled | boolean | Whether the Monitor is enabled. | No | |
keywords | string[] | List of keywords for the Monitor. | No | |
settings | object | Configuration settings of the Monitor. | No | |
type | string | The type of the Monitor. | No | |
region | string | The region of the Monitor. | No | |
ttl | number | The checking interval of the Monitor. | No | |
retries | number | The number of retries for the Monitor. | No | |
proxyType | string | The proxy type for the Monitor. | No | |
proxyHost | string | The proxy host for the Monitor. | No | |
proxyPort | number | The proxy port for the Monitor. | No | |
proxyUsername | string | The proxy username for the Monitor. | No | |
proxyPassword | string | The proxy password for the Monitor. | No |
Example
{
"displayName": "My Monitor",
"enabled": true
}