best-thailand-14166
12/19/2025, 11:17 AMtall-airline-16756
12/19/2025, 11:17 AMtall-airline-16756
12/19/2025, 11:18 AMsa region.
• WebRTC in KSA: Yes — WebRTC can be restricted to KSA using region pinning (Scale plan or higher).
• If you cannot or choose not to use Cloud in KSA: you can self-host agents and/or the LiveKit server in KSA to meet residency needs.
What you can do and how to configure it 1) Agent deployment in KSA
• Available: Yes.
• How to specify: when creating an agent use the region flag:
lk agent create --region sa
Or set the region in your livekit.toml agent configuration if using templates/automation.
2) WebRTC pinned to KSA
• Available: Yes.
• How to enforce: enable protocol-based region pinning for your project (requires Scale plan or higher). Once enabled you specify allowed regions (e.g., sa) so signaling and media are restricted to that region for client connections.
• SIP note: if you use SIP, use the regional SIP endpoint format ({subdomain}.sa.sip.livekit.cloud) or set destination_country: "sa" for outbound calls to ensure KSA routing.
3) Using self-hosted agents with Cloud WebRTC (if you don’t deploy Cloud agents)
• You can run self-hosted agents and still use a WebRTC server deployed in KSA.
• Ensure your LiveKit server nodes and supporting infra (Redis, turn/TURN, load balancer) are deployed inside KSA and use region-aware node selection so traffic remains in-region.
4) If neither Cloud agent nor Cloud WebRTC in KSA meets your needs
• Then self-host both agent and LiveKit server inside KSA. This gives full control and ensures no cross-border data flow.
Minimum viable setup for KSA compliance Option A — LiveKit Cloud (minimal if acceptable):
• Subscribe to Scale plan or higher.
• Deploy agents with --region sa.
• Request/enable protocol-based region pinning for your project (so WebRTC is pinned to sa).
Result: agents, signaling, and media stay in KSA.
Option B — Full self-host (if you need full sovereignty):
• Self-host agents and LiveKit server in your KSA infrastructure.
• Deploy Redis, TURN, and any storage in-region.
Result: full in-region control.
Quick clarifying question
• Do you plan to use LiveKit Cloud (Scale plan) or do you prefer full self-hosting? That will determine the exact steps I should give next (Cloud setup + pinning steps vs. self-host deployment checklist). Sources: livekit/livekit_composite | DeepWiki | Region pinning | LiveKit docs | SIP cloud and region pinning | LiveKit docs | Distributed Setup | LiveKit docs | LiveKit Cloud Architecture | LiveKit docsbest-thailand-14166
12/19/2025, 11:46 AMtall-airline-16756
12/19/2025, 11:47 AMlk agent create --region sa.
Short answer: sa is not a valid agent deployment region. For Middle East / Saudi Arabia use me instead. Try:
lk agent create --region me
If that still fails, please tell me:
• the output of lk version
• the project name shown by the CLI (you showed digitalyou-b2b, confirm)
• whether you’re on a Scale plan or higher (region pinning/region deployments may require specific plan enablement)
Quick next steps I can help with once you share those:
• Troubleshoot CLI/permission errors
• Confirm whether me is enabled for your project
• Provide the exact livekit.toml snippet or deployment command that will pin agent and WebRTC to me (KSA/Middle East) for compliance. Sources: server-sdk-go | livekit/livekit_composite | DeepWiki | SIP cloud and region pinning | LiveKit docs | Region pinning | LiveKit docs | LiveKit Phone Numbers | LiveKit docs | LiveKit Pricingbest-thailand-14166
12/19/2025, 11:51 AMtall-airline-16756
12/19/2025, 11:51 AMsa. For protocol-based WebRTC region pinning you may see me referenced, but agent compute uses sa.
• The error means your project/CLI can’t see sa as an allowed agent region right now.
Please run and share these so I can diagnose:
1. lk --version
2. lk project list (or confirm the exact project shown by the CLI — you showed digitalyou-b2b)
3. Your plan level (are you on Scale or higher?)
4. The full command output (you already pasted it; if anything new appears, include it)
Quick checks you can try now
• Update CLI: curl -sSL <https://install.livekit.io> | bash (or your platform’s update method), then retry lk agent create --region sa.
• Try a known common region to confirm baseline: lk agent create --region us — if that works, the issue is region availability for your project.
What I’ll do once you reply
• If CLI is outdated or sa is blocked, I’ll provide the exact next steps: enable region in your project, or give the alternative self‑host checklist for full in‑KSA residency. Sources: Region pinning | LiveKit docs | SIP cloud and region pinning | LiveKit docs | Server-side | livekit/livekit_composite | DeepWiki | LiveKit Pricing | Deploying to production | LiveKit Docsbest-thailand-14166
12/19/2025, 1:26 PMIf we pin WebRTC traffic to me region (Saudi Arabia) using region pinning:
Can an agent deployed in your USA cloud still join/access those pinned WebRTC rooms?
Or does region pinning *block all connections* (including agents) from outside the pinned region?tall-airline-16756
12/19/2025, 1:26 PMme (Saudi Arabia) region. Region pinning restricts where media and signaling are routed/processed, not which participants (including agents) may connect.
Details to keep in mind
• When an agent outside the pinned region joins, its WebRTC traffic is routed to the media node in the pinned region so media and signaling remain in-region.
• Region pinning applies to LiveKit realtime SDK connections. If an agent uses SIP or other non-realtime paths, behavior differs.
• Some agent-related data (logs, observability, inference results) may still leave the pinned region depending on your setup — those are not always subject to region pinning.
• For strict compliance, consider running agents in-region or self‑hosting both agent + server so all processing and ancillary data stay inside KSA.
If you want, tell me:
• How your agent connects (realtime SDK vs SIP), and
• Whether you need logs/metrics/inference to remain fully in-region.
I’ll then give the precise configuration steps or the self-host checklist for full KSA residency.
Sources: Region pinning | LiveKit docs | LiveKit Pricing | Data Processing Addendum | LiveKit | Agent dispatch | LiveKit docs