Controlled API reference
Partner API Reference
Endpoint reference for approved partner products, external orders, license lookup/revocation, campaigns, webhook subscriptions, tests, and webhook event logs.
Resellers and partner integrations are supported
SoundSync supports resellers through approved developer-partner relationships, assigned products, serial batches, external-order fulfillment, and partner API integrations. Native WooCommerce fulfillment is another supported integration path.
Sales paid through SoundSync checkout use SoundSync's Merchant of Record setup and included ordinary processing. Sales collected by an external reseller remain that seller's payments: SoundSync does not absorb their processing fees or become Merchant of Record for those sales. Product access, credentials, and API permissions follow the approved relationship.
SoundSync
Partner API controls
Partner API access is relationship-scoped and permissioned by exact scopes.
| Control | Behavior |
|---|---|
| Base path | /api/partner/v1 |
| Authorization | Authorization: Bearer <partner API secret>. Partner secrets use the configured partner-key prefix. |
| Idempotency | POST /api/partner/v1/orders requires Idempotency-Key for retry-safe external-order creation. |
| Product limits | Allowed product ids restrict product, order, license, and campaign access where configured. |
| Rate limits | Read, fulfillment, and webhook calls use partner API rate-limit buckets. |
SoundSync
Partner products, external orders, licenses, campaigns, and webhooks
These are the controlled partner integration calls exposed by the Partner API router.
/api/partner/v1/products
List products available to the partner API key.
- Auth
- Partner API key
- Scope
- products:read
- Returns
- Product list limited by relationship, scopes, and allowed product ids.
/api/partner/v1/products/:sku
Load one partner-visible product by SKU.
- Auth
- Partner API key
- Scope
- products:read
- Returns
- Product detail limited to the partner relationship.
/api/partner/v1/products/:sku/assets
Load partner-visible product asset metadata.
- Auth
- Partner API key
- Scope
- products:read
- Returns
- Assets/download metadata authorized for the partner relationship.
/api/partner/v1/orders
Report an externally processed partner order to SoundSync.
- Auth
- Partner API key plus Idempotency-Key
- Scope
- orders:write
- Request fields
- external_order_id
- customer_email
- customer name fields where available
- purchased_at
- currency
- total_paid
- tax_amount
- items with reseller_sku or SoundSync SKU and quantity
- Returns
- SoundSync order id, item fulfillment, serial/license issuance, claim/access links, and idempotent replay markers where applicable.
- Side effects
- Creates external order, customer/entitlement/license state, fulfillment logs, and partner API activity.
/api/partner/v1/orders/:externalOrderId
Look up a partner-reported external order.
- Auth
- Partner API key
- Scope
- orders:read
- Returns
- Order, items, license/serial/access state, and fulfillment status.
/api/partner/v1/orders/:externalOrderId/refund
Mark an externally paid order as refunded in SoundSync access state.
- Auth
- Partner API key
- Scope
- licenses:revoke
- Request fields
- reason and refund metadata where available.
- Returns
- Refund/revocation result and updated access state.
- Side effects
- Updates fulfillment, entitlement, serial/license, and partner activity state. Payment remains external.
/api/partner/v1/orders/:externalOrderId/revoke
Revoke access for an external order.
- Auth
- Partner API key
- Scope
- licenses:revoke
- Request fields
- reason where supplied.
- Returns
- Revocation result.
/api/partner/v1/licenses/:serial
Look up one partner-visible license/serial.
- Auth
- Partner API key
- Scope
- licenses:read
- Returns
- License, serial, product, customer, and status data allowed by the relationship.
/api/partner/v1/licenses/:serial/revoke
Revoke one license/serial.
- Auth
- Partner API key
- Scope
- licenses:revoke
- Request fields
- reason and metadata where available.
- Returns
- Revoked license/access state.
/api/partner/v1/campaigns
List partner-readable campaigns.
- Auth
- Partner API key
- Scope
- campaigns:read
- Returns
- Campaign list for the relationship.
/api/partner/v1/campaigns/:campaignId
Load one partner campaign.
- Auth
- Partner API key
- Scope
- campaigns:read
- Returns
- Campaign detail for the relationship.
/api/partner/v1/webhooks
List or create partner webhook subscriptions.
- Auth
- Partner API key
- Scope
- webhooks:read or webhooks:write
- Request fields
- For POST: url, event types, status, and signing/configuration fields supported by the service.
- Returns
- Webhook subscription list or created subscription.
/api/partner/v1/webhooks/:webhookId
Update or delete a partner webhook subscription.
- Auth
- Partner API key
- Scope
- webhooks:write
- Request fields
- status/url/event configuration for PATCH.
- Returns
- Updated or deleted webhook subscription state.
/api/partner/v1/webhooks/test
Create a test partner webhook event.
- Auth
- Partner API key
- Scope
- webhooks:write
- Request fields
- Event type and payload metadata supported by the service.
- Returns
- Test event result.
/api/partner/v1/webhooks/:webhookId/test
Send a test event through a specific partner webhook.
- Auth
- Partner API key
- Scope
- webhooks:write
- Request fields
- status and event metadata where supplied.
- Returns
- Test event result.
/api/partner/v1/webhook-events
List partner webhook delivery events.
- Auth
- Partner API key
- Scope
- webhooks:read
- Request fields
- Query filters supported by webhook event listing.
- Returns
- Webhook event log rows.
SoundSync
External order payload
The order payload reports the completed external checkout into SoundSync fulfillment.
| Field | Use |
|---|---|
| external_order_id | Stable order id from the partner commerce system. |
| customer_email | Customer identity for fulfillment, claim links, and support. |
| purchased_at | When the external purchase happened. |
| currency, total_paid, tax_amount | Commercial metadata for reporting and statements. |
| items | Purchased SKUs and quantities. Use reseller_sku or SoundSync SKU based on the relationship mapping. |
