Guide
Plugin Credentials and Identifiers
Exact product plugin credential model: Developer ID, Product ID, App ID, Credential ID, plugin key, plugin secret, environment, and API base URL.
Generated native clients use public identity
HISEScript/custom HTTP use the standard product key/secret path. Current native HISE and JUCE packages identify the generated app/product through the supported hise-native or juce-native public-client contract and keep pluginSecret out of public configuration. Product identification is not customer ownership proof; do not substitute a developer token.
Bearer is not the complete credential
A bearer token alone is not the complete product credential model. Authorization: Bearer and x-ss-api-key are compatibility transports for the plugin key value; current product credential auth still requires App ID and plugin secret.
SoundSync
Credential values
Use fake examples like these in docs, tests, and code samples.
| Value | Fake example | What it identifies | Where to find it | Important rule |
|---|---|---|---|---|
| Developer ID | dev_demo_123 | Developer account scope for products and generated packages. | Dashboard account/product setup. | Not a customer value. Embedded in HISE config. Not used as the auth secret. |
| Product ID | 23794 | Positive integer product identifier checked against serials, credentials, and entitlements. Generated client configuration may serialize it as text. | Product settings and generated package config. | Public enough for client config. Does not replace App ID. |
| App ID | ss_prod_demoapp123 | Public product app/integration identifier used to find the credential row. | Product credential panel or generated package config. | Do not confuse ss_prod_* with Product ID or an API key. It is the App ID. |
| Credential ID | cred_demo_123 | Safe reference for package/status displays. | Product credential panel or generated package config. | Not used to authenticate requests. |
| Plugin key | ss_pk_demokey123 | Client-distributable key factor for product credential auth. | Created in the product credential panel; embedded in generated packages. | Sensitive in logs. May rotate. Bearer/x-ss-api-key aliases carry this value only. |
| Plugin secret | ss_ps_demosecret123 | Second credential factor required by current product credential auth. | Shown when generated or revealed according to dashboard controls; embedded in generated HISE package. | Secret. Never ask a customer to type it. Never log it. May rotate/revoke. |
| Environment | test | Recorded environment/package context for connection status and release separation. | Product/package setup. | Keep test and live credentials, cache, and activation records separate. |
| API base URL | https://api.example.invalid | The SoundSync API origin used by the integration. | Generated package config or public docs/developer settings. | Do not hard-code test state into live builds. |
SoundSync
Canonical and compatibility headers
Licensing endpoints accept the current product credential headers plus compatibility aliases. Test Connection uses body fields instead of headers.
| Header | Meaning |
|---|---|
| x-ss-app-id | Canonical current header for App ID, for example ss_prod_demoapp123. Required with header product credential auth. |
| x-ss-plugin-key | Canonical current header for plugin key, for example ss_pk_demokey123. Authorization: Bearer <pluginKey> and x-ss-api-key are compatibility transports for this same plugin-key value. |
| x-ss-plugin-secret | Canonical current header for plugin secret, for example ss_ps_demosecret123. Required for current product credential auth. |
| Content-Type | Use application/json for POST requests. |
SoundSync
Request anatomy
Authorization and x-ss-plugin-key are redundant transports for the plugin key. x-ss-plugin-secret is still required for current product credential auth.
POST /api/plugin-connections/verify HTTP/1.1
Host: www.soundsync.dev
Authorization: Bearer ss_pk_demokey123
x-ss-app-id: ss_prod_demoapp123
x-ss-plugin-key: ss_pk_demokey123
x-ss-plugin-secret: ss_ps_demosecret123
Content-Type: application/json
{
"productId": 23794,
"appId": "ss_prod_demoapp123",
"pluginKey": "ss_pk_demokey123",
"pluginSecret": "ss_ps_demosecret123",
"pluginVersion": "1.0.0",
"environment": "test"
}
SoundSync
Do not confuse these values
This table addresses the common ss_prod_* confusion.
| Looks like | Actually is | Do not use it as |
|---|---|---|
| ss_prod_demoapp123 | App ID generated from product_plugin_credentials.app_id. | Product ID, plugin key, bearer token, or customer-entered serial. |
| ss_pk_demokey123 | Plugin key. | Complete product credential by itself. It still needs App ID and plugin secret for current auth. |
| ss_ps_demosecret123 | Plugin secret. | Customer password, serial, or value to log. |
| credentialId | Safe credential row reference. | Authentication secret. |
Customer boundary
Customers should never be asked for Developer ID, Product ID, App ID, plugin key, plugin secret, API base URL, or environment. Customers enter only customer-facing values such as email, password, account token, or serial/license key.
Use your actual product identifier
Set PRODUCT_ID to the saved positive integer ID from your product dashboard. It is not the product slug, App ID, serial, or an arbitrary label. Examples use 23794 only to demonstrate the numeric format; replace all identifiers, credentials, and tokens with matching values from your own product. Never copy another product's credentials.
