Start Here: Integrating with MuseHub
This page walks you through getting your app, plugin or sound pack live on MuseHub, in the right order. Work through it from start to finish and you'll have everything you need to integrate, test and submit your product on your own.
Each step links to the full documentation and the Integration FAQs for details.
Use an AI coding agent (recommended)
We recommend using an AI coding agent (e.g. Claude Code, Cursor, GitHub Copilot). It can read our docs for you and guide you through each step much faster.
Not your thing? No problem, we've got you covered. Skip to Licensing options by product type and follow the steps in order.
Using an agent
Give your agent the docs index
developer.musehub.com/muse-partners-help/llms.txt. Any docs page is also available as Markdown by adding .md to its URL.
Check its work
Check its work against the Pre-submission checklist.
Example prompt
Licensing options by product type
Free plugin or app
No DRM or SDK. Skip step 3.
Paid plugin or app, no code changes
Muse DRM (wraps your finished build)
Paid product that needs user accounts, a cloud backend, subscription tiers, one build for all stores, or your own license system
Electron / web-view app, or Unity/UWP C# app
Muse SDK (Muse DRM doesn't support these)
Loops, samples, SFX, production music
No DRM or SDK. See Loops & Audio.
MuseSounds libraries
Contact your Partner Manager
Muse DRM and Muse SDK can't be used together on the same product. More help choosing: FAQs → Choosing an Integration Method.
Step by step guide
Set up your account
Not in contact with our team yet? Apply to join at join.musehub.com.
In contact with us but haven't received your partner account details yet? Reach out to your Partner Manager.
Partner account set up by our team? Continue below.
Details: Set up your Partner account · Generate API Keys
Protect or integrate (paid products only)
Muse DRM
Details: Muse DRM · FAQs → MuseDRM
Muse SDK
Details: Muse SDK · FAQs → SDK Runtime Behaviour & API
Sign and package
macOS
Windows
AAX
Not supported: VST2, CLAP, Linux.
Details: Applications · Plugins · FAQs → Code Signing · FAQs → Plugin Formats & Packaging
Create your product and set pricing
Details: Product Page Assets · Pricing: Price Tiers · Pay once · Subscriptions
Create a submission
Muse SDK products: follow this order exactly
Choose Enabled and save
Choose Enabled and click Save. Don't submit yet.
Choose Enabled (No Validation) instead if your product self-updates outside MuseHub (for example because you also sell it on your own site), or while you test locally built debug binaries during integration. The first install always comes from MuseHub.
Run the SDK enable command
Run musedrm --sdk_enable (or --sdk_enable_permissive to match "No Validation") on your built binaries, not the installer: once per platform with all its assets together, or once per asset as long as every asset gets it.
--asset_type and --product_version must match what the Portal shows. Electron apps add --electron and need the app's bundle ID in the submission.
On success it prints "The following assets are enabled for Muse SDK usage".
Details: Muse SDK → Submitting SDK Products · FAQs → The SDK "enable" Step
After launch (optional)
Webhooks: purchase and subscription events for account-based products.
URI Protocol: link from your product to MuseHub store pages.
Marketing Assets: MuseHub logos and icons.
Pre-submission checklist
Common errors and fixes
BusinessRuleError: Have not called endpoint to setup SDK
Save the draft first, run --sdk_enable, then Submit (step 6). See SDK enable step.
SDK enable step can't detect the SDK
Run it on the built bundle, not the installer, and update musedrm. See SDK enable step.
Authorised users see a license screen (SDK)
The CLI flag and the Portal dropdown don't match. See SDK enable step.
SDK connects but user/receipt calls fail
Expected until the product is submitted. Submit a private Beta. See Beta Testing.
Product won't authorise on one platform (DRM)
The same musedrm_id was used for both platforms, or an old ID from a previous submission is still there. Re-wrap and paste the new one. See MuseDRM FAQs.
"Binary processing rejected … debug symbols or a previously existing protection"
Strip symbols and wrap a fresh, unprotected build. See MuseDRM FAQs.
Build broke after renaming
Rename before wrapping. See MuseDRM FAQs.
macOS build won't launch after upload
Symlinks were lost. Repackage (zip with zip -ry, or use a PKG). See Plugin Formats & Packaging.
Windows uninstall doesn't work
Look up the exact key under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ and enter it as the Application ID. InnoSetup keys end in _is1, sometimes }}_is1, which is valid. See Applications.
Submission blocked before upload
Accept the Distribution Agreement. See Set up your Partner account.
Cannot submit product version without active prices
Set a base price in Pricing. See Price Tiers.
Could not find matching application asset
--asset_type doesn't match what the Portal shows after scanning the upload. See Plugin Formats & Packaging.
SDK connection error on initialise
MuseHub isn't installed or isn't running on that machine. See SDK Runtime Behaviour & API.
macOS: the SDK dylib can't be found at launch
Use a relative rpath, @loader_path/../Frameworks/, not a build-machine path. See Platform Gotchas.
macOS app rejected with "different Team ID"
Sign every embedded dylib with your own Developer ID. See Code Signing.
"Very low patchable rate" when wrapping
Adjust release optimisation and linker settings (e.g. turn off identical-code folding and unreferenced code removal) so the binary can be protected. See MuseDRM FAQs.
Network error while wrapping
Update musedrm to the latest version. See Muse DRM.
More answers: Integration FAQs. MuseHub logs: Windows …\AppData\Local\Muse Hub\cache\Logs\, macOS ~/Library/Logs/com.muse.musehub.
Still stuck?
Contact your Partner Manager. If you're stuck on wrapping or the SDK enable step, we can run it for you. For a fast answer, include:
Product name and product_id
Muse DRM or Muse SDK, and the tool/SDK version
Platform, OS version and format (VST3/AU/AAX/app, installer type)
Which step you're on and what you've tried
The exact command and full error message
MuseHub logs (and for DAW issues, the host name and version)
Last updated