Skip to content

HTTP Monitoring

Monitor the availability and performance of your websites, REST APIs, and web applications with HTTP(S) monitoring.


Overview

HTTP monitoring checks that your web endpoint is accessible and returns the expected response. UptimeObserver sends HTTP requests to your URL at regular intervals and verifies:

  • The server responds within the timeout period
  • The HTTP status code matches your expected value
  • SSL/TLS certificates are valid (for HTTPS URLs on paid plans)

Configuration Options

URL

Enter the full URL of the endpoint you want to monitor, including the protocol:

  • https://example.com — Monitor a website homepage
  • https://api.example.com/health — Monitor an API health endpoint
  • https://example.com/login — Monitor a specific page

Use HTTPS

Always use HTTPS URLs when possible for security and to enable SSL certificate monitoring.

HTTP Method

Select the HTTP method for the request:

Method Use Case
GET Standard website and API monitoring (default)
HEAD Lightweight checks when you only need to verify availability
POST API endpoints that require POST requests
PUT REST API update endpoints
PATCH REST API partial update endpoints
DELETE REST API delete endpoints (use with caution)

Expected Status Code

Specify which HTTP status code indicates a successful response:

Status Code Meaning
1xx Informational Responses
2xx Success (Default)
3xx Redirection
4xx Client Errors
5xx Server Errors

Redirect Handling

If your URL redirects and follow redirections is disabled, you may need to set the expected status code to 3xx instead of 2xx.

Request Headers

Add custom HTTP headers to your monitoring requests:

Header Use Case
Authorization API authentication (Bearer tokens, API keys)
Content-Type Specify request body format (for POST/PUT/PATCH)
Accept Specify expected response format
User-Agent Custom user agent string
X-Custom-Header Any application-specific headers

Example headers:

Authorization: Bearer your-api-token
Content-Type: application/json
Accept: application/json

Request Body

For POST, PUT, and PATCH requests, you can include a request body:

{
  "check": "health",
}

Timeout

Set the maximum time to wait for a response (in seconds). If the server doesn't respond within this time, the check is marked as failed.

  • Default: 15 seconds
  • Recommended: 10-30 seconds for most endpoints
  • Slow endpoints: Up to 60 seconds for known slow APIs

SSL Certificate Monitoring

Paid Plans Only

SSL certificate monitoring is available on paid subscription plans.

For HTTPS URLs, UptimeObserver automatically monitors your SSL/TLS certificate and alerts you before it expires:

What's Monitored

  • Certificate validity — Ensures the certificate is valid and trusted
  • Expiration date — Alerts you before the certificate expires
  • Certificate chain — Verifies the complete certificate chain

Expiration Alerts

You'll receive alerts when your SSL certificate is approaching expiration:

Days Until Expiry Alert Level
14 days Warning
7 days Urgent
1 days Critical

This gives you time to renew your certificate before it causes downtime or security warnings for your users.

Don't rely on Let's Encrypt expiration alerts as they no longer provide them.


Common Use Cases

Website Monitoring

Monitor your main website to ensure it's accessible:

  • URL: https://www.example.com
  • Method: GET
  • Expected Status: 2xx
  • Timeout: 15 seconds

REST API Health Check

Monitor an API health endpoint:

  • URL: https://api.example.com/health
  • Method: GET
  • Expected Status: 2xx
  • Headers: Authorization: Bearer <token>
  • Timeout: 10 seconds

Authenticated Endpoint

Monitor an endpoint that requires authentication:

  • URL: https://app.example.com/api/status
  • Method: GET
  • Expected Status: 2xx
  • Headers:
    Authorization: Bearer your-api-key
    Accept: application/json
    

Webhook Endpoint

Verify a webhook receiver is ready:

  • URL: https://example.com/webhooks/receive
  • Method: POST
  • Expected Status: 2xx
  • Headers: Content-Type: application/json
  • Body: {"test": true}

Troubleshooting

Monitor Shows Down But Site Works

  1. Check firewall rules — Your firewall may be blocking UptimeObserver. See Bot Documentation for our IP addresses
  2. Verify the URL — Ensure the URL is accessible from outside your network
  3. Check for geo-restrictions — Your site may be blocking requests from certain regions
  4. Review rate limiting — Your server may be rate-limiting monitoring requests

SSL Certificate Errors

  1. Expired certificate — Renew your SSL certificate
  2. Self-signed certificate — Self-signed certificates will fail validation
  3. Incomplete chain — Ensure your server sends the complete certificate chain
  4. Domain mismatch — Certificate must match the monitored domain

Timeout Errors

  1. Increase timeout — Your endpoint may be slow; try increasing the timeout
  2. Server performance — Check your server's response times
  3. Network issues — There may be network latency between monitoring locations and your server

Need Help?

If you need assistance configuring HTTP monitoring, reach out using the "Need Help?" button on the bottom right corner or email us at support@uptimeobserver.com.