The read-only XRInputSource property profiles returns an array of strings, each describing a configuration profile for the input source. The profile strings are listed in order of specificity, with the most specific profile listed first.

Note: The profiles list is always empty when the WebXR session is in inline mode.


let profileList = xrInputSource.profiles;


An array of DOMString objects, each describing one configuration profile for the input device represented by the XRInputSource object. Each input profile specifies the preferred visual representation and behavior of the input source.

Usage notes

Input profile names

An input profile name is a string describing a visual representation and behavior the input source may be configured to use. Each string:

  • Has no spaces; instead, words are separated by hyphen ("-") characters
  • If the platform makes it available, the USB vendor and product ID may be provided but cannot be relied upon
  • Does not uniquely identify a specific device; rather, it identifies a configuration that the product is capable of using
  • Does not provide information about handedness of the device, if applicable

The WebXR Input Profiles Registry is used by device developers and browser developers to attempt to ensure that a given device will report the same profile strings regardless of which browser or other user agent you use.


WebXR Device API
# dom-xrinputsource-profiles

Browser compatibility

BCD tables only load in the browser

See also