<!--
{
  "availability" : [
    "iOS: 18.0.0 -",
    "iPadOS: 18.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AccessorySetupKit",
  "identifier" : "/documentation/AccessorySetupKit/ASDiscoveryDescriptor",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "AccessorySetupKit"
    ],
    "preciseIdentifier" : "c:objc(cs)ASDiscoveryDescriptor"
  },
  "title" : "ASDiscoveryDescriptor"
}
-->

# ASDiscoveryDescriptor

Descriptive traits used to discover accessories.

```
class ASDiscoveryDescriptor
```

## Overview

Use an instance of this type to identify accessories your app can set up, then set it as the [`descriptor`](/documentation/AccessorySetupKit/ASPickerDisplayItem/descriptor) property of an [`ASPickerDisplayItem`](/documentation/AccessorySetupKit/ASPickerDisplayItem).

Some of the Bluetooth identifier properties work together to filter matching accessories, as described in the following table.

|Use     |Filter property                                                                                                                                                                                                                                        |Also requires                                                                                                                                                                                                                             |Description                                                                                                                                                                                                                                                                                                                                                         |
|--------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|Required|``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceUUID`` or ``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothCompanyIdentifier``             |(none)                                                                                                                                                                                                                                    |Provide at least one UUID or manufacturer ID to filter.                                                                                                                                                                                                                                                                                                             |
|Optional|``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothNameSubstring``                                                                                                                                     |``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceUUID`` or ``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothCompanyIdentifier``|Provide a name substring to look for.  Requires setting at least a service UUID or company ID, which identifies the service or company using the name.                                                                                                                                                                                                              |
|Optional|``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothManufacturerDataBlob`` and ``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothManufacturerDataMask``|``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothCompanyIdentifier``                                                                                                                    |When using manufacturer data filters, provide both the data and mask. These properties should have the same length and be less than or equal to the size of the advertised payload. The ``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothCompanyIdentifier`` identifies the manufacturer associated with the data.|
|Optional|``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceDataBlob`` and ``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceDataMask``          |``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceUUID``                                                                                                                          |When using UUID service data filters, provide both the data and mask. These properties should have the same length and be less than or equal to the size of the advertised payload. The ``doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceUUID`` identifies the service associated with the data.           |

The descriptor also allows you to set the [`bluetoothRange`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothRange) of matched accessories; set its value to [`ASDiscoveryDescriptor.Range.immediate`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/Range/immediate) to limit discovery of Bluetooth accessories to those within the immediate proximity of the device running your app.

## Topics

### Specifying Bluetooth properties

[`bluetoothCompanyIdentifier`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothCompanyIdentifier)

The accessory’s 16-bit Bluetooth Company Identifier.

[`ASBluetoothCompanyIdentifier`](/documentation/AccessorySetupKit/ASBluetoothCompanyIdentifier)

The type used to identify a Bluetooth accessory provider.

[`ASBluetoothCompanyIdentifier`](/documentation/AccessorySetupKit/ASBluetoothCompanyIdentifier)

The type used to identify a Bluetooth accessory provider.

[`bluetoothManufacturerDataBlob`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothManufacturerDataBlob)

A byte buffer that matches the accessory’s Bluetooth manufacturer data.

[`bluetoothManufacturerDataMask`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothManufacturerDataMask)

The accessory’s Bluetooth manufacturer data mask.

[`bluetoothServiceDataBlob`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceDataBlob)

A byte buffer that matches the accessory’s Bluetooth service data.

[`bluetoothServiceDataMask`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceDataMask)

The accessory’s Bluetooth service data mask.

[`bluetoothNameSubstring`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothNameSubstring)

The accessory’s over-the-air Bluetooth name substring.

[`bluetoothNameSubstringCompareOptions`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothNameSubstringCompareOptions)

The accessory’s over-the-air Bluetooth name substring compare options.

[`bluetoothServiceUUID`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothServiceUUID)

The accessory’s Bluetooth service UUID.

[`bluetoothRange`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/bluetoothRange)

A property that tells the session to discover accessories within a specific Bluetooth range.

[`ASDiscoveryDescriptor.Range`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/Range)

The Bluetooth range in which to discover accessories.

### Specifying Wi-Fi properties

[`ssid`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/ssid)

The SSID of the accessory’s Wi-Fi network.

[`ssidPrefix`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/ssidPrefix)

The prefix string of SSID of the accessory’s Wi-Fi network.

### Specifying options

[`supportedOptions`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/supportedOptions)

Options supported by an accessory.

[`ASAccessory.SupportOptions`](/documentation/AccessorySetupKit/ASAccessory/SupportOptions)

Options of discoverable accessories.

### Specifying Wi-Fi Aware properties

[`wifiAwareServiceName`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/wifiAwareServiceName)

The accessory’s Wi-Fi Aware’s service name if available.

[`wifiAwareServiceRole`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/wifiAwareServiceRole-swift.property)

The role of the accessory’s Wi-Fi Aware’s service.

[`ASDiscoveryDescriptor.WiFiAwareServiceRole`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/WiFiAwareServiceRole-swift.enum)

A type that defines the role of an accessory’s Wi-Fi Aware’s service.

[`wifiAwareModelNameMatch`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/wifiAwareModelNameMatch)

The accessory’s Wi-Fi Aware model name and matching options.

[`wifiAwareVendorNameMatch`](/documentation/AccessorySetupKit/ASDiscoveryDescriptor/wifiAwareVendorNameMatch)

The accessory’s Wi-Fi Aware vendor name and matching options.

[`ASPropertyCompareString`](/documentation/AccessorySetupKit/ASPropertyCompareString)

A type that specifies how to filter a property against a given string and comparison options.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)