Deployment architecture across three distinct ownership zones: the enterprise on-premises environment, Alterspective-hosted multi-tenant services, and the customer Sharedo tenant.
Zone 1 On-premise install
Deployed in enterprise network · Outbound-only
Aderant Expert SQL Server
The on-premises practice management system. Houses client and matter records, financial data, and party relationships. Strictly accessed via read-only parameterised queries.
Aderant SQL API Agent read
Queries the Aderant SQL Server (clients, matters, employees, and dynamic table views). Runs as a Windows Service (WinSW) or Docker container. Exposes streamable /mcp with RFC 9728 discovery.
Outbound Transport Bridge
Outbound-only connection using Shared Access Signature (SAS) token authorization. The hosted Proxy connects securely to the on-premises agent without opening inbound firewall ports. Local development environments can use ngrok as a fallback.
Aderant REST / CRUD Proxy write
Wraps Aderant Expert REST APIs for bidirectional matter updates under runAderantWriteGate governance.
Zone 2 Hosted services
Multi-tenant cloud platform · Coolify managed
API Proxy & Orchestrator readwrite
Organized into domain, application, infrastructure, and presentation layers. Single write gateway into Sharedo, orchestrates Azure Relay communication, executes transforms, and serves streamable /mcp (7 tools) under Keystone OAuth 2.1.
Import Portal
Web UI for matter search, preview generation, role cardinality conflict management, and import execution. Mints HMAC-signed x-org-assertion headers to verify tenant identity on every proxy call.
Keystone Identity Provider
Central identity authority. Validates portal user logins and issues RFC 9728-discoverable OAuth 2.1 tokens with remote JWKS verification.
Supabase Config & Audit Store
Stores tenant credentials and configuration. Houses the pre-execution audit table (aderant_write_audit); if database commits fail, the write gate fails closed with HTTP 503.
Synapse AI Gateway
Private GPU inference service for authoring mapping transforms and analyzing work type schemas.
Into the client tenant
Deployed into customer Sharedo / Clio Operate
PMS Sync Embed Widget
Embeds the Import Portal directly inside the Sharedo IDE via iframe. Initiates single sign-on using a signed JWT handoff delivered in URL #fragment, isolating user sessions to roles: ['embedded'].
Linked Services
Sharedo outbound connectors that securely route requests to the hosted Proxy using server-side shared secrets.
Sharedo Work Items & Parties target
Aderant matters land as native Sharedo work items. Participant roles are introspected (WorkTypeParticipantRole.canBeAssignedMultiple) to enforce single-capacity allocation and prevent duplicate role errors.
frame-ancestors allows only authorized customer Sharedo domains.#fragment)
Assertion: Portal ⇄ Proxy (HMAC-SHA256 x-org-assertion)
Correlation: x-correlation-id propagated end-to-end
Matter import execution lifecycle
- SSO Authentication: The user accesses the PMS Import page in Sharedo. The embed widget fetches a signed handoff JWT from the API Proxy (
/api/embed/handoff) and frames the Portal via URL#fragment, ensuring the token is omitted from referrer headers and server logs. The Portal assignsroles: ['embedded']without administrative rights. - Matter Search: The user queries an Aderant matter by code or client. The Portal sends
GET /api/import/matters/searchto the Proxy, signing the request with an HMAC-SHA256x-org-assertionheader. - On-Premises Read: The Proxy calls the on-premises SQL API agent over an Azure Relay Hybrid Connection (outbound-only TLS 443 with SAS token authorization; zero inbound firewall ports). The agent executes parameterised, column-whitelisted SQL against Aderant Expert.
- Preview & Role Cardinality Introspection: The Proxy runs
POST /api/import/matter/{uno}/preview. It maps matter fields and introspects Sharedo work type schemas viaWorkTypeParticipantRole.canBeAssignedMultiple. Single-capacity roles (e.g. Primary Owner, Client) are evaluated; potential duplicate conflicts trigger warning badges. The Proxy issues a single-usepreviewHashnonce.
- User Confirmation: The user reviews the mapped fields, dates, and participant roles. Clicking Import dispatches
POST /api/import/matter/{uno}withconfirm: trueand the exactpreviewHashnonce. - Unified Write Gate (
runAderantWriteGate): The Proxy validates that the tenant'saderant_write_enabledflag is active in Supabase, checks the single-use nonce, and inserts a pre-execution row intoaderant_write_audit. If the audit database is unreachable, the request fails closed with HTTP 503 and halts. - Sharedo Creation & Capacity Guard: The Proxy invokes Sharedo APIs to create ODS parties, instantiate the work item, and set key dates. Write-side capacity tracking enforces single-allocation rules, substituting or skipping excess duplicates to prevent upstream errors.
- Audit Completion & Reconcile: The final execution status is committed to
aderant_write_audit, returning the new Sharedo work item ID. Periodic reconciliation jobs detect matter closure drift between Aderant and Sharedo.