asc Submission Health
Iron Law
NEVER SUBMIT TO APP STORE REVIEW WITHOUT COMPLETING ALL 7 PREFLIGHT CHECKS — A FAILED SUBMISSION WASTES REVIEW QUEUE TIME
Read reference/submission-preflight-checklist.md and complete every item before running any submit command.
Preconditions
- Auth is configured (
asc auth loginorASC_*env vars set) - App, version, and build IDs resolved (use
asc-id-resolverskill) - Build is processed (not in
PROCESSINGstate) - All required metadata is complete
Pre-submission Checklist
The full 7-step checklist with commands is in reference/submission-preflight-checklist.md.
Quick reference — all 7 steps must pass before submitting:
- Verify build status — build must be
VALID, notPROCESSING - Encryption compliance — declaration must exist and be assigned to build
- Content rights declaration — must be set on the app
- Version metadata — copyright, release type must be set
- Localizations complete — all required locales have content
- Screenshots present — all required device sizes uploaded
- App info localizations — privacy policy URL set for all locales
For full commands for each step: Read
reference/submission-preflight-checklist.md
Submit
Using Review Submissions API (Recommended)
asc review submissions-create --app "APP_ID" --platform IOS
asc review items-add --submission "SUBMISSION_ID" --item-type appStoreVersions --item-id "VERSION_ID"
asc review submissions-submit --id "SUBMISSION_ID" --confirm
Using Submit Command
asc submit create --app "APP_ID" --version "1.2.3" --build "BUILD_ID" --confirm
asc submit status --id "SUBMISSION_ID"
asc submit status --version-id "VERSION_ID"
Monitor
asc review submissions-list --app "APP_ID" --paginate
asc submit status --id "SUBMISSION_ID"
Cancel / Retry
asc submit cancel --id "SUBMISSION_ID" --confirm
asc review submissions-cancel --id "SUBMISSION_ID" --confirm
Common Submission Errors
"Version is not in valid state"
The version is in a state that does not allow submission. Check:
asc versions get --version-id "VERSION_ID" --include-build
Common causes: build not attached, metadata incomplete, prior submission not cancelled.
"Export compliance must be approved"
asc encryption declarations list --app "APP_ID"
asc encryption declarations assign-builds --id "DECLARATION_ID" --build "BUILD_ID"
"Multiple app infos found"
asc app-infos list --app "APP_ID"
Use the app info ID with --app-info flag on localizations commands.
Notes
- Build must be processed before submission — poll
asc builds infountil state isVALID - Encryption declaration must be assigned to the specific build, not just created
- Use Review Submissions API for more control;
asc submit createis a shorthand
Documentation Sources
| Source | How to Access | Purpose |
|---|---|---|
| asc CLI help | asc submit --help, asc review --help |
Current submission and review flags |
| Preflight checklist | Read reference/submission-preflight-checklist.md |
Full 7-step pre-submission commands |
| asc-id-resolver skill | Load skill | Resolve app/version/build IDs before submitting |