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 certificate expiry is tracked for HTTPS URLs on paid plans

UptimeObserver automatically signs HTTP checks using Web Bot Auth, including retries and requests following redirects. No setup is required.

HTTP monitor creation form


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 Website and API checks that need a response body
HEAD Lightweight availability checks (default)
POST API endpoints that require POST requests
PUT REST API update endpoints
DELETE REST API delete endpoints (use with caution)
OPTIONS Checks endpoints that accept OPTIONS requests

PATCH requests

Although PATCH appears in the dashboard, the current HTTP client cannot send it and the check fails. Use a supported method or a dedicated GET/HEAD health endpoint instead.

Expected Status Code

Select the HTTP status-code groups that count as a successful response. You can select more than one group. New monitors select 2xx and 3xx by default:

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

The API's upHttpCodeStatus field also accepts individual codes and comma-separated groups, such as 200,204 or 2xx,3xx. Use lowercase xx without spaces between entries. Hyphenated ranges such as 200-299 are not supported. If the API field is empty, only 200 counts as success.

Follow Redirections

Follow Redirections is off by default in the creation form:

  • Off: The original response is checked. A redirect counts as success only if its status code is accepted; this does not confirm that the destination works.
  • On: UptimeObserver follows 301, 302, 303, 307, and 308 responses with a Location header, up to 10 redirects, and checks the final response. A redirect loop or a private/reserved destination fails the check.
  • A POST becomes GET after 301 or 302. After 303, methods other than HEAD become GET. 307 and 308 preserve the method and body.
  • Authentication and custom headers are not forwarded when the scheme, host, or port changes. Configure the final URL directly if it requires credentials.

Cloudflare challenge responses

A 403 response containing the cf-mitigated header is currently evaluated as 200 for status matching. An Up result therefore does not prove the application was reached. Inspect the check's recorded response and use the Cloudflare guide to resolve challenges.

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"
}

HTTP monitor advanced options

Timeout

Set the timeout in seconds. The same value is applied separately to connection establishment and response reads, and to each redirect hop. It is not a total time limit for the entire check.

Start with 15 seconds and increase it only if your endpoint normally needs longer. A timeout fails the check; the retry setting determines when failures become a Down event.


SSL Certificate Monitoring

Paid Plans Only

SSL certificate monitoring is included on paid 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 monitoring IPs to allow. For Cloudflare, find the blocked check and configure an exception
  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.