Set up a dedicated server IAM client - Dedicated servers with AccelByte Multiplayer Servers (AMS) - (Unreal Engine module)
The AGS CLI is the unified command-line tool for AGS, and it now includes Extend and AMS tooling. The instructions on this page remain valid today. See the AGS CLI documentation to learn about the unified tool.
About
IAM clients are used to give permissions to certain resources in AccelByte Gaming Services (AGS). In order for your game's dedicated server to be able to communicate with AccelByte Multiplayer Servers (AMS), you need to set up the correct IAM client permissions.
Create a server IAM client
The server identity and access management (IAM) client is an IAM client that gives permissions for your game server. Sufficient permissions are needed for your game server so it can communicate with AMS.
-
Log in to the Admin Portal and go to your game namespace dashboard.
-
Go to Foundations > Identity & Access > IAM Clients and click Create New.
-
In the What is this client for? window, select Dedicated Server and click Continue. The New IAM Client page appears.

-
In the Basic Info and Client Settings sections, use the configuration below to create a new server IAM client.
- Client Name: the name of the IAM client. Set it to ByteWars-GameServer.
- Secret: the secret or password for the IAM client. You can use your own secret or click Generate to generate a random one.
- Redirect URI: the URI used to redirect once the IAM client authorization is successful. Select Localhost, which sets it to
http://127.0.0.1.
-
In the Permissions section, make sure the client has these permissions. These permissions allow your server to manage game session, update statistics, read player information, and manage AMS settings.
Resource Permission AMS > Dedicated Server Create, Read, Update, Delete IAM > Users Read Session > Game Session Create, Read Statistics > User’s Statistics Value Create, Read, Update -
Click Continue. The Save your client secret window appears. Click Copy secret and save the secret somewhere secure. Then, tick I have copied and stored this client secret securely and click Create to create your IAM client.
warningThe Secret will not be shown again after you create the IAM client. Be sure to copy and save it before you click Create.

Create an AMS CLI IAM client
The AMS command line interface (CLI) IAM client is an IAM client that gives permission for you to upload your server to AMS.
-
Log in to the Admin Portal and go to your game namespace dashboard.
-
Go to Foundations > Identity & Access > IAM Clients and click Create New.
-
In the What is this client for? window, select Build and Deploy Tool and click Continue. The New IAM Client page appears.

-
In the Basic Info and Client Settings sections, use the configuration below to create a new AMS CLI IAM client.
- Client Name: the name of the IAM client. Set it to ByteWars-AMSCLI.
- Secret: the secret or password for the IAM client. You can use your own secret or click Generate to generate a random one.
- Redirect URI: the URI used to redirect once the IAM client authorization is successful. Select Localhost, which sets it to
http://127.0.0.1.
-
In the Permissions section, make sure the client has this permission. This permission allow you to upload your server image to AMS using AMS CLI.
Resource Permission AMS > Dedicated Server Toolkit Create, Read, Update -
Click Continue. The Save your client secret window appears. Click Copy secret and save the secret somewhere secure. Then, tick I have copied and stored this client secret securely and click Create to create your IAM client.
warningThe Secret will not be shown again after you create the IAM client. Be sure to copy and save it before you click Create.

