Documents the redundancy, failover, and graceful-degradation measures Agent360 LLC maintains for each category of sub-processor, scoping the third-party-outage exclusion in SLA 4(d).
Last updated: April 20, 2026 · Version: v2026.04.20-1
This page documents the redundancy, failover, and graceful-degradation measures that Agent360 LLC maintains for each category of Sub-processor underlying the Zoe AI voice-receptionist Services. The commitments here scope the third-party-outage exclusion in SLA §4(d): a Sub-processor outage qualifies as “Excluded Time” only after the redundancy / failover measures below have been exhausted. The page is reviewed at least annually and on every material architectural change.
Outbound and inbound trunks are provisioned on Twilio and SignalWire in parallel. Active health-checks evaluate per-carrier signaling latency, post-dial-delay, ASR (answer-seizure ratio), and 5xx response rates on a 30-second window. When the active carrier crosses any threshold, the dial-plan layer routes the next call attempt through the standby carrier without operator intervention. In-flight calls cannot be migrated mid-call (no carrier supports SIP transfer for an active media leg), so a hard-down carrier event affects only the in-flight calls on that carrier; subsequent calls failover within ~60 seconds of detection.
Each conversational turn is routed to the configured primary LLM provider. On any 4xx (rate limit, content-policy false positive) or 5xx (provider outage) response, or on a per-turn deadline miss (currently 4 seconds for the first token, 8 seconds for first audio frame), the orchestration layer retries the same turn against the standby provider. Conversation state is persisted in our database, so re-route is idempotent and the caller does not lose context. Provider routing is configurable per Customer.
STT and TTS each have a primary and a secondary provider configured. Audio is buffered for the last 10 seconds; on STT primary failure the buffer is replayed against the secondary. TTS has a smaller buffer (per-utterance) and re-synthesizes against the secondary on primary failure within ~5 seconds.
Primary database is Supabase Postgres with daily encrypted backups, write-ahead-log archival, and point-in-time recovery to any moment within the last 7 days. Cross-region read replicas are configured for the largest tenants and for the global tenant-resolution path.
Compute and queueing run multi-AZ in us-west-2 (primary) with a documented runbook for cross-region failover to us-east-1. Static assets are served via a global CDN.
Authoritative DNS for getagent360.com and tenant subdomains is hosted on at least two independent providers with synchronized zone data and a TTL of 60 seconds, so a single-provider outage is mitigated by resolver fallback within one TTL.
TLS certificates are issued via two independent CAs with automated renewal at least 21 days before expiry. We maintain a pre-issued backup certificate chain that can be rotated within four hours.
Transactional email is sent via Resend. On Resend unavailability, messages are queued and retried for up to four hours. For account-recovery and security-critical paths, an out-of-band SMS fallback is invoked via Twilio (or SignalWire) when the queue depth or age exceeds 15 minutes.
Stripe is used for billing and AI-credit top-ups only; it is not in the call-handling hot path, so a Stripe outage does not affect call answer rates. Webhooks are idempotent (processed deliveries are deduplicated by Stripe event id) and re-played from Stripe’s side after recovery.
This page is reviewed at least annually and on every material architectural change. Material changes (e.g., adding a new Sub-processor category, removing redundancy from a category) trigger an in-product notification to Customers and an update to the published Subprocessors page at /compliance/subprocessors.