---
title: HIDReportID
framework: corehid
role: symbol
role_heading: Structure
path: corehid/hidreportid
---

# HIDReportID

A type to represent the report IDs of HID reports.

## Declaration

```swift
struct HIDReportID
```

## Mentioned in

Communicating with human interface devices

## Overview

Overview Report IDs are defined to be 1 byte in the HID specification, and can help identify the reports received from or sent to a device. Report IDs are optional. If a descriptor only has one report, a report ID is unnecessary. A report ID of 0 is invalid. For more details, see Human Interface Devices (HID) Specifications and Tools.

## Topics

### Initializers

- [init(rawValue:)](corehid/hidreportid/init(rawvalue:).md)

### Instance Properties

- [rawValue](corehid/hidreportid/rawvalue.md)

### Type Properties

- [allReports](corehid/hidreportid/allreports.md)

## Relationships

### Conforms To

- [Comparable](swift/comparable.md)
- [Copyable](swift/copyable.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Interaction

- [Communicating with human interface devices](corehid/communicatingwithhiddevices.md)
- [HIDDeviceClient](corehid/hiddeviceclient.md)
- [HIDElement](corehid/hidelement.md)
- [HIDElementCollection](corehid/hidelementcollection.md)
- [HIDElement.Value](corehid/hidelement/value.md)
- [HIDElementUpdate](corehid/hidelementupdate.md)
- [HIDReportType](corehid/hidreporttype.md)
- [HIDUsage](corehid/hidusage.md)
- [HIDDeviceError](corehid/hiddeviceerror.md)
- [HIDDeviceTransport](corehid/hiddevicetransport.md)
- [HIDDeviceLocalizationCode](corehid/hiddevicelocalizationcode.md)
