<!--
{
  "availability" : [
    "iOS: 2.0.0 -",
    "iPadOS: 2.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.0.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/URLResourceKey",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Foundation"
    ],
    "preciseIdentifier" : "c:@T@NSURLResourceKey"
  },
  "title" : "URLResourceKey"
}
-->

# URLResourceKey

Keys that apply to file system URLs.

```
struct URLResourceKey
```

## Discussion

To request information using one of these keys, pass it to the `forKey:` parameter of the [`getResourceValue(_:forKey:)`](/documentation/Foundation/NSURL/getResourceValue(_:forKey:)) instance method.

## Topics

### Application keys

[`NSURLIsApplicationKey`](/documentation/Foundation/URLResourceKey/isApplicationKey)

`true` if resource is an application (Read-only, value type boolean `NSNumber`).

[`NSURLApplicationIsScriptableKey`](/documentation/Foundation/URLResourceKey/applicationIsScriptableKey)

`true` if the resource is scriptable. Only applies to applications (Read-only, value type boolean `NSNumber`).

### Directory keys

[`NSURLIsDirectoryKey`](/documentation/Foundation/URLResourceKey/isDirectoryKey)

A key for determining whether the resource is a directory.

[`NSURLParentDirectoryURLKey`](/documentation/Foundation/URLResourceKey/parentDirectoryURLKey)

The container directory of the resource.

[`NSURLDirectoryEntryCountKey`](/documentation/Foundation/URLResourceKey/directoryEntryCountKey)

The key for a count of items in the directory.

### File keys

[`NSURLFileAllocatedSizeKey`](/documentation/Foundation/URLResourceKey/fileAllocatedSizeKey)

The key for the total allocated size on-disk for the file.

[`NSURLFileProtectionKey`](/documentation/Foundation/URLResourceKey/fileProtectionKey)

The key for the protection level of the file.

[`URLFileProtection`](/documentation/Foundation/URLFileProtection)

Protection-level values for a URL resource key.

[`NSURLFileContentIdentifierKey`](/documentation/Foundation/URLResourceKey/fileContentIdentifierKey)

The key for a value that APFS assigns to identify a file’s content data stream.

[`NSURLFileResourceIdentifierKey`](/documentation/Foundation/URLResourceKey/fileResourceIdentifierKey)

The key for the resource’s unique identifier.

[`NSURLFileResourceTypeKey`](/documentation/Foundation/URLResourceKey/fileResourceTypeKey)

The key for the resource’s object type.

[`URLFileResourceType`](/documentation/Foundation/URLFileResourceType)

Possible values for the type of file resource.

[`NSURLFileSecurityKey`](/documentation/Foundation/URLResourceKey/fileSecurityKey)

The key for the resource’s security information.

[`NSURLFileSizeKey`](/documentation/Foundation/URLResourceKey/fileSizeKey)

The key for the file’s size, in bytes.

[`NSURLIsAliasFileKey`](/documentation/Foundation/URLResourceKey/isAliasFileKey)

The key for determining whether the file is an alias.

[`NSURLIsPackageKey`](/documentation/Foundation/URLResourceKey/isPackageKey)

The key for determining whether the resource is a file package.

[`NSURLIsRegularFileKey`](/documentation/Foundation/URLResourceKey/isRegularFileKey)

The key for determining whether the resource is a regular file rather than a directory or a symbolic link.

[`NSURLIsPurgeableKey`](/documentation/Foundation/URLResourceKey/isPurgeableKey)

The key for a Boolean value that indicates whether the file system can delete a file when the system needs to free space.

[`NSURLIsSparseKey`](/documentation/Foundation/URLResourceKey/isSparseKey)

The key for a Boolean value that indicates whether the file has sparse regions.

[`NSURLMayHaveExtendedAttributesKey`](/documentation/Foundation/URLResourceKey/mayHaveExtendedAttributesKey)

The key for a Boolean value that indicates whether the file has extended attributes.

[`NSURLMayShareFileContentKey`](/documentation/Foundation/URLResourceKey/mayShareFileContentKey)

