WebStatus247 REST API Documentation
This API helps developers, system administrators, and businesses take full control of their monitoring—unlocking advanced capabilities, smooth integrations, and data-driven insights.
Harness the Power of WebStatus247: Detailed API Documentation
To start integrating with the WebStatus247 API, secure your requests with an API key. Retrieve your key from the API section in your user profile (top-right menu in the dashboard).
Include the key in the
Authorization
header of every request:Authorization: Bearer YOUR_API_KEY
Where to find API key
It’s under the API page in the sidebar of your dashboard.
Formats
JSON:Responses can be JSON or XML.
For JSON, set
Accept: application/json
. For XML, setAccept: application/xml
.
XML:{ "webpage": { "uuid": "b4b9614b3e2-3749f41ce00e-wefsd", "user_id": "sdfsdflsdf-0ce-a6a3-sdfsd=pdbsd", "name": "google.com", "previous_status": "up", "avg_response_time": 0, "log_report_date": "2024-03-14", "updated_at": "2024-03-15T04:02:46.315000Z", "created_at": "2024-03-14T08:24:51.093000Z" } }
<?xml version="1.0"?> <root> <webpage> <uuid>b4b9614b3e2-3749f41ce00e-wefsd</uuid> <user_id>sdfsdflsdf-0ce-a6a3-sdfsd=pdbsd</user_id> <name>google.com</name> <type>webpage</type> <status>1</status> <url>google.com</url> <avg_response_time>0</avg_response_time> <log_report_date>2024-03-14</log_report_date> <updated_at>2024-03-15T04:02:46.315000Z</updated_at> <created_at>2024-03-14T08:24:51.093000Z</created_at> </webpage> </root>
API Endpoints
Get Monitors List
Retrieve all monitors on your account, including uptime stats, response times, and more.
Monitor type URL Port monitoring https://app.webstatus247.com/api/port-monitor API monitoring https://app.webstatus247.com/api/api-monitor Webpage monitoring https://app.webstatus247.com/api/webpage-monitor Ping monitoring https://app.webstatus247.com/api/ping-monitor Keyword monitoring https://app.webstatus247.com/api/keyword-monitor Cron monitoring https://app.webstatus247.com/api/cron-monitor SSL monitoring https://app.webstatus247.com/api/ssl-monitor Domain monitoring https://app.webstatus247.com/api/domain-monitor JSON response
XML response{ "servers": { "current_page": 1, "data": [ { "_id": "65eef52cx5ed2679da05955f", "uuid": "xv23wer43435ff4-34rdvsv43", "user_id": "3d85-40sdfcce-a6a3-503434f67cec", "name": "port", "type": "server", "status": 1, "url": "porttest.com", "port": "80", "interval": null, "email": null, "test_result": 1, "previous_status": "up", "avg_response_time": 43.0625, "log_report_date": "2024-03-11", "updated_at": "2024-04-26T15:04:24.066000Z", "created_at": "2024-03-11T12:12:28.414000Z" }, { "_id": "65e1a7296aa1ef29f4089ceb", "uuid": "941b1b1f-16d4-444sf-83f2-1asd", "user_id": "c8ec2ea8-3d85-40ce-a6a3-503434f67cec", "name": "google", "type": "server", "status": 1, "url": "google.com", "port": "8", "interval": "ed78900b-e0f5-4319-84fc-8e30f7e6270f", "email": null, "test_result": 0, "previous_status": "down", "avg_response_time": 38.642857142857146, "log_report_date": "2024-03-01", "updated_at": "2024-04-26T15:04:08.923000Z", "created_at": "2024-03-01T10:00:09.484000Z" } ], "first_page_url": "http://127.0.0.1:8000/api/port-monitor?page=1", "from": 1, "last_page": 1, "last_page_url": "http://127.0.0.1:8000/api/port-monitor?page=1", "links": [ { "url": null, "label": "« Previous", "active": false }, { "url": "http://127.0.0.1:8000/api/port-monitor?page=1", "label": "1", "active": true }, { "url": null, "label": "Next »", "active": false } ], "next_page_url": null, "path": "http://127.0.0.1:8000/api/port-monitor", "per_page": 10, "prev_page_url": null, "to": 5, "total": 5 }, "request": { "attributes": {}, "request": {}, "query": {}, "server": {}, "files": {}, "cookies": {}, "headers": {} }, "up_status": { "xv23wer43435ff4-34rdvsv43": { "totalUpCount": "2/2", "monitorStatus": 1, "upTime": 78.44827586206897, "responseTime": 135.33921586297708, "lastChecked": "2024-04-26T15:04:23.802000Z" }, "941b1b1f-16d4-444sf-83f2-1asd": { "totalUpCount": "0/2", "monitorStatus": 0, "upTime": 80.99128540305011, "responseTime": 51.32622465682471, "lastChecked": "2024-04-26T15:04:23.344000Z" } } }
<?xml version="1.0"?> <root> <servers> <current_page>1</current_page> <data> <item> <_id>65fa9d328ebd13099809e1c2</_id> <uuid>d4933c0b-7bc3-4e80-a062-0ed66dba6ce5</uuid> <user_id>c8ec2ea8-3d85-40ce-a6a3-503434f67cec</user_id> <name>server</name> <type>server</type> <status>1</status> <url>openai.com</url> <port>80</port> <interval/> <email/> <test_result>1</test_result> <previous_status>up</previous_status> <avg_response_time>98</avg_response_time> <log_report_date>2024-03-20</log_report_date> <updated_at>2024-04-24T06:56:47.143000Z</updated_at> <created_at>2024-03-20T08:24:18.297000Z</created_at> </item> <item> <_id>65f3c83c2eaab09445058de7</_id> <uuid>65c0ae9f-de78-4dae-8542-bb2e883c4108</uuid> <user_id>c8ec2ea8-3d85-40ce-a6a3-503434f67cec</user_id> <name>whatsapp</name> <type>server</type> <status>1</status> <url>whatsapp.com</url> <port>80</port> <interval/> <email/> <test_result>1</test_result> <previous_status>up</previous_status> <avg_response_time>65.166666666667</avg_response_time> <log_report_date>2024-03-15</log_report_date> <updated_at>2024-04-26T15:04:24.208000Z</updated_at> <created_at>2024-03-15T04:02:04.079000Z</created_at> </item> </data> <first_page_url>http://127.0.0.1:8000/api/port-monitor?page=1</first_page_url> <from>1</from> <last_page>1</last_page> <last_page_url>http://127.0.0.1:8000/api/port-monitor?page=1</last_page_url> <links> <link><url/><label>« Previous</label><active>false</active></link> <link><url>http://127.0.0.1:8000/api/port-monitor?page=1</url><label>1</label><active>true</active></link> <link><url/><label>Next »</label><active>false</active></link> </links> <next_page_url/> <path>http://127.0.0.1:8000/api/port-monitor</path> <per_page>10</per_page> <prev_page_url/> <to>5</to> <total>5</total> </servers> <request><attributes/><request/><query/><server/><files/><cookies/><headers/></request> <up_status> <item id="1aef352e-cfd2-470e-8753-3e0fc5a708da"> <totalUpCount>2/2</totalUpCount> <monitorStatus>1</monitorStatus> <upTime>78.448275862069</upTime> <responseTime>135.33921586298</responseTime> <lastChecked>2024-04-26T15:04:23.802000Z</lastChecked> </item> </up_status> </root>
Get Monitor Details
- Current status, uptime, average response time, last 5 logs, and more.
- For Domain and SSL monitors, you also get status, expiry date, and related info.
The URL is:
https://app.webstatus247.com/api/<monitor-type>-monitor/<monitor-uuid>
Eg: https://app.webstatus247.com/api/port-monitor/w3rsdkjns-3sndnsof-3icnsidni478(monitor types: port, webpage, api, cron, keyword, ssl, domain, ping)
Get Monitor Overview
- Graph data, average response time, and uptime.
- Uptime/response time for the current day, last week, last month, and last three months.
The URL is:
https://app.webstatus247.com/api/<monitor-type>/over_view/<monitor-uuid>
Eg: https://app.webstatus247.com/api/port/over_view/w3rsdkjns-3sndnsof-3icnsidni478(monitor types: port, webpage, api, cron, keyword, ssl, domain, ping)
Get Monitor Locations
- Get enabled locations and each location’s status, response time, and uptime.
The URL is:
https://app.webstatus247.com/api/<monitor-type>/locations/<monitor-uuid>
Eg: https://app.webstatus247.com/api/port/locations/w3rsdkjns-3sndnsof-3icnsidni478(monitor types: port, webpage, api, cron, keyword, ssl, domain, ping)
Get Failed Logs
- Retrieve failed logs of a monitor in a given location.
The URL is:
https://app.webstatus247.com/api/<monitor-type>/failed_logs/<monitor-uuid>
Eg: https://app.webstatus247.com/api/port/failed_logs/w3rsdkjns-3sndnsof-3icnsidni478(monitor types: port, webpage, api, cron, keyword, ssl, domain, ping)
Post New Monitor
The URL is:
https://app.webstatus247.com/api/<monitor-type>-monitor
Eg: https://app.webstatus247.com/api/port-monitor(monitor types: port, webpage, api, cron, keyword, ssl, domain, ping)
Parameters
api-key required name required url required expected_response_code required (webpage, api) address required (ping) port required (port) method required (api: GET/POST/PUT/DELETE) json optional (api) ssl_port required (ssl) alert_minutes required (cron, minutes) keyword required (keyword) alert required (keyword: keyword_exist | keyword_not_exist) case required (keyword: 1 or 0) interval optional for port, api, webpage, ping, keyword; required for cron.
Pass the UUID of the interval as its value. To get interval details: https://app.webstatus247.com/api/<monitor-type>-monitor/createlocations required for all except cron. Pass location UUIDs as the value. To get location details: https://app.webstatus247.com/api/<monitor-type>-monitor/create JSON request example
{ "name": "google", "url": "google.com", "port": 80, "interval": "ed78900b-dsf4-4f18-84fc-8e30f7e6270f", "locations": [ "09d68f75-dsf4-4f18-aff1-429105944338", "5eeafede-449b-34rg-be6f-358f3857e33b" ] }
XML request example
<request> <name>google api test</name> <url>google.com</url> <port>80</port> <interval>ed78900b-e0f5-4319-84fc-8e30f7e6270f</interval> <locations> <location>09d68f75-e4f5-4f18-aff1-429105944338</location> <location>5eeafede-449b-4bc0-be6f-358f3857e33b</location> </locations> </request>
Edit Monitor
The URL is:
https://app.webstatus247.com/api/<monitor-type>-monitor/<monitor-uuid>
Eg: https://app.webstatus247.com/api/port-monitor/ms2q3and3een-34no3m-asasdadfasf(monitor types: port, webpage, api, cron, keyword, ssl, domain, ping)
Method:
method PUT Parameters
api-key required monitor-uuid required name required url required expected_response_code required (webpage, api) address required (ping) port required (port) method required (api: GET/POST/PUT/DELETE) json optional (api) ssl_port required (ssl) alert_minutes required (cron) keyword required (keyword) alert required (keyword_exist | keyword_not_exist) case required (1 or 0) interval Optional for port, api, webpage, ping, keyword; required for cron.
Pass the UUID of the interval as its value. To get current details: https://app.webstatus247.com/api/<monitor-type>-monitor/<monitor-uuid>JSON request example
{ "name": "google", "url": "google.com", "port": 80, "interval": "ed78900b-dsf4-4f18-84fc-8e30f7e6270f" }
XML request example
<request> <name>google api test</name> <url>google.com</url> <port>80</port> <interval>ed78900b-e0f5-4319-84fc-8e30f7e6270f</interval> </request>
Delete Monitor
The URL is:
https://app.webstatus247.com/api/<monitor-type>-monitor/<monitor-uuid>
Eg: https://app.webstatus247.com/api/port-monitor/ms2q3and3een-34no3m-asasdadfasf(monitor types: port, webpage, api, cron, keyword, ssl, domain, ping)
Method:
method DELETE Parameters
api_key required uuid required Alerts
Add new alert email
Alerts for the monitor will be sent to the added email.
Parameters
api-key required monitor-uuid required email required The URL is:
https://app.webstatus247.com/api/alerts/monitor_mail/<monitor-uuid>JSON request example
{ "email": "user@servermonitor.com" }
XML request example
<request> <email>user@servermonitor.com</email> </request>
Delete an alert email
Delete a monitor’s alert email.
Parameters
api-key required monitor-uuid required The URL is:
https://app.webstatus247.com/api/alerts/monitor_mail_delete/<monitor-uuid>Status pages
Get status pages list
The URL is:
https://app.webstatus247.com/api/status-pageParameters
api_key required Add a status page
method POST Parameters
api-key required name required description required server_ids / webpage_ids / api_ids Any one of these arrays is required The URL is:
https://app.webstatus247.com/api/status-pageJSON request example
{ "name": "status page", "description": "status page test", "server_ids": ["asnfiubasiufb902ubsief", "sdfbuys-asdf-dvuvsdsd", "sdfhisud-gfuysb"] }
Get a status page detail
Explore the details of a specific public status page: configuration and recent incidents.
Parameters
api-key required name required The URL is:
https://app.webstatus247.com/api/status_pages/<name>
Rate limit
To ensure fair usage and platform stability, WebStatus247 enforces rate limits of 60 requests per minute per IP address. Exceeding the limit returns HTTP 429. Handle rate-limit responses gracefully for best performance.