Guide
HISE Package Management API
Generate HISEScript or native HISE C++ packages, inspect product setup, and retrieve a separate storefront package through private download links.
Account authentication, not a plugin credential
Use an authenticated developer Bearer session and the positive integer product ID from your product dashboard. These management calls are not activation or validation calls. Product-scoped keys shipped in plugins cannot manage package generation. Workspace permissions and product assignments are checked on every product route.
SoundSync
Product package operations
/api/developer/products/:productId/hise-package/status
Inspect credential and package readiness
- Auth
- Authenticated developer session
- Scope
- products.view and access to the product.
- Request fields
- productId: positive integer path parameter.
- Returns
- credentialStatus, status, packageReady, lastGeneratedAt, lastPluginConnectionAt, and supportedModes.
- Notes
- This status path can ensure a missing product credential; it is not a pure health probe. Readiness is not proof that an exported plugin was runtime-tested.
/api/developer/products/:productId/hise-package
Generate or retrieve the chosen product package
- Auth
- Authenticated developer session
- Scope
- product_files.view and access to the product.
- Request fields
- variant: hisescript or native; select explicitly.
- Optional experienceMode: validation-only, storefront-only, or storefront-validation.
- Optional uiWidth and uiHeight positive dimensions; releaseChannel: stable.
- Returns
- 200 JSON { url, filename, expiresIn: 300 }, not ZIP bytes.
- Notes
- Can provision/recover the product credential, prepare private storage, and record package activity. Do not use as an unattended polling request.
/api/developer/products/:productId/hise-package/generate
Generate a package from current saved settings
- Auth
- Authenticated developer session
- Scope
- product_files.manage and access to the product.
- Request fields
- JSON body: variant, optional experienceMode, uiWidth, uiHeight, releaseChannel.
- productId: positive integer path parameter.
- Returns
- 200 JSON { url, filename, expiresIn: 300 }.
- Notes
- Same package response as download; generating a package does not publish or rebuild the plugin.
/api/developer/products/:productId/hise-package/regenerate
Regenerate with credential rotation
- Auth
- Authenticated developer session
- Scope
- product_files.manage and access to the product.
- Request fields
- JSON body: explicit variant and optional package settings.
- Returns
- 200 JSON { url, filename, expiresIn: 300 }.
- Notes
- Rotates the product credential. Coordinate existing installed clients before calling; this is not the way to refresh an expired download URL.
SoundSync
Separate storefront package
/api/developer/storefront/hise-package
Generate the developer storefront WebView package
- Auth
- Authenticated developer session
- Scope
- storefront.manage and all-products workspace scope.
- Request fields
- Optional uiWidth and uiHeight query parameters.
- Returns
- 200 JSON { url, filename, expiresIn: 300 }.
- Notes
- A separate store/account integration, not the product licensing package or a hosted/embedded web storefront installation.
SoundSync
Choose the package deliberately
| Value | Integration |
|---|---|
| hisescript | Generated script integration without rebuilding HISE. Uses its own script-level validation and offline-grace contract. |
| native | Native HISE C++ authority. Install native sources, patch/rebuild HISE, then patch/build the exported plugin. Follow the generated platform instructions. |
SoundSync
Generate a HISEScript package
# Set PRODUCT_ID to your saved positive integer product ID.
curl --fail-with-body -sS -X POST "$SOUNDSYNC_API_BASE/api/developer/products/$PRODUCT_ID/hise-package/generate" \
-H "Authorization: Bearer $DEVELOPER_TOKEN" \
-H "Content-Type: application/json" \
--data '{"variant":"hisescript","experienceMode":"storefront-validation","releaseChannel":"stable"}'
Retrieve and protect the archive
Read the returned JSON and download from its url within expiresIn seconds. The link grants temporary access: do not publish it, put it in issue reports, or include it in public screenshots. Request a normal download again if the link expires; do not rotate credentials just to obtain another link. Generated files are product-specific. Keep your own DSP/interface changes separate and compare package-owned files before replacing them.
SoundSync
Failure and recovery
| Result | Action |
|---|---|
| 400 | Check product configuration, package inputs, and any returned field. |
| 401 / 403 / 404 | Check the developer session, product ownership/assignment, workspace scope, permission, and package-channel access. |
| 409 / rotationRequired | Read the credential recovery details and coordinate a deliberate rotation; do not automatically rotate a live product. |
| 429 PACKAGE_BUILD_BUSY | A bounded build slot is busy. Wait and retry the same normal generation request. |
| 503 PRIVATE_PACKAGE_STORAGE_REQUIRED | Private package storage is unavailable; contact support. No public-archive fallback is implied. |
| 5xx | Preserve the safe error code and inspect the product state before retrying; never publish secrets or signed URLs. |
Example evidence
The request and response fields above are source-backed contracts. The numeric identifier examples are illustrative, not permission to access another product. Runtime validation still belongs to the exact HISE build and exported plugin you intend to distribute.
