Skip to content
DeveloperMemos

Navigating ITMS-91053: Solving Missing API Declaration

iOS Development, App Store Compliance, Privacy Manifest1 min read

In the world of iOS app development, staying compliant with Apple's privacy guidelines is crucial. Recently, developers have encountered an issue labeled "ITMS-91053: Missing API declaration" causing confusion and queries across the developer community. Let's break down this problem and find a solution.

Understanding the Issue

Apple has announced a new requirement effective May 1, 2024, stating that apps or updates must declare certain APIs used in the app's code. Failure to comply might result in hurdles during the app review process, affecting its availability on the App Store.

The Fix

Developers can resolve this issue by creating a privacy manifest file tailored to their app's needs. This file, typically named "PrivacyInfo.xcprivacy," outlines the APIs accessed by the application and provides reasons for their usage.

How to Create the Privacy Manifest

  1. Open Xcode and select the appropriate target for your app.
  2. Create a new file and choose "App Privacy" as the file type.
  3. Name the file "PrivacyInfo.xcprivacy."
  4. Populate the file with the necessary API declarations and reasons for usage.

Example

1<key>NSPrivacyAccessedAPITypes</key>
2<array>
3 <dict>
4 <key>NSPrivacyAccessedAPIType</key>
5 <string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
6 <key>NSPrivacyAccessedAPITypeReasons</key>
7 <array>
8 <string>C617.1</string>
9 </array>
10 </dict>
11 <dict>
12 <key>NSPrivacyAccessedAPIType</key>
13 <string>NSPrivacyAccessedAPICategoryUserDefaults</string>
14 <key>NSPrivacyAccessedAPITypeReasons</key>
15 <array>
16 <string>CA92.1</string>
17 </array>
18 </dict>
19</array>

It's important to ensure that third-party frameworks used in the app also have their privacy manifest files updated accordingly.

More Info

If you want to go more indepth, you can find more information about this new requirement on Apple's site here.