LootLocker Unreal SDK 10.4.0
Game backend SDK for Unreal Engine
Loading...
Searching...
No Matches
Connected Accounts

Detailed Description

Link multiple platform accounts together under a single LootLocker player identity.

Once linked, the same player profile loads regardless of which platform the game is started on, enabling cross-platform progression and cross-saves. Linking can be done via External Linking (redirects to the LootLocker auth.game website; recommended for most cases) or Direct Linking (used when the player is already on the target platform). Also supports transitioning a Guest Login to any other provider.

See the LootLocker documentation.

Typedef Documentation

◆ FLootLockerAccountConnectedResponseDelegate

typedef void(* FLootLockerAccountConnectedResponseDelegate) (FLootLockerAccountConnectedResponse)

C++ response delegate for connecting a provider to an account.

◆ FLootLockerListConnectedAccountsResponseDelegate

typedef void(* FLootLockerListConnectedAccountsResponseDelegate) (FLootLockerListConnectedAccountsResponse)

C++ response delegate for listing connected accounts.

Enumeration Type Documentation

◆ EGoogleAccountProviderPlatform

enum class EGoogleAccountProviderPlatform : uint8
strong

Google OAuth2 Client platform.

Enumerator
web 
android 
ios 
desktop 

◆ ELootLockerAccountProvider

enum class ELootLockerAccountProvider : uint8
strong

Account providers possible to use for connected accounts.

Enumerator
Guest 
Google 
Apple 
Steam 
Epic_games 
Credentials 
Nintendo 
Xbox 
Playstation 
Twitch 
Discord 
Google_play_games 

Function Documentation

◆ ConnectAppleAccountByRestSignIn()

