Try the RankNibbler SEO API

Uptime Beta

GET /api/v1/uptime

An instant up/down and true response-time check that does not mistake a bot challenge for an outage. The check is a direct GET with no proxy in the way, so the timing you get back is the site's real server response time. 2xx and 3xx count as up.

Beta. This endpoint is new: it is live and safe to call on every plan, but its response shape may still change while we take feedback. Nothing here is scheduled for removal — if you depend on a particular field, tell us and we will keep it stable for you.

If the direct request comes back 202, 403, 429 or 503 — the classic bot-protection codes — the endpoint re-confirms through a real-browser fingerprint before ever calling a healthy site "down", and still reports the direct response time. The socket is pinned to the SSRF-validated IP, which closes the DNS-rebind window. The check times out after 10 seconds.

Authentication

Send your API key as an X-API-Key header, or as a key query parameter. Available on every plan, including Free — plans differ only in requests per day. This call costs one request against your daily quota, which is shared across every key on the account. See Authentication.

Query parameters

NameTypeDescription
url requiredstringThe URL to check.
key optionalstringYour API key, if not sent as the X-API-Key header.

Request

Response

200 · application/json
  1. {
  2. "url": "https://example.com", "up": true, "statusCode": 200,
  3. "responseMs": 113, "error": null,
  4. "checkedVia": "direct", "checkedAt": "2026-09-02T11:04:22.118Z"
  5. }

Response fields

FieldTypeDescription
upbooleantrue for a 2xx or 3xx response.
statusCodeinteger | nullThe HTTP status, or null when the connection never completed.
responseMsnumber | nullThe direct response time in milliseconds, even when the bot-protection fallback was used.
errorstring | nullA classified failure reason — "DNS lookup failed", "Connection refused", "SSL/TLS error", "Timed out (10s)" and similar.
checkedViastring"direct", or "proxy" when the bot-protection fallback was used.
checkedAtstringISO 8601 timestamp of the check.

A down site is not an error response. A site that is unreachable still returns 200 with up: false and a classified error — so handle "down" by reading up, not by catching a non-200.

Errors

StatusWhen
401Missing or invalid API key.
403The URL is a private, loopback or cloud-metadata address and was blocked by SSRF protection.
429Burst rate limit (60 req/10s per IP, 30 req/10s per key) or your daily quota. See Rate limits.
502The check itself could not be run.
503The uptime engine is unavailable on this server. This check runs before authentication.

Errors return { "error": "…" }; see Errors.