Update store listing
update_listingUpdates App Store listing metadata for one locale, changing only supplied fields and showing each change as old → new; adds missing localizations.
Instructions
Updates App Store metadata for one locale. Only fields you pass change, and only if they differ; the result shows each change as old → new. Name, subtitle and privacy URLs live on the app info; description, keywords, promotional text, what's new and URLs on the version. Adds the localization if it doesn't exist yet. Only versions being prepared can change, except promotional text, which can change on the live version (pass version: "live").
Changes App Store Connect (needs ASC_WRITE=1). Safe to re-run: steps already done are skipped.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| app | No | App ID, bundle ID or exact app name. Defaults to ASC_APP_ID, or to the only app the key can see. | |
| name | No | ||
| locale | No | Defaults to the primary locale. | |
| dry_run | No | If true, return the plan without changing anything. | |
| version | No | App Store version string (e.g. "1.2"), "editable" (the version being prepared; the default) or "live". | |
| keywords | No | Comma-separated, 100 characters in total. | |
| platform | No | Platform. Defaults to IOS. | |
| subtitle | No | ||
| copyright | No | Version copyright, e.g. "2026 Example Inc." | |
| whats_new | No | ||
| description | No | ||
| support_url | No | ||
| marketing_url | No | ||
| primary_category | No | Category ID such as GAMES, UTILITIES, PRODUCTIVITY, HEALTH_AND_FITNESS. | |
| promotional_text | No | ||
| privacy_policy_url | No | ||
| secondary_category | No | ||
| privacy_choices_url | No | ||
| primary_subcategories | No | Games only: up to two subcategories of the primary category, e.g. ["GAMES_PUZZLE", "GAMES_BOARD"]. |