asc publish

Submit your app for review and publish to the stores.

Usage

Syntaxbash
asc publish [store] [options]

Options

OptionDescription
appstoreSubmit to App Store only
playstoreSubmit to Google Play only
--version, -vVersion to submit
--trackRelease track (production, beta, alpha)
--rolloutStaged rollout percentage (Play Store)
--auto-releaseRelease automatically after approval
--phasedEnable phased release (App Store)
--project, -pProject ID (uses current if not specified)

Examples

Submit to both stores

Both Storesbash
asc publish --version 2.0.0
# Output:
# Pre-submission check...
# ✓ Version 2.0.0 binary uploaded
# ✓ All metadata complete
# ✓ Screenshots uploaded for all locales
# ✓ Store credentials valid
#
# Ready to submit version 2.0.0 for review?
# This will submit to both App Store and Google Play.
#
# [y/N]: y
#
# Submitting to App Store Connect...
# ✓ App submitted for review
# Version: 2.0.0
# Status: Waiting for Review
# Estimated review time: 24-48 hours
#
# Submitting to Google Play Console...
# ✓ App submitted for review
# Version: 2.0.0 (200)
# Track: Production
# Status: Pending publication
#
# Both stores submitted successfully!

Submit to App Store with phased release

Phased Releasebash
asc publish appstore --version 2.0.0 --phased --auto-release
# Output:
# Pre-submission check for App Store...
# ✓ Version 2.0.0 binary uploaded
# ✓ All metadata complete
# ✓ Screenshots uploaded
#
# Submitting to App Store Connect...
# ✓ App submitted for review
# Version: 2.0.0
# Release Type: Phased (7 days)
# Auto-release: Enabled
# Status: Waiting for Review

Submit to Play Store with staged rollout

Staged Rolloutbash
asc publish playstore --version 2.0.0 --rollout 10
# Output:
# Pre-submission check for Google Play...
# ✓ Version 2.0.0 (200) AAB uploaded
# ✓ All metadata complete
# ✓ Screenshots uploaded
#
# Submitting to Google Play Console...
# ✓ Release created
# Version: 2.0.0 (200)
# Track: Production
# Rollout: 10%
# Status: Pending publication
#
# Use 'asc publish playstore --rollout 50' to increase rollout.

Submit to beta track

Beta Releasebash
asc publish --version 2.1.0-beta --track beta
# Output:
# Pre-submission check...
# ✓ Version 2.1.0-beta binary uploaded
# ✓ All metadata complete
#
# Submitting to beta tracks...
#
# App Store Connect (TestFlight):
# ✓ Build submitted to TestFlight
# Version: 2.1.0 (beta)
# External testing: Enabled
#
# Google Play Console:
# ✓ Release created on beta track
# Version: 2.1.0-beta (210)
# Track: Beta

Release Tracks

TrackApp StorePlay Store
productionApp Store (public)Production track
betaTestFlight (external)Open testing track
alphaTestFlight (internal)Internal testing track

CI/CD Integration

For automated releases in CI/CD pipelines:

CI/CD Examplebash
# Non-interactive publish (requires --force for CI)
asc publish --version $VERSION --force
# GitHub Actions example
- name: Publish to stores
env:
ASC_API_KEY: ${{ secrets.ASC_API_KEY }}
run: |
asc publish --version ${{ github.ref_name }} --force