Skip to content
Blog

Guide - Configuring AccelByte for Steam Login

AccelByte is not just a white label storefront for your to sell your games, it is also a comprehensive games backend as a service capable of provided cross platform and cross storefront user accounts, friends and matchmaking.

In this example we are envisioning that your game will be available through the Steam Store, the user has already logged into Steam, so we’d like to make it as easy as possible for your user to get into the game. Having your users enter their email and password for your white label account system every time they reinstall your game just doesn’t cut it any more.

How to Add Your Game to Steam and Run It Through Your Own Launcher

So our user flow will work like this:

  1. User launches your game from Steam
  2. In the background while your game boots, it asks the integrate Steam SDK for an Authentication Token
  3. Your game passes that Steam Auth Token to AccelByte’s “PlatformTokenGrant” API call.
  4. AccelByte Platform checks against the Steam API, redeems the token, if valid, your user is logged in!

In order to set up and login with the Steam ticket, you’ll need an AccelByte Platform account with the correct permissions to Create, Read, Update and Delete Third Party Platform configurations.

The process is as follows:

1. Set the Basic Auth at https://demo.accelbyte.io/iam/apidocs/

Basic Auth to Login With Steam

2. Make the following call with https://demo.accelbyte.io/iam/apidocs/#!/OAuth/TokenGrant:

grant_type = password

username = The email you registered your AccelByte Platform account with

password = The password you registered your AccelByte Platform account with

How to Enable Steam-Login to Your Game Platform

3. Copy the access token from the response:

How to Enable Steam-Login to Your Game Launcher

4. Scroll up to the top of Swagger and replace “Basic ABCDEFG123456” with “Bearer" + access_token:

How to Enable Steam-Login to Your Game Backend Service

5. Go to https://demo.accelbyte.io/iam/apidocs/#!/Third_Party_Credential/AddThirdPartyLoginPlatformCredentialV3 and configure with your Namespace, Steam App ID and Secret. You only need to configure this once. Once this is done it should remove the permission error.

How to Use Steam Web API

Notes:
Please make sure the Steam Web API key is filled.
The client ID is intended to be empty as we don’t need it in this particular case.

6. You should see a successful response:

Enabling Steam-Login to Your Platform

7. Now you should be able to log users in with the token returned from “https://partner.steamgames.com/doc/api/ISteamUser#GetAuthSessionTicket" using https://demo.accelbyte.io/iam/apidocs/#!/OAuth/PlatformTokenGrant .

Please remember to assign the Authorization Header with the value: Basic [base64 of clientId:clientSecret]

Steam Login With Steam Web API

8. You should then be logged into the AccelByte Platform via a Steam user.

Login as a Steam User on Your Own Game Platform

Update Steam Credentials Configuration

The process is as follows:

1. Set the Basic Auth at https://demo.accelbyte.io/iam/apidocs/

Basic Auth to Enable Steam-login

2. Make the following call with https://demo.accelbyte.io/iam/apidocs/#!/OAuth/TokenGrant:

grant_type = password

username = The email you registered your AccelByte Platform account with

password = The password you registered your AccelByte Platform account with

How to Enable Steam-Login to Your Game Launcher

3. Copy the access token from the response:

How to Enable Steam-Login to Play Your Unity Game

4. Scroll up to the top of Swagger and replace "Basic ABCDEFG123456" with "Bearer" + access_token:

5. Call this endpoint to update your Steam credentials: https://demo.accelbyte.io/iam/apidocs/#!/Third_Party_Credential/UpdateThirdPartyLoginPlatformCredentialV3. Please specify the fields you want to update. In this case, we want to update Steam’s secret.

How to Enable Steam-Login With Steam Secret and Web API

6. If it’s successful, then it would return a response as follows.

Using Steam Web API & Steam Secret to Login Anywhere With Steam Account

And that is it! Your users can now seamlessly log into your AccelByte backend without needing to enter any other information, combine this with an email linking system you now own the direct relationship with your customer! This workflow also applies to many of the other Third Party Providers.

If you have any questions, please reach out to us at support@accelbyte.io

Find a Backend Solution for Your Game!

Reach out to the AccelByte team to learn more.