TheDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/nordicsemi/bluetooth-numbers-database/llms.txt
Use this file to discover all available pages before exploring further.
bluetooth-numbers-database package exports all data via module.exports in its index.js entry point. Every data export is a plain JavaScript array loaded from the corresponding JSON file in the v1/ directory. The array structures are validated against JSON Schemas that are also exported via the schemas object.
Import Patterns
companies
Array of Bluetooth SIG-assigned Company Identifiers. Contains approximately 3,998 entries covering organisations that have registered a company identifier with the Bluetooth Special Interest Group. The
code field is a decimal integer; the name field is the official registered company name.services
Array of GATT Service UUID definitions. Contains 126 entries sourced from the Bluetooth GATT Specification Supplement (GSS) as well as proprietary entries. The
uuid field is either a 4-character hexadecimal string (16-bit SIG-assigned) or a full 36-character UUID string (128-bit proprietary). The identifier uses reverse-dot notation (e.g., org.bluetooth.service.heart_rate). The source field is "gss" for SIG-defined services or a vendor identifier for proprietary ones.characteristics
Array of GATT Characteristic UUID definitions. Contains 682 entries. The field structure is identical to
services: uuid (16-bit hex or full 128-bit UUID), name, identifier (reverse-dot notation such as org.bluetooth.characteristic.battery_level), and source.descriptors
Array of GATT Descriptor UUID definitions. Contains 18 entries covering the standard GATT descriptors defined in the Bluetooth Core Specification, including Client Characteristic Configuration (CCCD), Server Characteristic Configuration, Characteristic Presentation Format, and more. Field structure is the same as
services and characteristics.appearances
appearances
Array<{ category: number, name: string, subcategory?: Array<{ value: number, name: string }> }>
Array of GAP Appearance category definitions from the Bluetooth Core Specification Supplement. Contains 52 top-level categories. The
category field is a decimal integer corresponding to bits 15–6 of the 2-byte Appearance value. The optional subcategory array lists sub-categories, each with a value (bits 5–0) and a name.schemas
An object containing the JSON Schema definitions used to validate each data array. Keys are
companies, services, characteristics, descriptors, and appearances. services, characteristics, and descriptors all share the same attributeSchema object. Useful for runtime validation of custom entries before contributing them to the database or for validating data you’ve fetched independently.version
The package version string derived from
package.json. For example, '1.0.4'. This reflects the npm package version, which also determines the v1/ data directory used internally (the major version number maps to the data directory name).Common Patterns
1. Resolve a Company Name from BLE Manufacturer Data
Bluetooth Low Energy advertisements can include Manufacturer Specific Data (AD type0xFF). The first two bytes of the payload are the little-endian company identifier.
2. Resolve a Service UUID from a GATT Discovery Result
When a GATT client discovers services on a remote device, it receives UUID strings. Use theservices array to turn those into human-readable names.
