This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The BluetoothRemoteGattCharacteristic interface of the Web Bluetooth API represents a GATT Characteristic, which is a basic data element that provides further information about a peripheral’s service.


interface BluetoothRemoteGATTCharacteristic {
  readonly attribute BluetoothRemoteGATTService service;
  readonly attribute UUID uuid;
  readonly attribute BluetoothCharacteristicProperties properties;
  readonly attribute DataView? value;
  Promise<BluetoothRemoteGATTDescriptor> getDescriptor(BluetoothDescriptorUUID descriptor);
    getDescriptors(optional BluetoothDescriptorUUID descriptor);
  Promise<DataView> readValue();
  Promise<void> writeValue(BufferSource value);
  Promise<void> startNotifications();
  Promise<void> stopNotifications();
BluetoothRemoteGATTCharacteristic implements EventTarget;
BluetoothRemoteGATTCharacteristic implements CharacteristicEventHandlers;


BluetoothRemoteGATTCharacteristic.serviceRead only
Returns the BluetoothRemoteGATTService this characteristic belongs to.
BluetoothRemoteGATTCharacteristic.uuidRead only
Returns a DOMString containing the UUID of the characteristic, for example '00002a37-0000-1000-8000-00805f9b34fb' for the Heart Rate Measurement characteristic.
BluetoothRemoteGATTCharacteristic.propertiesRead only
Returns the properties of this characteristic.
BluetoothRemoteGATTCharacteristic.valueRead only
The currently cached characteristic value. This value gets updated when the value of the characteristic is read or updated via a notification or indication.


Returns a Promise that resolves to the first BluetoothRemoteGATTDescriptor for a given descriptor UUID.
Returns a Promise that resolves to an Array of all BluetoothRemoteGATTDescriptor objects for a given descriptor UUID.
Returns a Promise that resolves to an ArrayBuffer holding a duplicate of the value property if it is available and supported. Otherwise it throws an error.
Sets the value property to the bytes contained in an ArrayBuffer and returns a Promise.
Returns a Promise when navigator.bluetooth is added to the active notification context.
Returns a Promise when navigator.bluetooth is removed from the active notification context.


Specification Status Comment
Web Bluetooth
The definition of 'BluetoothRemoteGATTCharacteristic' in that specification.
Draft Initial definition.

Browser compatibility

BCD tables only load in the browser