Due to various reasons (such as Apple developer account termination), apps you had previously purchased can no longer be downloaded from the App Store or iTunes. However, it turns out these applications can still be accessed. Third party .ipa downloading tools such as iMazing, ipatool, and ipatool-py use a special endpoint that allows downloading removed apps.
This app must have been purchased on your Apple ID beforehand. You cannot download any app ever made. Apple only lets you download apps you had bought or downloaded in the past.
I reccomend using the ipatool-py method, because it is easier. However, if you are unable to use it, I have left the original iMazing method for you to follow.
- App ID (Number such as 1053533457) of app to download
- The app you would like to download must have been previously purchased on your Apple ID
- You must be able to access the Apple ID. (Apps shared using Family Sharing will not work).
- ipatool-py
git clone https://github.com/NyaMisty/ipatool-py.git
, or click "Code", then "Download ZIP", and then extract the downloaded zip.- It is now possible to download older versions of apps using this tool, without any extra setup.
- Python must be installed.
The easiest place to find an App ID is to find the original iTunes link.
https://apps.apple.com/us/app/color-switch/id1053533457
(The number after /id
is the App ID).
- Search engines such as Google often still have the app's iTunes page as a result
- News articles and Review sites can have a link to view the iTunes page
- Reveal trailers and promotional media will contain a link to the iTunes page
You may also request your personal data from Apple to find the ID.
- Make sure to select "Apple Media Services information" when requesting data
- This can take about a week to get
- Find it in
Apple_Media_Services/Stores Activity/Account and Transaction History/Store Transaction History.csv
orApple_Media_Services/Stores Activity/Account and Transaction History/Store Free Transaction History.csv
- The App ID is listed as an "Item Reference Number"
- Before beginning, ensure that Python is properly installed.
- Open CMD (Windows), Terminal (Mac), or other command line intepreter of your choice
cd
to the cloned or extracted directory of ipatool-py
- You may also type
cd
and then drag the ipatool-py folder into the window of the CLI to get the correct path.
- Run
pip install -r requirements.txt
- On Mac, use
pip3 install -r requirements.txt
- If you get a
command not found
error, runpython -m pip install -r requirements.txt
(orpython3 -m pip install -r requirements.txt
)
- Run
python main.py download -i appid -e [email protected] -p password
- Replace
appid
with your apps App ID (i.e. 1053533457),[email protected]
with your Apple ID, andpassword
with your Password - On Mac, use
python3
instead ofpython
(i.e.python3 main.py download -i appid -e [email protected] -p password
) - If you want to download older versions of apps, and you have the external identifier, add
--appVerId evid
- You can find External Version Identifiers by following this tutorial to download the latest version, rename the extention of the app downloaded .ipa to .zip, unzip, and view iTunesMetadata.plist. Find it in a section called softwareExternalVersionIdentifiers. They will not be labeled, so you may need to use trial and error to find the exact verion you want. This will be the
evid
. - Once you have the version identifier, run the command:
python main.py download -i appid -e [email protected] -p password --appVerId 833889087
- You can find External Version Identifiers by following this tutorial to download the latest version, rename the extention of the app downloaded .ipa to .zip, unzip, and view iTunesMetadata.plist. Find it in a section called softwareExternalVersionIdentifiers. They will not be labeled, so you may need to use trial and error to find the exact verion you want. This will be the
- (If you have 2FA), Accept the 2FA prompt and append the 2FA code to the command you used in Step 3
- i.e. if the 2FA code is 123456, you would run
python main.py download -i appid -e [email protected] -p password123456
- The app will now download. It is located in the ipatool-py folder.
Originally, this tutorial was written to use iMazing's app downloading feature. It has been left here but is is not reccomended and is not updated anymore. Use this method at your own risk.
- App ID (Number such as 1053533457) of app to download
- The app you would like to download must have been previously purchased on your Apple ID
- You must be able to access the Apple ID
- iMazing (Windows or Mac)
- Plist editor (ProperTree is free and cross platform, requires Python)
- Any iOS Device (iMazing requires an iOS device to access the application manager)
- Lightning (or 30-pin connector) to connect the iOS device to your computer
- Any app installed on the iOS device.
- Plug your device into your computer
- Open iMazing. When prompted to back up your device, select 'Later'
- Select "Manage Apps"
- If prompted, sign into your Apple ID
- After a moment, a list of applications installed on your iOS device will appear. Make sure the app you want to replace has a gray checkmark
- Select the Library tab
- If it has a green checkmark, right click and "Delete from Library"
- While you are here, check if the app you would like to install is already listed. If so, download it and skip to step 12
-
Close iMazing. Make sure iMazing Mini is also closed.
-
Open
Apps.plist
in your .plist editor of choice.
- If using Propertree, double click the .bat (Windows) or .command (Mac) file, and select File > Open in the Menu Bar
- On Windows, paste
%appdata%\iMazing\Library
into the location bar- If this does not work, paste
%appdata%\Roaming\iMazing\Library
(Some older Windows versions use this location instead)
- If this does not work, paste
- On Mac, hold Command+Shift+G, and paste
~/Library/Application Support/iMazing/Library
. - (Optional) Delete
Apps.plist.backup
.
- Pick the app to replace (In this case, I chose
com.adobe.Adobe-Reader
). Modify:
- storeID (Replace with App ID)
- The name of the Dictionary (Optional, change it to something different)
- bundleID (Optional, change it to something different)
- Save the .plist and close. Re-open iMazing and re-enter "Manage Apps" (Step 3)
- The app you replaced should sync back, and a duplicate should appear. Download this duplicate.
- After the duplicate is downloaded, exit the app manager and re-enter it.
- On older versions of iMazing, the download will fail. This is only visual, the download actually did take place in the background.
- Your app should now appear, but it is missing important information. Click the trash can to delete it, and click the download button again.
- You have now downloaded the delisted app. Right click and "Export .IPA" to save it to your desktop
The .ipa file on your desktop is an "encrypted" .ipa file. Like any other app downloaded from iTunes, it will only be usable on devices with your Apple ID. You may also choose to "decrypt" (or "crack") the app to remove this restriction and make it easier to archive.
Use this tutorial to crack the app on any legacy version of iOS.
Feel free to check out iOS preservestion projects such as iPhoneOS Obscura if you would like to archive old iOS apps.
This tutorial was tested on OS X El Capitan and Windows 10 with iMazing 2.15.8.
Worked like a charm, thank you so much!