EvoHub Docs Sign in

Uptime API › Checks and uptime

List a monitor's checks

Use with AI
View as MarkdownThis page as plain text, for pasting into an AI tool Open in ClaudeAsk Claude questions about this page Open in ChatGPTAsk ChatGPT questions about this page
Connect to Cursor / VS Code / ClaudeSearch and read these docs from your AI tool (MCP server)

MCP server URL

https://docs-dev.evohub.io/mcp

Claude Code

claude mcp add --transport http evohub-docs-docs https://docs-dev.evohub.io/mcp

Claude (claude.ai and Claude Desktop): Settings → Connectors → Add custom connector, and paste the URL above.

Claude Desktop — claude_desktop_config.json

{
  "mcpServers": {
    "evohub-docs-docs": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://docs-dev.evohub.io/mcp"
      ]
    }
  }
}

Cursor — ~/.cursor/mcp.json

{
  "mcpServers": {
    "evohub-docs-docs": {
      "url": "https://docs-dev.evohub.io/mcp"
    }
  }
}

VS Code — .vscode/mcp.json

{
  "servers": {
    "evohub-docs-docs": {
      "type": "http",
      "url": "https://docs-dev.evohub.io/mcp"
    }
  }
}
GET/api/v1/monitors/{id}/checks

The monitor's most recent check results, newest first, one per probe location per check. A heartbeat monitor records a check only when its state changes.

data is [] when the monitor has no checks yet.

Requires the uptime:monitor:read scope.

Authorization

Any one of:

Parameters

Path parameters

  • id string required
    The monitor's ID.
    Example: mon_8c1d0b52-6f3e-4a7d-9b21-0e5c4f7a3d19

Query parameters

  • limit integer
    How many checks to return. A value outside 1–1000, or not a number, is read as 100.
    Default: 100 · Minimum: 1 · Maximum: 1000

Responses

200

The checks.

Content type: application/json

Type: object

  • data array of Check
    Show Check properties
    • id string
    • monitor_id string
    • org_id string
    • location string
    • status MonitorStatus
      One of: up down degraded unknown
    • latency_ms integer
    • status_code integer
    • error string
      Why the check failed.
    • ssl_expiry_days integer
    • checked_at string (date-time)

401

No API key was sent, or it is unknown, revoked or expired (UNAUTHORIZED).

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: MONITOR_NOT_FOUND
    • message string required
      Example: monitor not found
    • request_id string

403

The key lacks the scope this endpoint needs (FORBIDDEN).

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: MONITOR_NOT_FOUND
    • message string required
      Example: monitor not found
    • request_id string

404

The monitor does not exist, or belongs to a team the caller cannot see (MONITOR_NOT_FOUND).

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: MONITOR_NOT_FOUND
    • message string required
      Example: monitor not found
    • request_id string

429

Too many requests (RATE_LIMITED). Wait for Retry-After seconds.

Headers

  • Retry-After integer
    Seconds to wait before retrying.

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: MONITOR_NOT_FOUND
    • message string required
      Example: monitor not found
    • request_id string

500

Something went wrong on EvoHub's side (INTERNAL_ERROR). Retry later.

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: MONITOR_NOT_FOUND
    • message string required
      Example: monitor not found
    • request_id string

Example request

curl -X GET 'https://evohub.io/api/v1/monitors/mon_8c1d0b52-6f3e-4a7d-9b21-0e5c4f7a3d19/checks' \
  -H 'Authorization: Bearer <TOKEN>'

Last updated