asc-cli
A powerful command-line interface for Apple App Store Connect API.
Overview
asc-cli brings App Store Connect to your terminal. Manage subscriptions, pricing, TestFlight, and more without leaving the command line.
# Configure pricing for all territories
asc subscriptions pricing set --product pro.monthly --price 2.99
# Add a free trial
asc subscriptions offers create --product pro.monthly --type free-trial --duration 14d
# List TestFlight builds
asc testflight builds list --app "My App"
Why asc-cli?
Automation Ready
- CI/CD integration - Automate subscription setup in pipelines
- YAML configuration - Version control your subscription config
- Reproducible - Same config, same result every time
Developer Experience
- Single command pricing - Set 175 territories at once
- Dry-run mode - Preview changes before applying
- Rich output - Tables, JSON, or YAML
Testing Without Risk
- Mock server - Test against a local App Store Connect replica
- No production impact - Develop and test safely
- Full API coverage - All endpoints available in mock
Features
- Subscriptions - Create, configure, and manage auto-renewable subscriptions
- Pricing - Set prices across 175 territories with a single command
- Introductory Offers - Configure free trials and promotional pricing
- TestFlight - Manage builds, beta groups, and testers
- Bulk Operations - YAML-based configuration for multiple subscriptions
- Mock Server - Test without affecting production
Installation
Using pip
pip install asc-cli
Using uv (recommended)
uv tool install asc-cli
From source
git clone https://github.com/yooz-labs/asc-cli.git
cd asc-cli
pip install -e .
Quick Start
- Get API credentials from App Store Connect
- Run
asc auth loginto configure - Start using commands like
asc apps list
Command Reference
| Command | Description |
|---|---|
asc auth | Manage authentication |
asc apps | Manage apps |
asc subscriptions | Manage subscriptions and pricing |
asc subscriptions pricing | Set pricing across territories |
asc subscriptions offers | Manage introductory offers |
asc testflight | Manage TestFlight |
asc bulk | Bulk operations from YAML |
See Commands Overview for complete documentation.
YAML Configuration
For managing multiple subscriptions, use the bulk YAML configuration:
# Generate example config
asc bulk init
# Validate configuration
asc bulk validate subscriptions.yaml
# Apply configuration
asc bulk apply subscriptions.yaml --dry-run
asc bulk apply subscriptions.yaml
See YAML Schema Reference for complete configuration options.
Mock Server
Test your subscription configurations without affecting production:
# Start the mock server
asc mock start
# Run commands against mock
ASC_MOCK=true asc subscriptions pricing set SUB_ID --price 2.99
# Validate bulk config against mock
ASC_MOCK=true asc bulk apply subscriptions.yaml
# Stop when done
asc mock stop
The mock server replicates App Store Connect API behavior for safe testing.
Documentation
| Section | Description |
|---|---|
| Quick Start | Get running in 5 minutes |
| Configuration | Environment, files, profiles |
| Commands | Complete command reference |
| Guides | Step-by-step workflows |
| Reference | YAML schema and API mapping |
License
BSD 3-Clause License - Open source under yooz-labs/asc-cli.