Check if a URL is absolute

Detect a scheme such as https: at the start of a URL string.

JavaScript Version 1.0.0 · MIT · .md

check-if-a-url-is-absolute.js
function isAbsoluteUrl(url) { return /^[a-z][a-z0-9+.-]*:/i.test(url); }

Input & expected output

Input

"https://api.oveyon.com/v1/send"

Expected output

true

The edge case

Input

"//cdn.example.com/app.js"

Expected output

false

Know the limits

  • A scheme is not a safety check: javascript: and data: URLs are absolute too. Allow-list https: before storing or following a URL, such as a webhook endpoint.
  • Schemes are case-insensitive (RFC 3986), so this version adds the i flag the original regex lacked.

The function above is the implementation used by the lab. The lab validates JSON types and caps size before execution; include equivalent validation when accepting untrusted input in your application.

Source & maintenance

Based on Check if a URL is absolute from the original 1loc collection by Nguyen Huu Phuoc. Copyright (c) 2020 phuoc-ng. MIT licensed.

Curated implementation adds the case-insensitive flag (RFC 3986 schemes); explicit input bounds, edge case and scheme-safety note. Original MDX retained as inert source evidence.

Maintained by Oveyon. Source commit: 14b481cf60df. Read the license.

Local fixture scope · Node.js 22.23.2 · reviewed October 28, 2026. No external service is required.

Keep exploring

Type two or more characters. Try “duplicate”, “webhook” or “retry”.