What is the Web API?

The Web API (or Browser API) is a collection of interfaces built into modern web browsers that allow JavaScript to interact with browser features, hardware, and the operating system. Examples include the Fetch API for network requests, the Geolocation API for GPS coordinates, WebGL for 3D graphics, the Clipboard API for copy/paste, and hundreds of others. Each API is defined by web standards bodies such as the W3C and WHATWG, and browser vendors implement them at their own pace.

Because browser support varies widely — some APIs are universally supported, others are experimental or vendor-specific — developers often need to check which APIs are actually available in a given browser before using them. Feature detection (checking whether an API exists on window before calling it) is the standard approach.

Tool description

This tool tests which Web APIs are available in your current browser in real time. It combines live browser detection with browser compatibility data from MDN to give you a comprehensive view of which APIs are supported, which version they became available in, and whether any are still experimental.

Features

  • Live detection: Tests each API against your actual browser's window object and reports supported, unsupported, or unknown status instantly
  • MDN compatibility data: Shows the minimum version of Chrome, Firefox, Safari, and Edge that supports each API, sourced from the official @mdn/browser-compat-data package
  • Experimental API flagging: Clearly marks APIs that are still experimental or behind feature flags
  • Custom expression tester: Enter any JavaScript expression to evaluate it live in your browser and see the result or error
  • Filtering and search: Filter by support status (supported/unsupported/unknown) and search by API name to find what you need quickly

How it works

The tool loads a list of Web API entries from the MDN Browser Compat Data package at build time. When you open the page, it evaluates each API name as a property of the global window object — if the property exists and is non-null, the API is marked as supported. The MDN version data is pre-loaded and displayed alongside the live detection result.

Tips

  • Use the status filter to show only APIs supported in your browser — useful for auditing what's available before writing code.
  • Use the custom expression field to test more complex feature checks, such as typeof navigator.bluetooth !== 'undefined' or 'serviceWorker' in navigator.
  • Experimental APIs may be available in some browser builds but not in stable releases — always check the MDN documentation before relying on them in production.