This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The claimInterface() method of the USBDevice interface returns a promise that resolves when the requested interface is claimed for exclusive access.
claimInterface(interfaceNumber)
interfaceNumberThe index of one of the interfaces supported by the device. Interfaces are device specific.
A promise.
The following example shows claimInterface() in the context of connecting to a USB device.
async function connectDevice(usbDevice) {
await usbDevice.open();
if (usbDevice.configuration === null) await usbDevice.selectConfiguration(1);
await usbDevice.claimInterface(0);
}
| Specification |
|---|
| WebUSB API> # dom-usbdevice-claiminterface> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
claimInterface |
61 | 79 | No | 48 | No | 61 | No | 45 | No | 8.0 | No | No |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/USBDevice/claimInterface