EOS_EExternalCredentialType

EOS API reference page for EOS_EExternalCredentialType

Choose your implementation method:

C

C#

Remarks

List of the supported identity providers to authenticate a user. The type of authentication token is specific to each provider. Tokens in string format should be passed as-is to the function. Tokens retrieved as raw byte arrays should be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before being passed to the function. EOS_ByteArray_ToString can be used for this conversion.

See Also

EOS_Auth_Login, EOS_Connect_Login

Values

EOS_EExternalCredentialType

Enumerated Value

Meaning

EOS_ECT_EPIC

Epic Games User Token Acquired using EOS_Auth_CopyUserAuthToken that returns EOS_Auth_Token::AccessToken. Supported with EOS_Connect_Login.

EOS_ECT_STEAM_APP_TICKET

Steam Encrypted App Ticket Generated using the ISteamUser::RequestEncryptedAppTicket API of Steamworks SDK. For ticket generation parameters, use pDataToInclude(NULL) and cbDataToInclude(0). The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the EOS_Auth_Login or EOS_Connect_Login APIs. EOS_ByteArray_ToString can be used for this conversion. Supported with EOS_Auth_Login, EOS_Connect_Login.

EOS_ECT_PSN_ID_TOKEN

PlayStation(TM)Network ID Token Retrieved from the PlayStation(R) SDK. Please see first-party documentation for additional information. Supported with EOS_Auth_Login, EOS_Connect_Login.

EOS_ECT_XBL_XSTS_TOKEN

Xbox Live XSTS Token Retrieved from the GDK and XDK. Please see first-party documentation for additional information. Supported with EOS_Auth_Login, EOS_Connect_Login.

EOS_ECT_DISCORD_ACCESS_TOKEN

Discord Access Token Retrieved using the ApplicationManager::GetOAuth2Token API of Discord SDK. Supported with EOS_Connect_Login.

EOS_ECT_GOG_SESSION_TICKET

GOG Galaxy Encrypted App Ticket Generated using the IUser::RequestEncryptedAppTicket API of GOG Galaxy SDK. For ticket generation parameters, use data(NULL) and dataSize(0). The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the EOS_Connect_Login API. For C/C++ API integration, use the EOS_ByteArray_ToString API for the conversion. For C# integration, you can use for the conversion. Supported with EOS_Connect_Login.

EOS_ECT_NINTENDO_ID_TOKEN

Nintendo Account ID Token Identifies a Nintendo user account and is acquired through web flow authentication where the local user logs in using their email address/sign-in ID and password. This is the common Nintendo account that users login with outside the Nintendo Switch device. Supported with EOS_Auth_Login, EOS_Connect_Login.

EOS_ECT_NINTENDO_NSA_ID_TOKEN

Nintendo Service Account ID Token (NSA ID) The NSA ID identifies uniquely the local Nintendo Switch device. The authentication token is acquired locally without explicit user credentials. As such, it is the primary authentication method for seamless login on Nintendo Switch. The NSA ID is not exposed directly to the user and does not provide any means for login outside the local device. Because of this, Nintendo Switch users will need to link their Nintendo Account or another external user account to their Product User ID in order to share their game progression across other platforms. Otherwise, the user will not be able to login to their existing Product User ID on another platform due to missing login credentials to use. It is recommended that the game explicitly communicates this restriction to the user so that they will know to add the first linked external account on the Nintendo Switch device and then proceed with login on another platform. In addition to sharing cross-platform game progression, linking the Nintendo Account or another external account will allow preserving the game progression permanently. Otherwise, the game progression will be tied only to the local device. In case the user loses access to their local device, they will not be able to recover the game progression if it is only associated with this account type. Supported with EOS_Auth_Login, EOS_Connect_Login.

EOS_ECT_UPLAY_ACCESS_TOKEN

Uplay Access Token

EOS_ECT_OPENID_ACCESS_TOKEN

OpenID Provider Access Token Supported with EOS_Connect_Login.

EOS_ECT_DEVICEID_ACCESS_TOKEN

Device ID access token that identifies the current locally logged in user profile on the local device. The local user profile here refers to the operating system user login, for example the user's Windows Account or on a mobile device the default active user profile. This credential type is used to automatically login the local user using the EOS Connect Device ID feature. The intended use of the Device ID feature is to allow automatically logging in the user on a mobile device and to allow playing the game without requiring the user to necessarily login using a real user account at all. This makes a seamless first-time experience possible and allows linking the local device with a real external user account at a later time, sharing the same EOS_ProductUserId that is being used with the Device ID feature. Supported with EOS_Connect_Login.

EOS_ECT_APPLE_ID_TOKEN

Apple ID Token Supported with EOS_Connect_Login.

EOS_ECT_GOOGLE_ID_TOKEN

Google ID Token Supported with EOS_Connect_Login.

EOS_ECT_OCULUS_USERID_NONCE

Oculus User ID and Nonce Call ovr_User_GetUserProof(), or Platform.User.GetUserProof() if you are using Unity, to retrieve the nonce. Then pass the local User ID and the Nonce as a "{UserID}|{Nonce}" formatted string for the EOS_Connect_Login Token parameter. Note that in order to successfully retrieve a valid non-zero id for the local user using ovr_User_GetUser(), your Oculus App needs to be configured in the Oculus Developer Dashboard to have the User ID feature enabled. Supported with EOS_Connect_Login.

EOS_ECT_ITCHIO_JWT

itch.io JWT Access Token Use the itch.io app manifest to receive a JWT access token for the local user via the ITCHIO_API_KEY process environment variable. The itch.io access token is valid for 7 days after which the game needs to be restarted by the user as otherwise EOS Connect authentication session can no longer be refreshed. Supported with EOS_Connect_Login.

