majd/ipatool
Summary
IPATool is a command-line tool for searching, purchasing, and downloading iOS, iPadOS, tvOS, and visionOS apps from the App Store.
View Cached Full Text
Cached at: 08/30/26, 03:25 PM
majd/ipatool
Source: https://github.com/majd/ipatool
IPATool
ipatool is a command line tool that allows you to search for iOS, iPadOS, tvOS, and visionOS apps on the App Store and download a copy of the app package, known as an ipa file.

Requirements
- Supported operating system (Windows, Linux or macOS).
- Apple ID set up to use the App Store.
Installation
Manual
You can grab the latest version of ipatool from GitHub releases.
Package Manager (macOS)
You can install ipatool using Homebrew.
$ brew install ipatool
Usage
To authenticate with the App Store, use the auth command.
Authenticate with the App Store
Usage:
ipatool auth [command]
Available Commands:
info Show current account info
login Login to the App Store
revoke Revoke your App Store credentials
Flags:
-h, --help help for auth
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--non-interactive run in non-interactive session
--verbose enables verbose logs
Use "ipatool auth [command] --help" for more information about a command.
To search for apps on the App Store, use the search command.
Search for iOS, iPadOS, tvOS, and visionOS apps available on the App Store
Usage:
ipatool search <term> [flags]
Flags:
-h, --help help for search
-l, --limit int maximum amount of search results to retrieve; visionOS supports up to 12 (default 5)
--platform string Platform to search: iphone (iOS), ipad (iPadOS), appletv (tvOS), or visionos
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--non-interactive run in non-interactive session
--verbose enables verbose logs
To obtain a license for an app, use the purchase command.
Obtain a license for the app from the App Store
Usage:
ipatool purchase [flags]
Flags:
-b, --bundle-identifier string Bundle identifier of the target iOS app (required)
-h, --help help for purchase
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--non-interactive run in non-interactive session
--verbose enables verbose logs
To list apps owned by the authenticated account, use the list-purchases command. Results are ordered by purchase date, newest first.
List apps owned by the authenticated App Store account
Usage:
ipatool list-purchases [flags]
Flags:
-h, --help help for list-purchases
-l, --max-results int maximum number of apps to return per page (default 10)
-p, --page int page of owned apps to return (default 1)
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--keychain-passphrase string passphrase for unlocking keychain
--non-interactive run in non-interactive session
--verbose enables verbose logs
To obtain a list of availble app versions to download, use the list-versions command.
List the available versions of an iOS app
Usage:
ipatool list-versions [flags]
Flags:
-i, --app-id int ID of the target iOS app (required)
-b, --bundle-identifier string The bundle identifier of the target iOS app (overrides the app ID)
-h, --help help for list-versions
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--keychain-passphrase string passphrase for unlocking keychain
--non-interactive run in non-interactive session
--verbose enables verbose logs
To download a copy of the ipa file, use the download command.
Download (encrypted) iOS, iPadOS, tvOS, and visionOS app packages from the App Store
Usage:
ipatool download [flags]
Flags:
-i, --app-id int ID of the target app (required)
-b, --bundle-identifier string The bundle identifier of the target app (overrides the app ID)
--external-version-id string External version identifier of the target app (defaults to latest version when not specified)
-h, --help help for download
-o, --output string The destination path of the downloaded app package
--platform string Platform to download for: iphone (iOS), ipad (iPadOS), appletv (tvOS), or visionos
--purchase Obtain a license for the app if needed
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--keychain-passphrase string passphrase for unlocking keychain
--non-interactive run in non-interactive session
--verbose enables verbose logs
To resolve an external version identifier, returned by the list-versions command, use the get-version-metadata command.
Retrieves the metadata for a specific version of an app
Usage:
ipatool get-version-metadata [flags]
Flags:
-i, --app-id int ID of the target iOS app (required)
-b, --bundle-identifier string The bundle identifier of the target iOS app (overrides the app ID)
--external-version-id string External version identifier of the target iOS app (required)
-h, --help help for get-version-metadata
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--keychain-passphrase string passphrase for unlocking keychain
--non-interactive run in non-interactive session
--verbose enables verbose logs
Note: the tool runs in interactive mode by default. Use the --non-interactive flag
if running in an automated environment.
Compiling
The tool can be compiled using the Go toolchain.
$ go build -o ipatool
Unit tests can be executed with the following commands.
$ go generate ./...
$ go test -v ./...
License
IPATool is released under the MIT license.
Similar Articles
nab138/iloader
iloader is a tool for easily installing SideStore and managing IPA files on iDevices, with features for importing pairing files and certificate management.
PIP
PIP is an AI assistant for Mac computers that helps users by viewing their screen and providing step-by-step guidance on where to click.
@NFTCPS: Apple's App Store review finally bypassable? This tool directly installs iOS apps onto devices, no store, no waiting for review. For those who like to tinker, see for yourself: https://github.com/Lakr233/AssppWeb…
Introduces a web tool called AssppWeb that allows users to bypass the App Store and directly install iOS apps onto devices. It adopts a zero-trust architecture, with user credentials processed only in the browser.
@tom_doerr: Installs iOS apps directly to devices without the App Store https://github.com/Lakr233/AssppWeb…
AssppWeb is an open-source web-based tool that allows installing iOS apps directly to devices without the App Store, using a zero-trust architecture where credentials are handled client-side via WebAssembly.
Port Radar for macOS
Port Radar for macOS is an AI-powered tool that manages ports on Mac, eliminating the need for manual commands like lsof. It is featured on Product Hunt for discussion and acquisition.