Skip to content

LiveKit Platform Service — Getting Started Guide

  • Version: 1.0
  • Last Updated: March 2026
  • Maintained by: Bayer LiveKit Platform Team ⧉
  • Audience: Bayer internal developers — agent and client application teams
  • Status: Active

What is the LiveKit Platform Service (LKPS)?

The LiveKit Platform Service (LKPS) is Bayer's centralized backend for building real-time AI agents and client applications on top of LiveKit ⧉. It provides:

  • Secure agent registration — agents authenticate via Microsoft Entra ID and receive scoped, time-limited LiveKit tokens.
  • Session management — client applications start sessions by requesting a room and participant token; LKPS automatically dispatches the target agent.
  • Client-to-agent authorization — optional fine-grained access control ensures only authorized client applications can connect to specific agents.
  • Full audit trail — every registration and session is logged for compliance and traceability.

Important

Key principle: No developer or application ever holds static LiveKit credentials. All access is identity-based, time-bound, and auditable.


How It Works

LKPS Architecture

Both agents and client applications authenticate via Entra ID, then access LKPS through Ocelot (Bayer's reverse proxy). LKPS handles agent registration, session creation, and token issuance — connecting everything to the LiveKit Server for real-time communication.

Info

For detailed request flows, see the Agent Developer Guide and Client Developer Guide.


Who Should Read This Guide?

Your role Start here
New to the platform Read this page, then follow the Prerequisites
Agent developer — building AI agents with the Bayer LiveKit SDK PrerequisitesAgent Developer Guide
Client app developer — building a frontend or backend that connects to agents PrerequisitesClient Developer Guide
Looking for environment URLs Environments & URLs

Warning

Security recommendation: To control which client applications can access your agent, configure Client-to-Agent Authorization. This is optional but strongly recommended for production agents.


Guides

Guide Description
Prerequisites BEAT registration, Entra app registration, and Ocelot access — what you need before writing any code
Ocelot Access Setup Step-by-step guide to configure Ocelot reverse proxy routes for your application
Client-to-Agent Authorization Configure which client applications are allowed to start sessions with your agent
Agent Developer Guide Build and deploy an AI agent using the Bayer LiveKit SDK
Client Developer Guide Integrate your frontend or backend application with LKPS to start agent sessions
Environments & URLs Non-production and production endpoints for LKPS, LiveKit, and Ocelot

Resource Description
LiveKit Platform Service — API Reference Full API reference with request/response examples
LiveKit Platform Service — Architecture System design, request flows, and security model
Bayer LiveKit SDK Overview SDK installation, authentication modes, and migration guide
Bayer LiveKit SDK — Architecture SDK internals, token lifecycle, and sequence diagrams
LiveKit Official Documentation ⧉ Upstream LiveKit concepts and API reference

Quick Reference: End-to-End Flow

End-to-End Flow — Agent Registration and Session Start

The diagram above covers two phases:

Phase What happens
Agent Registration (one-time, auto-renewed) The agent authenticates with Entra ID, registers via Ocelot → LKPS, receives a scoped LiveKit token, and connects to the LiveKit Server via WebSocket. The SDK handles token renewal automatically.
Session Start (per conversation) The client app authenticates with Entra ID, calls POST /api/session/start via Ocelot → LKPS. LKPS verifies authorization (if enforced), creates a room, and returns a participant_token, room_name, and livekit_url. The client joins the room and LiveKit dispatches the agent — real-time WebRTC communication begins.

For implementation details, see the Agent Developer Guide and Client Developer Guide.


Support

For questions or issues related to the LiveKit Platform Service, reach out to the Bayer LiveKit Platform team ⧉ on Microsoft Teams.