API reference
Support Content API
Configure support contact routing, published articles, escalation copy and optional assistance settings.
One support identity, several destinations
Read settings and resolver before saving. supportEmail is the public contact. contactFormDestinationEmail is a delivery override; when absent, delivery can resolve the public-email fallback. supportUrlOverride only takes effect with its supported enabled setting. Saving a destination does not prove the mailbox exists or that delivery succeeded.
Save the fields the support service accepts
Send flat supported settings: supportEmail, businessAddress, supportPhone, primaryContactName, supportDisplayName, supportContactLabel, responseTimeMessage, availabilityMessage, contactFormEnabled, contactFormDestinationEmail, supportUrlOverride, supportUrlOverrideEnabled and supportPageEnabled.
Optional assistance settings include aiAssistantEnabled, aiAssistantTone, escalationMessage and alwaysEscalateWhenUnsure. They configure behavior; they do not guarantee a response time, autonomous resolution or availability of an AI provider. Publish only response and availability copy you can actually honor.
Articles and saves
Articles use type, title, body, optional productId, sortOrder and visible. Supported types are faq, install, activation, download, compatibility, policy, known_issue and troubleshooting. PUT and PATCH share the same normalization service rather than implementing generic JSON Patch. When articles are supplied, review the complete replacement list; omitted articles are not a safe way to preserve an existing set.
This first-party management surface requires customers.view and all-products workspace scope. It is not a public unauthenticated support-settings API. Reload settings, articles and resolver after saving; a content save does not change an entitlement or send a customer message.
SoundSync
Support workflow
SoundSync
Requests and responses
/api/developer/support
Read developer support content and routing
- Auth
- Account Bearer JWT
- Scope
- customers.view and all-products workspace scope.
- Returns
- HTTP 200: settings, articles, legacy, resolver, source.
Request, response and error reference
No request body fields are read by this operation.
HTTP 200 response (application/json)
{
"type": "object",
"properties": {
"settings": {
"type": "object",
"properties": {
"supportEmail": {
"type": "string"
},
"businessAddress": {
"type": "string"
},
"supportPhone": {
"type": "string"
},
"primaryContactName": {
"type": "string"
},
"supportUrlOverride": {
"type": "string"
},
"supportUrlOverrideEnabled": {
"type": "boolean"
},
"supportDisplayName": {
"type": "string"
},
"supportContactLabel": {
"type": "string"
},
"responseTimeMessage": {
"type": "string"
},
"availabilityMessage": {
"type": "string"
},
"contactFormEnabled": {
"type": "boolean"
},
"contactFormDestinationEmail": {
"type": "string"
},
"aiAssistantEnabled": {
"type": "boolean"
},
"aiAssistantTone": {
"type": "string"
},
"escalationMessage": {
"type": "string"
},
"alwaysEscalateWhenUnsure": {
"type": "boolean"
},
"supportPageEnabled": {
"type": "boolean"
}
},
"additionalProperties": true
},
"articles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"integer",
"null"
]
},
"productId": {
"type": [
"integer",
"null"
]
},
"type": {
"type": "string",
"enum": [
"faq",
"install",
"activation",
"download",
"compatibility",
"policy",
"known_issue",
"troubleshooting"
]
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"sortOrder": {
"type": "integer"
},
"visible": {
"type": "boolean"
},
"createdAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"updatedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"additionalProperties": true
}
},
"legacy": {
"type": "object",
"additionalProperties": true,
"description": "Operation-specific extension data; do not put credentials or unnecessary personal information here."
},
"resolver": {
"type": "object",
"additionalProperties": true,
"description": "Operation-specific extension data; do not put credentials or unnecessary personal information here."
},
"source": {
"type": "string"
}
},
"additionalProperties": true
}
Documented failures: 400, 401, 403, 404, 409, 500.
/api/developer/support
Save support content and articles
- Auth
- Account Bearer JWT
- Scope
- Authenticated developer support workspace with customers.view and all-products scope; owner/admin integration recommended.
- Request fields
- supportEmail: string
- businessAddress: string
- supportPhone: string
- primaryContactName: string
- supportUrlOverride: string
- supportUrlOverrideEnabled: boolean
- supportDisplayName: string
- supportContactLabel: string
- responseTimeMessage: string
- availabilityMessage: string
- contactFormEnabled: boolean
- contactFormDestinationEmail: string
- aiAssistantEnabled: boolean
- aiAssistantTone: string
- escalationMessage: string
- alwaysEscalateWhenUnsure: boolean
- supportPageEnabled: boolean
- articles: array
- Returns
- HTTP 200: settings, articles, legacy, resolver, source.
- Notes
- These compatibility save handlers share the same service; PATCH is not a promise of generic JSON Patch semantics. Read the normalization rules and reload the saved result. Article content and contact routing do not change product entitlements.
Request, response and error reference
Request (application/json)
{
"type": "object",
"properties": {
"supportEmail": {
"type": "string"
},
"businessAddress": {
"type": "string"
},
"supportPhone": {
"type": "string"
},
"primaryContactName": {
"type": "string"
},
"supportUrlOverride": {
"type": "string"
},
"supportUrlOverrideEnabled": {
"type": "boolean"
},
"supportDisplayName": {
"type": "string"
},
"supportContactLabel": {
"type": "string"
},
"responseTimeMessage": {
"type": "string"
},
"availabilityMessage": {
"type": "string"
},
"contactFormEnabled": {
"type": "boolean"
},
"contactFormDestinationEmail": {
"type": "string"
},
"aiAssistantEnabled": {
"type": "boolean"
},
"aiAssistantTone": {
"type": "string"
},
"escalationMessage": {
"type": "string"
},
"alwaysEscalateWhenUnsure": {
"type": "boolean"
},
"supportPageEnabled": {
"type": "boolean"
},
"articles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"integer",
"null"
]
},
"productId": {
"type": [
"integer",
"null"
]
},
"type": {
"type": "string",
"enum": [
"faq",
"install",
"activation",
"download",
"compatibility",
"policy",
"known_issue",
"troubleshooting"
]
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"sortOrder": {
"type": "integer"
},
"visible": {
"type": "boolean"
},
"createdAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"updatedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"additionalProperties": true
}
}
},
"additionalProperties": true
}
HTTP 200 response (application/json)
{
"type": "object",
"properties": {
"settings": {
"type": "object",
"properties": {
"supportEmail": {
"type": "string"
},
"businessAddress": {
"type": "string"
},
"supportPhone": {
"type": "string"
},
"primaryContactName": {
"type": "string"
},
"supportUrlOverride": {
"type": "string"
},
"supportUrlOverrideEnabled": {
"type": "boolean"
},
"supportDisplayName": {
"type": "string"
},
"supportContactLabel": {
"type": "string"
},
"responseTimeMessage": {
"type": "string"
},
"availabilityMessage": {
"type": "string"
},
"contactFormEnabled": {
"type": "boolean"
},
"contactFormDestinationEmail": {
"type": "string"
},
"aiAssistantEnabled": {
"type": "boolean"
},
"aiAssistantTone": {
"type": "string"
},
"escalationMessage": {
"type": "string"
},
"alwaysEscalateWhenUnsure": {
"type": "boolean"
},
"supportPageEnabled": {
"type": "boolean"
}
},
"additionalProperties": true
},
"articles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"integer",
"null"
]
},
"productId": {
"type": [
"integer",
"null"
]
},
"type": {
"type": "string",
"enum": [
"faq",
"install",
"activation",
"download",
"compatibility",
"policy",
"known_issue",
"troubleshooting"
]
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"sortOrder": {
"type": "integer"
},
"visible": {
"type": "boolean"
},
"createdAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"updatedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"additionalProperties": true
}
},
"legacy": {
"type": "object",
"additionalProperties": true,
"description": "Operation-specific extension data; do not put credentials or unnecessary personal information here."
},
"resolver": {
"type": "object",
"additionalProperties": true,
"description": "Operation-specific extension data; do not put credentials or unnecessary personal information here."
},
"source": {
"type": "string"
}
},
"additionalProperties": true
}
Documented failures: 400, 401, 403, 404, 409, 500.
/api/developer/support
Save support content and articles
- Auth
- Account Bearer JWT
- Scope
- Authenticated developer support workspace with customers.view and all-products scope; owner/admin integration recommended.
- Request fields
- supportEmail: string
- businessAddress: string
- supportPhone: string
- primaryContactName: string
- supportUrlOverride: string
- supportUrlOverrideEnabled: boolean
- supportDisplayName: string
- supportContactLabel: string
- responseTimeMessage: string
- availabilityMessage: string
- contactFormEnabled: boolean
- contactFormDestinationEmail: string
- aiAssistantEnabled: boolean
- aiAssistantTone: string
- escalationMessage: string
- alwaysEscalateWhenUnsure: boolean
- supportPageEnabled: boolean
- articles: array
- Returns
- HTTP 200: settings, articles, legacy, resolver, source.
- Notes
- These compatibility save handlers share the same service; PATCH is not a promise of generic JSON Patch semantics. Read the normalization rules and reload the saved result. Article content and contact routing do not change product entitlements.
Request, response and error reference
Request (application/json)
{
"type": "object",
"properties": {
"supportEmail": {
"type": "string"
},
"businessAddress": {
"type": "string"
},
"supportPhone": {
"type": "string"
},
"primaryContactName": {
"type": "string"
},
"supportUrlOverride": {
"type": "string"
},
"supportUrlOverrideEnabled": {
"type": "boolean"
},
"supportDisplayName": {
"type": "string"
},
"supportContactLabel": {
"type": "string"
},
"responseTimeMessage": {
"type": "string"
},
"availabilityMessage": {
"type": "string"
},
"contactFormEnabled": {
"type": "boolean"
},
"contactFormDestinationEmail": {
"type": "string"
},
"aiAssistantEnabled": {
"type": "boolean"
},
"aiAssistantTone": {
"type": "string"
},
"escalationMessage": {
"type": "string"
},
"alwaysEscalateWhenUnsure": {
"type": "boolean"
},
"supportPageEnabled": {
"type": "boolean"
},
"articles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"integer",
"null"
]
},
"productId": {
"type": [
"integer",
"null"
]
},
"type": {
"type": "string",
"enum": [
"faq",
"install",
"activation",
"download",
"compatibility",
"policy",
"known_issue",
"troubleshooting"
]
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"sortOrder": {
"type": "integer"
},
"visible": {
"type": "boolean"
},
"createdAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"updatedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"additionalProperties": true
}
}
},
"additionalProperties": true
}
HTTP 200 response (application/json)
{
"type": "object",
"properties": {
"settings": {
"type": "object",
"properties": {
"supportEmail": {
"type": "string"
},
"businessAddress": {
"type": "string"
},
"supportPhone": {
"type": "string"
},
"primaryContactName": {
"type": "string"
},
"supportUrlOverride": {
"type": "string"
},
"supportUrlOverrideEnabled": {
"type": "boolean"
},
"supportDisplayName": {
"type": "string"
},
"supportContactLabel": {
"type": "string"
},
"responseTimeMessage": {
"type": "string"
},
"availabilityMessage": {
"type": "string"
},
"contactFormEnabled": {
"type": "boolean"
},
"contactFormDestinationEmail": {
"type": "string"
},
"aiAssistantEnabled": {
"type": "boolean"
},
"aiAssistantTone": {
"type": "string"
},
"escalationMessage": {
"type": "string"
},
"alwaysEscalateWhenUnsure": {
"type": "boolean"
},
"supportPageEnabled": {
"type": "boolean"
}
},
"additionalProperties": true
},
"articles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"integer",
"null"
]
},
"productId": {
"type": [
"integer",
"null"
]
},
"type": {
"type": "string",
"enum": [
"faq",
"install",
"activation",
"download",
"compatibility",
"policy",
"known_issue",
"troubleshooting"
]
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"sortOrder": {
"type": "integer"
},
"visible": {
"type": "boolean"
},
"createdAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"updatedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"additionalProperties": true
}
},
"legacy": {
"type": "object",
"additionalProperties": true,
"description": "Operation-specific extension data; do not put credentials or unnecessary personal information here."
},
"resolver": {
"type": "object",
"additionalProperties": true,
"description": "Operation-specific extension data; do not put credentials or unnecessary personal information here."
},
"source": {
"type": "string"
}
},
"additionalProperties": true
}
Documented failures: 400, 401, 403, 404, 409, 500.
