---
title: CKRecordKeyValueSetting
framework: cloudkit
role: symbol
role_heading: Protocol
path: cloudkit/ckrecordkeyvaluesetting
---

# CKRecordKeyValueSetting

A protocol for managing the key-value pairs of a CloudKit record.

## Declaration

```swift
protocol CKRecordKeyValueSetting : NSObjectProtocol
```

## Topics

### Accessing a Record’s Fields

- [object(forKey:)](cloudkit/ckrecordkeyvaluesetting/object(forkey:).md)
- [subscript(_:)](cloudkit/ckrecordkeyvaluesetting/subscript(_:).md)
- [setObject(_:forKey:)](cloudkit/ckrecordkeyvaluesetting/setobject(_:forkey:).md)
- [allKeys()](cloudkit/ckrecordkeyvaluesetting/allkeys().md)
- [changedKeys()](cloudkit/ckrecordkeyvaluesetting/changedkeys().md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

### Conforming Types

- [CKRecord](cloudkit/ckrecord.md)
- [CKShare](cloudkit/ckshare.md)

## See Also

### Accessing the Record’s Fields

- [object(forKey:)](cloudkit/ckrecord/object(forkey:).md)
- [subscript(_:)](cloudkit/ckrecord/subscript(_:)-51whk.md)
- [subscript(_:)](cloudkit/ckrecord/subscript(_:)-4g91i.md)
- [setObject(_:forKey:)](cloudkit/ckrecord/setobject(_:forkey:).md)
- [allKeys()](cloudkit/ckrecord/allkeys().md)
- [changedKeys()](cloudkit/ckrecord/changedkeys().md)
- [makeIterator()](cloudkit/ckrecord/makeiterator().md)
- [CKRecordKeyValueIterator](cloudkit/ckrecordkeyvalueiterator.md)
- [CKRecordValueProtocol](cloudkit/ckrecordvalueprotocol.md)
- [CKRecordValue](cloudkit/ckrecordvalue-swift.typealias.md)
