From tested build to your Intune, in one step
Team
Many companies test an internal app with a link first and then roll it out to staff phones with Microsoft Intune. Between the two, someone downloads the build and uploads it again in the Intune admin center.
On Team, an Owner or Admin connects your Microsoft Entra app registration once. From then on, "Send to Intune" on the build page uploads the build you tested to your Intune as a line of business app.
Example
Send to Intune, Field App 3.1.0 (204)
- SigningEnterprise, profile valid until Aug 2027
- TargetNew version of "Field App (iOS)"
- StatusUploaded and committed
Made for
- Companies that deploy internal iOS and Android apps with Intune
- IT teams that want the tested file, not a new download, to reach Intune
- Agencies that deliver apps into a client's Intune
What it ends
- Downloading a build and uploading it again in the Intune admin center
- Not being sure the file in Intune is the one testers approved
How it works
Step 1
Register an app in Entra
In Microsoft Entra, register an app with the Microsoft Graph application permission DeviceManagementApps.ReadWrite.All and admin consent, and make a client secret.
Step 2
Connect it
On Integrations, an Owner or Admin adds the tenant ID, client ID and client secret. The secret is sealed and never shown again.
Step 3
Send the build
On the build page, Send to Intune: pick a new app or a new version of an Intune app with the same bundle ID or package name, tick the confirm box and send.
Step 4
Assign it in Intune
The app appears in Intune. Which groups and devices get it is decided in Intune, as before.
What is sent
An enterprise or ad hoc signed .ipa goes to Intune as an iOS line of business app, and a signed APK as an Android line of business app. AppForShare encrypts the file in the format Intune expects, uploads it through Microsoft Graph to the storage address Intune gives, and commits it.
Only an Owner or Admin can send, after a confirm tick. Each build has at most one open send, and every send is a line in the activity feed. From the CLI: appforshare store-upload <id|slug> --to intune --yes; the MCP tool intune_status reads the status.
Where AppForShare stops
AppForShare hands the file to your Intune and stops there. It does not manage devices or assign apps; Intune does that.
Good to know
- App Store or development signed .ipa files, builds with an expired profile and .aab uploads are not sent.
- One open send per build. There is no email per send; the build page and activity feed show the result.
Questions
- Which permission does the app registration need?
- The Microsoft Graph application permission DeviceManagementApps.ReadWrite.All, with admin consent.
- Can I update an app that is already in Intune?
- Yes. Pick an Intune app with the same bundle ID or package name and the build goes in as its new version.
- Does AppForShare assign the app to users?
- No. Assignment to groups and devices stays in Intune.
- Which plan do I need?
- Team.
Read next
Try it on your own app
Free account in a minute. Pro starts with a 7 day free trial.
More features
- Builds on GitHub Actions
- Flutter builds on GitHub Actions
- Flutter facts and checks
- Security scan on every build
- Connect Expo (EAS builds)
- Connect Codemagic
- Send store builds to TestFlight and Google Play
- TestFlight groups and beta review on send
- TestFlight feedback in your inbox
- iOS device registration
- Hands free device setup
- Store listing editor
- App Store submission
- Google Play releases
- TestFlight tester sync
- Tester app with notifications
- Tester groups and status
- Join links for testers
- Beta and Live channels
- Build history page
- Tasks and activity feed
- Feedback to Linear and Jira
- Release checklist, approvals and blockers
- Release page per version
- Install link controls
- Several links per build
- Retire a test build
- TestFlight and APK in one link
- Install page in 13 languages
- In-app update check
- .aab uploads
- MCP server for AI tools
- Tester feedback with screenshots
- In-app feedback link
- AI test plan for each build
- Diawi compatible upload API
- Remember my iPhone
- Install help and why it failed
- Email the install link
- Custom channel address
- Verified publisher
- Daily install email
- Zipped .app upload
- Manage link for guest uploads
- Test accounts on the install page
- Telegram notifications
- Permissions in plain words
- Reply to testers and star ratings
- Follow a channel by email
- Download button for a README
- Store pages
- Check a build before upload
- Token scopes and CLI tools
- Upload from Claude or ChatGPT
- Passkeys and email code sign in
- Free build tools
- How reports work
- Malware check on every upload
- Re-sign iOS builds
- Single sign on (SAML and OpenID Connect)
- Require two step sign in
- Choose where build files are stored
- Mac and Windows builds
- Workspace address
- Automatic clean up of old builds
- Tester email from your own mail server
- Webex notifications