Creating Your First Monitor

A detailed guide to creating and configuring your first monitor in MonitorHound, including advanced options.

Choosing a monitor type

MonitorHound supports three monitor types. Choose based on what you need to check:

  • HTTP — Check any URL for availability and content. Best for websites, APIs, and health check endpoints.
  • DNS — Verify that DNS records resolve to expected values. Best for catching misconfigurations and unauthorized changes.
  • SSL — Monitor certificate expiry and chain validity. Best for preventing certificate-related outages.

Creating an HTTP monitor

  1. Click New Monitor and select HTTP
  2. Enter the full URL including the protocol (e.g., https://api.example.com/health)
  3. Configure the following options:

Basic settings

SettingDescriptionDefault
MethodHTTP method (GET, HEAD, POST, PUT, DELETE)GET
IntervalHow often to check (1 min, 2 min, or 5 min — plan dependent)5 minutes
Expected status codesStatus codes that indicate success200, 201, 202, 204, 301, 302, 304

Advanced settings

  • Headers — Add custom request headers (e.g., Authorization: Bearer <token>)
  • Request body — For POST/PUT requests, include a JSON body
  • Response body assertions — JSONPath expressions to validate response content (supports operators: equals, not_equals, contains, exists, gt, gte, lt, lte)

Assigning alert channels

After configuring the check settings, assign one or more alert channels. When the monitor detects a failure:

  1. All selected locations check simultaneously
  2. The evaluator aggregates results and determines the monitor state
  3. Alerts are sent to all assigned channels
  4. When the service recovers, a recovery notification is sent

Testing your monitor

After creation, use the Test Alert button on the monitor detail page to send a test notification through all linked channels. This verifies your alert channels are configured correctly.

If the check fails unexpectedly, review:

  • Is the URL correct and accessible from the internet?
  • Does the endpoint require authentication headers?
  • Are the expected status codes correct for this endpoint?