1{
2  "meta": {
3    "source": "https://developer.apple.com/documentation/bundleresources/information_property_list/protected_resources",
4    "scrapedAt": "2021-07-21T21:09:09Z"
5  },
6  "data": {
7    "NSBluetoothAlwaysUsageDescription": {
8      "apiAdded": "iOS 13.0+  tvOS 13.0+  watchOS 6.0+",
9      "apiDeprecated": false,
10      "framework": "Core Bluetooth",
11      "name": "NSBluetoothAlwaysUsageDescription",
12      "description": "A message that tells the user why the app needs access to Bluetooth.",
13      "warning": "If your app has a deployment target earlier than iOS 13, add the NSBluetoothPeripheralUsageDescription key to your app’s Information Property List file in addition to this key."
14    },
15    "NSBluetoothPeripheralUsageDescription": {
16      "apiAdded": "iOS 6.0–13.0",
17      "apiDeprecated": true,
18      "framework": "Core Bluetooth",
19      "name": "NSBluetoothPeripheralUsageDescription",
20      "description": "A message that tells the user why the app is requesting the ability to connect to Bluetooth peripherals.",
21      "warning": "This key is required if your app uses APIs that access Bluetooth peripherals and has a deployment target earlier than iOS 13."
22    },
23    "NSCalendarsUsageDescription": {
24      "apiAdded": "iOS 6.0+  macOS 10.14+",
25      "apiDeprecated": false,
26      "framework": "EventKit",
27      "name": "NSCalendarsUsageDescription",
28      "description": "A message that tells the user why the app is requesting access to the user’s calendar data.",
29      "warning": "This key is required if your app uses APIs that access the user’s calendar data."
30    },
31    "NSRemindersUsageDescription": {
32      "apiAdded": "iOS 6.0+  macOS 10.14+",
33      "apiDeprecated": false,
34      "framework": "EventKit",
35      "name": "NSRemindersUsageDescription",
36      "description": "A message that tells the user why the app is requesting access to the user’s reminders.",
37      "warning": "This key is required if your app uses APIs that access the user’s reminders."
38    },
39    "NSCameraUsageDescription": {
40      "apiAdded": "iOS 7.0+  macOS 10.14+",
41      "apiDeprecated": false,
42      "framework": "AVFoundation",
43      "name": "NSCameraUsageDescription",
44      "description": "A message that tells the user why the app is requesting access to the device’s camera.",
45      "warning": "This key is required if your app uses APIs that access the device’s camera."
46    },
47    "NSMicrophoneUsageDescription": {
48      "apiAdded": "iOS 7.0+  macOS 10.14+  watchOS 4.0+",
49      "apiDeprecated": false,
50      "framework": "AVFoundation",
51      "name": "NSMicrophoneUsageDescription",
52      "description": "A message that tells the user why the app is requesting access to the device’s microphone.",
53      "warning": "This key is required if your app uses APIs that access the device’s microphone."
54    },
55    "NSContactsUsageDescription": {
56      "apiAdded": "iOS 6.0+  macOS 10.8+",
57      "apiDeprecated": false,
58      "framework": "Contacts",
59      "name": "NSContactsUsageDescription",
60      "description": "A message that tells the user why the app is requesting access to the user’s contacts.",
61      "warning": "This key is required if your app uses APIs that access the user’s contacts."
62    },
63    "NSFaceIDUsageDescription": {
64      "apiAdded": "iOS 11.0+",
65      "apiDeprecated": false,
66      "framework": "Local Authentication",
67      "name": "NSFaceIDUsageDescription",
68      "description": "A message that tells the user why the app is requesting the ability to authenticate with Face ID.",
69      "warning": "This key is required if your app uses APIs that access Face ID."
70    },
71    "NSDesktopFolderUsageDescription": {
72      "apiAdded": "macOS 10.15+",
73      "apiDeprecated": false,
74      "framework": "Foundation",
75      "name": "NSDesktopFolderUsageDescription",
76      "description": "A message that tells the user why the app needs access to the user’s Desktop folder.",
77      "warning": null
78    },
79    "NSDocumentsFolderUsageDescription": {
80      "apiAdded": "macOS 10.15+",
81      "apiDeprecated": false,
82      "framework": "Foundation",
83      "name": "NSDocumentsFolderUsageDescription",
84      "description": "A message that tells the user why the app needs access to the user’s Documents folder.",
85      "warning": null
86    },
87    "NSDownloadsFolderUsageDescription": {
88      "apiAdded": "macOS 10.15+",
89      "apiDeprecated": false,
90      "framework": "Foundation",
91      "name": "NSDownloadsFolderUsageDescription",
92      "description": "A message that tells the user why the app needs access to the user’s Downloads folder.",
93      "warning": null
94    },
95    "NSNetworkVolumesUsageDescription": {
96      "apiAdded": "macOS 10.15+",
97      "apiDeprecated": false,
98      "framework": "Foundation",
99      "name": "NSNetworkVolumesUsageDescription",
100      "description": "A message that tells the user why the app needs access to files on a network volume.",
101      "warning": null
102    },
103    "NSRemovableVolumesUsageDescription": {
104      "apiAdded": "macOS 10.15+",
105      "apiDeprecated": false,
106      "framework": "Foundation",
107      "name": "NSRemovableVolumesUsageDescription",
108      "description": "A message that tells the user why the app needs access to files on a removable volume.",
109      "warning": null
110    },
111    "NSFileProviderPresenceUsageDescription": {
112      "apiAdded": "macOS 10.15+",
113      "apiDeprecated": false,
114      "framework": "Foundation",
115      "name": "NSFileProviderPresenceUsageDescription",
116      "description": "A message that tells the user why the app needs to be informed when other apps access files that it manages.",
117      "warning": null
118    },
119    "NSFileProviderDomainUsageDescription": {
120      "apiAdded": "macOS 10.15+",
121      "apiDeprecated": false,
122      "framework": "Foundation",
123      "name": "NSFileProviderDomainUsageDescription",
124      "description": "A message that tells the user why the app needs access to files managed by a file provider.",
125      "warning": null
126    },
127    "NSGKFriendListUsageDescription": {
128      "apiAdded": "iOS 14.5+",
129      "apiDeprecated": false,
130      "framework": "GameKit",
131      "name": "NSGKFriendListUsageDescription",
132      "description": "A message that tells the user why the app needs access to their Game Center friends list.",
133      "warning": null
134    },
135    "NSHealthClinicalHealthRecordsShareUsageDescription": {
136      "apiAdded": "iOS 12.0+",
137      "apiDeprecated": false,
138      "framework": "HealthKit",
139      "name": "NSHealthClinicalHealthRecordsShareUsageDescription",
140      "description": "A message to the user that explains why the app requested permission to read clinical records.",
141      "warning": "This key is required if your app uses APIs that access the user's clinical records."
142    },
143    "NSHealthShareUsageDescription": {
144      "apiAdded": "iOS 8.0+",
145      "apiDeprecated": false,
146      "framework": "HealthKit",
147      "name": "NSHealthShareUsageDescription",
148      "description": "A message to the user that explains why the app requested permission to read samples from the HealthKit store.",
149      "warning": "This key is required if your app uses APIs that access the user’s heath data."
150    },
151    "NSHealthUpdateUsageDescription": {
152      "apiAdded": "iOS 8.0+",
153      "apiDeprecated": false,
154      "framework": "HealthKit",
155      "name": "NSHealthUpdateUsageDescription",
156      "description": "A message to the user that explains why the app requested permission to save samples to the HealthKit store.",
157      "warning": "This key is required if your app uses APIs that update the user’s health data."
158    },
159    "NSHomeKitUsageDescription": {
160      "apiAdded": "iOS 8.0+  watchOS 2.0+",
161      "apiDeprecated": false,
162      "framework": "HomeKit",
163      "name": "NSHomeKitUsageDescription",
164      "description": "A message that tells the user why the app is requesting access to the user’s HomeKit configuration data.",
165      "warning": "This key is required if your app uses APIs that access the user’s HomeKit configuration data."
166    },
167    "NSLocationAlwaysAndWhenInUseUsageDescription": {
168      "apiAdded": "iOS 11.0+",
169      "apiDeprecated": false,
170      "framework": "Core Location",
171      "name": "NSLocationAlwaysAndWhenInUseUsageDescription",
172      "description": "A message that tells the user why the app is requesting access to the user’s location information at all times.",
173      "warning": "This key is required if your iOS app uses APIs that access the user’s location information at all times."
174    },
175    "NSLocationUsageDescription": {
176      "apiAdded": "iOS 6.0–8.0  macOS 10.14+",
177      "apiDeprecated": true,
178      "framework": "Core Location",
179      "name": "NSLocationUsageDescription",
180      "description": "A message that tells the user why the app is requesting access to the user’s location information.",
181      "warning": "This key is required if your macOS app uses APIs that access the user’s location information."
182    },
183    "NSLocationWhenInUseUsageDescription": {
184      "apiAdded": "iOS 11.0+",
185      "apiDeprecated": false,
186      "framework": "Core Location",
187      "name": "NSLocationWhenInUseUsageDescription",
188      "description": "A message that tells the user why the app is requesting access to the user’s location information while the app is running in the foreground.",
189      "warning": "This key is required if your iOS app uses APIs that access the user’s location information while the app is in use."
190    },
191    "NSLocationAlwaysUsageDescription": {
192      "apiAdded": "iOS 8.0–10.0",
193      "apiDeprecated": true,
194      "framework": "Core Location",
195      "name": "NSLocationAlwaysUsageDescription",
196      "description": "A message that tells the user why the app is requesting access to the user's location at all times.DeprecatedFor apps deployed to targets in iOS 11 and later, use NSLocationAlwaysAndWhenInUseUsageDescription instead.",
197      "warning": "This key is required if your iOS app uses APIs that access the user’s location at all times and deploys to targets earlier than iOS 11."
198    },
199    "NSAppleMusicUsageDescription": {
200      "apiAdded": "iOS 2.0+",
201      "apiDeprecated": false,
202      "framework": "Media Player",
203      "name": "NSAppleMusicUsageDescription",
204      "description": "A message that tells the user why the app is requesting access to the user’s media library.",
205      "warning": "This key is required if your app uses APIs that access the user’s media library."
206    },
207    "NSMotionUsageDescription": {
208      "apiAdded": "iOS 7.0+  macOS 10.15+",
209      "apiDeprecated": false,
210      "framework": "Core Motion",
211      "name": "NSMotionUsageDescription",
212      "description": "A message that tells the user why the app is requesting access to the device’s motion data.",
213      "warning": "This key is required if your app uses APIs that access the device’s motion data, including CMSensorRecorder, CMPedometer, CMMotionActivityManager, and CMMovementDisorderManager. If you don’t include this key, your app will crash when it attempts to access motion data."
214    },
215    "NSFallDetectionUsageDescription": {
216      "apiAdded": "watchOS 7.2+",
217      "apiDeprecated": false,
218      "framework": "Core Motion",
219      "name": "NSFallDetectionUsageDescription",
220      "description": "A message to the user that explains the app’s request for permission to access fall detection event data.",
221      "warning": "If your app uses the CMFallDetectionManager, the app requires this key."
222    },
223    "NSLocalNetworkUsageDescription": {
224      "apiAdded": "iOS 14.0+  macOS 11.0+  tvOS 14.0+",
225      "apiDeprecated": false,
226      "framework": "Network",
227      "name": "NSLocalNetworkUsageDescription",
228      "description": "A message that tells the user why the app is requesting access to the local network.",
229      "warning": null
230    },
231    "NSNearbyInteractionUsageDescription": {
232      "apiAdded": "iOS 15.0+ Beta watchOS 8.0+ Beta",
233      "apiDeprecated": false,
234      "framework": "Nearby Interaction",
235      "name": "NSNearbyInteractionUsageDescription",
236      "description": "A request for user permission to begin an interaction session with nearby devices.",
237      "warning": null
238    },
239    "NSNearbyInteractionAllowOnceUsageDescription": {
240      "apiAdded": "iOS 14.0–15.0",
241      "apiDeprecated": true,
242      "framework": "Nearby Interaction",
243      "name": "NSNearbyInteractionAllowOnceUsageDescription",
244      "description": "A one-time request for user permission to begin an interaction session with nearby devices.",
245      "warning": null
246    },
247    "NFCReaderUsageDescription": {
248      "apiAdded": "iOS 11.0+",
249      "apiDeprecated": false,
250      "framework": "Core NFC",
251      "name": "NFCReaderUsageDescription",
252      "description": "A message that tells the user why the app is requesting access to the device’s NFC hardware.",
253      "warning": "You’re required to provide this key if your app uses APIs that access the NFC hardware."
254    },
255    "NSPhotoLibraryAddUsageDescription": {
256      "apiAdded": "iOS 11.0+",
257      "apiDeprecated": false,
258      "framework": "Photos",
259      "name": "NSPhotoLibraryAddUsageDescription",
260      "description": "A message that tells the user why the app is requesting add-only access to the user’s photo library.",
261      "warning": "This key is required if your app uses APIs that have write access to the user’s photo library."
262    },
263    "NSPhotoLibraryUsageDescription": {
264      "apiAdded": "iOS 6.0+  macOS 10.14+",
265      "apiDeprecated": false,
266      "framework": "Photos",
267      "name": "NSPhotoLibraryUsageDescription",
268      "description": "A message that tells the user why the app is requesting access to the user’s photo library.",
269      "warning": "This key is required if your app uses APIs that have read or write access to the user’s photo library."
270    },
271    "NSUserTrackingUsageDescription": {
272      "apiAdded": "iOS 14.0+  tvOS 14.0+",
273      "apiDeprecated": false,
274      "framework": "Security",
275      "name": "NSUserTrackingUsageDescription",
276      "description": "A message that informs the user why an app is requesting permission to use data for tracking the user or the device.",
277      "warning": null
278    },
279    "NSAppleEventsUsageDescription": {
280      "apiAdded": "macOS 10.14+",
281      "apiDeprecated": false,
282      "framework": "Security",
283      "name": "NSAppleEventsUsageDescription",
284      "description": "A message that tells the user why the app is requesting the ability to send Apple events.",
285      "warning": "This key is required if your app uses APIs that send Apple events."
286    },
287    "NSSystemAdministrationUsageDescription": {
288      "apiAdded": "macOS 10.14+",
289      "apiDeprecated": false,
290      "framework": "Security",
291      "name": "NSSystemAdministrationUsageDescription",
292      "description": "A message in macOS that tells the user why the app is requesting to manipulate the system configuration.",
293      "warning": "This key is required if your app uses APIs that manipulate the system configuration."
294    },
295    "NSSensorKitUsageDescription": {
296      "apiAdded": "iOS 14.0+",
297      "apiDeprecated": false,
298      "framework": "SensorKit",
299      "name": "NSSensorKitUsageDescription",
300      "description": "No overview available.",
301      "warning": null
302    },
303    "NSSiriUsageDescription": {
304      "apiAdded": "iOS 10.0+",
305      "apiDeprecated": false,
306      "framework": "Intents",
307      "name": "NSSiriUsageDescription",
308      "description": "A message that tells the user why the app is requesting to send user data to Siri.",
309      "warning": "This key is required if your app uses APIs that send user data to Siri."
310    },
311    "NSSpeechRecognitionUsageDescription": {
312      "apiAdded": "iOS 10.0+  macOS 10.15+",
313      "apiDeprecated": false,
314      "framework": "Speech",
315      "name": "NSSpeechRecognitionUsageDescription",
316      "description": "A message that tells the user why the app is requesting to send user data to Apple’s speech recognition servers.",
317      "warning": "This key is required if your app uses APIs that send user data to Apple’s speech recognition servers."
318    },
319    "NSVideoSubscriberAccountUsageDescription": {
320      "apiAdded": "tvOS 12.0+",
321      "apiDeprecated": false,
322      "framework": "TVUIKit",
323      "name": "NSVideoSubscriberAccountUsageDescription",
324      "description": "A message that tells the user why the app is requesting access to the user’s TV provider account.",
325      "warning": "This key is required if your app uses APIs that access the user’s TV provider account."
326    }
327  }
328}
329