Sign Up
Monitors
GET /api/v1/monitors

List all monitors (alerts) configured for a project. Includes status, thresholds, and notification channels.

Authorization
Authorization header required
Bearer token using your project API key.
Parameters
pid string<uuid> query required
Project ID to list monitors for.
filter active | paused | triggered query
Filter monitors by status (`active`, `paused`, `triggered`).
since string query
Relative time range for monitor history (e.g. `24h`, `7d`).
Responses
200 List of monitors returned successfully.
401 Missing or invalid authentication.
403 Insufficient permissions for this project.
Response Fields
monitors object[]
monitors[].id string<uuid>
Monitor unique identifier.
monitors[].name string
Human-readable monitor name.
monitors[].status active | paused | triggered
Current monitor status.
monitors[].query string
The metric query this monitor evaluates.
monitors[].threshold object
monitors[].threshold.operator > | >= | < | <= | ==
Comparison operator.
monitors[].threshold.value number
Threshold value.
monitors[].interval string
Evaluation interval (e.g. `5m`, `1h`).
monitors[].notification_channels string[]
List of notification channel IDs.
monitors[].created_at string<date-time>
monitors[].updated_at string<date-time>
curl -X GET "https://api.monoscope.tech/api/v1/monitors?pid=YOUR_PROJECT_ID" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"
import requests

response = requests.get(
  "https://api.monoscope.tech/api/v1/monitors?pid=YOUR_PROJECT_ID",
  headers={
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  }
)
print(response.json())
const response = await fetch("https://api.monoscope.tech/api/v1/monitors?pid=YOUR_PROJECT_ID", {
  method: "GET",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  }
});
const data = await response.json();
console.log(data);
200 application/json
{
  "monitors": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "example",
      "status": "active",
      "query": "example",
      "threshold": {
        "operator": ">",
        "value": 42
      },
      "interval": "example",
      "notification_channels": [
        "example"
      ],
      "created_at": "2025-01-15T10:30:00Z",
      "updated_at": "2025-01-15T10:30:00Z"
    }
  ]
}