The key for a Boolean value that indicates whether cloned files and their original files may share data blocks.

[`NSURLPreferredIOBlockSizeKey`](/documentation/Foundation/URLResourceKey/preferredIOBlockSizeKey)

The key for the optimal block size to use when reading or writing the file’s data.

[`NSURLTotalFileAllocatedSizeKey`](/documentation/Foundation/URLResourceKey/totalFileAllocatedSizeKey)

The key for the total allocated size of the file, in bytes.

[`NSURLTotalFileSizeKey`](/documentation/Foundation/URLResourceKey/totalFileSizeKey)

The key for the total displayable size of the file, in bytes.

[`NSURLFileIdentifierKey`](/documentation/Foundation/URLResourceKey/fileIdentifierKey)

The key for the file system’s internal inode identifier for the item.

### Volume capacity keys

[Checking Volume Storage Capacity](/documentation/Foundation/checking-volume-storage-capacity)

Confirm that you have enough local storage space for a large amount of data.

[`NSURLVolumeAvailableCapacityKey`](/documentation/Foundation/URLResourceKey/volumeAvailableCapacityKey)

Key for the volume’s available capacity in bytes (read-only).

[`NSURLVolumeAvailableCapacityForImportantUsageKey`](/documentation/Foundation/URLResourceKey/volumeAvailableCapacityForImportantUsageKey)

Key for the volume’s available capacity in bytes for storing important resources (read-only).

[`NSURLVolumeAvailableCapacityForOpportunisticUsageKey`](/documentation/Foundation/URLResourceKey/volumeAvailableCapacityForOpportunisticUsageKey)

Key for the volume’s available capacity in bytes for storing nonessential resources (read-only).

[`NSURLVolumeTotalCapacityKey`](/documentation/Foundation/URLResourceKey/volumeTotalCapacityKey)

Key for the volume’s total capacity in bytes (read-only).

### Volume status keys

[`NSURLVolumeIsAutomountedKey`](/documentation/Foundation/URLResourceKey/volumeIsAutomountedKey)

A key for determining whether the volume is automounted.

[`NSURLVolumeIsBrowsableKey`](/documentation/Foundation/URLResourceKey/volumeIsBrowsableKey)

A key for determining whether the volume is visible in GUI-based file-browsing environments, such as the Desktop or the Finder app.

[`NSURLVolumeIsEjectableKey`](/documentation/Foundation/URLResourceKey/volumeIsEjectableKey)

A key for determining whether the volume is ejectable from the drive mechanism under software control.

[`NSURLVolumeIsEncryptedKey`](/documentation/Foundation/URLResourceKey/volumeIsEncryptedKey)

A key for determining whether the volume is encrypted.

[`NSURLVolumeIsInternalKey`](/documentation/Foundation/URLResourceKey/volumeIsInternalKey)

A key for determining whether the volume is connected to an internal bus.

[`NSURLVolumeIsJournalingKey`](/documentation/Foundation/URLResourceKey/volumeIsJournalingKey)

A key for determining whether the volume is currently journaling.

[`NSURLVolumeIsLocalKey`](/documentation/Foundation/URLResourceKey/volumeIsLocalKey)

A key for determining whether the volume is on a local device.

[`NSURLVolumeIsReadOnlyKey`](/documentation/Foundation/URLResourceKey/volumeIsReadOnlyKey)

A key for determining whether the volume is read-only.

[`NSURLVolumeIsRemovableKey`](/documentation/Foundation/URLResourceKey/volumeIsRemovableKey)

A key for determining whether the volume is removable from the drive mechanism.

[`NSURLVolumeIsRootFileSystemKey`](/documentation/Foundation/URLResourceKey/volumeIsRootFileSystemKey)

A key for determining whether the volume is the root file system.

[`NSURLVolumeSupportsFileProtectionKey`](/documentation/Foundation/URLResourceKey/volumeSupportsFileProtectionKey)

A Boolean value that indicates the volume supports data protection for files.

