Skip to content
SoundSyncAudio software platform

API Reference

Subscriptions API

Verified beta subscription settings and current subscription state behavior for checkout, customer access, plugin licensing, delivery, and Stripe webhooks.

POST /activateGET /validatePOST /deactivate
Product credentials
Activation request
Entitlement check
Device registration
Periodic validation
Deactivation when needed
Live Moonwave FX products workspace showing the SoundSync product management surface for audio software releases.

SoundSync

Developer settings endpoints

These are developer-authenticated and mutate product subscription configuration.

GET /api/developer/products/:productId/subscription-settings

Return beta product subscription settings for a developer-owned product.

Auth
Developer dashboard/user JWT.
Scope
Developer-owned product settings.
Request fields
  • Developer JWT
  • productId path parameter
Returns
settings { enabled, billingInterval, trialDays, failedPaymentGraceDays, cancellationBehavior }, betaEnabled.
Side effects
Ensures a product_subscription_settings row exists for the product.
PUT /api/developer/products/:productId/subscription-settings

Update beta product subscription settings.

Auth
Developer dashboard/user JWT.
Scope
Developer-owned product settings.
Request fields
  • Developer JWT
  • enabled
  • billingInterval monthly|yearly
  • trialDays 0|7|14|30
  • failedPaymentGraceDays 0|3|7
  • cancellationBehavior access_until_period_end|lock_immediately
Returns
Updated settings and betaEnabled.
Side effects
Writes subscription settings and records product setup activity.
Notes
This is a mutation and is not used during read-only screenshot capture.

SoundSync

Verified subscription states

Only states normalized by the implementation are listed.

StateBilling meaningCustomer accessPlugin accessDownload accessOffline grace
incompleteStripe subscription setup has not completed.No durable customer access until checkout completes.Plugin should remain locked.No protected downloads.No offline grace.
trialingTrial period is active.Customer access is allowed while trial is valid.Plugin access follows entitlement/subscription payload.Downloads are allowed while entitlement remains active.Grace follows product validation rules.
activeRecurring billing is active.Customer access is allowed.Plugin access is allowed unless another denial applies.Downloads are allowed.Grace follows product validation rules.
past_duePayment failed but collection/grace may still be active.Access depends on failedPaymentGraceDays and platform subscription payload.Plugin may return subscription_payment_required after grace.Downloads may be blocked when entitlement is inactive.Do not invent extra grace locally.
unpaidStripe marks subscription unpaid.Access should be denied.Plugin locks with subscription_inactive/payment-required behavior.Downloads blocked when entitlement inactive.No offline grace for explicit denial.
canceledSubscription was canceled/deleted.Access follows cancellationBehavior and period-end timestamps.Plugin locks when subscription entitlement is inactive.Downloads blocked when entitlement inactive.No offline grace for explicit denial.

Stripe dependency

Initial checkout uses Stripe subscription checkout. Lifecycle updates are handled from checkout.session.completed, customer.subscription.updated, and customer.subscription.deleted where the event is recognized as product subscription checkout.

API reference

Endpoint groups are organized by authentication model, product scope, request shape, response shape, errors, idempotency, and integration surface.

GET/PUT

Subscriptions API

/docs/api/subscriptions

Beta product subscription settings and subscription state behavior.