---
title: CKRecordValue
framework: cloudkit
role: symbol
role_heading: Protocol
path: cloudkit/ckrecordvalue-c.protocol
---

# CKRecordValue

The protocol that provides strong type-checking for objects that the CloudKit framework stores on the server.

## Declaration

```occ
@protocol CKRecordValue <NSObject>
```

## Overview

Overview CloudKit supports the following classes that adopt this protocol: NSString NSNumber NSArray NSDate NSData CKRecord.Reference CKAsset CLLocation Don’t adopt this protocol in your custom classes. CloudKit doesn’t support writing custom data types to the server. Attempting to do so results in an error.

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

### Conforming Types

- [CKAsset](cloudkit/ckasset.md)
- [CKRecord.Reference](cloudkit/ckrecord/reference.md)

## See Also

### Core objects

- [CKContainer](cloudkit/ckcontainer.md)
- [CKDatabase](cloudkit/ckdatabase.md)
- [CKOperationGroup](cloudkit/ckoperationgroup.md)
