Itms-services Action Download-manifest Amp-url Https

When writing the actual link in HTML, you should use:

<a href="itms-services://?action=download-manifest&url=https://example.com/app.plist">Install App</a>

When using in a shell script or email client that supports raw URIs, use:

itms-services://?action=download-manifest&url=https://example.com/app.plist Itms-services Action Download-manifest Amp-url Https

Never use amp-url literally. It will break the installation.

On your download page, create an anchor tag: When writing the actual link in HTML, you

<a href="itms-services://?action=download-manifest&url=https://apps.yourcompany.com/releases/v1.2.3/manifest.plist">
  Tap to install MyApp v1.2.3
</a>
  • If using redirects, ensure the final URL remains HTTPS and accessible.
  • Check device console logs (via macOS Console.app when device connected) for installer errors.
  • To understand why this keyword exists, you must understand Apple’s Over-the-Air (OTA) distribution.

    The problem: How do you get a proprietary iOS app onto 500 employee iPhones without going through App Store review? The solution: OTA using the itms-services scheme. When using in a shell script or email

    The process involves three components:

    For that link to work, it must point to a server hosting a file with the following XML structure. This tells the device what app to download.

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>items</key>
        <array>
            <dict>
                <key>assets</key>
                <array>
                    <dict>
                        <key>kind</key>
                        <string>software-package</string>
                        <key>url</key>
                        <string>https://example.com/apps/YourAppName.ipa</string>
                    </dict>
                </array>
                <key>metadata</key>
                <dict>
                    <key>bundle-identifier</key>
                    <string>com.example.yourappname</string>
                    <key>bundle-version</key>
                    <string>1.0.0</string>
                    <key>kind</key>
                    <string>software</string>
                    <key>title</key>
                    <string>Your App Name</string>
                </dict>
            </dict>
        </array>
    </dict>
    </plist>