static FString ULootLockerSDKManager::ConnectAppleAccountByRestSignIn ( const FString &  AuthorizationCode,
const FLootLockerAccountConnectedResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Link an Apple account (REST sign-in).

Parameters
AuthorizationCodeAuthorization code from Apple sign-in
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ ConnectDiscordAccount()

static FString ULootLockerSDKManager::ConnectDiscordAccount ( const FString &  Token,
const FLootLockerAccountConnectedResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Link a Discord account.

Parameters
TokenToken from Discord sign-in
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ ConnectEpicAccount()

static FString ULootLockerSDKManager::ConnectEpicAccount ( const FString &  Token,
const FLootLockerAccountConnectedResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Link an Epic account.

Parameters
TokenToken from Epic sign-in
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ ConnectGoogleAccount() [1/2]

static FString ULootLockerSDKManager::ConnectGoogleAccount ( const FString &  IdToken,
const FLootLockerAccountConnectedResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Link a Google account.

Parameters
IdTokenID token from Google sign-in
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ ConnectGoogleAccount() [2/2]

static FString ULootLockerSDKManager::ConnectGoogleAccount ( const FString &  IdToken,
EGoogleAccountProviderPlatform  Platform,
const FLootLockerAccountConnectedResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Link a Google account for a specific Google platform.

Parameters
IdTokenID token from Google sign-in
PlatformGoogle OAuth2 client platform
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ ConnectPlaystationAccount()

static FString ULootLockerSDKManager::ConnectPlaystationAccount ( const FString &  Environment,
const FString &  Code,
const FLootLockerAccountConnectedResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Link a PlayStation account.

Parameters
EnvironmentPlayStation environment (e.g. prod, dev, qa)
CodeAuthorization code (parameter missing in original doc)
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ ConnectRemoteSessionAccount()

static FString ULootLockerSDKManager::ConnectRemoteSessionAccount ( const FString &  Code,
const FString &  Nonce,
const FLootLockerAccountConnectedResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Link an account via remote session lease.

Parameters
CodeLease code from start remote session
NonceNonce from start remote session
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ ConnectTwitchAccount()

static FString ULootLockerSDKManager::ConnectTwitchAccount ( const FString &  AuthorizationCode,
const FLootLockerAccountConnectedResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Link a Twitch account.

Parameters
AuthorizationCodeAuthorization code from Twitch sign-in
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ DisconnectAccount()

static FString ULootLockerSDKManager::DisconnectAccount ( const ELootLockerAccountProvider  AccountToDisconnect,
const FLootLockerDefaultDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

Disconnect a linked identity provider.

Parameters
AccountToDisconnectProvider to disconnect
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ ListConnectedAccounts()

static FString ULootLockerSDKManager::ListConnectedAccounts ( const FLootLockerListConnectedAccountsResponseDelegate OnComplete,
const FString &  ForPlayerWithUlid = "" 
)
static

List connected identity providers (Apple, Google, etc.).

Parameters
OnCompleteDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ TransferIdentityProvidersBetweenAccounts()

static FString ULootLockerSDKManager::TransferIdentityProvidersBetweenAccounts ( const FString &  FromPlayerWithUlid,
const FString &  ToPlayerWithUlid,
TArray< ELootLockerAccountProvider ProvidersToTransfer,
const FLootLockerListConnectedAccountsResponseDelegate OnComplete 
)
static

Transfer identity providers between two authenticated players.

Destructive: providers move from source to target player. Entire operation fails if any provider cannot be transferred.

Limitations:

  • Source must own each provider
  • Target must not already have provider
  • Provider must be active in game settings
Parameters
FromPlayerWithUlidSource player ULID
ToPlayerWithUlidTarget player ULID
ProvidersToTransferProviders to transfer
OnCompleteDelegate for handling the server response
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

Typedefs

typedef void(* FLootLockerAccountConnectedResponseDelegate) (FLootLockerAccountConnectedResponse)
 C++ response delegate for connecting a provider to an account.
 
typedef void(* FLootLockerListConnectedAccountsResponseDelegate) (FLootLockerListConnectedAccountsResponse)
 C++ response delegate for listing connected accounts.
 

Enumerations

enum class  ELootLockerAccountProvider : uint8 {
  ELootLockerAccountProvider::Guest = 0 , ELootLockerAccountProvider::Google = 1 , ELootLockerAccountProvider::Apple = 2 , ELootLockerAccountProvider::Steam = 3 ,
  ELootLockerAccountProvider::Epic_games = 4 , ELootLockerAccountProvider::Credentials = 5 , ELootLockerAccountProvider::Nintendo = 6 , ELootLockerAccountProvider::Xbox = 7 ,
  ELootLockerAccountProvider::Playstation = 8 , ELootLockerAccountProvider::Twitch = 9 , ELootLockerAccountProvider::Discord = 10 , ELootLockerAccountProvider::Google_play_games = 11
}
 Account providers possible to use for connected accounts. More...
 
enum class  EGoogleAccountProviderPlatform : uint8 { EGoogleAccountProviderPlatform::web = 0 , EGoogleAccountProviderPlatform::android = 1 , EGoogleAccountProviderPlatform::ios = 2 , EGoogleAccountProviderPlatform::desktop = 4 }
 Google OAuth2 Client platform. More...
 

Functions

static FString ULootLockerSDKManager::ListConnectedAccounts (const FLootLockerListConnectedAccountsResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 List connected identity providers (Apple, Google, etc.).
 
static FString ULootLockerSDKManager::DisconnectAccount (const ELootLockerAccountProvider AccountToDisconnect, const FLootLockerDefaultDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Disconnect a linked identity provider.
 
static FString ULootLockerSDKManager::ConnectGoogleAccount (const FString &IdToken, const FLootLockerAccountConnectedResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Link a Google account.
 
static FString ULootLockerSDKManager::ConnectGoogleAccount (const FString &IdToken, EGoogleAccountProviderPlatform Platform, const FLootLockerAccountConnectedResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Link a Google account for a specific Google platform.
 
static FString ULootLockerSDKManager::ConnectAppleAccountByRestSignIn (const FString &AuthorizationCode, const FLootLockerAccountConnectedResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Link an Apple account (REST sign-in).
 
static FString ULootLockerSDKManager::ConnectTwitchAccount (const FString &AuthorizationCode, const FLootLockerAccountConnectedResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Link a Twitch account.
 
static FString ULootLockerSDKManager::ConnectEpicAccount (const FString &Token, const FLootLockerAccountConnectedResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Link an Epic account.
 
static FString ULootLockerSDKManager::ConnectPlaystationAccount (const FString &Environment, const FString &Code, const FLootLockerAccountConnectedResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Link a PlayStation account.
 
static FString ULootLockerSDKManager::ConnectDiscordAccount (const FString &Token, const FLootLockerAccountConnectedResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Link a Discord account.
 
static FString ULootLockerSDKManager::ConnectRemoteSessionAccount (const FString &Code, const FString &Nonce, const FLootLockerAccountConnectedResponseDelegate &OnComplete, const FString &ForPlayerWithUlid="")
 Link an account via remote session lease.
 
static FString ULootLockerSDKManager::TransferIdentityProvidersBetweenAccounts (const FString &FromPlayerWithUlid, const FString &ToPlayerWithUlid, TArray< ELootLockerAccountProvider > ProvidersToTransfer, const FLootLockerListConnectedAccountsResponseDelegate &OnComplete)
 Transfer identity providers between two authenticated players.