[`NSURLVolumeTypeNameKey`](/documentation/Foundation/URLResourceKey/volumeTypeNameKey)

The key for the name of the file system type.

[`NSURLVolumeSubtypeKey`](/documentation/Foundation/URLResourceKey/volumeSubtypeKey)

The key for the file system subtype value.

[`NSURLVolumeMountFromLocationKey`](/documentation/Foundation/URLResourceKey/volumeMountFromLocationKey)

The key for the volume mounted-from location.

### Volume support keys

[`NSURLIsMountTriggerKey`](/documentation/Foundation/URLResourceKey/isMountTriggerKey)

Key for determining whether the URL is a file system trigger directory, returned as a Boolean `NSNumber` object (read-only). Traversing or opening a file system trigger directory causes an attempt to mount a file system on the directory.

[`NSURLIsVolumeKey`](/documentation/Foundation/URLResourceKey/isVolumeKey)

Key for determining whether the resource is the root directory of a volume, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeCreationDateKey`](/documentation/Foundation/URLResourceKey/volumeCreationDateKey)

Key for the volume’s creation date, returned as an `NSDate` object, or `NULL` if it cannot be determined (read-only).

[`NSURLVolumeIdentifierKey`](/documentation/Foundation/URLResourceKey/volumeIdentifierKey)

The unique identifier of the resource’s volume, returned as an `id` (read-only).

[`NSURLVolumeLocalizedFormatDescriptionKey`](/documentation/Foundation/URLResourceKey/volumeLocalizedFormatDescriptionKey)

Key for the volume’s descriptive format name, returned as an `NSString` object (read-only).

[`NSURLVolumeLocalizedNameKey`](/documentation/Foundation/URLResourceKey/volumeLocalizedNameKey)

The name of the volume as it should be displayed in the user interface, returned as an `NSString` object (read-only).

[`NSURLVolumeMaximumFileSizeKey`](/documentation/Foundation/URLResourceKey/volumeMaximumFileSizeKey)

Key for the largest file size supported by the volume in bytes, returned as a Boolean `NSNumber` object, or `nil` if it cannot be determined (read-only).

[`NSURLVolumeNameKey`](/documentation/Foundation/URLResourceKey/volumeNameKey)

The name of the volume, returned as an string object.

[`NSURLVolumeResourceCountKey`](/documentation/Foundation/URLResourceKey/volumeResourceCountKey)

Key for the total number of resources on the volume, returned as an `NSNumber` object (read-only).

[`NSURLVolumeSupportsAccessPermissionsKey`](/documentation/Foundation/URLResourceKey/volumeSupportsAccessPermissionsKey)

`true` if the volume supports setting POSIX access permissions with the `NSURLFileSecurityKey` property. (Read-only, value type boolean `NSNumber`).

[`NSURLVolumeSupportsAdvisoryFileLockingKey`](/documentation/Foundation/URLResourceKey/volumeSupportsAdvisoryFileLockingKey)

Key for determining whether the volume implements whole-file advisory locks in the style of flock, along with the `O_EXLOCK` and `O_SHLOCK` flags of the open function, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsCasePreservedNamesKey`](/documentation/Foundation/URLResourceKey/volumeSupportsCasePreservedNamesKey)

Key for determining whether the volume supports case-preserved names, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsCaseSensitiveNamesKey`](/documentation/Foundation/URLResourceKey/volumeSupportsCaseSensitiveNamesKey)

Key for determining whether the volume supports case-sensitive names, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsCompressionKey`](/documentation/Foundation/URLResourceKey/volumeSupportsCompressionKey)

Whether the volume supports transparent decompression of compressed files using `decmpfs`, returned as `NSNumber` containing a Boolean value (read-only).

[`NSURLVolumeSupportsExclusiveRenamingKey`](/documentation/Foundation/URLResourceKey/volumeSupportsExclusiveRenamingKey)

Whether the volume supports exclusive renaming using `renamex_np(2)` with the `RENAME_EXCL` option, returned as `NSNumber` containing a Boolean value (read-only).

