---
title: forUploading
framework: foundation
role: symbol
role_heading: Type Property
path: foundation/nsfilecoordinator/readingoptions/foruploading
---

# forUploading

Specify this content when reading an item for the purpose of uploading its contents.

## Declaration

```swift
static var forUploading: NSFileCoordinator.ReadingOptions { get }
```

## Discussion

Discussion When this option is used, the file coordinator creates a temporary snapshot of the item being read and relinquishes its claim on the original file. This action prevents the read operation from blocking other coordinated writes during a potentially long upload. If the item being read is a directory (such as a document package), then the snapshot is a new file containing the zipped contents of the directory. The URL passed to the accessor block points to the zipped file. When using this option, you may upload the document outside the accessor block. However, you should open a file descriptor to the file or relocate the file within the accessor block before doing so. The file coordinator unlinks the file after the block returns, rendering it inaccessible through the URL.

## See Also

### Constants

- [withoutChanges](foundation/nsfilecoordinator/readingoptions/withoutchanges.md)
- [resolvesSymbolicLink](foundation/nsfilecoordinator/readingoptions/resolvessymboliclink.md)
- [immediatelyAvailableMetadataOnly](foundation/nsfilecoordinator/readingoptions/immediatelyavailablemetadataonly.md)
