NativeScript Angular

tns publish ios


Uploads project to iTunes Connect. The command either issues a production build and uploads it to iTunes Connect, or uses an already built package to upload. The user will be prompted interactively for verification code when two-factor authentication enabled account is used. As on non-interactive console (CI), you will not be prompt for verification code. In this case, you need to generate a login session for your apple's account in advance using tns apple-login command. The generated value must be provided via the --appleSessionBase64 option and is only valid for up to a month. Meaning you'll need to create a new session every month.

WARNING: You can run this command only on macOS systems. To view the complete help for this command, run $ tns help publish ios


Usage Synopsis
Build and upload package $ tns publish ios [<Apple ID> [<Password> [<Mobile Provisioning Profile Identifier> [<Code Sign Identity>]]]]]
Upload package $ tns publish ios [<Apple ID> [<Password>]] --ipa <Ipa File Path>


  • --ipa - If set, will use provided .ipa file instead of building the project.
  • --team-id - Specified the team id for which Xcode will try to find distribution certificate and provisioning profile when exporting for AppStore submission.
  • --appleApplicationSpecificPassword - Specifies the password for accessing the information you store in iTunes Transporter application.
  • --appleSessionBase64 - The session that will be used instead of triggering a new login each time NativeScript CLI communicates with Apple's APIs.


  • <Apple ID> and <Password> are your credentials for logging into iTunes Connect.
  • <Mobile Provisioning Profile Identifier> the identifier of the mobile provision(e.g. d5d40f61-b303-4fc8-aea3-fbb229a8171c) which will be used for building. This can easily be acquired through the iPhone Configuration Utility.
  • <Code Sign Identity> the code sign identity which will be used for building. You can set it to something generic like 'iPhone Distribution' to let the build automatically detect a code sign identity.

Command Limitations

  • You can run $ tns publish ios only on macOS systems.
Command Description
appstore Lists applications registered in iTunes Connect.
appstore upload Uploads project to iTunes Connect.
build Builds the project for the selected target platform and produces an application package that you can manually deploy on device or in the native emulator.
build ios Builds the project for iOS and produces an APP or IPA that you can manually deploy in the iOS Simulator or on device, respectively.
deploy Builds and deploys the project to a connected physical or virtual device.
run Runs your project on a connected device or in the native emulator for the selected platform.
run ios Runs your project on a connected iOS device or in the iOS Simulator, if configured.