BluetoothCharacteristicProperties
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only insecure contexts (HTTPS), in some or allsupporting browsers.
Experimental:This is anexperimental technology
Check theBrowser compatibility table carefully before using this in production.
TheBluetoothCharacteristicProperties interface of theWeb Bluetooth API provides the operations that are valid on the givenBluetoothRemoteGATTCharacteristic.
This interface is returned by callingBluetoothRemoteGATTCharacteristic.properties.
In this article
Instance properties
authenticatedSignedWritesRead onlyExperimentalReturns a
booleanthat istrueif signed writing to the characteristic value is permitted.broadcastRead onlyExperimentalReturns a
booleanthat istrueif the broadcast of the characteristic value is permitted using the Server Characteristic Configuration Descriptor.indicateRead onlyExperimentalReturns a
booleanthat istrueif indications of the characteristic value with acknowledgement is permitted.notifyRead onlyExperimentalReturns a
booleanthat istrueif notifications of the characteristic value without acknowledgement is permitted.readRead onlyExperimentalReturns a
booleanthat istrueif the reading of the characteristic value is permitted.reliableWriteRead onlyExperimentalReturns a
booleanthat istrueif reliable writes to the characteristic is permitted.writableAuxiliariesRead onlyExperimentalReturns a
booleanthat istrueif reliable writes to the characteristic descriptor is permitted.writeRead onlyExperimentalReturns a
booleanthat istrueif the writing to the characteristic with response is permitted.writeWithoutResponseRead onlyExperimentalReturns a
booleanthat istrueif the writing to the characteristic without response is permitted.
Examples
The following example shows how tell if a GATT characteristic supports value change notifications.
let device = await navigator.bluetooth.requestDevice({ filters: [{ services: ["heart_rate"] }],});let gatt = await device.gatt.connect();let service = await gatt.getPrimaryService("heart_rate");let characteristic = await service.getCharacteristic("heart_rate_measurement");if (characteristic.properties.notify) { characteristic.addEventListener( "characteristicvaluechanged", async (event) => { console.log(`Received heart rate measurement: ${event.target.value}`); }, ); await characteristic.startNotifications();}Specifications
| Specification |
|---|
| Web Bluetooth> # characteristicproperties-interface> |