[`NSURLVolumeSupportsExtendedSecurityKey`](/documentation/Foundation/URLResourceKey/volumeSupportsExtendedSecurityKey)

Key for determining whether the volume supports extended security (access control lists), returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsFileCloningKey`](/documentation/Foundation/URLResourceKey/volumeSupportsFileCloningKey)

Whether the volume supports cloning using `clonefile(2)`, returned as `NSNumber` containing a Boolean value (read-only).

[`NSURLVolumeSupportsHardLinksKey`](/documentation/Foundation/URLResourceKey/volumeSupportsHardLinksKey)

Key for determining whether the volume supports hard links, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsImmutableFilesKey`](/documentation/Foundation/URLResourceKey/volumeSupportsImmutableFilesKey)

`true` if the volume supports making files immutable with the `NSURLIsUserImmutableKey` or `NSURLIsSystemImmutableKey` properties. (Read-only, value type boolean `NSNumber`).

[`NSURLVolumeSupportsJournalingKey`](/documentation/Foundation/URLResourceKey/volumeSupportsJournalingKey)

Key for determining whether the volume supports journaling, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsPersistentIDsKey`](/documentation/Foundation/URLResourceKey/volumeSupportsPersistentIDsKey)

Key for determining whether the volume supports persistent IDs, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsRenamingKey`](/documentation/Foundation/URLResourceKey/volumeSupportsRenamingKey)

Key for determining whether the volume can be renamed, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsRootDirectoryDatesKey`](/documentation/Foundation/URLResourceKey/volumeSupportsRootDirectoryDatesKey)

Key for determining whether the volume supports reliable storage of times for the root directory, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsSparseFilesKey`](/documentation/Foundation/URLResourceKey/volumeSupportsSparseFilesKey)

Key for determining whether the volume supports sparse files, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsSwapRenamingKey`](/documentation/Foundation/URLResourceKey/volumeSupportsSwapRenamingKey)

Whether the volume supports renaming using `renamex_np(2)` with the `RENAME_SWAP` option, returned as `NSNumber` containing a Boolean value (read-only).

[`NSURLVolumeSupportsSymbolicLinksKey`](/documentation/Foundation/URLResourceKey/volumeSupportsSymbolicLinksKey)

Key for determining whether the volume supports symbolic links, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeSupportsVolumeSizesKey`](/documentation/Foundation/URLResourceKey/volumeSupportsVolumeSizesKey)

Key for determining whether the volume supports returning volume size information, returned as a Boolean `NSNumber` object (read-only). If `true`, volume size information is available as values of the [`volumeTotalCapacityKey`](/documentation/Foundation/URLResourceKey/volumeTotalCapacityKey) and[`volumeAvailableCapacityKey`](/documentation/Foundation/URLResourceKey/volumeAvailableCapacityKey) keys.

[`NSURLVolumeSupportsZeroRunsKey`](/documentation/Foundation/URLResourceKey/volumeSupportsZeroRunsKey)

Key for determining whether the volume supports zero runs, returned as a Boolean `NSNumber` object (read-only).

[`NSURLVolumeURLForRemountingKey`](/documentation/Foundation/URLResourceKey/volumeURLForRemountingKey)

Key for the URL needed to remount the network volume, returned as an `NSURL` object, or `nil` if a URL is not available (read-only).

[`NSURLVolumeURLKey`](/documentation/Foundation/URLResourceKey/volumeURLKey)

The root directory of the resource’s volume, returned as an `NSURL` object (read-only).

[`NSURLVolumeUUIDStringKey`](/documentation/Foundation/URLResourceKey/volumeUUIDStringKey)

Key for the volume’s persistent UUID, returned as an `NSString` object, or `nil` if a persistent UUID is not available (read-only).

### Ubiquitous keys

Keys that describe the iCloud storage state of a file.

[`NSURLIsUbiquitousItemKey`](/documentation/Foundation/URLResourceKey/isUbiquitousItemKey)

The key for a Boolean value that indicates whether the item is in iCloud storage.

