# server-sdk-kotlin **Repository Path**: freshways/server-sdk-kotlin ## Basic Information - **Project Name**: server-sdk-kotlin - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-11 - **Last Updated**: 2026-03-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README The LiveKit icon, the name of the repository and some sample code in the background. # LiveKit Server SDK for Kotlin Use this SDK to interact with LiveKit server APIs and create access tokens from your Kotlin backend. ## Installation This SDK is available as a Maven package through [Maven Central](https://search.maven.org/search?q=g:io.livekit%20a:livekit-server). ### Maven ```xml title="pom.xml" io.livekit livekit-server 0.12.1 ``` ### Gradle ```groovy title="build.gradle" dependencies { implementation 'io.livekit:livekit-server:0.12.1' } ``` ## Usage ### Server API Access Obtain a `RoomServiceClient` or `EgressServiceClient` through their respective `create` methods, and then run calls through the client. ```java package org.example; import com.google.protobuf.util.JsonFormat; import java.io.IOException; import io.livekit.server.RoomServiceClient; import livekit.LivekitModels; import retrofit2.Call; import retrofit2.Response; public class Main { public static void main(String[] args) throws IOException { RoomServiceClient client = RoomServiceClient.createClient( "http://example.com", "apiKey", "secret"); Call call = client.createRoom("room_name"); Response response = call.execute(); // Use call.enqueue for async LivekitModels.Room room = response.body(); System.out.println(JsonFormat.printer().print(room)); } } ``` `Call` adapters are also available through [Retrofit](https://github.com/square/retrofit/tree/master/retrofit-adapters) for other async constructs such as `CompletableFuture` and RxJava. ### Creating Access Tokens Access tokens can be generated through the `io.livekit.server.AccessToken` class. ```java AccessToken token = new AccessToken("apiKey", "secret"); // Fill in token information. token.setName("name"); token.setIdentity("identity"); token.setMetadata("metadata"); token.addGrants(new RoomJoin(true), new RoomName("myroom")); // Sign and create token string. System.out.println("New access token: " + token.toJwt()) ``` By default, tokens expire 6 hours after generation. You may override this by using `token.setTtl(long millis)`.
LiveKit Ecosystem
Agents SDKsPython · Node.js
LiveKit SDKsBrowser · Swift · Android · Flutter · React Native · Rust · Node.js · Python · Unity · Unity (WebGL) · ESP32 · C++
Starter AppsPython Agent · TypeScript Agent · React App · SwiftUI App · Android App · Flutter App · React Native App · Web Embed
UI ComponentsReact · Android Compose · SwiftUI · Flutter
Server APIsNode.js · Golang · Ruby · Java/Kotlin · Python · Rust · PHP (community) · .NET (community)
ResourcesDocs · Docs MCP Server · CLI · LiveKit Cloud
LiveKit Server OSSLiveKit server · Egress · Ingress · SIP
CommunityDeveloper Community · Slack · X · YouTube