Last year I used the iOS Distribution Managed Certificate (Enterprise Program) to sign an App and to distribute it internally. The Cert is still valid until May 2026. But its associated Provisiong Profile (which is not visible in the Apple Portal, but within Xcode when you export your archive) expired last week. Until then it was impossible for me to somehow force renew the profile and that lead to the fact that my app was not usable for a day, because the renewal was done after the expiration of the old one.
Whats the whole point of the managed signing if can't influence the provisioning update. To be clear: I don't speak about the certificate - just about the profile.
Or am I using it wrong?
Explore the intersection of business and app development. Discuss topics like device management, education, and resources for aspiring app developers.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hello all,
My question is, how to get APP (specialized in make SOPs for industrial users) that has already been listed outside of mainland China to be listed on apple store of mainland China?
Can I simply refile it to cover China mainland with existing apple developer account or do I have to create a new local apple developer account to start the listing process?
Your advise and help will be highly appreciated.
Thank you,
Link
Is the possibility of programmatically recovering the enrolled email address associated with an iPad. We are currently working on a project that requires us to retrieve this information for our enrolled devices.
Could you please provide guidance or documentation on how we can achieve this programmatically? Specifically, we are interested in any APIs or frameworks that Apple provides for this purpose, as well as any necessary permissions or configurations that need to be in place.
Hi Apple team and community,
We’re currently integrating with the Apps and Books for Organizations API as part of our device management solution and would like to highlight a few critical points we've encountered — including a reliability issue, an enhancement suggestion, and a request for clarification on API rate limits.
1. Issue: Intermittent 403 Errors with stoken-authenticated-apps Endpoint
We are encountering intermittent 403 Forbidden responses from the stoken-authenticated-apps endpoint.
Approximately 30–35% of the requests fail with a 403 status code.
These failures are inconsistent — the same request (using the same Content Token and Storefront) may succeed upon retry.
All requests are properly authenticated and include the required Cookie and other headers as specified in the API documentation.
This issue is impacting our ability to reliably fetch app metadata at scale, particularly in workflows.
We’d like to know:
Is this a known issue?
Could it be due to a rate limit or token misconfiguration?
Are any changes required on our end to avoid these failures?
2. Enhancement Request: Include externalVersionId in versionHistory Response
The versionHistory extension currently returns:
versionString
releaseNotes
releaseDate
However, for Declarative Device Management (DDM) workflows such as App Pinning, we need the externalVersionId as well. Without it, we can't reliably correlate version metadata with the specific version ID required for pinning.
Adding externalVersionId would:
Enable precise version targeting during App Pinning
Improve reliability and automation in managed deployments
We request that Apple consider including externalVersionId in the versionHistory response to better support DDM-based app lifecycle management.
3. Rate Limit Clarification
We found the following note in the Apps and Books for Organizations API documentation:
"The Apps and Books for Organizations API limits the number of requests your app can make using a developer token within a specific period of time. If you exceed this limit, you’ll temporarily receive 429 Too Many Requests error responses for requests that use the token. This error resolves itself shortly after the request rate has reduced."
While this confirms that a rate limit is enforced, there is no detailed information about the thresholds — such as the number of allowed requests per minute, hour, or day per developer token.
To help us implement proper throttling and retry strategies, we request clarification on the following:
What is the exact rate limit threshold per developer token?
Are there per-endpoint limits, or is it a global cap for all requests using the token?
Does the API return a Retry-After header when the limit is exceeded?
What is the recommended backoff strategy for clients to follow when receiving 429 errors?
This information would help us implement efficient throttling and error handling logic.
Any insights from the Apple team or other developers who’ve encountered these issues would be greatly appreciated!
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Apple Business Manager
Device Management
Is there a way to check if DDM(Declarative Device Management) is enabled on a device?
Is there a way to restrict an end user from potentially editing a supervised device through Apple Configurator? It seems that Apple Configurator allows to make undesirable changes to a supervised device, like removing profiles, which would in turn be detrimental to the intended experience on the device, if a user would actually be able to perform such changes.
Topic:
Business & Education
SubTopic:
Device Management
Hi Apple Development forums,
I am having trouble getting a Wireguard VPN config setup to automatically disconnect on all domain requests other than one specific domain.
I have my .mobileconfig designed as so:
<dict>
<key>Action</key>
<string>EvaluateConnection</string>
<key>ActionParameters</key>
<array>
<dict>
<key>Domains</key>
<array>
<string>service.domainname.com</string>
</array>
<key>DomainAction</key>
<string>ConnectIfNeeded</string>
<key>ProbeURL</key>
<string>https://service.domainname.com/</string>
</dict>
</array>
</dict>
<dict>
<key>Action</key>
<string>Disconnect</string>
<key>DNSDomainMatch</key>
<array>
<string>*.com</string>
<string>*.org</string>
<string>*.net</string>
</array>
</dict>
<dict>
<key>Action</key>
<string>Disconnect</string>
</dict>
</array>
The issue I'm having is regardless of whether I note a *.com or simply have the action Disconnect noted - the VPN stays connected after navigating to https://service.domainname.com.
would anyone have any thoughts on this? Or am I missing something here?
Hi there,
We’re testing Declarative Device Management (DDM) for VPP app management and followed the latest declaration template here:
https://github.com/apple/device-management/blob/release/declarative/declarations/configurations/app.managed.yaml
Our goal is to enable VPP auto-updates via the declaration. The payload we’re using looks like this:
"AppStoreID": "1231325957",
"InstallBehavior": "{\"Install\": \"Required\", \"License\": {\"Assignment\": \"Device\"}}",
"UpdateBehavior": "{\"AutomaticAppUpdates\": \"AlwaysOn\"}"
}
What we’re seeing
Device A (no Apple ID signed into App Store): User can manually update the VPP app with the above declaration in place. ( The same user cannot update the app if UpdateBehavior is not in the declaration payload.
Device B (Apple ID signed into App Store, and the same Apple ID doesn't have the above app purchased): User cannot manually update the same VPP app. The App Store shows the error seen when UpdateBehavior is absent:
“ cannot be updated because it was refunded or purchased with a different Apple Account.”
Also, in this case, the user has no way to purchase the (free) app by their own as the app shows as owned/managed by MDM server. We have to remove the declaration, let the user purchase the same app, then re-deploy the declaration to allow the user to click that "Update" button when a new version for that app is available.
Additionally, we’re unsure about the criteria/timing for automatic VPP app updates under DDM. After a new version became available, we waited several hours but the app did not auto-update.
Repro summary
App: VPP, device-assigned license
Declaration: AutomaticAppUpdates = AlwaysOn, install required
Device A: not signed into App Store → manual update allowed
Device B: signed into App Store → manual update blocked with “refunded/different account” error
Auto-update did not occur after waiting several hours post-release
Any guidance, confirmation of expected behavior, or tips on additional logging we should collect (e.g., specific App Store / MDM / DDM logs and subsystems) would be greatly appreciated. If this is a known issue or requires a Feedback Assistant report, we’re happy to file one.
Thanks,
We'd like to determine if there is a configuration declaration that is active on a device as part of a predicate.
The current logic (based on the WWDC 22 session) is:
SUBQUERY(@status(management.declarations.configurations),
$declaration,
($declaration.@key(identifier) == "com.abc.declarationname" AND $declaration.@key(active) == true)).@count == 1
The goal is that if the declaration is active, then a predicate should evaluate to true.
This query does not appear to be working. Should we be able to use @status(management.declarations.activations) in a predicate? If so, what are we missing to attempt to determine if the declaration is active?
If I search the existing status objects that are sent from the device, it is showing as active in the status channel.
Topic:
Business & Education
SubTopic:
Device Management
I just want to add a in-app purchase project to my app,
steps:
1.i create a product in App Store Connect ,the product id is "com.buy.once.me"
2.in Xcode,i create " SubscriptionStoreView(productIDs:["com.buy.once.me"])" in a view
3. the view show "subscription unavailable the subscription is unavailable in the current storefront"
I don't know what the problem is ,anyone help me,thanks
VPP API v2 returns 9609 "Unable to find the registered user." when I disassociate assets from an existing user.
Repro step:
1. Create user
POST https://vpp.itunes.apple.com/mdm/v2/users/create
{
"users": [
{
"clientUserId": "client-1",
"managedAppleId": "valid managed apple id"
}
]
}
=> user is associated
2. Retire user
POST https://vpp.itunes.apple.com/mdm/v2/users/retire
{
"users": [
{
"clientUserId": "client-1"
}
]
}
=> user is retired
3. Recreate user with the same clientUserId
POST https://vpp.itunes.apple.com/mdm/v2/users/create
{
"users": [
{
"clientUserId": "client-1",
"managedAppleId": "valid managed apple id"
}
]
}
=> user is associated
4. Associate asset
POST https://vpp.itunes.apple.com/mdm/v2/assets/associate
{
"assets": [
{
"adamId": "408709785"
}
],
"clientUserIds": [
"client-1"
]
}
=> asset associated
5. Disassociate asset
POST https://vpp.itunes.apple.com/mdm/v2/assets/disassociate
{
"assets": [
{
"adamId": "408709785"
}
],
"clientUserIds": [
"client-1"
]
}
=> {"errorNumber":9609,"errorMessage":"Unable to find the registered user."}
Notes
associate API works fine with the same payload.
disassociate work with v1 API.
I'm the IT Admin in my company. We use Microsoft Intune, which is a Mobile Device Management tool, to manage our devices and apps. I created an app protection policy, restricting the data can only be shared between the allowed apps. For example, if our user want to copy the content in Outlook for iOS to WeChat or personal memo, the action will be blocked.
However, may be it's too strict, here is the scenario that we need to hadle: A user selected the content in the Outlook for iOS mail, and wanted to use the "translate" function to do translation. Before the app protection policy was deployed, he can do the translation successfully. And now, it's blocked.
Therefore, we need to find a way to exempt the app "Translate" so that users can do the translation successfully. We put the value "com.apple.Translate"(this is a package ID listed in the official document of Apple) to the exemption, but it's not working.
May I know what is the correct "value" for the iOS native Translate APP? I need to put this value to our app protection policy to exempt Translate app.
Thank you so much.
I have created a configuration profile which basically just turns off notifications for Shortcuts app but I am unable to install it on my iPhone as I am getting the following error “This profile can be installed on a supervised device only” can someone please help me with this? Would also appreciate if you have another way to turn off shortcuts notifications permanently since when I turn it off via screen time it keeps turning itself ON every couple of days.
Topic:
Business & Education
SubTopic:
Device Management
Hello,
I am running into a bit of an issue with the Screen Timeout/Screen Lock setting and would like some clarification on.
First for a bit of context, I am enrolling personal iOS devices 18.0+ into the company MDM (Intune) with Account Driven User Enrollment. We are trying to set a screen timeout of 5 minutes and immediately after it asks for the passcode on the device, though this setting is not being applied and the device timeout setting can be set as "Never" on the user's end. This is a big security risk for the company I work for and and the issue with being HIPAA compliant.
According to the Microsoft Intune Support, "In iOS 18, when using Account-Driven User Enrollment for BYOD (Bring Your Own Device) scenarios, the screen lock timeout setting is indeed marked as “Not Applicable”. This is because Apple’s privacy-preserving model for personal devices restricts administrative control over system-level settings like screen lock or idle timeout."
I am needing clarification on the item mentioned from Microsoft Intune Support and if this setting is no longer able to be applied from the MDM with devices enrolled with Account Driven User Enrollment?
Hi team,
We need to identify the domains used by macOS Software Update so they can be bypassed by our NETransparentProxy. The Apple support article below lists Software Update and several other Apple service domains.
At the moment we’re unsure whether we should only bypass the Software Update and Beta Software domains, or whether we also need to bypass domains used for certificate validation, device management (Apple Business Manager / Apple School Manager / Apple Business Essentials), network provider updates, Apple Diagnostics, etc.
We also need the specific IP ranges used exclusively by Software Update. The document shows Apple’s entire IP range; for IPv4 you can allow outbound connections to 17.0.0.0/8.
https://support.apple.com/en-in/101555
We have created provisioning profile from apple developer account for our iPadOS app, the expiry date shown in the profile is 20-Aug-2026. However, when when I build the app with this provisional profile the expiry date shown in the app is 6-May-2026. My Certification expires on 2027. I see a embeded.mobileprovision profile inside the app, and it has an expiry of 6-May-2026. I did a clean build, cleared unnecessary profiles from profile folder, created a new provisional profile and tried, but nothing seems help.
We have a few apps, and no other app has this issue, only those two apps have this issue. As the expiry date the shorten, we also need to special handle these two apps, Will you please help me to resolve this issue?
Thanks.
We have several apps that our business uses to connect to internal private HTTP sites. We noticed in IOS 18.3 we are getting SSL errors to the web server and noticed the issue in the Chrome Browser as well. Our team is looking at the Application Transport Security layer exceptions in our apps Info.Plist. We do notice the browser forcing HTTPS. Any insight on what could be the issue?
Can someone help me, every time I insert a new attribute in the Table, the Query stops working, the bank keeps giving these messages, thank you
Topic:
Business & Education
SubTopic:
General
I've account access level of developer. I want to create app specific password but go through the account but could not get any option to do so. Can somebody help me on this.
Thanks in advance.
Topic:
Business & Education
SubTopic:
General
Hi,
My client has already developed an ios app and they need an enterprise account to publish the app. What are the procedures to create enterprise account?