<!--
{
  "availability" : [
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSPasteboardReading",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:objc(pl)NSPasteboardReading"
  },
  "title" : "NSPasteboardReading"
}
-->

# NSPasteboardReading

A set of methods that defines the interface for initializing an object from a pasteboard.

```
protocol NSPasteboardReading : NSObjectProtocol
```

## Overview

The Cocoa framework classes <doc://com.apple.documentation/documentation/Foundation/NSString>, <doc://com.apple.documentation/documentation/Foundation/NSAttributedString>, <doc://com.apple.documentation/documentation/Foundation/NSURL>, [`NSColor`](/documentation/AppKit/NSColor), [`NSSound`](/documentation/AppKit/NSSound), [`NSImage`](/documentation/AppKit/NSImage), and [`NSPasteboardItem`](/documentation/AppKit/NSPasteboardItem) implement this protocol. You can make your custom class conform to this protocol so that you can read instances from a pasteboard using the [`readObjects(forClasses:options:)`](/documentation/AppKit/NSPasteboard/readObjects(forClasses:options:)) method of [`NSPasteboard`](/documentation/AppKit/NSPasteboard).

## Topics

### Initializing the Pasteboard

[`init(pasteboardPropertyList:ofType:)`](/documentation/AppKit/NSPasteboardReading/init(pasteboardPropertyList:ofType:))

Initializes an instance with a property list object and a type string.

### Reading From the Pasteboard

[`readableTypes(for:)`](/documentation/AppKit/NSPasteboardReading/readableTypes(for:))

Returns an array of uniform type identifier strings of data types the receiver can read from the pasteboard and initialize from.

[`readingOptions(forType:pasteboard:)`](/documentation/AppKit/NSPasteboardReading/readingOptions(forType:pasteboard:))

Returns options for reading data of a specified type from a given pasteboard.

[`NSPasteboard.ReadingOptions`](/documentation/AppKit/NSPasteboard/ReadingOptions)

Options that specify how to interpret data on the pasteboard when initializing pasteboard data.



---

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)