EOS_ECT_ITCHIO_KEY

itch.io Key Access Token This access token type is retrieved through the OAuth 2.0 authentication flow for the itch.io application. Supported with EOS_Connect_Login.

Related API Members

Remarks

List of the supported identity providers to authenticate a user. The type of authentication token is specific to each provider. Tokens in string format should be passed as-is to the function. Tokens retrieved as raw byte arrays should be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before being passed to the function. EOS_ByteArray_ToString can be used for this conversion.

See Also

EOS_Auth_Login, EOS_Connect_Login

Values

ExternalCredentialType

Enumerated Value

Meaning

Epic

Epic Games User Token Acquired using EOS_Auth_CopyUserAuthToken that returns EOS_Auth_Token::AccessToken. Supported with EOS_Connect_Login.

SteamAppTicket

Steam Encrypted App Ticket Generated using the ISteamUser::RequestEncryptedAppTicket API of Steamworks SDK. For ticket generation parameters, use pDataToInclude(NULL) and cbDataToInclude(0). The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the EOS_Auth_Login or EOS_Connect_Login APIs. EOS_ByteArray_ToString can be used for this conversion. Supported with EOS_Auth_Login, EOS_Connect_Login.

PsnIdToken

PlayStation(TM)Network ID Token Retrieved from the PlayStation(R) SDK. Please see first-party documentation for additional information. Supported with EOS_Auth_Login, EOS_Connect_Login.

XblXstsToken

Xbox Live XSTS Token Retrieved from the GDK and XDK. Please see first-party documentation for additional information. Supported with EOS_Auth_Login, EOS_Connect_Login.

DiscordAccessToken

Discord Access Token Retrieved using the ApplicationManager::GetOAuth2Token API of Discord SDK. Supported with EOS_Connect_Login.

GogSessionTicket

GOG Galaxy Encrypted App Ticket Generated using the IUser::RequestEncryptedAppTicket API of GOG Galaxy SDK. For ticket generation parameters, use data(NULL) and dataSize(0). The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the EOS_Connect_Login API. For C/C++ API integration, use the EOS_ByteArray_ToString API for the conversion. For C# integration, you can use for the conversion. Supported with EOS_Connect_Login.

NintendoIdToken

Nintendo Account ID Token Identifies a Nintendo user account and is acquired through web flow authentication where the local user logs in using their email address/sign-in ID and password. This is the common Nintendo account that users login with outside the Nintendo Switch device. Supported with EOS_Auth_Login, EOS_Connect_Login.

NintendoNsaIdToken

Nintendo Service Account ID Token (NSA ID) The NSA ID identifies uniquely the local Nintendo Switch device. The authentication token is acquired locally without explicit user credentials. As such, it is the primary authentication method for seamless login on Nintendo Switch. The NSA ID is not exposed directly to the user and does not provide any means for login outside the local device. Because of this, Nintendo Switch users will need to link their Nintendo Account or another external user account to their Product User ID in order to share their game progression across other platforms. Otherwise, the user will not be able to login to their existing Product User ID on another platform due to missing login credentials to use. It is recommended that the game explicitly communicates this restriction to the user so that they will know to add the first linked external account on the Nintendo Switch device and then proceed with login on another platform. In addition to sharing cross-platform game progression, linking the Nintendo Account or another external account will allow preserving the game progression permanently. Otherwise, the game progression will be tied only to the local device. In case the user loses access to their local device, they will not be able to recover the game progression if it is only associated with this account type. Supported with EOS_Auth_Login, EOS_Connect_Login.

UplayAccessToken

Uplay Access Token

OpenidAccessToken

OpenID Provider Access Token Supported with EOS_Connect_Login.

DeviceidAccessToken

Device ID access token that identifies the current locally logged in user profile on the local device. The local user profile here refers to the operating system user login, for example the user's Windows Account or on a mobile device the default active user profile. This credential type is used to automatically login the local user using the EOS Connect Device ID feature. The intended use of the Device ID feature is to allow automatically logging in the user on a mobile device and to allow playing the game without requiring the user to necessarily login using a real user account at all. This makes a seamless first-time experience possible and allows linking the local device with a real external user account at a later time, sharing the same EOS_ProductUserId that is being used with the Device ID feature. Supported with EOS_Connect_Login.

AppleIdToken

Apple ID Token Supported with EOS_Connect_Login.

GoogleIdToken

Google ID Token Supported with EOS_Connect_Login.

OculusUseridNonce

Oculus User ID and Nonce Call ovr_User_GetUserProof(), or Platform.User.GetUserProof() if you are using Unity, to retrieve the nonce. Then pass the local User ID and the Nonce as a "{UserID}|{Nonce}" formatted string for the EOS_Connect_Login Token parameter. Note that in order to successfully retrieve a valid non-zero id for the local user using ovr_User_GetUser(), your Oculus App needs to be configured in the Oculus Developer Dashboard to have the User ID feature enabled. Supported with EOS_Connect_Login.

ItchioJwt

itch.io JWT Access Token Use the itch.io app manifest to receive a JWT access token for the local user via the ITCHIO_API_KEY process environment variable. The itch.io access token is valid for 7 days after which the game needs to be restarted by the user as otherwise EOS Connect authentication session can no longer be refreshed. Supported with EOS_Connect_Login.

ItchioKey

itch.io Key Access Token This access token type is retrieved through the OAuth 2.0 authentication flow for the itch.io application. Supported with EOS_Connect_Login.

Related API Members

Tags