Overview
Bundle IDs uniquely identify your apps on Apple platforms. Thebundle-ids command manages bundle identifiers and their capabilities in App Store Connect.
List Bundle IDs
List all bundle IDs in your account:Pagination Options
--limit- Results per page (1-200)--next- Fetch next page using alinks.nextURL--paginate- Automatically fetch all pages
Get Bundle ID Details
Retrieve a specific bundle ID by resource ID:--id parameter expects the App Store Connect resource ID, not the bundle identifier string (e.g., “com.example.app”). Use list to find the resource ID.
Create Bundle ID
Register a new bundle identifier:Required Parameters
--identifier- Bundle ID string (e.g., com.example.app)--name- Display name for the bundle ID
Optional Parameters
--platform- Platform: IOS (default), MAC_OS, UNIVERSAL
Bundle ID Format
Bundle IDs must follow these rules:- Use reverse DNS notation:
com.company.app - Contain only alphanumeric characters (A-Z, a-z, 0-9), hyphens (-), and periods (.)
- Cannot start or end with a period
- Cannot contain consecutive periods
com.example.myappcom.example.my-appcom.example.myapp.watchkit
.com.example.app(starts with period)com..example.app(consecutive periods)com.example.app!(special characters)
Wildcard Bundle IDs
Create wildcard bundle IDs for app groups:- Can only use
*as the last component - Cannot use certain capabilities (Push Notifications, In-App Purchase, etc.)
- Useful for app extensions and development
Update Bundle ID
Update a bundle ID’s display name:Delete Bundle ID
Delete a bundle identifier:- Cannot be undone
- Invalidates all associated provisioning profiles
- Removes all capability configurations
- Should only be done if the bundle ID is no longer in use
Bundle ID Relationships
Get Associated App
Find the app using this bundle ID:List Associated Profiles
List all provisioning profiles for a bundle ID:Capabilities Management
Manage app capabilities for a bundle ID.List Capabilities
List all capabilities for a bundle ID:Add Capability
Enable a capability for a bundle ID:Common Capability Types
No settings required:PUSH_NOTIFICATIONS- Push notificationsIN_APP_PURCHASE- In-App PurchaseGAME_CENTER- Game CenterWALLET- Wallet (Apple Pay)SIRIKIT- SiriKitPERSONAL_VPN- Personal VPNNETWORK_EXTENSIONS- Network ExtensionsHOTSPOT- Hotspot ConfigurationMULTIPATH- Multipath networkingNFC_TAG_READING- NFC tag reading
ICLOUD- iCloud (CloudKit/Documents)APP_GROUPS- App GroupsASSOCIATED_DOMAINS- Associated DomainsDATA_PROTECTION- Data ProtectionHEALTHKIT- HealthKitHOMEKIT- HomeKitWIRELESS_ACCESSORY_CONFIGURATION- Wireless Accessory
iCloud Capability
App Groups Capability
Update Capability
Modify capability settings:Remove Capability
Disable a capability:Complete Example Workflows
Create App with Capabilities
App Extensions
Create bundle IDs for app extensions:App Groups Setup
Enable app group sharing between main app and extensions:Associated Domains (Universal Links)
HealthKit and HomeKit
Platform-Specific Considerations
iOS / tvOS
Most capabilities available. Use--platform IOS (default).
macOS
Some capabilities differ for macOS:SANDBOX- App SandboxSYSTEM_EXTENSION_INSTALL- System ExtensionsUSER_MANAGEMENT- User Management
Universal (Mac Catalyst)
For Mac Catalyst apps that run on both iOS and macOS:Troubleshooting
Bundle ID Already Exists
Invalid Bundle Identifier Format
- Uses reverse DNS notation
- Contains only alphanumeric, hyphens, periods
- Doesn’t start/end with periods
- No consecutive periods
Capability Settings Invalid
JSON settings must be properly formatted:Provisioning Profiles Invalid After Capability Change
After adding or removing capabilities, regenerate profiles:Related Commands
- Signing - Fetch signing assets
- Profiles - Manage provisioning profiles
- Certificates - Manage certificates