[`NSURLUbiquitousSharedItemMostRecentEditorNameComponentsKey`](/documentation/Foundation/URLResourceKey/ubiquitousSharedItemMostRecentEditorNameComponentsKey)

The key for the name components of the most recent editor.

[`NSURLUbiquitousItemDownloadRequestedKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemDownloadRequestedKey)

The key for a Boolean value that indicates whether the system has already made a call [`startDownloadingUbiquitousItem(at:)`](/documentation/Foundation/FileManager/startDownloadingUbiquitousItem(at:)) to download the item.

[`NSURLUbiquitousItemIsDownloadingKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemIsDownloadingKey)

The key for a Boolean value that indicates whether the system is downloading the item from iCloud.

[`NSURLUbiquitousItemDownloadingErrorKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemDownloadingErrorKey)

The key for an error object that indicates why downloading the item from iCloud fails.

[`NSURLUbiquitousItemDownloadingStatusKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemDownloadingStatusKey)

The key for the current download state for the item.

[`URLUbiquitousItemDownloadingStatus`](/documentation/Foundation/URLUbiquitousItemDownloadingStatus)

Values that describe the iCloud storage state of a file.

[`NSURLUbiquitousItemIsExcludedFromSyncKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemIsExcludedFromSyncKey)

The key of a Boolean value that indicates whether the system excludes the item from syncing.

[`NSURLUbiquitousItemIsUploadedKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemIsUploadedKey)

The key for a Boolean value that indicates whether the system uploads the item’s data to iCloud storage.

[`NSURLUbiquitousItemIsUploadingKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemIsUploadingKey)

The key for a Boolean value that indicates whether the system is uploading the item to iCloud.

[`NSURLUbiquitousItemUploadingErrorKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemUploadingErrorKey)

The key for an error object that indicates why uploading the item to iCloud fails.

[`NSURLUbiquitousItemHasUnresolvedConflictsKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemHasUnresolvedConflictsKey)

The key for a Boolean value that indicates whether this item has outstanding conflicts.

[`NSURLUbiquitousItemContainerDisplayNameKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemContainerDisplayNameKey)

The key for a string that contains the name of the item’s container as it appears to the user.

[`NSURLUbiquitousSharedItemOwnerNameComponentsKey`](/documentation/Foundation/URLResourceKey/ubiquitousSharedItemOwnerNameComponentsKey)

The key for the name components of the item’s owner.

[`NSURLUbiquitousSharedItemCurrentUserPermissionsKey`](/documentation/Foundation/URLResourceKey/ubiquitousSharedItemCurrentUserPermissionsKey)

The key for the current user’s permissions.

[`NSURLUbiquitousSharedItemCurrentUserRoleKey`](/documentation/Foundation/URLResourceKey/ubiquitousSharedItemCurrentUserRoleKey)

The key for the role of the current user.

[`NSURLUbiquitousItemIsSharedKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemIsSharedKey)

The key for a Boolean value that indicates a shared item.

[`URLUbiquitousSharedItemRole`](/documentation/Foundation/URLUbiquitousSharedItemRole)

The key for the role of a shared item.

[`URLUbiquitousSharedItemPermissions`](/documentation/Foundation/URLUbiquitousSharedItemPermissions)

The key for the permissions of a shared item.

[`NSURLUbiquitousItemIsSyncPausedKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemIsSyncPausedKey)

A Boolean value that indicates whether sync is paused for this item (value type boolean `NSNumber`).

