Skip to main content

Overview

These types define the data structures used across the LCK streaming API for checking streaming targets, authentication state, login flow data, and subscription status.

ELCKStreamingTargetType

The type of streaming destination configured by the user.
UENUM(BlueprintType)
enum class ELCKStreamingTargetType : uint8
{
    None     UMETA(DisplayName = "None"),
    YouTube  UMETA(DisplayName = "YouTube"),
    Twitch   UMETA(DisplayName = "Twitch"),
    Manual   UMETA(DisplayName = "Manual RTMP")
};
ValueDescription
NoneNo streaming target configured
YouTubeStreaming to YouTube Live
TwitchStreaming to Twitch
ManualCustom RTMP URL

ELCKStreamingState

The current state of the streaming UI system (defined in LCKUI).
UENUM(BlueprintType)
enum class ELCKStreamingState : uint8
{
    Idle,
    Pairing,
    Paired,
    Streaming,
    Error,
    MAX
};
ValueDescription
IdleNo active streaming session
PairingDevice login in progress
PairedAuthenticated, ready to stream
StreamingLive stream is active
ErrorAn error occurred

FLCKUserSubscription

Represents a user’s LIV subscription status.
USTRUCT(BlueprintType)
struct LCKSTREAMING_API FLCKUserSubscription
{
    GENERATED_BODY()

    UPROPERTY(BlueprintReadOnly, Category = "LCK|Streaming")
    FString Sku;

    UPROPERTY(BlueprintReadOnly, Category = "LCK|Streaming")
    bool bIsActive = false;
};
FieldTypeDescription
SkuFStringSubscription SKU identifier
bIsActivebooltrue if the subscription is currently active

FLCKLoginAttempt

Data for an in-progress device-code login attempt.
USTRUCT(BlueprintType)
struct LCKSTREAMING_API FLCKLoginAttempt
{
    GENERATED_BODY()

    UPROPERTY(BlueprintReadOnly, Category = "LCK|Streaming")
    FString Code;

    UPROPERTY(BlueprintReadOnly, Category = "LCK|Streaming")
    FString Id;

    UPROPERTY(BlueprintReadOnly, Category = "LCK|Streaming")
    FString ExpiresAt;
};
FieldTypeDescription
CodeFStringThe pairing code the user enters at the pairing URL
IdFStringInternal identifier for this login attempt
ExpiresAtFStringISO 8601 timestamp for when this pairing code expires

FLCKAuthState

Represents the current authentication state.
USTRUCT(BlueprintType)
struct LCKSTREAMING_API FLCKAuthState
{
    GENERATED_BODY()

    UPROPERTY(BlueprintReadOnly, Category = "LCK|Streaming")
    FString UserId;

    UPROPERTY(BlueprintReadOnly, Category = "LCK|Streaming")
    bool bIsAuthenticated = false;
};
FieldTypeDescription
UserIdFStringThe authenticated user’s unique identifier
bIsAuthenticatedbooltrue if the user is currently authenticated

Key Takeaways

All types are BlueprintType — Usable in Blueprint graphs
Check target type — Show appropriate platform icon in UI
Subscription gating — Check HasActiveSubscription() before enabling streaming
ExpiresAt is ISO 8601 — Parse if you need a countdown timer