Switchboard API Compatibility Matrix

Purpose

Switchboard needs a frozen API and channel boundary for the Chatwoot-parity support workspace so inbox seeding, message routing, operator tooling, and channel adapters can be built against one durable contract.

Major Resource Coverage

Resource Compatibility expectation Notes
accountsTenant bootstrap, settings, and identity-scoped administration APIsThe account boundary controls workspace-level support configuration.
usersOperator profiles, presence-ready identity data, and permission-aware readsUsers must remain distinct from end-customer contacts.
inboxesCRUD, routing, channel binding, and ownership configuration APIsInboxes are the top-level operator work queues.
contactsDurable external identity, profile enrichment, and merge-safe lookup APIsRequired for cross-channel support history.
conversationsStateful lifecycle APIs for open, snoozed, resolved, and reopened workConversation state is the primary benchmarked resource.
messagesThreaded inbound and outbound message APIs with author metadataMust support both human and automation-authored events.
labelsTagging and filtering APIs for triage workflowsSupports queue management and reporting.
canned responsesStored reply templates with operator-friendly retrievalNeeded for speed-oriented support workflows.
macrosMulti-action operator commands spanning routing, replies, and labelsMust remain automation-safe and auditable.
automation rulesRule configuration and execution metadata APIsDefines routing and state transitions without manual operator action.
reportsReporting and summary endpoints for inbox, SLA, and operator performanceFrozen now so later analytics work has a stable target.

Channel Coverage

Channel or adapter Compatibility expectation Freeze notes
website live chatNative realtime chat ingress with widget/session metadataThis is the first-class owned channel for benchmark runs.
API channelProgrammatic message ingress for synthetic and system-driven workloadsEnables deterministic fixture injection.
emailAsync message threading, contact resolution, and outbound reply supportMust preserve conversation linkage across replies.
FacebookAdapter-ready boundary for public social messagingFreeze the domain contract even if the first adapter is deferred.
InstagramAdapter-ready boundary for social direct messagingShares conversation semantics with other external channels.
LINEAdapter-ready boundary for regional messaging supportNeeds normalized contact and message payload mapping.
SMSPhone-number-based messaging adapter boundaryShould map cleanly into conversations and assignments.
TikTokAdapter-ready social messaging coverageKeep the integration seam explicit for later channel packages.
X or TwitterAdapter-ready public/support messaging coverageFreeze naming and payload expectations before implementation.
voice or phoneCall-linked conversation records, events, and resolution metadataThe API boundary can begin with event summaries before full telephony.

Adapter Inventory Notes