[`NSURLUbiquitousItemSupportedSyncControlsKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemSupportedSyncControlsKey)

The read-only value of the `NSFileManagerSupportedSyncControls` options (value type `NSNumber`).

### Thumbnail keys

[`NSURLThumbnailKey`](/documentation/Foundation/URLResourceKey/thumbnailKey)

All thumbnails as a single NSImage (read-write).

[`NSURLThumbnailDictionaryKey`](/documentation/Foundation/URLResourceKey/thumbnailDictionaryKey)

A dictionary of NSImage/UIImage objects keyed by size (read-write). See [`URLThumbnailDictionaryItem`](/documentation/Foundation/URLThumbnailDictionaryItem) for a list of possible keys.

[`URLThumbnailDictionaryItem`](/documentation/Foundation/URLThumbnailDictionaryItem)

Possible keys for the [`thumbnailDictionaryKey`](/documentation/Foundation/URLResourceKey/thumbnailDictionaryKey) dictionary.

### Other resource keys

[`NSURLKeysOfUnsetValuesKey`](/documentation/Foundation/URLResourceKey/keysOfUnsetValuesKey)

Key for the resource properties that have not been set after the [`setResourceValues(_:)`](/documentation/Foundation/NSURL/setResourceValues(_:)) method returns an error, returned as an array of `NSString` objects.

[`NSURLQuarantinePropertiesKey`](/documentation/Foundation/URLResourceKey/quarantinePropertiesKey)

[`NSURLAddedToDirectoryDateKey`](/documentation/Foundation/URLResourceKey/addedToDirectoryDateKey)

The time at which the resource’s was created or renamed into or within its parent directory, returned as an `NSDate`. Inconsistent behavior may be observed when this attribute is requested on hard-linked items. This property is not supported by all volumes. (read-only)

[`NSURLAttributeModificationDateKey`](/documentation/Foundation/URLResourceKey/attributeModificationDateKey)

The time at which the resource’s attributes were most recently modified, returned as an `NSDate` object if the volume supports attribute modification dates, or `nil` if attribute modification dates are unsupported (read-only).

[`NSURLContentAccessDateKey`](/documentation/Foundation/URLResourceKey/contentAccessDateKey)

The time at which the resource was most recently accessed.

[`NSURLContentModificationDateKey`](/documentation/Foundation/URLResourceKey/contentModificationDateKey)

The time at which the resource was most recently modified.

[`NSURLCreationDateKey`](/documentation/Foundation/URLResourceKey/creationDateKey)

The time at which the resource was created.

[`NSURLCustomIconKey`](/documentation/Foundation/URLResourceKey/customIconKey)

The icon stored with the resource, returned as an `NSImage` object, or `nil` if the resource has no custom icon.

[`NSURLDocumentIdentifierKey`](/documentation/Foundation/URLResourceKey/documentIdentifierKey)

The document identifier returned as an `NSNumber` (read-only).

[`NSURLEffectiveIconKey`](/documentation/Foundation/URLResourceKey/effectiveIconKey)

The resource’s normal icon, returned as an `NSImage` object (read-only).

[`NSURLGenerationIdentifierKey`](/documentation/Foundation/URLResourceKey/generationIdentifierKey)

An opaque generation identifier, returned as an `id <NSCopying, NSCoding, NSObject>` (read-only)

[`NSURLHasHiddenExtensionKey`](/documentation/Foundation/URLResourceKey/hasHiddenExtensionKey)

Key for determining whether the resource’s extension is normally removed from its localized name, returned as a Boolean `NSNumber` object (read-write).

[`NSURLIsExcludedFromBackupKey`](/documentation/Foundation/URLResourceKey/isExcludedFromBackupKey)

A key for indicating whether the system excludes the resource from all backups of app data.

[`NSURLIsExecutableKey`](/documentation/Foundation/URLResourceKey/isExecutableKey)

Key for determining whether the current process (as determined by the EUID) can execute the resource (if it is a file) or search the resource (if it is a directory), returned as a Boolean `NSNumber` object (read-only).

[`NSURLIsHiddenKey`](/documentation/Foundation/URLResourceKey/isHiddenKey)

Key for determining whether the resource is normally not displayed to users, returned as a Boolean `NSNumber` object (read-write).

[`NSURLIsReadableKey`](/documentation/Foundation/URLResourceKey/isReadableKey)

Key for determining whether the current process (as determined by the EUID) can read the resource, returned as a Boolean `NSNumber` object (read-only).

[`NSURLIsSymbolicLinkKey`](/documentation/Foundation/URLResourceKey/isSymbolicLinkKey)

Key for determining whether the resource is a symbolic link, returned as a Boolean `NSNumber` object (read-only).

[`NSURLIsSystemImmutableKey`](/documentation/Foundation/URLResourceKey/isSystemImmutableKey)

Key for determining whether the resource’s system immutable bit is set, returned as a Boolean `NSNumber` object (read-write).

[`NSURLIsUserImmutableKey`](/documentation/Foundation/URLResourceKey/isUserImmutableKey)

Key for determining whether the resource’s user immutable bit is set, returned as a Boolean `NSNumber` object (read-write).

[`NSURLIsWritableKey`](/documentation/Foundation/URLResourceKey/isWritableKey)

Key for determining whether the current process (as determined by the EUID) can write to the resource, returned as a Boolean `NSNumber` object (read-only).

[`NSURLLabelColorKey`](/documentation/Foundation/URLResourceKey/labelColorKey)

The resource’s label color, returned as an `NSColor` object, or `nil` if the resource has no label color (read-only).

[`NSURLLabelNumberKey`](/documentation/Foundation/URLResourceKey/labelNumberKey)

The resource’s label number, returned as an `NSNumber` object (read-write).

[`NSURLLinkCountKey`](/documentation/Foundation/URLResourceKey/linkCountKey)

The number of hard links to the resource, returned as an `NSNumber` object (read-only).

[`NSURLLocalizedLabelKey`](/documentation/Foundation/URLResourceKey/localizedLabelKey)

The resource’s localized label text, returned as an `NSString` object, or `nil` if the resource has no localized label text (read-only).

[`NSURLLocalizedNameKey`](/documentation/Foundation/URLResourceKey/localizedNameKey)

The resource’s localized or extension-hidden name, returned as an `NSString` object (read-only).

[`NSURLLocalizedTypeDescriptionKey`](/documentation/Foundation/URLResourceKey/localizedTypeDescriptionKey)

The resource’s localized type description, returned as an `NSString` object (read-only).

[`NSURLNameKey`](/documentation/Foundation/URLResourceKey/nameKey)

The resource’s name in the file system, returned as an `NSString` object (read-write).

[`NSURLPathKey`](/documentation/Foundation/URLResourceKey/pathKey)

The file system path for the URL, returned as an [`NSString`](/documentation/Foundation/NSString) object (read-only).

[`NSURLCanonicalPathKey`](/documentation/Foundation/URLResourceKey/canonicalPathKey)

[`NSURLTagNamesKey`](/documentation/Foundation/URLResourceKey/tagNamesKey)

The names of tags attached to the resource, returned as an array of `NSString` values (read-write).

[`NSURLTypeIdentifierKey`](/documentation/Foundation/URLResourceKey/typeIdentifierKey)

The resource’s uniform type identifier (UTI), returned as an `NSString` object (read-only).

[`NSURLContentTypeKey`](/documentation/Foundation/URLResourceKey/contentTypeKey)

The resource’s type.

### Initializers

[`init(_:)`](/documentation/Foundation/URLResourceKey/init(_:))

[`init(rawValue:)`](/documentation/Foundation/URLResourceKey/init(rawValue:))

### Deprecated

[`NSURLUbiquitousItemIsDownloadedKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemIsDownloadedKey)

The key for a Boolean value that indicates whether the system downloaded this item’s data from iCloud storage.

[`NSURLUbiquitousItemPercentDownloadedKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemPercentDownloadedKey)

The key for a value that indicates the percentage of data that the system downloaded from iCloud storage.

[`NSURLUbiquitousItemPercentUploadedKey`](/documentation/Foundation/URLResourceKey/ubiquitousItemPercentUploadedKey)

The key for a value that indicates the percentage of data that the system uploaded to iCloud storage.

## Relationships

### Conforms To

[`Hashable`](/documentation/Swift/Hashable)

[`Sendable`](/documentation/Swift/Sendable)

[`Equatable`](/documentation/Swift/Equatable)

[`RawRepresentable`](/documentation/Swift/RawRepresentable)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

---

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)