Configure the Server SDK
Once your server IAM client is configured in the Admin Portal, you'll need to configure the Server SDK in your game project. This section will guide you through configuring the Server SDK so your game server is authorized to communicate with AMS.
-
Open the
DefaultEngine.inifile located inConfigfolder of your Byte Wars Unreal project directory. -
Inside the file, find the
[/Script/AccelByteUe4Sdk.AccelByteServerSettings]section and replace theClient IDandClient Secretwith your server IAM client information created from Step 3 of the Create a server IAM client section. Then, flip the boolean forbManualRegisterServerandbServerUseAMStotrue, and bump some log categories verbosity level to verbose under[Core.Log]. Also, replace other placeholder values based on your game namespace and AGS environment.- AGS Public Cloud
- AGS Private Cloud
[/Script/AccelByteUe4Sdk.AccelByteServerSettings]
ClientId=<server_iam_client_id>
ClientSecret=<server_iam_client_secret>
Namespace=<game_namespace_id>
PublisherNamespace=
RedirectURI="http://127.0.0.1"
BaseUrl="https://<game_namespace_id>.prod.gamingservices.accelbyte.io"
[OnlineSubsystemAccelByte]
bManualRegisterServer=True
[/Script/AccelByteUe4Sdk.AccelByteSettings]
bServerUseAMS=True
; ByteWars tutorial module specific
[/ByteWars/TutorialModule.DSEssentials]
bServerUseAMS=true
[Core.Log]
LogAccelByte=Log
LogAccelByteOSS=Verbose
LogAccelByteAMS=Verbose
LogAccelByteDSHub=Verboseinfo- ClientId is randomly generated and used to uniquely identify your server IAM client.
- ClientSecret is the secret (password) for your server IAM client.
- Namespace is the namespace ID of your game namespace.
- RedirectURI is the URI that will redirect your game server after the server authorization is completed. The default value is
http://127.0.0.1. - BaseUrl is the base URL made out of your game namespace ID combined with your Admin Portal environment.
- bManualRegisterServer is a flag for the dedicated server that allows the server to manually tell AMS that it is ready to welcome players. This is to avoid an issue where the server is still in the initialization state (loading assets, fetching some cloud save configuration, etc.) but players are trying to connect to the server.
- bServerUseAMS is a flag for the game client to grab AMS available locations using the AGS Game SDK.
[/Script/AccelByteUe4Sdk.AccelByteServerSettings]
ClientId=<server_iam_client_id>
ClientSecret=<server_iam_client_secret>
Namespace=<game_namespace_id>
PublisherNamespace=accelbyte
RedirectURI="http://127.0.0.1"
BaseUrl="https://<studio_name>.accelbyte.io"
[OnlineSubsystemAccelByte]
bManualRegisterServer=True
[/Script/AccelByteUe4Sdk.AccelByteSettings]
bServerUseAMS=True
; ByteWars tutorial module specific
[/ByteWars/TutorialModule.DSEssentials]
bServerUseAMS=true
[Core.Log]
LogAccelByte=Log
LogAccelByteOSS=Verbose
LogAccelByteAMS=Verbose
LogAccelByteDSHub=Verboseinfo- ClientId is randomly generated and used to uniquely identify your server IAM client.
- ClientSecret is the secret (password) for your server IAM client.
- Namespace is the namespace ID of your game namespace.
- PublisherNamespace is the publisher ID of your publisher namespace. The default value is
accelbyte. - RedirectURI is the URI that will redirect your game server after the server authorization is completed. The default value is
http://127.0.0.1. - BaseUrl is the base URL of your Admin Portal environment.
- bManualRegisterServer is a flag for the dedicated server that allows the server to manually tell AMS that it is ready to welcome players. This is to avoid an issue where the server is still in the initialization state (loading assets, fetching some cloud save configuration, etc.) but players are trying to connect to the server.
- bServerUseAMS is a flag for the game client to grab AMS available locations using AGS SDK.
tip-
To find your game namespace ID, go to your Admin Portal and navigate to the Namespace page where your game namespaces are listed. Then, locate your game namespace under the GAMES section and click on the gear icon. On the new page, locate the Namespace ID property and there you can find your game namespace ID value.
-
Similarly, to find your publisher namespace ID, go to your Admin Portal and navigate to the Namespace page where your game namespaces are listed. Then, locate your publisher namespace under the PUBLISHER section and click on the gear icon. On the new page, locate the Namespace ID property and there you can find your publisher namespace ID value.
-
Save the
DefaultEngine.inifile and rebuild your Byte Wars project.