<!--
{
  "availability" : [
    "iOS: 8.0.0 - 27.0.0",
    "iPadOS: 8.0.0 - 27.0.0",
    "macCatalyst: 13.1.0 - 27.0.0",
    "macOS: 13.0.0 -",
    "visionOS: 1.0.0 - 27.0.0",
    "watchOS: 2.0.0 - 27.0.0"
  ],
  "documentType" : "symbol",
  "framework" : "HealthKit",
  "identifier" : "/documentation/HealthKit/HKObjectType/characteristicType(forIdentifier:)",
  "metadataVersion" : "0.1.0",
  "role" : "Type Method",
  "symbol" : {
    "kind" : "Type Method",
    "modules" : [
      "HealthKit"
    ],
    "preciseIdentifier" : "c:objc(cs)HKObjectType(cm)characteristicTypeForIdentifier:"
  },
  "title" : "characteristicType(forIdentifier:)"
}
-->

# characteristicType(forIdentifier:)

Returns the shared characteristic type for the provided identifier.

```
class func characteristicType(forIdentifier identifier: HKCharacteristicTypeIdentifier) -> HKCharacteristicType?
```

## Parameters

`identifier`

A characteristic type identifier. For a list of valid identifiers, see [`HKCharacteristicTypeIdentifier`](/documentation/HealthKit/HKCharacteristicTypeIdentifier).

## Return Value

The shared `HKCharacteristicType` instance based on the provided identifier.

## Discussion

This method returns an instance of the [`HKCharacteristicType`](/documentation/HealthKit/HKCharacteristicType) concrete subclass. Characteristic types represent data that doesn’t typically change over time. Unlike the other object types, characteristic types cannot be used to create new HealthKit objects. Instead, users must enter and edit their characteristic data using the Health app. Characteristic types are used only when asking for permission to read data from the HealthKit store.

---

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)