Create a new website monitor
curl --request POST \
--url https://statusstack.com/api/v1/website-monitors \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"url": "<string>",
"check_frequency": 43215
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', url: '<string>', check_frequency: 43215})
};
fetch('https://statusstack.com/api/v1/website-monitors', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://statusstack.com/api/v1/website-monitors"
payload = {
"name": "<string>",
"url": "<string>",
"check_frequency": 43215
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"url": "<string>",
"check_frequency": 123,
"expected_status_code": 349,
"verify_ssl": true,
"search_string": "<string>",
"timeout": 123,
"retries": 2,
"paused": true,
"last_checked_at": "2023-11-07T05:31:56Z",
"last_status": "operational",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}Website monitors
Create a new website monitor
POST
/
v1
/
website-monitors
Create a new website monitor
curl --request POST \
--url https://statusstack.com/api/v1/website-monitors \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"url": "<string>",
"check_frequency": 43215
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', url: '<string>', check_frequency: 43215})
};
fetch('https://statusstack.com/api/v1/website-monitors', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://statusstack.com/api/v1/website-monitors"
payload = {
"name": "<string>",
"url": "<string>",
"check_frequency": 43215
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"url": "<string>",
"check_frequency": 123,
"expected_status_code": 349,
"verify_ssl": true,
"search_string": "<string>",
"timeout": 123,
"retries": 2,
"paused": true,
"last_checked_at": "2023-11-07T05:31:56Z",
"last_status": "operational",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}Authorizations
StatusStack authenticates requests with API keys, created via the dashboard with granular permissions (read, write, delete, admin, *).
API keys support version compatibility:
- v1 keys: Can only access v1 endpoints
- v2 keys: Can access both v1 and v2 endpoints
Available permissions:
read: View resources (GET requests)write: Create and update resources (POST, PUT requests)delete: Delete resources (DELETE requests)admin: Administrative access to all resources*: Wildcard permission (all actions allowed)
Body
application/json
Response
201 - application/json
Website monitor created
Check frequency in seconds (30-86400)
Required range:
100 <= x <= 599Request timeout in seconds (1-60)
Required range:
0 <= x <= 5Available options:
operational, degraded, outage Was this page helpful?

