跳到主要内容

Client Data Models

Enums

EPgosClientMatchmakingStatus

Battle session status

enum class EPgosClientMatchmakingStatus : uint8
membervaluedescription
Dummy0Dummy
Starting1matchmaking is starting
Preparing2the multi-player matchmaking's preparation phase. note: when the MatchmakingObserver receives this status, it requires players to join or reject the matchmaking request. mutilplayer matchmaking : when one of the players start a matchmaking request, the other players will receive the 'Preparing' matchmaking status, and then decide to join or reject the matchmaking request. When everyone has joined, matchmaking start Searching.
Searching3search players for matchmaking
Accepting4wait for players to accepting the result of matchmaking
Placing5placing battle session on game DS
Completed7The matchmaking request ends with a successful result. Check battle_session_info for detail information about the battle. Note: when the MatchmakingObserver receives this status, you need to connect the DS server via IP and port that could obtain from battle_session_info.
TimedOut8matchmaking request timeout
Terminated9matchmaking request is terminated
Canceled10matchmaking request is canceled. The request may have been canceled by the player or the matchmaking result has been rejected by the player
Error11matchmaking request error

EPgosClientMatchmakingMutexType

Mutex type of matchmaking request

enum class EPgosClientMatchmakingMutexType : uint8
membervaluedescription
PerMatchmakingConfig0There is no limit to the number of battle sessions a player can be in. multiple matchmaking requests from a player in the same matchmaking config are not allowed at the same time.
PerPlayer1If a player has any on going battle sessions or matchmaking in progress, they will not be able to start new matchmaking request.

EPgosClientPlayerBattleSessionStatus

Player battle session status

enum class EPgosClientPlayerBattleSessionStatus : uint8
membervaluedescription
Dummy0Dummy
Pending1The player battle session requires DS to call the ReservePlayerBattleSession interface for approval.
Reserved2Reserved players can be validated through the AcceptPlayerBattleSession interface.
Active3Player battle session status turn to ACTIVE after AcceptPlayerBattleSession is called successfully.
Completed4This is the terminal status of player battle session.The status will turn to COMPLETED after RemovePlayerBattleSession is called or player actively leave the battle session.
Disconnected5The player has disconnected from DS server.

EPgosClientP2PPlayerBattleSessionStatus

Status of a P2P player battle session

enum class EPgosClientP2PPlayerBattleSessionStatus : uint8
membervaluedescription
Dummy0Dummy
Reserved2Reserved players can be validated through the AcceptPlayerBattleSession interface.
Active3Player battle session status turn to ACTIVE after AcceptPlayerBattleSession is called successfully.
Completed4This is the terminal status of player battle session.The status will turn to COMPLETED after RemovePlayerBattleSession is called or player actively leave the battle session.
Disconnected5The player has disconnected from DS server.

EPgosClientBattleSessionStatus

Battle session status

enum class EPgosClientBattleSessionStatus : uint8
membervaluedescription
Dummy0Dummy
Placing1the battle session is currently waiting to be placed on a game DS.
Active2the battle session have been successfully created.
Terminated3the battle session have been terminated.
Error5the battle session error, check status_msg for more information.
Cancelled6the battle session is cancelled.
TimedOut7the battle session timeout
Failed8the battle session failed, check status_msg for more information.

EPgosClientP2PBattleSessionStatus

P2P Battle session status

enum class EPgosClientP2PBattleSessionStatus : uint8
membervaluedescription
Dummy0Dummy
Placing1the battle session is currently waiting to be placed on a game DS.
Active2the battle session have been successfully created.
HostHealthChecking3P2P clients should report the host health state within a limited time.
NewHostSelected4the new host has been selected and must accept the identity within a limited time. The new host needs to call the ActivateP2PBattleSession interface to reactivate the battle session.
Terminated101the battle session have been terminated.
Error102the battle session error, check status_msg for more information.
TimedOut103the battle session timeout
Failed104the battle session failed, check status_msg for more information.

EPgosClientFriendRequestProcessStatus

Friend request process status

enum class EPgosClientFriendRequestProcessStatus : uint8
membervaluedescription
Pending0friend request pending
Accepted1request Accepted
Expired2it may be timed out, the current validity period is 7 days

EPgosClientReadStatus

Message read status

enum class EPgosClientReadStatus : uint8
membervaluedescription
Unread0message unread
Read1message read

EPgosClientLobbyStatus

Lobby status

enum class EPgosClientLobbyStatus : uint8
membervaluedescription
Dummy0Dummy
Waiting1StartBattle has not been called
Preparing2StartBattle was called, but not all lobby members are READY
Playing3A battle session that contains all lobby members is ready to be joined

EPgosClientLobbyPrivacy

Lobby privacy type

enum class EPgosClientLobbyPrivacy : uint8
membervaluedescription
Dummy0Dummy
Visible1Lobby can be searched
Invisible2Lobby can only be searched using the exact lobby_id

EPgosClientLobbyProtection

Lobby protection type

enum class EPgosClientLobbyProtection : uint8
membervaluedescription
Dummy0Dummy should be used when searching lobbies for all protection types
PasswordNeeded1Password needed when joining lobbies
PasswordUnneeded2Password unneeded when joining lobbies
FreeAccess2Players can join lobby directly
ApplicationNeeded3A join request will be sent to the owner after calling the JoinLobby interface, and the owner's approval is required to successfully join the lobby

EPgosClientLobbyJoiningSource

The source of the player join the lobby

enum class EPgosClientLobbyJoiningSource : uint8
membervaluedescription
Dummy0Dummy
JoiningByLobbyID1Search for the lobby and join.
JoiningFromInvitation2Join the lobby through the event of 'OnLobbyInvitation' when the player is invited to join the lobby.
JoiningAsOwner3The lobby creator.
JoiningByQuickJoin4Joined by QuickJoin interface.

EPgosClientLobbyStatusReason

The reason that the lobby status changes

enum class EPgosClientLobbyStatusReason : uint8
membervaluedescription
Dummy0Dummy
SomeoneNotReady1The lobby owner starts the battle, and lobby status changes from Waiting to Preparing.
PlacingFailed2Placing is failed, and lobby status changes from Placing to Waiting.
PreparingTimeout3Preparing is timeout because there are members not ready, and lobby status changes from Preparing to Waiting.
BattleCompleted4Battle is completed, and lobby status changes from Playing to Waiting.
PreparationInterrupted5Because of member changing, preparing status is interrupted and changes to Waiting.

EPgosClientLobbyStartBattleCondition

The action when the lobby owner invokes the StartBattle interface depends on the Ready flag of lobby members.

enum class EPgosClientLobbyStartBattleCondition : uint8
membervaluedescription
AllReadyOtherwiseWaiting0The lobby will enter the Preparing stage, waiting for unready players to get ready.
AllReadyOtherwiseError1The lobby owner will receive an error if not all players are ready.
IgnoringReadyFlag2The lobby will enter the Playing stage directly, ignoring the Ready flag.

EPgosClientOnlineStatus

Online status: online or offline

enum class EPgosClientOnlineStatus : uint8
membervaluedescription
Offline0Player is online
Online1Player is offline

EPgosClientStoreOrderStatus

enum class EPgosClientStoreOrderStatus : uint8
membervaluedescription
Dummy0None.
StoreOrderProcessing1Order is being processed.
StoreOrderCompleted2Purchase successful.
StoreOrderFailed3Purchase failed.

EPgosClientStoreItemStatus

enum class EPgosClientStoreItemStatus : uint8
membervaluedescription
Dummy0None.
Available1The item can be purchased normally.
Owned2The unique item can't be purchased because the player already owns.
ExceedLimit3The store item can't be purchased because the player have reached the maximum purchase limit.

EPgosClientStoreCategoryType

enum class EPgosClientStoreCategoryType : uint8
membervaluedescription
Simple0A simple category be used to manage the publish and retire of store items.
Manual1The category schedule will be enabled to support multi-period publish schedule management. Could be used to implement advanced features such as limited-time sales and regular product updates.
Rotation2The category schedule will be a rotation schedule.

EPgosClientGroupJoinRule

Join rules of the group.

enum class EPgosClientGroupJoinRule : uint8
membervaluedescription
Any0Players can freely join the group.
MemberInvite1Must be invited by group members to join the group.
AdminInvite2Must be invited by group administrator to join the group.
Forbid3No one is allowed to join.

EPgosClientChatMsgType

Message type.

enum class EPgosClientChatMsgType : uint8
membervaluedescription
MsgTypeText0Type of text message, sent via SendGroupTextMsg.
MsgTypeCustom1Type of custom message, sent via SendGroupCustomMsg.
MsgTypeEvent2Type of event message, sent by the system.
MsgTypeSystem3Type of system message, sent by the system.

EPgosClientGroupEventType

Type of event message.

enum class EPgosClientGroupEventType : uint8
membervaluedescription
Dummy0
GroupNameChanged1Group name has been changed.
GroupDescChanged2Group description has been changed.
GroupMemberJoined3New member joined.
GroupMemberLeft4Member left the group.
GroupMemberRemoved5Member removed.
GroupAnnouncementChanged6Group announcement has been changed.
GroupOwnerChanged7Group owner has changed.
GroupAdminGranted8Member granted to group administrator.
GroupAdminRevoked9Group administrator is revoked.

EPgosClientGroupOfficialFilterType

Group searching filter type for official.

enum class EPgosClientGroupOfficialFilterType : uint8
membervaluedescription
Dummy0Don't filter official groups when searching.
NotOfficial1Only search unofficial groups.
Official2Only search official groups.

EPgosClientGroupRoomFilterType

Group searching filter type for left rooms.

enum class EPgosClientGroupRoomFilterType : uint8
membervaluedescription
Dummy0Don't filter group rooms when searching.
NotFull1Only search groups that are not full.
Full2Only search full groups.

EPgosClientGroupOrderBy

The basis for sorting group search result.

enum class EPgosClientGroupOrderBy : uint8
membervaluedescription
Dummy0No sorting of search result.
MemberCount1Search result sorted by members count.
CreatedTime2Search result sorted by creation time.

EPgosClientGroupOrderType

The order type for group search result.

enum class EPgosClientGroupOrderType : uint8
membervaluedescription
Dummy0No sorting of search results.
Asc1Ascending order for search result.
Desc2Descending order for search result.

EPgosClientMailCategory

enum class EPgosClientMailCategory : uint8
membervaluedescription
All0All categories.
System1System category.
Notice2Notice category.
Campaign3Campaign category.
Award4Award category.
Gift5Gift category. Usually received gifts from other players.
Custom6Custom category. Category for developer customization.

EPgosClientGoalType

enum class EPgosClientGoalType : uint8
membervaluedescription
Dummy0
Simple1
Hyper2

EPgosClientGoalRewardWay

enum class EPgosClientGoalRewardWay : uint8
membervaluedescription
Dummy0
Manual1Goal reward need to be claimed manually
Mail2When the goal is achieved, the rewards will be automatically granted through the preset email template

EPgosClientScheduleStatus

enum class EPgosClientScheduleStatus : uint8
membervaluedescription
Dummy0
Published1
Retired2

EPgosClientPrivacyItemType

enum class EPgosClientPrivacyItemType : uint8
membervaluedescription
Dummy0
AllowSearchedByOthers1
AllowFriendRequest2
AllowNonFriendPersChat3
AllowGroupInvitation4
ChatStrategy5

EPgosClientPrivacyChatStrategy

Text and voice chat privacy settings

enum class EPgosClientPrivacyChatStrategy : uint8
membervaluedescription
Allow0Everyone, can see and be seen chat messages from anyone (except block list)
OnlyFriends1Friends, can only see friends and be seen by friends
Blocked2Not allowed at all, won't see anyone's messages, and won't send any messages out

EPgosClientLobbyOrderBy

enum class EPgosClientLobbyOrderBy : uint8
membervaluedescription
LOBBY_ORDER_BY_DEFAULT0Sort by status: Waiting, Preparing, Playing;then by create time from older to newer
LOBBY_ORDER_BY_CREATE_TIME1Sort by lobby create time
LOBBY_ORDER_BY_UPDATE_TIME2Sort by lobby last update time
LOBBY_ORDER_BY_JOINED_MEMBER_COUNT3Sort by joined member count
LOBBY_ORDER_BY_MISSING_MEMBER_COUNT4Sort by empty slot count

EPgosClientLobbyOrderType

The order type for group search result.

enum class EPgosClientLobbyOrderType : uint8
membervaluedescription
LOBBY_ORDER_TYPE_ASCENDING0Ascending order for search result.
LOBBY_ORDER_TYPE_DESCENDING1Descending order for search result.

EPgosClientPartyJoinStrategy

The strategy controls the rules who could join the party

enum class EPgosClientPartyJoinStrategy : uint8
membervaluedescription
Public0Open to anyone, it's the default strategy
OnlyFriendsOfLeader1Only friends of the leader could join the party
OnlyFriendsOfMembers2Only friends of any member could join the party
OnlyInvited3Only invited players could join the party
NotAllowed4No one can join

EPgosClientPartyInviteStrategy

The strategy controls the rules who could invite others to the party

enum class EPgosClientPartyInviteStrategy : uint8
membervaluedescription
AllMembersCanInvite0All members of the party can invite others, it's the default strategy
OnlyLeaderCanInvite1Only the party leader can invite others

EClientPgosEventChannelStatus

Various status definitions of the PGOS event channel. The Event Channel serves as a data pipeline for the PGOS backend to send event notifications (e.g., chat_messages/friend_requests) to the client.

enum class EClientPgosEventChannelStatus : uint8
membervaluedescription
Dummy0Invalid status.
Creating1When the client is connecting or reconnecting to the backend in order to establish the channel, the status is set to 'Creating'.
Available2When the channel is successfully established, the status is set to 'Available', indicating that the event notification service is functioning properly.
Unavailable3When the client expectedly(logout) or unexpectedly(network exception) disconnects from the backend, the status is set to 'Unavailable', and the event notification service stops working. The SDK will automatically attempt to rebuild the channel until it succeeds, with a gradually slowing frequency. It starts by trying to rebuild every 3 seconds and eventually reduces the frequency to once every 5 minutes.

EPgosClientMidasRoleIDMethod

enum class EPgosClientMidasRoleIDMethod : uint8
membervaluedescription
Game0
PGOS1

EPgosClientJoinWorldInvitationStatus

Describe the status of the join world invitation.

enum class EPgosClientJoinWorldInvitationStatus : uint8
membervaluedescription
Dummy0Invalid status.
Pending1Means: there are still invited players who have not yet confirmed whether to accept or reject the invitation.
Completed2Means: all invited players have made their choices to accept/reject, or the invitation has timed out. And no more 'OnJoinWorldInvitationUpdated' event of this invitation_ticket. Now, the player who accepted the invitation has been added to the battle session. Typically, the player who accepts the invitation will receive the 'OnWorldBattleSessionUpdated' event after the invitation status is marked as 'Completed'. However, if the player is already in the assigned battle session before the invitation, and has obtained the battle session's IP&port (which means he has received the relevant event of the battle session status being Active), then he may not be pushed the 'OnWorldBattleSessionUpdated' event.
Error3Means: An error has occurred (e.g. not enough slots left in the world). Please refer to the 'error_msg' in 'JoinWorldInvitationInfo' structure for more details.

EPgosClientJoinWorldInvitationAction

The player's action type in response to a join world invitation.

enum class EPgosClientJoinWorldInvitationAction : uint8
membervaluedescription
Undecided0The player has not yet decided.
Accepted1The player has decided to accept the invitation.
Rejected2The player has decided to reject the invitation.

EPgosClientLeaveWorldInvitationStatus

Describe the status of the leave world invitation.

enum class EPgosClientLeaveWorldInvitationStatus : uint8
membervaluedescription
Dummy0Invalid status.
Pending1Means: there are still invited players who have not yet confirmed whether to accept or reject the invitation.
Completed2Means: all invited players have made their choices to accept/reject, or the invitation has timed out. And no more 'OnLeaveWorldInvitationUpdated' event of this invitation_ticket. Now, the player who accepted the invitation has been removed from the world.
Error3Please refer to the 'error_msg' in 'LeaveWorldInvitationInfo' structure for more details.

EPgosClientLeaveWorldInvitationAction

The player's action type in response to a leave world invitation.

enum class EPgosClientLeaveWorldInvitationAction : uint8
membervaluedescription
Undecided0The player has not yet decided.
Accepted1The player has decided to accept the invitation.
Rejected2The player has decided to reject the invitation.

EPgosClientP2PConnectionType

The type of P2P connection.

enum class EPgosClientP2PConnectionType : uint8
membervaluedescription
Unspecified0Unspecified. Will try to connect via p2p first.
P2P1Try to connect via p2p.
Relay2Try to connect via relay.

EPgosClientNatType

The type of NAT.

enum class EPgosClientNatType : uint8
membervaluedescription
Unknown0
Open1No Nat
FullCone2Full Cone
AddressRestrictedCone3Address restricted cone
PortRestrictedCone4Port restricted cone
Symmetric5Symmetric
SymmetricUDPFirewall6No NAT with UDP firewall
UDPBlocked7

Structs

FPgosClientBalance

The currency in the player's wallet.

struct FPgosClientBalance
fieldtypedescription
currency_codeFStringThe code of the currency.
currency_nameFStringThe name of the currency.
currency_iconFStringThe uri of the currency.
currency_typeEPgosCurrencyTypeCurrency type.
amountint64The balance of the currency.
max_depositint64The maximum balance that a player can hold for this currency. A value of 0 represents no limitation.

FPgosClientMidasGlobalBalance

struct FPgosClientMidasGlobalBalance : public FPgosClientBalance

parent: FPgosClientBalance

fieldtypedescription
resource_idFStringResource id of a Midas Token, provided by Midas, view on Midas portal.
gift_balanceFStringBalance obtained by gift.
accumulated_topup_amountFStringAccumulated topup amount.
accumulated_gift_amountFStringAccumulated gift amount.
total_consumeFStringTotal consumed amount.
first_topupboolTo show if it is the first topup.

FPgosClientFasLoginInfo

FAS: The data of the simulated account

struct FPgosClientFasLoginInfo
fieldtypedescription
open_idFStringOpen id of the fake account
tokenFStringToken of the fake account
user_nameFStringUsername of the fake account
token_valid_timeint64The valid time of the current token

FPgosClientFasRefreshTokenInfo

The new token after refreshing it

struct FPgosClientFasRefreshTokenInfo
fieldtypedescription
tokenFStringThe new token generated after refreshing

FPgosClientLoginPGOSParams

Request parameters for login PGOS.

struct FPgosClientLoginPGOSParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
account_providerint32Account provider: 0 means FAS, 1 means INTL, 2 means MSDK, 3 means WeGame, 4 means PlayFab, 5 means Steam, 6 means Epic, 7 means XboxLive, 8 means PlayStationNetwork, 9 means Nintendo, 10 means JWT. The default value is -1 (not set), at which point PgosSDK will try to read it from the configuration: account_provider. Using int32 instead of enum type is to make SDK better compatible with the new account provider. More info for account provider: https://pgos.intlgame.com/pgosdoc/manual/service_manual/player_management/player_auth.html#311-login-param
account_open_idFStringOpen id of the logged in account service.
account_tokenFStringToken of the open id.
title_region_idFStringTitle region the player wants to login, can be obtained from PGOS portal console.
extra_paramTMap<FString, FString>[Optional] Extra parameter for the account provider, Its value depends on the account provider used to log in. view the manual for detail: https://pgos.intlgame.com/pgosdoc/manual/service_manual/player_management/player_auth.html#31-log-in-pgos.

FPgosClientLogoutPGOSParams

Request parameters for logout PGOS.

struct FPgosClientLogoutPGOSParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

FPgosClientPlayerBannedEvt

The event will be triggered when the player is banned.

struct FPgosClientPlayerBannedEvt
fieldtypedescription
ban_reasonFStringReason for ban.
ban_created_timeint64Ban creation time. Unix timestamp in seconds.
ban_durationint64Ban duration in seconds.
ban_expired_timeint64Ban expiration time. Unix timestamp in seconds, if the value <= 0, it is considered to be permanently banned.

FPgosClientAuthBanInfo

Auth ban info.

struct FPgosClientAuthBanInfo : public FPgosClientPlayerBannedEvt

parent: FPgosClientPlayerBannedEvt

fieldtypedescription
is_bannedboolWhether the player is banned.

FPgosClientAuthenticationInfo

The authentication data when the game needs to identify the player and manage the player session status of the players

struct FPgosClientAuthenticationInfo
fieldtypedescription
player_idFStringThe id of the player
session_idFStringThe id of the current authenticated session
is_first_loginboolWhether the player is logging in for the first time
is_display_name_modifiedboolWhether the display name of the current player has been modified. The display name is initially an empty string before being modified.
account_platformFStringaccount platform name, such as: 'Steam', 'Epic', 'PlayStationNetwork'.
ban_infoFPgosClientAuthBanInfoWhether the player is banned

FPgosClientBatchGetPlayerInfoCltRsp

Response that client batch getting playerInfo.

struct FPgosClientBatchGetPlayerInfoCltRsp
fieldtypedescription
dataTMap<FString, FPgosPlayerInfo>Player infos, key: player_id, value: player_info.
fail_playersTMap<FString, FString>Players who totally failed, key: player_id, value: failed reason.

FPgosClientMatchmakingPlayerInfo

Player who is in the matchmaking process

struct FPgosClientMatchmakingPlayerInfo
fieldtypedescription
player_idFStringThe player id
teamFStringThe team of the players
match_attributesTMap<FString, FPgosKVDataValue>Attributes needed by the Matchmaking Ruleset, map key: attribute name, map value: attribute value.

FPgosClientRequestedPlayerInfo

Player in current matchmaking request.

struct FPgosClientRequestedPlayerInfo
fieldtypedescription
player_infoFPgosPlayerInfoBase info of a player.
readyboolWhether the player has joined matchmaking.
region_latenciesTArray<FPgosRegionLatencyInfo>The latency(ms) of the player in different regions. If the latency of the player exceeds the max latency of Queue, then the player cannot join the battle.

FPgosClientMatchedPlayerInfo

Player who has already matched

struct FPgosClientMatchedPlayerInfo
fieldtypedescription
player_infoFPgosPlayerInfoBase info of a player.
accepted_statusEPgosAcceptedStatusPlayer response to the proposed battle.
teamFStringThe team of the players

FPgosClientCancelMatchmakingInfo

Cancel a matchmaking request

struct FPgosClientCancelMatchmakingInfo
fieldtypedescription
ticket_idFStringTicket id for the matchmaking request
canceledboolWhether the player has canceled the matchmaking request
reasonFStringThe reason for the cancel action, not necessary

FPgosClientStartMatchmakingParams

Params to start a matchmaking request.

struct FPgosClientStartMatchmakingParams
fieldtypedescription
configuration_nameFStringName of matchmaking configuration
player_info_listTArray<FPgosClientMatchmakingPlayerInfo>Players who start matchmaking together, and they must be set to the same team.
mutex_typeEPgosClientMatchmakingMutexTypeMutex type of matchmaking request. PerMatchmakingConfig as default value.

FPgosClientStartMatchmakingInfo

Start a matchmaking request

struct FPgosClientStartMatchmakingInfo
fieldtypedescription
ticket_idFStringTicket id for the matchmaking request

FPgosClientCurrentMatchmakingsInfo

Current activate matchmaking tickets of the player.

struct FPgosClientCurrentMatchmakingsInfo
fieldtypedescription
tickets_mapTMap<FString, FString>The mapping of matchmaking configuration to matchmaking ticket.

FPgosClientPlayerBattleSessionInfo

A player-battle-session is a session between a player and an active battle-session

struct FPgosClientPlayerBattleSessionInfo
fieldtypedescription
player_idFStringThe player id
battle_session_idFStringThe battle session id to query
player_battle_session_idFStringThe id of player session in the battle, !!! NOT BATTLE SESSION ID !!!
ip_addressFStringThe access ip address of the battle session
portint32The access port of the battle session
statusEPgosClientPlayerBattleSessionStatus
team_nameFStringTeam name in a world battle session.

FPgosClientBattleSessionInfo

A battle session corresponds a running game.

struct FPgosClientBattleSessionInfo
fieldtypedescription
battle_session_idFStringThe battle session id to query
created_timeint64The Unix timestamp(in seconds) when the battle session was created.
ip_addressFStringThe IP address of the DS holding the battle session, and it will be assigned the value when the status is 'Active'.
portint32The port of the DS holding the battle session, and it will be assigned the value when the status is 'Active'.
statusEPgosClientBattleSessionStatusPlacing the battle session is currently waiting to be placed on game DS Active the battle session has been successfully created, now you can connect to the DS using the IP address and port Terminated the battle session has been terminated Error the battle session error, check status_msg for more information Canceled the battle session is canceled Timeout the battle session timeout Failed the battle session failed, check status_msg for more information
status_msgFStringThe message of the battle status
last_updated_timeint64The Unix timestamp(in seconds) for the last update in the battle status
terminated_timeint64The Unix timestamp(in seconds) when the player disconnected from game server.
placing_timeoutint32Timeout for placing status
cur_player_battle_session_infoFPgosClientPlayerBattleSessionInfoPlayer battle session of current player
battle_propertiesTArray<FPgosBattleProperty>K-V pair property of a battle session
battle_session_dataFStringCustom string data of a battle session. Preset in matchmaking configuration
source_typeEPgosBattleSourceTypeWhat service that the battle session generated from
configuration_nameFStringConfiguration name of matchmaking, lobby or world service
bucket_pathTMap<FString, FString>Mapping from bucket filter attribute name to attribute value. [for WORLD battle session only]
ruleset_nameFStringRuleset name hit. Filled when battle session source type is BattleSourceType::Matchmaking
lockedboolTrue if the battle session is locked by game server A battle session generated from world service could be locked/unlocked by calling Lock/UnlockWorldBattleSession.
zoneFStringZone where the battle session placed.

FPgosClientP2PPlayerBattleSession

A player-battle-session is a session between a player and a activated battle-session.

struct FPgosClientP2PPlayerBattleSession
fieldtypedescription
battle_session_idFStringThe battle session id.
player_battle_session_idFStringThe id of player session in the battle, !!! NOT BATTLE SESSION ID !!!
player_idFStringThe player id
statusEPgosClientP2PPlayerBattleSessionStatus
created_timeint64The Unix timestamp(in seconds) when the battle session was created.
terminated_timeint64The Unix timestamp(in seconds) when the battle session was terminated.

FPgosClientP2PBattleSessionBase

A battle session corresponds a running game.

struct FPgosClientP2PBattleSessionBase
fieldtypedescription
battle_session_idFStringThe battle session id to query
host_player_idFStringHost player of the P2P battle session
statusEPgosClientP2PBattleSessionStatusBattle session status
status_msgFStringThe message of the battle status
source_typeEPgosBattleSourceTypeWhat service that the battle session generated from
configuration_nameFStringConfiguration name of matchmaking, lobby or world service
ruleset_nameFStringRuleset name hit. Filled when battle session source type is BattleSourceType::Matchmaking
battle_propertiesTArray<FPgosBattleProperty>K-V pair property of a battle session
battle_session_dataFStringCustom string data of a battle session. Preset in matchmaking configuration
max_playersint32Maximum number of players in the battle session If the source of the battle session is Matchmaking, the max_players is calculated from the teams section of ruleset script If the source of the game is Lobby, the max_players is calculated from the teams section of lobby config
total_playersint32Total number of players in the battle session. Only players with a player battle session status of COMPLETED will be excluded
created_timeint64The Unix timestamp(in seconds) when the battle session was created.
terminated_timeint64The Unix timestamp(in seconds) when the player disconnected from game server.

FPgosClientP2PBattleSession

A battle session corresponds a running game.

struct FPgosClientP2PBattleSession : public FPgosClientP2PBattleSessionBase

parent: FPgosClientP2PBattleSessionBase

fieldtypedescription
cur_player_battle_session_infoFPgosClientP2PPlayerBattleSessionPlayer battle session of current player

FPgosClientMatchmakingProcessInfo

Detailed process of a matchmaking request.

struct FPgosClientMatchmakingProcessInfo
fieldtypedescription
matchmaking_statusEPgosClientMatchmakingStatusStarting Matchmaking request is starting. Preparing Waiting for players confirmation for a multi-player matchmaking request. Note: when the MatchmakingObserver receives this status, it requires players to join or reject the mutilplayer matchmaking request. When one of the players start a mutilplayer matchmaking request, the other players will receive the 'Preparing' matchmaking status, and then decide to join or reject the matchmaking request. When everyone has joined, matchmaking start Searching. Searching Search players who fit the ruleset. Accepting Wait for players to accept the result of matchmaking. Placing Placing battle session on game DS. Pending Deprecated since <v0.12.7>. Use Placing instead. Completed The matchmaking request ends with a successful result. Check battle_session_info for detail information about the battle. Note: when the MatchmakingObserver receives this status, you need to connect the DS server via IP and port that could obtain from battle_session_info. Timeout Matchmaking request timeout. Terminated Matchmaking request is terminated. Canceled Matchmaking request is canceled. The request may have been canceled by the player or the matchmaking result has been rejected by the player. Error Matchmaking request error.
matchmaking_messageFStringThe message of the matchmaking status.
last_updated_status_timeint64The Unix timestamp(in seconds) for the last update in the matchmaking status.
ticket_idFStringTicket id for the matchmaking request.
configuration_nameFStringThe target matchmaking configuration name of current matchmaking request.
requested_playersTArray<FPgosClientRequestedPlayerInfo>Players in current matchmaking request.
matched_playersTArray<FPgosClientMatchedPlayerInfo>Players already matched.
matchmaking_creator_idFStringOriginator of the matchmaking request.
match_start_timeint64The Unix timestamp(in seconds) when the matchmaking started.
match_end_timeint64The Unix timestamp(in seconds) when the matchmaking ended.
estimated_searching_timeint32Not used.
preparing_timeoutint32The maximum time(in seconds) to wait for all request members to accept the request.
searching_timeoutint32The maximum time(in seconds) to wait for searching matched players.
accepting_timeoutint32The maximum time(in seconds) to wait for accepting a matched battle
placing_timeoutint32Timeout(in seconds) for Placing status.
concurrent_player_countint32Number of players searching in current match config
battle_session_infoFPgosClientBattleSessionInfoA battle session contains matched players.
battle_session_providerFStringProvider of battle session management: @ PGOS for PGOS battle service @ STANDALONE for self-build battle session management service. @ P2P for battle session hosted by game P2P game client
p2p_host_player_idFStringHost player id for a P2P battle provide by P2P matchmaking. Only be filled when @battle_session_provider is set to P2P. OnStartP2PBattleSession event of P2PBattle module should be handled by the host client to obtain detail information of a P2P battle sesssion.
p2p_battle_session_idFStringP2P Battle sesssion id provide by P2P matchmaking. Only be filled when @battle_session_provider is set to P2P. Battle session activation events will be pushed through OnP2PBattleSessionUpdated events of P2PBattle module.

FPgosClientGetConcurrentMatchmakingPlayerCountParams

struct FPgosClientGetConcurrentMatchmakingPlayerCountParams
fieldtypedescription
configuration_nameFStringMatchmaking configuration name.

FPgosClientGetConcurrentMatchmakingPlayerCountResult

struct FPgosClientGetConcurrentMatchmakingPlayerCountResult
fieldtypedescription
countint32Players in current matchmaking pool.

FPgosClientPartyCustomData

Custom data for party.

struct FPgosClientPartyCustomData
fieldtypedescription
versionint32Custom data version, always incremental over the lifetime of the party.
global_custom_dataFStringGlobal custom data. Only Leader has permission to modify it.
player_custom_dataTMap<FString, FString>Player custom data. The map key is party member's player ID, the map value is the party member's custom data. Each party member could modify it's player custom data.

FPgosClientPartyInfo

Detailed information of a party

struct FPgosClientPartyInfo
fieldtypedescription
party_idFStringThe party id
nameFStringName of the party
leaderFPgosPlayerInfoPlayer who is the leader of the party A leader can: Kick out members: a leader can kick out any member at any time. Dismiss the party. Transfer leadership to another member.
membersTArray<FPgosPlayerInfo>Players of the party
created_timeint64The Unix timestamp(in seconds) when the party was created.
max_playerint32Max number of players in the party, unlimited if it is 0.
custom_dataFPgosClientPartyCustomDataCustom data of the party(including global and player).
join_strategyEPgosClientPartyJoinStrategyThe strategy controls the rules who could join the party.
invite_strategyEPgosClientPartyInviteStrategyThe strategy controls the rules who could invite others to the party.

FPgosClientSetPartyStrategyParams

The parameters of join/invite strategy used to SetPartyStrategy

struct FPgosClientSetPartyStrategyParams
fieldtypedescription
party_idFStringThe party id
join_strategyEPgosClientPartyJoinStrategyThe strategy controls the rules who could join the party.
invite_strategyEPgosClientPartyInviteStrategyThe strategy controls the rules who could invite others to the party.

FPgosClientCreatePartyParams

Request struct for create party

struct FPgosClientCreatePartyParams
fieldtypedescription
party_nameFStringOptional name of the new party
max_playerint32The maximum limit on the count of party members, pass 0 if you don't want to limit
enable_chattingboolIf true, the party members can use SendPartyChatTextMsg/SendPartyChatCustomMsg/SetOnReceiveChatMsg
join_strategyEPgosClientPartyJoinStrategyThe strategy controls the rules who could join the party.
invite_strategyEPgosClientPartyInviteStrategyThe strategy controls the rules who could invite others to the party.

FPgosClientSendPartyChatMsgParams

Request struct for sending party chat message

struct FPgosClientSendPartyChatMsgParams
fieldtypedescription
contentFStringThe message content to be sent
custom_dataFStringAdditional information added by the game

FPgosClientBattleDataInfo

Raw battle history data

struct FPgosClientBattleDataInfo
fieldtypedescription
battle_session_idFStringThe battle session id to query
dataTMap<FString, FString>Battle custom kv data, such as {key1:value1, key2:value2}
tagsTArray<FString>Battle custom tags, you can filter battles by tags, such as [Entertainment]
failsTMap<FString, FString>A list of failed items in K-V pair data operations
battle_created_timeint64The Unix timestamp(in seconds) when the battle session was created.

FPgosClientBattleListInfo

A list of battle history data

struct FPgosClientBattleListInfo
fieldtypedescription
battle_data_listTArray<FPgosClientBattleDataInfo>A list of raw battle history data
next_offsetint32The next starting position of the list

FPgosClientBattleBriefInfo

A special battle history data that is preset by PGOS.

struct FPgosClientBattleBriefInfo
fieldtypedescription
battle_session_idFStringThe battle session id to query
briefFStringCustom battle brief, such as current player's KDA
tagsTArray<FString>Battle custom tags, you can filter battles by tags, such as [Entertainment]
battle_created_timeint64The Unix timestamp(in seconds) when the battle session was created.

FPgosClientBattleDetailInfo

A special battle history data that is preset by PGOS.

struct FPgosClientBattleDetailInfo
fieldtypedescription
battle_session_idFStringThe battle session id to query
detailFStringCustom battle detail, such as the KDA of all players
tagsTArray<FString>Battle custom tags, you can filter battles by tags, such as [Entertainment]
battle_created_timeint64The Unix timestamp(in seconds) when the battle session was created.

FPgosClientBattleBriefListInfo

A list of battle brief info

struct FPgosClientBattleBriefListInfo
fieldtypedescription
battle_data_listTArray<FPgosClientBattleBriefInfo>A list of raw battle history data
next_offsetint32The next starting position of the list

FPgosClientMentionedPlayer

The mentioned player. When the value of player_id is '@ALL', it means mentioning all players.

struct FPgosClientMentionedPlayer
fieldtypedescription
player_idFStringUnique id of player, When the value of player_id is '@ALL', it means mentioning all players.
player_display_nameFStringPlayer's display name. Populated by the game developer when sending a message.

FPgosClientChatMsgContent

Instant/Party/Lobby chat message content

struct FPgosClientChatMsgContent
fieldtypedescription
text_contentFStringTake the value from here when msg type is MsgTypeText
custom_contentFStringTake the value from here when msg type is MsgTypeCustom

FPgosClientChatMsgInfo

Instant/Party/Lobby chat messages

struct FPgosClientChatMsgInfo
fieldtypedescription
senderFPgosPlayerInfoThe player who send the message
sent_timeint64The time the message was sent
msg_typeEPgosClientChatMsgTypeThe type of the message
contentFPgosClientChatMsgContentThe message to be sent
seqint64The sequence number of the message
custom_dataFStringAdditional information added by the game

FPgosClientSendPersonalMsgParams

Request struct for sending personal message

struct FPgosClientSendPersonalMsgParams
fieldtypedescription
peer_player_idFStringPeer player's ID
contentFStringContent
custom_dataFStringAdditional information added by the game

FPgosClientUnreadMsgCountNotifyEvt

Event result of unread message count changed

struct FPgosClientUnreadMsgCountNotifyEvt
fieldtypedescription
total_unread_countint32Total unread count of personal chat or group chat

FPgosClientPersonalMsgContent

Personal chat message content

struct FPgosClientPersonalMsgContent
fieldtypedescription
text_contentFStringTake the value from here when msg type is MsgTypeText
custom_contentFStringTake the value from here when msg type is MsgTypeCustom

FPgosClientPersonalMsgInfo

Personal chat message info

struct FPgosClientPersonalMsgInfo
fieldtypedescription
senderFPgosPlayerInfoThe player who sent the message
sent_timeint64The time the message was sent
msg_typeEPgosClientChatMsgTypeThe type of the message
contentFPgosClientPersonalMsgContentThe message to be sent
seqint64The sequence number of the message
custom_dataFStringAdditional information added by the game

FPgosClientReceivePersonalMsgEvt

Event result of receive personal chat message

struct FPgosClientReceivePersonalMsgEvt
fieldtypedescription
msgFPgosClientPersonalMsgInfoPersonal chat message received
unread_countint32Count of unread message from sender

FPgosClientPersonalChatItem

Personal chat info

struct FPgosClientPersonalChatItem
fieldtypedescription
peer_player_infoFPgosPlayerInfoThe peer player info
unread_countint32Unread message count
msg_latestFPgosClientPersonalMsgInfoRecent chat message info

FPgosClientGetMyPersonalChatListResult

My personal chat list

struct FPgosClientGetMyPersonalChatListResult
fieldtypedescription
personal_chat_listTArray<FPgosClientPersonalChatItem>Personal chat list

FPgosClientGetPersonalChatMsgListResult

Result of get personal chat message list

struct FPgosClientGetPersonalChatMsgListResult
fieldtypedescription
msg_listTArray<FPgosClientPersonalMsgInfo>Chat message info list
already_read_seqint64Messages with seq less than or equal to this have already been read
has_moreboolWhether has more message
next_seqint64The starting sequence for the next query

FPgosClientGetGmeTicketResult

struct FPgosClientGetGmeTicketResult
fieldtypedescription
gme_ticketFStringResult of the gme ticket request, which is base64 encoded
voice_app_idFStringIndicates the gme app id registed on portal
gme_typeFStringService provider: aws, tcloud_chinese_mainland, tcloud_intl, etc.

FPgosClientJoinInstantChatResult

The result of players joining instant chat

struct FPgosClientJoinInstantChatResult
fieldtypedescription
chat_channel_idFStringThe chat channel

FPgosClientReceiveInstantChatMsgEvt

Event result of receive instant chat message

struct FPgosClientReceiveInstantChatMsgEvt
fieldtypedescription
chat_channel_idFStringID of chat channel where the message was received
chat_msg_infoFPgosClientChatMsgInfoInstant chat message received

FPgosClientInstantChatMemberJoinedEvt

Event result of member joined instant chat

struct FPgosClientInstantChatMemberJoinedEvt
fieldtypedescription
chat_channel_idFStringInstant chat channel the player joined
added_membersTArray<FPgosPlayerInfo>Players added to the instant chat

FPgosClientInstantChatMemberLeftEvt

Event result of member left instant chat

struct FPgosClientInstantChatMemberLeftEvt
fieldtypedescription
chat_channel_idFStringInstant chat channel the player left
left_membersTArray<FPgosPlayerInfo>Players left from the channel

FPgosClientGetInstantChatMembersResult

All the players in the channel

struct FPgosClientGetInstantChatMembersResult
fieldtypedescription
all_membersTArray<FPgosPlayerInfo>All the players in the channel

FPgosClientSendInstantChatMsgParams

Request struct for sending instant chat message

struct FPgosClientSendInstantChatMsgParams
fieldtypedescription
chat_channel_idFStringThe chat channel ID
contentFStringThe message content to be sent
custom_dataFStringAdditional information added by the game

FPgosClientGetInstantChatMemberIDsResult

All player IDs in a channel

struct FPgosClientGetInstantChatMemberIDsResult
fieldtypedescription
all_member_idsTArray<FString>All the players in the channel

FPgosClientGetInstantChatMemberCountResult

The num of players in a channel

struct FPgosClientGetInstantChatMemberCountResult
fieldtypedescription
all_member_countint32The num of players in a channel

FPgosClientLobbyPlayer

Player in lobby

struct FPgosClientLobbyPlayer
fieldtypedescription
player_infoFPgosPlayerInfoBase info of a player.
team_nameFStringCurrent team of the player. Team name is pre-set in lobby configuration
team_slotint32Slot index of the player. Starting value is 1
sourceEPgosClientLobbyJoiningSourceThe source of the player join the lobby
readyboolReady flag of the player

FPgosClientLobbyTeam

Team struct of current lobby

struct FPgosClientLobbyTeam
fieldtypedescription
nameFStringTeam name is pre-set in lobby configuration
capacityint32Capacity of the team
playersTMap<FString, FPgosClientLobbyPlayer>A map from team slot(in string format) to LobbyPlayer for all players in the team.
groupFStringThe group to which the team belongs
start_battle_conditionEPgosClientLobbyStartBattleConditionThe action when the lobby owner invokes the StartBattle interface depends on the Ready flag of lobby members.

FPgosClientLobbyBriefInfo

Brief information of a lobby

struct FPgosClientLobbyBriefInfo
fieldtypedescription
lobby_idFStringA unique lobby ID which was displayed on the game client.
lobby_ownerFPgosClientLobbyPlayerThe name of the lobby owner.
nameFStringThe name of the lobby.
statusEPgosClientLobbyStatusThe current lobby status.
privacyEPgosClientLobbyPrivacyLobby privacy type: Dummy, Invisible, or Invisible
protectionEPgosClientLobbyProtectionLobby protection type: Dummy, PasswordNeeded, PasswordUnNeeded
player_countint32The number of players in the lobby
player_limitint32Sum of capacities of all teams
kv_dataTMap<FString, FString>Global kv data of the lobby. Only owner has the permission to modify it.
player_kv_dataTMap<FString, FString>Player custom data of each lobby member. The map key is lobby member's player ID, the map value is the lobby member's custom data. Each lobby member could modify it's player kv data.
game_modeFStringThe game mode of the lobby. Each game mode can be configured with a placer on the portal

FPgosClientLobbyDetailInfo

Detailed information of a lobby

struct FPgosClientLobbyDetailInfo : public FPgosClientLobbyBriefInfo

parent: FPgosClientLobbyBriefInfo

fieldtypedescription
status_reasonEPgosClientLobbyStatusReasonThe reason that the lobby status changes.
passwordFStringPassword needed to join the lobby
teamsTArray<FPgosClientLobbyTeam>The team struct of current lobby.
lobby_configFStringLobby configuration name of current lobby
chat_channel_idFStringAn unique chat channel ID for the lobby's chat channel; empty if enable_chatting was set to false when the lobby was created.
battle_session_idFStringThe battle session that started from the lobby
preparing_timeoutint32The maximum time to wait for all request members to accept the request
placing_timeoutint32The maximum time to wait for placing the battle session
battle_session_providerFStringProvider of battle session management service. PGOS for PGOS battle service, STANDALONE for self-build battle session management service.

FPgosClientCreateLobbyParams

The information needed to create the lobby.

struct FPgosClientCreateLobbyParams
fieldtypedescription
lobby_configFStringLobby configuration name of current lobby
nameFStringThe name of the lobby.
privacyEPgosClientLobbyPrivacyLobby privacy type: Dummy, Invisible, or Invisible
passwordFStringPassword needed to join the lobby
enable_chattingboolIf true, the lobby members can use SendLobbyChatTextMsg/SendLobbyChatCustomMsg/SetOnReceiveLobbyChatMsg
kv_dataTMap<FString, FString>Lobby global data. Each key-value pair is a string. Special note: When using this parameter to filter room instances (such as in the SearchLobby/QuickJoin interfaces), PGOS supports parsing special string values as lists to enable more complex set-based filtering operations. The string value formats that can be parsed as lists include: [a, b, c] / ["a", "b", "c"] (where the double quotes will be automatically stripped).
protectionEPgosClientLobbyProtectionOptional, the lobby protection policy.
game_modeFStringOptional, the game mode of the lobby. After starting the battle, the placer corresponding to the game mode on the portal will be used. If this game mode does not have a placer configured, the default placer configured on the portal will be used.

FPgosClientEditLobbyInfoParams

The lobby information that needs to be updated. These data will overwrite the previous data.

struct FPgosClientEditLobbyInfoParams
fieldtypedescription
nameFStringThe name of the lobby.
privacyEPgosClientLobbyPrivacyLobby privacy type: Dummy, Invisible, or Invisible
passwordFStringPassword needed to join the lobby
kv_dataTMap<FString, FString>Deprecated since <v0.33.2>, use SetSetLobbyGlobalData instead
protectionEPgosClientLobbyProtectionThe lobby protection policy.
game_modeFStringthe game mode of the lobby. After starting the battle, the placer corresponding to the game mode on the portal will be used. If this game mode does not have a placer configured, the default placer configured on the portal will be used.

FPgosClientJoinLobbyParams

The information needed when join the lobby

struct FPgosClientJoinLobbyParams
fieldtypedescription
lobby_idFStringThe lobby id to join
passwordFStringThe lobby password. If the lobby is not encrypted, it doesn't need to be filled.
join_tokenFStringIt is from the event of 'OnLobbyInvitation' if the player is invited to join a lobby, Otherwise it doesn't need to be filled.
payloadFStringJoin request payload will be passed to the lobby owner in OnLobbyJoinRequest event for a lobby with LobbyProtection::ApplicationNeeded.

FPgosClientJoinLobbyWithGroupsParams

The information needed when join the lobby

struct FPgosClientJoinLobbyWithGroupsParams : public FPgosClientJoinLobbyParams

parent: FPgosClientJoinLobbyParams

fieldtypedescription
selected_groupsTMap<FString, int32>Try to join the specified groups in the lobby according to the specified priority value from small to large. key: group, value: priority.(priority cannot be less than 0)

FPgosClientJoinLobbyWithTeamsParams

The information needed when join the lobby

struct FPgosClientJoinLobbyWithTeamsParams : public FPgosClientJoinLobbyParams

parent: FPgosClientJoinLobbyParams

fieldtypedescription
selected_teamsTMap<FString, int32>Try to join the specified teams in the lobby according to the specified priority value from small to large. key: team name, value: priority.(priority cannot be less than 0)

FPgosClientSearchLobbyDataFilter

Lobby data search filter

struct FPgosClientSearchLobbyDataFilter
fieldtypedescription
equal_valuesTArray<FString>[Only for single string value] List all values that meet the filtering data. This field does not take effect when 'treat_as_list_value' is true.
not_equal_valuesTArray<FString>[Only for single string value] List all values that do not meet the filtering data. This field does not take effect when 'treat_as_list_value' is true.
set_is_subset_valuesTArray<FString>[Only for list value] Target data list value is subset of giving list. This field does not take effect when 'treat_as_list_value' is false.
set_intersection_valuesTArray<FString>[Only for list value] The intersection between the target list and the given list is not empty. This field does not take effect when 'treat_as_list_value' is false.
treat_as_list_valueboolWhether to treat the target value in lobby_data as a list value, defaulting to false.

FPgosClientSearchLobbyParams

The optional filter information when searching the lobby list.

struct FPgosClientSearchLobbyParams
fieldtypedescription
lobby_idFStringOptional, search for the specified lobby by id. It can search for the lobby of 'Invisible'
lobby_configFStringOptional, search for the lobby of the specified config, such as 'lobby 1v1'
statusEPgosClientLobbyStatusOptional, search for the lobby in the specific state
protectionEPgosClientLobbyProtectionOptional, for example, only search for the lobby without password
offsetint32The starting position of the search
countint32The search count
order_byEPgosClientLobbyOrderBySearch order
order_typeEPgosClientLobbyOrderTypeOrder direction
lobby_dataTMap<FString, FPgosClientSearchLobbyDataFilter>Filter by global kv data of the lobby. The map key is lobby data key, and the map value is lobby data filter.

FPgosClientSearchLobbyResult

The result of the search lobby request

struct FPgosClientSearchLobbyResult
fieldtypedescription
lobbiesTArray<FPgosClientLobbyBriefInfo>A list of lobbies filtered by our search. If these data are not filled (lobby_id, lobby_config, status, protection), all existing lobbies will be returned.
total_matched_lobbies_countint64The total number of lobbies filtered by the search

FPgosClientQuickJoinLobbyParams

struct FPgosClientQuickJoinLobbyParams
fieldtypedescription
lobby_configFStringRequired, lobby configuration name.
lobby_dataTMap<FString, FPgosClientSearchLobbyDataFilter>Optional, filter by global kv data of the lobby. The map key is lobby data key, and the map value is lobby data filter.
selected_groupsTMap<FString, int32>Optional, selected_groups will be used when PGOS place the player into lobby instance. Try to join the specified groups in the lobby according to the specified priority value from small to large. key: group, value: priority.(priority cannot be less than 0)
selected_teamsTMap<FString, int32>Optional, selected_teams will be used when PGOS place the player into lobby instance. Try to join the specified teams in the lobby according to the specified priority value from small to large. key: team name, value: priority.(priority cannot be less than 0)

FPgosClientSendLobbyChatMsgParams

Request struct for sending lobby chat message

struct FPgosClientSendLobbyChatMsgParams
fieldtypedescription
contentFStringThe message content to be sent
custom_dataFStringAdditional information added by the game

FPgosClientSetFriendRemarkParams

Request struct for set friend remark.

struct FPgosClientSetFriendRemarkParams
fieldtypedescription
player_idFStringPlayer's ID
remarkFStringremark to the friend

FPgosClientAddFriendParams

Request struct for add friend.

struct FPgosClientAddFriendParams
fieldtypedescription
player_idFStringThe player id to add
messageFStringRequest message

FPgosClientBatchAddFriendParams

Request struct for batch add friend.

struct FPgosClientBatchAddFriendParams
fieldtypedescription
player_idsTArray<FString>The player ids to add
messageFStringRequest message

FPgosClientFriendReqInfo

The friend request details.

struct FPgosClientFriendReqInfo
fieldtypedescription
player_infoFPgosPlayerInfoBasic player information such as display name and avatar.
messageFStringThe request message sent from the player who wants to add you as a friend.
created_timeint64The Unix timestamp(in seconds) when the request was created.

FPgosClientBatchAddFriendRsp

Response that add batch friends.

struct FPgosClientBatchAddFriendRsp
fieldtypedescription
fail_playersTMap<FString, FString>Players who totally failed, key: player_id, value: failed reason.

FPgosClientFriendReqListInfo

The list of friend requests.

struct FPgosClientFriendReqListInfo
fieldtypedescription
friend_request_info_listTArray<FPgosClientFriendReqInfo>The list of friend requests

FPgosClientGetMyFriendsLimitResult

Response to get my friends limit.

struct FPgosClientGetMyFriendsLimitResult
fieldtypedescription
friends_limitint32The maximum limit of friends you can have.

FPgosClientBatchAccountIDToPlayerIDResult

The result of batch account ids to player ids.

struct FPgosClientBatchAccountIDToPlayerIDResult
fieldtypedescription
dataTMap<FString, FString>Result of successful conversion, key: account id, value: player id.
failsTMap<FString, FString>Partial failure result, key: account id, value: failed reason.

FPgosClientBlocklistInfo

My blocklist details

struct FPgosClientBlocklistInfo
fieldtypedescription
player_info_listTArray<FPgosPlayerInfo>Players in my blocklist

FPgosClientSyncAccountPlatformBlocklistResult

All blocklist's player IDs

struct FPgosClientSyncAccountPlatformBlocklistResult
fieldtypedescription
all_blocklistTArray<FString>All players in blocklist

FPgosClientPlayerPresence

The player's current status information which is set by game, such as in party , in lobby, in battle.

struct FPgosClientPlayerPresence
fieldtypedescription
statusEPgosClientOnlineStatusOnline status is provided by PGOS Server. It has two values: online and offline.
presenceFStringThe player's current status information which is set by game, such as in party , in lobby, in battle.

FPgosClientBatchGetPlayerPresenceRsp

Response of querying multiple players' presence

struct FPgosClientBatchGetPlayerPresenceRsp
fieldtypedescription
player_presencesTMap<FString, FPgosClientPlayerPresence>Presences of the players, key: player_id, value: the player's presence.
fail_playersTMap<FString, FString>Players who totally failed, key: player_id, value: failed reason.

FPgosClientPlayerFriendInfo

Details of a player's friend

struct FPgosClientPlayerFriendInfo
fieldtypedescription
player_infoFPgosPlayerInfoBasic player information such as display name and avatar.
player_presenceFPgosClientPlayerPresenceThe player's current status information which is set by game, such as in party , in lobby, in battle.
remarkFStringremark to the player, for example, "Tommy, a humorous man, met in the battle."

FPgosClientPlayerSearchInfo

Details of player search

struct FPgosClientPlayerSearchInfo
fieldtypedescription
player_infoFPgosPlayerInfoBasic player information such as display name and avatar.
player_presenceFPgosClientPlayerPresenceThe player's current status information which is set by game, such as in party , in lobby, in battle.
remarkFStringThe remark of the player
is_friendboolWhether the searched player is a friend
is_blockedboolWhether the searched player is placed in the blocked list

FPgosClientFriendListInfo

Friend list details

struct FPgosClientFriendListInfo
fieldtypedescription
friend_info_listTArray<FPgosClientPlayerFriendInfo>Friend list details

FPgosClientPlayerSearchInfoList

A list of player search details

struct FPgosClientPlayerSearchInfoList
fieldtypedescription
info_listTArray<FPgosClientPlayerSearchInfo>A list of player search details

FPgosClientPlatformPlayerInfo

Players of external platform such as Steam

struct FPgosClientPlatformPlayerInfo
fieldtypedescription
account_open_idFStringAccount openIDs of external platform such as Steam.
player_infoFPgosPlayerInfoBasic player information such as display name and avatar.
player_presenceFPgosClientPlayerPresenceThe player's current status information which is set by game, such as in party , in lobby, in battle.
remarkFStringThe remark of the player
is_friendboolWhether the searched player is a friend
is_blockedboolWhether the searched player is placed in the blocked list

FPgosClientPlatformPlayerInfoMap

A map of players of external platform such as Steam.

struct FPgosClientPlatformPlayerInfoMap
fieldtypedescription
transform_item_mapTMap<FString, FPgosClientPlatformPlayerInfo>A map of players of external platform such as Steam. Key: player's open_id, Value: PlatformPlayerInfo

FPgosClientAcceptFriendRequestResult

Result of accept friend request.

struct FPgosClientAcceptFriendRequestResult
fieldtypedescription
friend_infoFPgosClientPlayerFriendInfoNew friend information obtained after accepting.

FPgosClientSearchPlayerFilter

Filter param for search player.

struct FPgosClientSearchPlayerFilter
fieldtypedescription
osTArray<EPgosClientOS>OS filter. Currently supports passing in at most one OS. Empty means no filtering based on OS.

FPgosClientSearchPlayersParams

Request struct for search players

struct FPgosClientSearchPlayersParams
fieldtypedescription
search_keyFStringKey words to for searching, now only supports searching based on player id and player name. Search results are paged back.
offsetint32Index of the first data in all search results.
countint32Maximum count of results returned in one page, the maximum value of 'count' is 50

FPgosClientSearchPlayersWithFilterParams

Request struct for search players with filter

struct FPgosClientSearchPlayersWithFilterParams
fieldtypedescription
search_keyFStringKey words to for searching, now only supports searching based on player id and player name. Search results are paged back.
search_filterFPgosClientSearchPlayerFilterFilter by OS etc..
offsetint32Index of the first data in all search results.
countint32Maximum count of results returned in one page, the maximum value of 'count' is 50

FPgosClientUniqueItemDeduction

Price deduction for unique items in the store item configured on the portal.

struct FPgosClientUniqueItemDeduction
fieldtypedescription
item_idFStringThe id of the unique item.
deduction_priceint32The deduction price of the unique item configured on the portal.
is_deductedboolTrue means that the player owns the unique item and a deduction occurred when purchasing the store item.

FPgosClientCompensationCurrency

Currency compensation.

struct FPgosClientCompensationCurrency
fieldtypedescription
currency_codeFStringThe code of the currency.
amountint32The amount of the currency.

FPgosClientUniqueItemCompensation

Compensation for unique items in the store item configured on the portal. This used when pay_platform is MidasGlobal

struct FPgosClientUniqueItemCompensation
fieldtypedescription
currenciesTArray<FPgosClientCompensationCurrency>Currency compensations.

FPgosClientStoreItemPrice

The price of a store item.

struct FPgosClientStoreItemPrice
fieldtypedescription
currency_codeFStringThe code of the currency.
currency_nameFStringThe name of the currency.
currency_iconFStringThe uri of the currency.
priceint32The actual price used to purchase the store item with the currency. selling_price deducts the deduction_price where is_deducted is true in unique_item_deductions.
selling_priceint32Selling price in the store, defined in the store item of the portal. When creating a store item on the portal, you can directly use the price defined in the in-game item (default_price), at this time selling_price is equal to default_price, or you can use custom selling price.
original_priceint32Deprecated since <v0.25.0>. Use selling_price instead.
default_priceint32The price of in-game item. defined in the in-game item of the portal.
unique_item_deductionsTMap<FString, FPgosClientUniqueItemDeduction>Price deduction for unique items in the store item configured on the portal. Key: unique item id.

FPgosClientItemPrice

The currency code and price used to purchase the item

struct FPgosClientItemPrice
fieldtypedescription
currency_codeFStringThe code of the currency.
priceint32The actual price used to purchase the store item with the currency.

FPgosClientGetBalancesResult

struct FPgosClientGetBalancesResult
fieldtypedescription
balancesTArray<FPgosClientBalance>The balances that the player owns.

FPgosClientStoreItemPurchaseLimit

Purchase amount limit of store item.

struct FPgosClientStoreItemPurchaseLimit
fieldtypedescription
max_purchase_amountint32The maximum amount limit that players can purchase for this store item. 0 means no limit.
purchased_amountint32When max_purchase_amount is greater than 0, record the amount that the player has purchased. Please note that when the category period is switched, its value will be recalculated.

FPgosClientStoreItem

struct FPgosClientStoreItem
fieldtypedescription
pay_platformFStringPay platform name, such as: 'Pgos', 'MidasGlobal', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h @ Pgos, make a virtual currency payment to PGOS to purchase this item. @ MidasGlobal, make a cash payment through Midas to purchase this item.
store_item_idFStringThe id of the store item.
statusEPgosClientStoreItemStatusStore item status: Dummy / Available / Owned / ExceedLimit.
pricesTArray<FPgosClientStoreItemPrice>The currency to purchase the store item, it may be multiple.
itemFPgosInGameItemThe in-game item related to the store item.
tagsTMap<FString, FString>The tags of store item Fill in the tags of item on the portal.
purchase_limitFPgosClientStoreItemPurchaseLimitPurchase amount limit of store item.
compensationsTMap<FString, FPgosClientUniqueItemCompensation>The compensation for unique items in the store item configured on the portal when pay_platform is MidasGlobal. Key: unique item id.

FPgosClientStoreCategoryBrief

The brief information of the store category.

struct FPgosClientStoreCategoryBrief
fieldtypedescription
category_idFStringThe id of the category.
nameFStringThe name of the category.
descriptionFStringThe description of the category.
tagsTMap<FString, FString>The custom tags of the category.
typeEPgosClientStoreCategoryTypeThe type of the category.
published_start_timeint64The Unix timestamp (in seconds) for the start time of the currently active period. It is always 0 under the simple type.
published_end_timeint64The Unix timestamp (in seconds) for the end time of the currently active period. It is always 0 under the simple type.

FPgosClientStoreCategory

The information of the store category.

struct FPgosClientStoreCategory : public FPgosClientStoreCategoryBrief

parent: FPgosClientStoreCategoryBrief

fieldtypedescription
content_itemsTArray<FPgosClientStoreItem>Store items in the category.

FPgosClientStore

struct FPgosClientStore
fieldtypedescription
store_idFStringThe id of the store.
display_nameFStringThe name of the store.
descriptionFStringThe description of the store.
tagsTMap<FString, FString>The custom tags of the store.
categoriesTArray<FPgosClientStoreCategory>The category list of the the store, each category has a store item list.
item_dictFPgosItemDictIn-game item defines that may be referenced in the 'item_content', and you can use 'ItemDict::FindItem' to search.
platform_item_mappingTMap<FString, FString>The mapping relationship between PGOS in-game items and 3rd-party platform items configured on the PGOS portal. key: PGOS in-game item id, value: 3rd-party platform item id.

FPgosClientStoreBrief

The brief information of the store.

struct FPgosClientStoreBrief
fieldtypedescription
store_idFStringThe id of the store.
display_nameFStringThe name of the store.
descriptionFStringThe description of the store.
tagsTMap<FString, FString>The custom tags of the store.
category_briefsTArray<FPgosClientStoreCategoryBrief>The category brief list of the the store.

FPgosClientGetStoreBriefsParams

struct FPgosClientGetStoreBriefsParams
fieldtypedescription
store_idsTArray<FString>List of store IDs to be queried.

FPgosClientGetStoreBriefsResult

struct FPgosClientGetStoreBriefsResult
fieldtypedescription
store_briefsTMap<FString, FPgosClientStoreBrief>List of store brief information queried.

FPgosClientGetStoreParams

struct FPgosClientGetStoreParams
fieldtypedescription
store_idFStringThe specified store id.
pay_platformFString[Optional] Pay platform name, such as: 'Steam', 'Xbox', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h After specifying the pay platform, the result will bring the platform_item_mapping of the corresponding platform configured on the portal.

FPgosClientGetStoreWithPlatformParams

struct FPgosClientGetStoreWithPlatformParams : public FPgosClientGetStoreParams

parent: FPgosClientGetStoreParams

FPgosClientGetStoreCategoriesParams

struct FPgosClientGetStoreCategoriesParams
fieldtypedescription
store_idFStringThe specified store id.
category_idsTArray<FString>List of category IDs to be queried.
pay_platformFString[Optional] Pay platform name, such as: 'Steam', 'Xbox', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h After specifying the pay platform, the result will bring the platform_item_mapping of the corresponding platform configured on the portal.

FPgosClientGetStoreCategoriesResult

struct FPgosClientGetStoreCategoriesResult
fieldtypedescription
categoriesTArray<FPgosClientStoreCategory>The specified categories that have been queried.
failsTMap<FString, FString>Categories that failed to query, key: player id, value: failed reason.
item_dictFPgosItemDictIn-game item defines that may be referenced in the 'item_content', and you can use 'ItemDict::FindItem' to search.
store_idFStringThe id of the store.
display_nameFStringThe name of the store.
descriptionFStringThe description of the store.
tagsTMap<FString, FString>The custom tags of the store.
platform_item_mappingTMap<FString, FString>The mapping relationship between PGOS in-game items and 3rd-party platform items configured on the PGOS portal. key: PGOS in-game item id, value: 3rd-party platform item id.

FPgosClientInstanceOperationResult

struct FPgosClientInstanceOperationResult
fieldtypedescription
instance_idFStringThe instance id of this operation.
left_amountint32The number of instance remaining after this operation.

FPgosClientConsumeInstanceParams

Request struct for consume instance.

struct FPgosClientConsumeInstanceParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
instance_idFStringThe item instance id.
idempotency_tokenFString[Optional] Used to ensure the idempotence of the function. Idempotence means that regardless of how many times the function is called, the result remains the same. By passing a unique idempotency_token, it ensures that the function does not produce duplicate side effects or results when called repeatedly. Note: To avoid generating the same idempotency_token as other players, it is recommended to concatenate it with the player's own player ID.

FPgosClientConsumeInstanceResult

struct FPgosClientConsumeInstanceResult : public FPgosClientInstanceOperationResult

parent: FPgosClientInstanceOperationResult

fieldtypedescription
custom_err_codeint32The error code returned by the virtual server bound to the consumer action.
custom_err_msgFStringThe error msg returned by the virtual server bound to the consumer action.
func_resultFStringThe json string returned by the virtual server bound to the consumer action.
replayedboolWhether the request is replayed. When it is True, it indicates that the result of the function is obtained by replaying with the same idempotency_token. This means that the result of the function has been generated in a previous call and is being reused in the current call.

FPgosClientOpenContainerInstanceParams

Request struct for open container instance.

struct FPgosClientOpenContainerInstanceParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
instance_idFStringThe container instance id.

FPgosClientOpenContainerResult

struct FPgosClientOpenContainerResult : public FPgosClientInstanceOperationResult

parent: FPgosClientInstanceOperationResult

fieldtypedescription
item_instsFPgosItemInstPackThe item instances obtained after opening the container.
currenciesTArray<FPgosCurrency>The currencies obtained after opening the container.
conflict_unique_itemsTArray<FPgosConflictUniqueItem>Unique items that already in inventory cause failed to be synchronized.

FPgosClientRevokeInstanceParams

Request struct for revoke instance.

struct FPgosClientRevokeInstanceParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
instance_idFStringThe item instance id.

FPgosClientSetInstanceTagsParams

struct FPgosClientSetInstanceTagsParams
fieldtypedescription
instance_idFStringThe item instance id.
update_dataTMap<FString, FString>Update the data of the specified keys in the tags. If the key does not exist, it indicates inserting new data.
delete_keysTArray<FString>Delete the data of specified keys in the tags. The key from update_data cannot be included.

FPgosClientSetInstanceTagsResult

struct FPgosClientSetInstanceTagsResult
fieldtypedescription
tagsTMap<FString, FString>Latest tags of item instance.

FPgosClientCreateStoreOrderParams

Request struct for create order.

struct FPgosClientCreateStoreOrderParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
store_idFStringThe store id of this store item.
store_item_idFStringThe store item id.
amountint32The amount of store item will be purchased.
priceFPgosClientItemPriceThe currency code and actual price to purchase the item, it must be one of the prices of this store item.

FPgosClientCreateStoreOrderResult

struct FPgosClientCreateStoreOrderResult
fieldtypedescription
order_idFStringOrder ID required for purchase.

FPgosClientCommitStoreOrderParams

Request struct for commit order.

struct FPgosClientCommitStoreOrderParams
fieldtypedescription
order_idFStringThe previously created order ID.

FPgosClientCommitStoreOrderResult

struct FPgosClientCommitStoreOrderResult
fieldtypedescription
spent_currency_codeFStringThe code of currency that has been spent to purchase the store item.
spent_currency_amountint32The amount of currency that has been spent to purchase the store item.
item_instsFPgosItemInstPackThe item instances obtained after purchase.
currenciesTArray<FPgosCurrency>The currencies obtained after purchase.
statusEPgosClientStoreOrderStatusOrder status.
failed_currenciesTMap<FString, FString>Currencies that failed to grant. Mapping from currency code to failure reason.

FPgosClientQueryStoreOrderParams

struct FPgosClientQueryStoreOrderParams
fieldtypedescription
order_idFStringThe previously created order ID.

FPgosClientQueryStoreOrderResult

struct FPgosClientQueryStoreOrderResult : public FPgosClientCommitStoreOrderResult

parent: FPgosClientCommitStoreOrderResult

FPgosClientCheckBeforePlatformPurchaseParams

struct FPgosClientCheckBeforePlatformPurchaseParams
fieldtypedescription
item_idFStringThe PGOS in-game item id corresponding to the item id of the 3rd-party platform to be purchased.
amountint32The amount of item will be purchased.
pay_platformFStringPay platform name, such as: 'Steam', 'EpicGames', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h

FPgosClientSyncPlayerPlatformInventoryParams

Request struct for sync player inventory from 3rd-party platform.

struct FPgosClientSyncPlayerPlatformInventoryParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
pay_platformFStringPay platform name, such as: 'Steam', 'EpicGames', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h

FPgosClientSyncPlayerPlatformInventoryResult

struct FPgosClientSyncPlayerPlatformInventoryResult
fieldtypedescription
item_instsFPgosItemInstPackThe item instances obtained after synchronized.
currenciesTArray<FPgosCurrency>The currencies obtained after synchronized.
conflict_unique_itemsTArray<FPgosConflictUniqueItem>Unique items that already in inventory cause failed to be synchronized.

FPgosClientSyncSteamPlayerInventoryParams

Request struct for sync player inventory from Steam platform.

struct FPgosClientSyncSteamPlayerInventoryParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

FPgosClientSyncSteamPurchaseParams

Request struct for sync item instance from Steam.

struct FPgosClientSyncSteamPurchaseParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
steam_item_inst_iduint64Steam item instance id.

FPgosClientSyncSteamPurchaseResult

struct FPgosClientSyncSteamPurchaseResult : public FPgosClientSyncPlayerPlatformInventoryResult

parent: FPgosClientSyncPlayerPlatformInventoryResult

FPgosClientSyncXboxPlayerInventoryParams

Request struct for sync player inventory from Xbox platform.

struct FPgosClientSyncXboxPlayerInventoryParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
xbox_xsts_tokenFStringXbox XSTS token.

FPgosClientSyncXboxPurchaseParams

Request struct for sync item instance from Xbox.

struct FPgosClientSyncXboxPurchaseParams : public FPgosBaseBackendEventParams

parent: FPgosBaseBackendEventParams

fieldtypedescription
xbox_product_idFStringXbox product id. Also referred to as the Store ID for the product within the Microsoft Store catalog.
xbox_xsts_tokenFStringXbox XSTS token.

FPgosClientSyncXboxPurchaseResult

struct FPgosClientSyncXboxPurchaseResult : public FPgosClientSyncPlayerPlatformInventoryResult

parent: FPgosClientSyncPlayerPlatformInventoryResult

FPgosClientInventoryGrantedEvt

struct FPgosClientInventoryGrantedEvt
fieldtypedescription
item_instsFPgosItemInstPackThe item instances granted.
src_typeFStringSource type of granted. For example, "Store", "Midas", "Portal", "Client", "DS", "VS", "System", "Mail" etc.

FPgosClientCurrencyChange

struct FPgosClientCurrencyChange
fieldtypedescription
currency_codeFStringThe code of currency that has been changed.
before_valueint64The amount of changed currency before this change.
after_valueint64The amount of changed currency after this change.

FPgosClientBalanceUpdatedEvt

struct FPgosClientBalanceUpdatedEvt
fieldtypedescription
currenciesTArray<FPgosClientCurrencyChange>The details of changed currencies.
reasonFStringThe reason caused the currencies changes. Usually will be 'Deduct' or 'Grant'

FPgosClientVirtualServerEvt

struct FPgosClientVirtualServerEvt
fieldtypedescription
json_strFStringThe message is in json format.

FPgosClientAddFriendRequestEvt

struct FPgosClientAddFriendRequestEvt
fieldtypedescription
req_infoFPgosClientFriendReqInfoThe request details.

FPgosClientAddFriendResponseEvt

struct FPgosClientAddFriendResponseEvt
fieldtypedescription
friend_infoFPgosClientPlayerFriendInfoThe friend details.

FPgosClientFriendRemovedEvt

struct FPgosClientFriendRemovedEvt
fieldtypedescription
player_infoFPgosPlayerInfoThe player details.

FPgosClientBadgeNumOfFriendReqEvt

struct FPgosClientBadgeNumOfFriendReqEvt
fieldtypedescription
badge_numint32The badge number of outstanding friend requests.

FPgosClientFriendPresenceChangedEvt

struct FPgosClientFriendPresenceChangedEvt
fieldtypedescription
player_idFStringThe friend whose presence changed.
player_presenceFPgosClientPlayerPresenceFriend's new presence.

FPgosClientLobbyMemberJoinedEvt

struct FPgosClientLobbyMemberJoinedEvt
fieldtypedescription
joined_playerFPgosClientLobbyPlayerThe player who newly joined the lobby.
lobby_idFStringLobby id.

FPgosClientLobbyMemberLeftEvt

struct FPgosClientLobbyMemberLeftEvt
fieldtypedescription
left_playerFPgosClientLobbyPlayerThe player who left the lobby.
is_kick_outboolWas the player kicked out by lobby owner.
lobby_idFStringLobby id.

FPgosClientLobbyTeamUpdatedEvt

struct FPgosClientLobbyTeamUpdatedEvt
fieldtypedescription
lobby_playersTArray<FPgosClientLobbyPlayer>The players who update ready flag or change team slot.
lobby_idFStringLobby id.

FPgosClientLobbyInvitationEvt

struct FPgosClientLobbyInvitationEvt
fieldtypedescription
lobby_detailFPgosClientLobbyDetailInfoThe updated lobby details.
inviterFPgosClientLobbyPlayerThe player who sent the invitation.
join_tokenFStringIf the invited player wants to join the lobby, this value of 'join_token' needs to be filled to the 'join_token' of 'JoinLobby'.

FPgosClientLobbyOwnerTransferredEvt

struct FPgosClientLobbyOwnerTransferredEvt
fieldtypedescription
new_ownerFPgosClientLobbyPlayerThe new lobby owner.
lobby_idFStringLobby id.

FPgosClientLobbyInfoUpdatedEvt

struct FPgosClientLobbyInfoUpdatedEvt
fieldtypedescription
lobby_detailFPgosClientLobbyDetailInfoThe updated lobby details.

FPgosClientLobbyDataUpdatedEvt

struct FPgosClientLobbyDataUpdatedEvt
fieldtypedescription
lobby_detailFPgosClientLobbyDetailInfoThe updated lobby details.

FPgosClientLobbyStatusChangedEvt

struct FPgosClientLobbyStatusChangedEvt
fieldtypedescription
statusEPgosClientLobbyStatusThe current lobby status.
battle_session_idFStringThe battle session that started from the lobby
battle_session_providerFStringProvider of battle session management service. PGOS for PGOS battle service, STANDALONE for self-build battle session management service.
lobby_idFStringLobby id.

FPgosClientBattleSessionUpdatedEvt

struct FPgosClientBattleSessionUpdatedEvt
fieldtypedescription
battle_sessionFPgosClientBattleSessionInfoThe updated battle session details.

FPgosClientReceiveLobbyChatMsgEvt

struct FPgosClientReceiveLobbyChatMsgEvt
fieldtypedescription
chat_msg_infoFPgosClientChatMsgInfoLobby chat messages received.

FPgosClientLobbySwitchTeamSlotRequestEvt

struct FPgosClientLobbySwitchTeamSlotRequestEvt
fieldtypedescription
from_player_infoFPgosClientLobbyPlayerLobby player who send the switch request.
request_idFStringTeam slot switch request id.
lobby_idFStringLobby id.

FPgosClientLobbySwitchTeamSlotRequestConfirmedEvt

struct FPgosClientLobbySwitchTeamSlotRequestConfirmedEvt
fieldtypedescription
from_player_infoFPgosClientLobbyPlayerLobby player who confirm the switch request.
request_idFStringTeam slot switch request id.
lobby_idFStringLobby id.

FPgosClientLobbySwitchTeamSlotRequestRejectedEvt

struct FPgosClientLobbySwitchTeamSlotRequestRejectedEvt
fieldtypedescription
from_player_infoFPgosClientLobbyPlayerLobby player who reject the switch request.
request_idFStringTeam slot switch request id.
lobby_idFStringLobby id.

FPgosClientPartyStrategyChangedEvt

struct FPgosClientPartyStrategyChangedEvt
fieldtypedescription
party_idFStringThe party id.
join_strategyEPgosClientPartyJoinStrategyThe strategy controls the rules who could join the party.
invite_strategyEPgosClientPartyInviteStrategyThe strategy controls the rules who could invite others to the party.

FPgosClientPartyMemberJoinedEvt

struct FPgosClientPartyMemberJoinedEvt
fieldtypedescription
party_idFStringThe party id.
joined_memberFPgosPlayerInfoThe player who newly joined the party.

FPgosClientPartyMemberLeftEvt

struct FPgosClientPartyMemberLeftEvt
fieldtypedescription
party_idFStringThe party id.
left_playerFPgosPlayerInfoThe player who left the party.
kickedboolWas the player kicked out by party leader.

FPgosClientPartyDismissedEvt

struct FPgosClientPartyDismissedEvt
fieldtypedescription
party_idFStringThe party id that was dismissed.

FPgosClientPartyLeaderTransferredEvt

struct FPgosClientPartyLeaderTransferredEvt
fieldtypedescription
party_idFStringThe party id.
new_leaderFPgosPlayerInfoThe player who transferred to new leader.

FPgosClientReceivePartyInvitationEvt

struct FPgosClientReceivePartyInvitationEvt
fieldtypedescription
party_idFStringThe party id.
inviterFPgosPlayerInfoThe player who sent the invitation.

FPgosClientReceivePartyChatMsgEvt

struct FPgosClientReceivePartyChatMsgEvt
fieldtypedescription
chat_msg_infoFPgosClientChatMsgInfoParty chat messages received.

FPgosClientPartyCustomDataChangedEvt

struct FPgosClientPartyCustomDataChangedEvt
fieldtypedescription
party_idFStringThe party id.
custom_dataFPgosClientPartyCustomDataParty custom data.

FPgosClientPartyInfoUpdatedEvt

struct FPgosClientPartyInfoUpdatedEvt
fieldtypedescription
party_infoFPgosClientPartyInfoThe party info.

FPgosClientMatchmakingProcessChangedEvt

struct FPgosClientMatchmakingProcessChangedEvt
fieldtypedescription
processFPgosClientMatchmakingProcessInfoThe updated matchmaking progress information.

FPgosClientPlayerSessionChangedEvt

struct FPgosClientPlayerSessionChangedEvt
fieldtypedescription
evtEPgosPlayerSessionEvtThe triggered event id, view event enum for detail.
session_idFStringThe id of the current player session
msgFStringMessage for the triggered event.

FPgosClientGroupInfo

Group info could be access by players both in or not in the group.

struct FPgosClientGroupInfo
fieldtypedescription
group_idFStringThe group id.
nameFStringThe group name.
iconFStringUri of the group.
descriptionFStringThe description of the group.
tagsTArray<FString>Custom tags of the group.
owner_infoFPgosPlayerInfoThe player info of group owner.
member_countint32Current member count of the group.
max_membersint32Max member count of the group.
is_officialboolIs it a official group.
created_timeint64The Unix timestamp(in seconds) when the group was created.
join_ruleEPgosClientGroupJoinRuleThe rules for players to join the group.
global_custom_dataTMap<FString, FString>Group global custom data. Can be modified by the group owner or administrators.

FPgosClientGroupDetail

Group detail could be access only by players in the group.

struct FPgosClientGroupDetail : public FPgosClientGroupInfo

parent: FPgosClientGroupInfo

fieldtypedescription
announcementFStringAnnouncement of the group.
is_publicboolCould or couldn't be seen by player not in the group.

FPgosClientGroupMember

struct FPgosClientGroupMember
fieldtypedescription
player_infoFPgosPlayerInfoBase info of the player.
nicknameFStringNick name of a group member.
remarkFStringRemark of a group member. Remark can only be modified by group owner and group admin.
player_presenceFPgosClientPlayerPresencePlayer presence info.
is_ownerboolTrue if the member is group owner.
is_adminboolTrue if the member is group admin.
joined_timeint64The Unix timestamp(in seconds) when the member joined.
custom_dataFStringThe custom data for group member. Could be Can be modified by the player or administrator.

FPgosClientMutedGroupMember

struct FPgosClientMutedGroupMember
fieldtypedescription
player_idFStringPlayer's ID.
display_nameFStringPlayer's display name.
group_nicknameFStringNickname in the group.
remarkFStringRemark of a group member. Remark can only be modified by group owner and group admin.
operator_idFStringId of the operator.
operator_display_nameFStringDisplay name of the operator.
mute_created_timeint64The Unix timestamp(in seconds) when the mute is created.
mute_expired_timeint64The Unix timestamp(in seconds) when the mute is expired, 0 means mute forever.
joined_timeint64The Unix timestamp(in seconds) when the member joined.

FPgosClientGroupMemberBrief

struct FPgosClientGroupMemberBrief
fieldtypedescription
player_idFStringPlayer's ID.
display_nameFStringPlayer's display name.
group_nicknameFStringNickname of a group member.

FPgosClientGroupInvitation

struct FPgosClientGroupInvitation
fieldtypedescription
inviter_infoFPgosPlayerInfoBase info of the player.
idFStringInvitation id.
msgFStringInvitation message. Set by the inviter.
group_infoFPgosClientGroupInfoBase info of the group.
created_timeint64The Unix timestamp(in seconds) when the invitation was created.
expired_timeint64The Unix timestamp(in seconds) when the invitation's expired.

FPgosClientGroupInvitationEvt

struct FPgosClientGroupInvitationEvt
fieldtypedescription
invitationFPgosClientGroupInvitationThe group invitation info.

FPgosClientRemovedFromGroupEvt

struct FPgosClientRemovedFromGroupEvt
fieldtypedescription
group_idFStringThe group from which the player was removed.

FPgosClientMutedInGroupEvt

struct FPgosClientMutedInGroupEvt
fieldtypedescription
group_idFStringThe group in which the player is muted.
operator_idFStringId of the operator.
operator_display_nameFStringDisplay name of the operator.
mute_created_timeint64The Unix timestamp(in seconds) when the mute is created.
mute_expired_timeint64The Unix timestamp(in seconds) when the mute is expired, 0 means mute forever.

FPgosClientUnmutedInGroupEvt

struct FPgosClientUnmutedInGroupEvt
fieldtypedescription
group_idFStringThe group in which the player is unmuted.
operator_idFStringId of the operator.
operator_display_nameFStringDisplay name of the operator.

FPgosClientGroupDismissedEvt

struct FPgosClientGroupDismissedEvt
fieldtypedescription
group_idFStringThe group id.
dismiss_reasonFStringReason for group dismissed.

FPgosClientBadgeNumOfGroupInvitationEvt

struct FPgosClientBadgeNumOfGroupInvitationEvt
fieldtypedescription
badge_numint32The badge number of group invitation.

FPgosClientGroupDetailChangedEvt

struct FPgosClientGroupDetailChangedEvt
fieldtypedescription
group_detailFPgosClientGroupDetailGroup detail information.

FPgosClientGroupGlobalCustomDataChangedEvt

struct FPgosClientGroupGlobalCustomDataChangedEvt
fieldtypedescription
group_idFStringGroup id.
global_custom_dataTMap<FString, FString>Updated group global custom data.

FPgosClientGroupPlayerCustomDataChangedEvt

struct FPgosClientGroupPlayerCustomDataChangedEvt
fieldtypedescription
group_idFStringGroup id.
player_custom_dataTMap<FString, FString>Updated custom data for each player.

FPgosClientCreateGroupParams

struct FPgosClientCreateGroupParams
fieldtypedescription
nameFStringThe group name.
iconFStringUri of the group.
descriptionFStringThe description of the group.
tagsTArray<FString>Custom tags of the group.
join_ruleEPgosClientGroupJoinRuleThe rules for players to join the group.
is_publicboolCould or couldn't be seen by player not in the group.

FPgosClientSetGroupNameParams

struct FPgosClientSetGroupNameParams
fieldtypedescription
group_idFStringGroup ID.
group_nameFStringGroup name.

FPgosClientSetGroupDescParams

struct FPgosClientSetGroupDescParams
fieldtypedescription
group_idFString
group_descriptionFString

FPgosClientSetGroupAnnouncementParams

struct FPgosClientSetGroupAnnouncementParams
fieldtypedescription
group_idFString
group_announcementFString

FPgosClientSetGroupTagsParams

struct FPgosClientSetGroupTagsParams
fieldtypedescription
group_idFString
tagsTArray<FString>

FPgosClientSetMyGroupNicknameParams

struct FPgosClientSetMyGroupNicknameParams
fieldtypedescription
group_idFString
nicknameFString

FPgosClientSetGroupMemberRemarkParams

struct FPgosClientSetGroupMemberRemarkParams
fieldtypedescription
group_idFString
player_idFString
remarkFString

FPgosClientBatchSetGroupMemberRemarkParams

struct FPgosClientBatchSetGroupMemberRemarkParams
fieldtypedescription
group_idFString
player_idsTArray<FString>
remarkFString

FPgosClientInvitePlayersToGroupParams

struct FPgosClientInvitePlayersToGroupParams
fieldtypedescription
group_idFString
invite_msgFString
player_idsTArray<FString>

FPgosClientCreateGroupRsp

struct FPgosClientCreateGroupRsp
fieldtypedescription
group_detailFPgosClientGroupDetail
is_profaneboolWhether the updated data contains profanity words.

FPgosClientSearchGroupParams

struct FPgosClientSearchGroupParams
fieldtypedescription
official_filterEPgosClientGroupOfficialFilterTypeThe search count
left_room_filterEPgosClientGroupRoomFilterTypeThe search count
tags_filterTArray<FString>The search count
order_byEPgosClientGroupOrderByThe search count
order_typeEPgosClientGroupOrderTypeThe search count
offsetint32The starting position of the search
countint32The search count

FPgosClientSearchGroupRsp

struct FPgosClientSearchGroupRsp
fieldtypedescription
group_listTArray<FPgosClientGroupInfo>List of groups.
total_numint32The total number of groups that meet the filters.
next_offsetint32The next starting position of the list.

FPgosClientGetGroupDiscoveryListParams

struct FPgosClientGetGroupDiscoveryListParams
fieldtypedescription
owner_osTArray<EPgosClientOS>Only obtain groups where the group owner's OS is the specified OS. Currently supports passing in at most one OS. Empty means no filtering based on OS.
recommend_countint32Get the number of recommended groups additionally, cannot exceed 50. Recommended groups can be configured on the portal.
offsetint32The starting position of the list.
countint32The query count, cannot exceed 50.

FPgosClientGetGroupDiscoveryListResult

struct FPgosClientGetGroupDiscoveryListResult
fieldtypedescription
recommend_group_listTArray<FPgosClientGroupInfo>Additional recommended groups.
group_listTArray<FPgosClientGroupInfo>List of groups.
next_offsetint32The next starting position of the list.
total_numint32The total number of group discoveries.

FPgosClientInvitePlayersToGroupRsp

Response that invite players to a group.

struct FPgosClientInvitePlayersToGroupRsp
fieldtypedescription
group_idFStringPlayers that failed to invite, key: player id, value: failed reason.
invitation_mapTMap<FString, FString>Players that success to invite, key: player id, value: invitation_id.
failsTMap<FString, FString>Players that failed to invite, key: player id, value: failed reason.

FPgosClientBatchGetGroupInfoRsp

struct FPgosClientBatchGetGroupInfoRsp
fieldtypedescription
group_info_listTArray<FPgosClientGroupInfo>The group info list.
failsTMap<FString, FString>Groups that failed to query, key: group id, value: failed reason.

FPgosClientBatchGetGroupDetailRsp

struct FPgosClientBatchGetGroupDetailRsp
fieldtypedescription
group_detail_listTArray<FPgosClientGroupDetail>The group detail data list.
failsTMap<FString, FString>Groups that failed to query, key: group id, value: failed reason.

FPgosClientGetGroupMembersRsp

struct FPgosClientGetGroupMembersRsp
fieldtypedescription
group_membersTMap<FString, FPgosClientGroupMember>Group members, key: player id, value: group member information.
muted_membersTMap<FString, FPgosClientMutedGroupMember>Muted group members, key: player id, value: muted member information.

FPgosClientGetGroupMemberRsp

struct FPgosClientGetGroupMemberRsp
fieldtypedescription
is_memberboolWhether the player is a member of a group.
member_infoFPgosClientGroupMemberGroup member information.

FPgosClientAcceptGroupInvitationRsp

struct FPgosClientAcceptGroupInvitationRsp
fieldtypedescription
group_detailFPgosClientGroupDetailThe group detail data.
badge_numint32The badge number of outstanding group invitations.

FPgosClientRejectGroupInvitationRsp

struct FPgosClientRejectGroupInvitationRsp
fieldtypedescription
badge_numint32The badge number of outstanding group invitations.

FPgosClientUpdateGroupRsp

struct FPgosClientUpdateGroupRsp
fieldtypedescription
group_detailFPgosClientGroupDetailThe updated group detail.
is_profaneboolWhether the updated data contains profanity words.

FPgosClientPrivacySettingInfo

The privacy settings of player, the initial default values of the setting items can be set on the PGOS portal.

struct FPgosClientPrivacySettingInfo
fieldtypedescription
allow_searched_by_othersboolWhether allow being searched by other players, true: allowed, false: not allowed.
allow_friend_requestboolWhether allow receiving other players' add-friend requests, true: allow, false: not allow.
allow_nonfriend_perschatboolWhether allow non-friend players to have a personal chat with you, true: allow, false: not allow.
allow_group_invitationboolWhether allow other players to invite you to join a group, true: allow, false: not allow.
chat_strategyEPgosClientPrivacyChatStrategyText and voice chat privacy settings.

FPgosClientTssAccountInfo

Account information for user input check. For the meaning of each field, see the TSS documentation.

struct FPgosClientTssAccountInfo
fieldtypedescription
accountFStringSee the TSS documentation for the meaning of the field.
account_typeint32See the TSS documentation for the meaning of the field.
area_idint32See the TSS documentation for the meaning of the field.
plat_idint32See the TSS documentation for the meaning of the field.
world_idint32See the TSS documentation for the meaning of the field.
role_idFStringSee the TSS documentation for the meaning of the field.
role_nameFStringSee the TSS documentation for the meaning of the field.
role_pic_urlFStringSee the TSS documentation for the meaning of the field.
role_levelint32See the TSS documentation for the meaning of the field.
user_signFStringSee the TSS documentation for the meaning of the field.
user_descFStringSee the TSS documentation for the meaning of the field.

FPgosClientTssHandledIn

Contextual information of the API.

struct FPgosClientTssHandledIn
fieldtypedescription
scene_nameFStringScene name defined by PGOS.
moduleFStringModule name where the API is located.
func_nameFStringName of the API.
func_paramsFStringRequest parameters of the API.

FPgosClientTssHandledOut

TSS information that needs to be returned.

struct FPgosClientTssHandledOut
fieldtypedescription
scene_idint32See the TSS documentation for the meaning of the field.
account_infoFPgosClientTssAccountInfoSee the TSS documentation for the meaning of the field.
extraFStringSee the TSS documentation for the meaning of the field.

FPgosClientSendGroupMsgParams

Request struct for sending group message

struct FPgosClientSendGroupMsgParams
fieldtypedescription
group_idFStringGroup ID
contentFStringContent, content length cannot exceed 1024 characters
custom_dataFStringAdditional information added by the game, content size cannot exceed 8KB in a narrow-character string, if it is a wide-character string, it should be converted to a utf-8 narrow-character string before calculating its length.
mentioned_playersTArray<FPgosClientMentionedPlayer>The mentioned player list. The mentioned players will receive the corresponding events. When the value of player_id is '@ALL', it means mentioning all players.

FPgosClientGroupNameChangedEvt

Event result of group name changed

struct FPgosClientGroupNameChangedEvt
fieldtypedescription
operator_infoFPgosClientGroupMemberBriefThe person who modified the group information
group_nameFStringNew group name

FPgosClientGroupDescChangedEvt

Event result of group description change

struct FPgosClientGroupDescChangedEvt
fieldtypedescription
operator_infoFPgosClientGroupMemberBriefThe person who modified the group information
group_descFStringNew group description

FPgosClientGroupMemberJoinedEvt

Event result of new member of the group

struct FPgosClientGroupMemberJoinedEvt
fieldtypedescription
member_infoFPgosClientGroupMemberNew member
is_invitedboolWhether the member was invited in
inviter_infoFPgosClientGroupMemberBriefWho invited the member

FPgosClientGroupMemberLeftEvt

Event result of member left the group

struct FPgosClientGroupMemberLeftEvt
fieldtypedescription
member_infoFPgosClientGroupMemberBriefMember who left

FPgosClientGroupMemberRemovedEvt

Event result of member removed from group

struct FPgosClientGroupMemberRemovedEvt
fieldtypedescription
operator_infoFPgosClientGroupMemberBriefThe person who removed the member
removed_member_infoFPgosClientGroupMemberBriefRemoved member

FPgosClientGroupAnnouncementChangedEvt

Event result of group description change

struct FPgosClientGroupAnnouncementChangedEvt
fieldtypedescription
operator_infoFPgosClientGroupMemberBriefThe person who modified the group information
announcementFStringNew announcement

FPgosClientGroupOwnerChangedEvt

Event result of group owner change

struct FPgosClientGroupOwnerChangedEvt
fieldtypedescription
owner_infoFPgosClientGroupMemberBriefNew owner of the group

FPgosClientGroupAdminGrantedEvt

Event result of group admin granted

struct FPgosClientGroupAdminGrantedEvt
fieldtypedescription
operator_infoFPgosClientGroupMemberBriefOperator
member_infoFPgosClientGroupMemberBriefWho granted as administrator

FPgosClientGroupAdminRevokedEvt

Event result of group admin revoked

struct FPgosClientGroupAdminRevokedEvt
fieldtypedescription
operator_infoFPgosClientGroupMemberBriefOperator
member_infoFPgosClientGroupMemberBriefwhose admin is revoked

FPgosClientGroupMsgEventContent

Group chat event message content

struct FPgosClientGroupMsgEventContent
fieldtypedescription
event_typeEPgosClientGroupEventTypeGroup event type, rRead the specified event content according to the event type
group_name_changedFPgosClientGroupNameChangedEvtEvent content of group name changed
group_desc_changedFPgosClientGroupDescChangedEvtEvent content of group description changed
group_member_joinedFPgosClientGroupMemberJoinedEvtEvent content of new member of the group
group_member_leftFPgosClientGroupMemberLeftEvtEvent content of member left the group
group_member_removedFPgosClientGroupMemberRemovedEvtEvent content of member removed from group
group_announcement_changedFPgosClientGroupAnnouncementChangedEvtEvent content of group description changed
group_owner_changedFPgosClientGroupOwnerChangedEvtEvent content of group owner changed
group_admin_grantedFPgosClientGroupAdminGrantedEvtEvent content of group admin granted
group_admin_revokedFPgosClientGroupAdminRevokedEvtEvent content of group admin revoked

FPgosClientGroupMsgContent

Group chat message content

struct FPgosClientGroupMsgContent
fieldtypedescription
text_contentFStringTake the value from here when msg type is MsgTypeText
event_contentFPgosClientGroupMsgEventContentTake the value from here when msg type is MsgTypeEvent
custom_contentFStringTake the value from here when msg type is MsgTypeCustom

FPgosClientGroupMsgInfo

Group chat message info

struct FPgosClientGroupMsgInfo
fieldtypedescription
senderFPgosClientGroupMemberThe member who sent the message
sent_timeint64The time the message was sent
msg_typeEPgosClientChatMsgTypeThe type of the message
contentFPgosClientGroupMsgContentThe message to be sent
seqint64The sequence number of the message
custom_dataFStringAdditional information added by the game
mentioned_playersTArray<FPgosClientMentionedPlayer>The mentioned player list. The mentioned players will receive the corresponding events. When the value of player_id is '@ALL', it means mentioning all players.

FPgosClientGroupBrief

Group brief information

struct FPgosClientGroupBrief
fieldtypedescription
group_idFStringUnique id of group
nameFStringGroup name
iconFStringGroup icon
global_custom_dataTMap<FString, FString>Group global custom data. Can be modified by the group owner or administrators.

FPgosClientGroupItem

Group item

struct FPgosClientGroupItem
fieldtypedescription
group_briefFPgosClientGroupBriefGroup brief information
latest_msgFPgosClientGroupMsgInfoRecent chat message info
unread_countint32Unread message count

FPgosClientGetMyGroupListResult

My group list

struct FPgosClientGetMyGroupListResult
fieldtypedescription
group_listTArray<FPgosClientGroupItem>My group list

FPgosClientGetGroupChatMsgListResult

Result of get group chat message list

struct FPgosClientGetGroupChatMsgListResult
fieldtypedescription
msg_listTArray<FPgosClientGroupMsgInfo>Chat message info list
already_read_seqint64Messages with seq less than or equal to this have already been read
has_moreboolWhether has more message
next_seqint64The starting sequence for the next query

FPgosClientReceiveGroupMsgEvt

Event result of receive group chat message

struct FPgosClientReceiveGroupMsgEvt
fieldtypedescription
msgFPgosClientGroupMsgInfoGroup chat message received
group_briefFPgosClientGroupBriefGroup brief info
unread_countint32Count of unread message from group

FPgosClientSendGroupMsgResult

Result of send a group message

struct FPgosClientSendGroupMsgResult
fieldtypedescription
msgFPgosClientGroupMsgInfoGroup chat message
group_briefFPgosClientGroupBriefGroup brief info

FPgosClientGroupMentionedInfo

Result of get group mentioned record.

struct FPgosClientGroupMentionedInfo
fieldtypedescription
msgFPgosClientGroupMsgInfoGroup chat message received
group_briefFPgosClientGroupBriefGroup brief info

FPgosClientGroupNewMentionedEvt

Event result of new mentioned.

struct FPgosClientGroupNewMentionedEvt
fieldtypedescription
msgFPgosClientGroupMsgInfoGroup chat message received
group_briefFPgosClientGroupBriefGroup brief info

FPgosClientGetMailListParams

Request parameters for get mail list.

struct FPgosClientGetMailListParams
fieldtypedescription
categoryEPgosClientMailCategoryQuery the specified category.
offsetint32The starting position of the list.
countint32The query count.

FPgosClientUnclaimedItem

In-game Item not claimed.

struct FPgosClientUnclaimedItem
fieldtypedescription
itemFPgosInGameItemEconomy item.
amountint32The amount of item.

FPgosClientMailAttachmentInfo

Mail attachment information.

struct FPgosClientMailAttachmentInfo
fieldtypedescription
itemsTArray<FPgosClientUnclaimedItem>Items waiting to be claimed.
currenciesTArray<FPgosCurrency>Currencies waiting to be claimed.
is_gift_from_playerboolIs it a gift from the player.
giverFPgosPlayerInfoIf 'is_gift_from_player' is true, 'giver' represents the player who gave the gift.
is_claimedboolIs it claimed.

FPgosClientMailInfo

Mail information.

struct FPgosClientMailInfo
fieldtypedescription
mail_idFStringMail ID.
titleFStringMail title.
categoryEPgosClientMailCategoryMail category.
contentFStringMail content.
attachmentFPgosClientMailAttachmentInfoMail attachment.
custom_dataFStringCustom data for mail.
sent_timeint64The time the mail was sent.
is_readboolWhether the mail is marked as read.

FPgosClientGetMailListResult

Result of get mail list.

struct FPgosClientGetMailListResult
fieldtypedescription
mail_listTArray<FPgosClientMailInfo>Mail info list.
has_moreboolHas more.
next_offsetint32The next starting position of the list.
total_numint32The total number of mails in the specified category. When the query category is 'All', it indicates the total number of mails in all categories.

FPgosClientClaimMailAttachmentResult

Result of claim mail attachment.

struct FPgosClientClaimMailAttachmentResult
fieldtypedescription
item_instsFPgosItemInstPackThe item instances obtained after claim attachments.
currenciesTArray<FPgosCurrency>The currencies obtained after claim attachments.
conflict_unique_itemsTArray<FPgosClientUnclaimedItem>Unique items that already in inventory cause failed to be granted.
failsTMap<FString, FString>Mails that failed to claim attachments, key: mail ID, value: failed reason.

FPgosClientGetMailBadgeNumResult

Result of get mail badge number.

struct FPgosClientGetMailBadgeNumResult
fieldtypedescription
category_badge_numTMap<EPgosClientMailCategory, int32>Mail unread count by category.
total_badge_numint32Total unread count.

FPgosClientBadgeNumOfMailEvt

Event result of badge num of mail.

struct FPgosClientBadgeNumOfMailEvt
fieldtypedescription
total_badge_numint32Total unread count.

FPgosClientReceiveNewMailEvt

Event result of receive new mail.

struct FPgosClientReceiveNewMailEvt
fieldtypedescription
mailFPgosClientMailInfoNew mail.

FPgosClientRelationshipInfo

Information of the relationship with other players.

struct FPgosClientRelationshipInfo
fieldtypedescription
is_blockedboolWhether the player is blocked
is_friendboolWhether the player is in friend list
friend_remarkFStringFriend remark. Only valid if the player is in friend_list
befriend_timeint64The time when the player became friend, in seconds. Only valid if the player is in friend_list

FPgosClientGetPlayerProfileResult

Result of get player profile

struct FPgosClientGetPlayerProfileResult
fieldtypedescription
player_infoFPgosPlayerInfo
player_presenceFPgosClientPlayerPresence
relationship_infoFPgosClientRelationshipInfo
last_play_timeint64The time when the current logged in player played games with the player last time, in seconds

FPgosClientPublicChatSystemContent

Public chat system message content.

struct FPgosClientPublicChatSystemContent
fieldtypedescription
msgFStringSystem message content.
duration_secint32Indicates how long a system message will expire. The players will receive the system messages that were sent before they join, as long as the message doesn't expire.

FPgosClientPublicChatMsgContent

Public chat message content

struct FPgosClientPublicChatMsgContent
fieldtypedescription
text_contentFStringTake the value from here when msg type is MsgTypeText.
system_contentFPgosClientPublicChatSystemContentTake the value from here when msg type is MsgTypeSystem.
custom_contentFStringTake the value from here when msg type is MsgTypeCustom.

FPgosClientPublicChatMsgInfo

Public chat message info.

struct FPgosClientPublicChatMsgInfo
fieldtypedescription
msg_typeEPgosClientChatMsgTypeThe type of the message.
contentFPgosClientPublicChatMsgContentThe message to be sent.
senderFPgosPlayerInfoThe player who sent the message.
sent_timeint64The time the message was sent.
seqint64The sequence number of the message
custom_dataFStringCustom data for message.
mentioned_playersTArray<FPgosClientMentionedPlayer>The mentioned player list. The mentioned players will receive the corresponding events. When the value of player_id is '@ALL', it means mentioning all players.

FPgosClientPublicChatChannelInfo

The channel info of public chat

struct FPgosClientPublicChatChannelInfo
fieldtypedescription
channel_nameFStringChannel name.

FPgosClientJoinPublicChatResult

Result of join public chat.

struct FPgosClientJoinPublicChatResult
fieldtypedescription
channel_infoFPgosClientPublicChatChannelInfoThe channel info of public chat.

FPgosClientSendPublicChatMsgParams

Request parameters for sending public chat message.

struct FPgosClientSendPublicChatMsgParams
fieldtypedescription
channel_nameFStringThe name of the channel on which the message was sent.
contentFStringThe content of the message to be sent.
custom_dataFStringCustom data for message.
mentioned_playersTArray<FPgosClientMentionedPlayer>The mentioned player list. The mentioned players will receive the corresponding events. When the value of player_id is '@ALL', it means mentioning all players.

FPgosClientSendPublicChatMsgResult

Result of send public chat message.

struct FPgosClientSendPublicChatMsgResult
fieldtypedescription
msgFPgosClientPublicChatMsgInfoPublic chat message.
channel_infoFPgosClientPublicChatChannelInfoPublic chat channel info.

FPgosClientReceivePublicChatMsgEvt

Event result of receive public chat message.

struct FPgosClientReceivePublicChatMsgEvt
fieldtypedescription
msgFPgosClientPublicChatMsgInfoPublic chat message.
channel_infoFPgosClientPublicChatChannelInfoPublic chat channel info.

FPgosClientPublicChatMentionedInfo

Result of get public chat mentioned record.

struct FPgosClientPublicChatMentionedInfo
fieldtypedescription
msgFPgosClientPublicChatMsgInfoPublic chat message.
channel_infoFPgosClientPublicChatChannelInfoPublic chat channel info.

FPgosClientPublicChatNewMentionedEvt

Event result of new mentioned.

struct FPgosClientPublicChatNewMentionedEvt
fieldtypedescription
msgFPgosClientPublicChatMsgInfoPublic chat message.
channel_infoFPgosClientPublicChatChannelInfoPublic chat channel info.

FPgosClientGoalRewardItem

In-game item as goal rewards.

struct FPgosClientGoalRewardItem
fieldtypedescription
itemFPgosInGameItemIn-game item.
amountint32Amount of the item.

FPgosClientPlayerGoalPass

Pass for rewards in a hyper goal.

struct FPgosClientPlayerGoalPass
fieldtypedescription
pass_idFStringThe identifier of the pass.
nameFStringName of the pass.
descriptionFStringDescription of the pass.
iconFStringIcon records the resource address of the pass icon shown to players.
is_activatedboolWhether the pass is activated for the player.

FPgosClientGoalReward

The reward that will available to players when a goal or a tier is reached.

struct FPgosClientGoalReward
fieldtypedescription
reward_idFStringThe identifier of the reward.
pass_idFStringThe access pass's id for the reward.
is_claimedboolTrue if the reward is claimed by the player.
claimed_timeint64Unix timestamp that the reward is claimed.
itemsTArray<FPgosClientGoalRewardItem>The in-game items in this reward
currenciesTArray<FPgosCurrency>The currencies in this reward

FPgosClientPlayerGoalTier

struct FPgosClientPlayerGoalTier
fieldtypedescription
tier_idFStringThe identifier of the tier.
nameFStringName of the tier.
orderint32Order of the tier.
achieve_valueint32The value of achieve data of a player to achieve the tier.
is_achievedboolTrue if the tier is achieved by the player.
achieved_timeint64Unix timestamp that the reward is claimed.
tier_rewardsTArray<FPgosClientGoalReward>Rewards of the tier.

FPgosClientGoalBaseInfo

struct FPgosClientGoalBaseInfo
fieldtypedescription
player_goal_idFStringId of the player goal. The player goal id will be different when the goal appears in different available periods.
goal_idFStringThe identifier of the goal.
typeEPgosClientGoalTypeType of the goal.
nameFStringName of the goal.
descriptionFStringDescription of the goal.
iconFStringIcon records the resource address of the goal icon shown to players.
tagsTArray<FString>Tag strings of the goal.

FPgosClientSimpleGoal

struct FPgosClientSimpleGoal : public FPgosClientGoalBaseInfo

parent: FPgosClientGoalBaseInfo

fieldtypedescription
achieve_valueint32The value of achieve data of a player to achieve the simple goal.
current_valueint32The current value of the achieve data.
is_achievedboolTrue if the simple goal is achieved by the player.
achieved_timeint64Unix timestamp that the reward is claimed.
rewardFPgosClientGoalRewardThe reward players can get if they achieve the goal.

FPgosClientHyperGoal

struct FPgosClientHyperGoal : public FPgosClientGoalBaseInfo

parent: FPgosClientGoalBaseInfo

fieldtypedescription
passesTArray<FPgosClientPlayerGoalPass>Passes of the hyper goal.
tiersTArray<FPgosClientPlayerGoalTier>Tiers of the hyper goal.
current_tier_idFStringThe tier that the player is challenging now. When the Algorithm Type is Absolute, current value is the same as the value of player's achieve data. When the Algorithm Type is Increment, current value is the incremental value obtained by the player achieve data in the current tier.
current_valueint32The current value of the achieve data of the hyper goal.

FPgosClientAvailablePeriod

Available period info.

struct FPgosClientAvailablePeriod
fieldtypedescription
period_idFStringPeriod id.
player_goal_idsTArray<FString>Player goal ids within the available period.
simple_goalsTMap<FString, FPgosClientSimpleGoal>Mapping of player goal id to simple player goal.
hyper_goalsTMap<FString, FPgosClientHyperGoal>Mapping of player goal id to hyper player goal.
start_timeint64Start Unix timestamp of the period.
end_timeint64End Unix timestamp of the period.
lengthint64Length of the available period. Counting in second.

FPgosClientGoalsSchedule

Goal schedule info.

struct FPgosClientGoalsSchedule
fieldtypedescription
schedule_idFStringThe identifier of a goals schedule.
nameFStringName of a goals schedule.
descriptionFStringDescription of a goals schedule.
statusEPgosClientScheduleStatusStatus of a goals schedule.
periodsTMap<FString, FPgosClientAvailablePeriod>Available periods of the schedule. For current period, a fully AvailablePeriod structure will be returned. For next period, only the time schedule of of the period will be returned.
current_period_idFStringThe nearest available period to the current time, which is already active.
next_period_idFStringThe nearest available period to the current time that is not yet active.
reward_wayEPgosClientGoalRewardWayThe reward way of the goals within the goals schedule.

FPgosClientGetGoalTiersResult

struct FPgosClientGetGoalTiersResult
fieldtypedescription
tiersTArray<FPgosClientPlayerGoalTier>Tiers info.
next_orderint32Next tier's roder.

FPgosClientClaimGoalsRewardResult

Result of claim goal rewards.

struct FPgosClientClaimGoalsRewardResult
fieldtypedescription
item_instsFPgosItemInstPackThe item instances obtained after claim attachments.
currenciesTArray<FPgosCurrency>The currencies obtained after claim attachments.
conflict_unique_itemsTArray<FPgosClientUnclaimedItem>Unique items that already in inventory that failed to be granted.

FPgosClientSimpleGoalAchievedEvt

The event will be triggered when a simple goal achieved.

struct FPgosClientSimpleGoalAchievedEvt
fieldtypedescription
achieved_goalFPgosClientSimpleGoalThe simple goal that has been achieved.

FPgosClientHyperGoalAchievedEvt

The event will be triggered when some tiers of a hyper goal achieved.

struct FPgosClientHyperGoalAchievedEvt
fieldtypedescription
achieved_goalFPgosClientHyperGoal
achieved_tiers_idsTArray<FString>The tier id that has been achieved.

FPgosClientTitleRegionClosedEvt

The event will be triggered when the title region is closed. After the title region is closed, players can no longer access new logins, new matchmaking, or new battle session placements.

struct FPgosClientTitleRegionClosedEvt
fieldtypedescription
current_timeint64The current Unix timestamp of the backend server. (in seconds)
kicked_offline_timeint64The approximate Unix timestamp at which the player will be kicked offline. (in seconds) If the value is 0, the PGOS backend will kick the player offline soon. If the value is -1, the PGOS backend will still allow the current player to remain online, and battle sessions the player is in will not be affected.

FPgosClientEventChannelStatusChangedEvt

The event will be triggered when the event channel status has been changed. The Event Channel serves as a data pipeline for the PGOS backend to send event notifications (e.g., chat_messages/friend_requests) to the client. Its status can be influenced by factors such as API calls (e.g., login/logout) and fluctuations in the network environment. In certain scenarios, the event helps the game/player understand the possible reasons for PGOS/game service degradation.

struct FPgosClientEventChannelStatusChangedEvt
fieldtypedescription
current_statusEClientPgosEventChannelStatusIndicate the current status of the event channel.
last_statusEClientPgosEventChannelStatusIndicate the status of the event channel in the previous StatusChanged event. If there is no previous event (meaning it is the first event), its value is set to 'Dummy'.

FPgosClientDescribeBattleSessionsResult

struct FPgosClientDescribeBattleSessionsResult
fieldtypedescription
battle_sessionsTArray<FPgosClientBattleSessionInfo>The battle sesions that a player is participating in.

FPgosClientDSHostingLatencies

The latencies from the client to the DS hosting data centers.

struct FPgosClientDSHostingLatencies
fieldtypedescription
latenciesTMap<FString, int32>The latencies from the client to the DS hosting data centers. Key: The data center name and its possible values can be viewed in the 'DataCenterName' definition. Value: The latency to the data center, in milliseconds.

FPgosClientGameCustomMsgEvt

The event will be triggered when the game calls the HTTP API 'PushMsg'.

struct FPgosClientGameCustomMsgEvt
fieldtypedescription
msg_typeFStringCorresponds to the 'msg_type' parameter of the HTTP API 'PushMsg'.
msgFStringCorresponds to the 'msg' parameter of the HTTP API 'PushMsg'.

FPgosClientCycleInfo

Information of cycle which configured on the portal.

struct FPgosClientCycleInfo
fieldtypedescription
cycle_nameFStringCycle name.
cycle_start_timeint64Start time of the cycle. Unix time in second.
cycle_end_timeint64End time of the cycle. Unix time in second.
lock_time_spanint32Lock time span of this cycle. After setting, the period before the end of each round will be locked, and the leaderboard data will not be updated during the locked period. Unix time in second.

FPgosClientLeaderboardRoundInfo

Information of leaderboard round.

struct FPgosClientLeaderboardRoundInfo
fieldtypedescription
round_seqint32The sequence number of the leaderboard round. Start from 1, the numbers are increasing in sequence, increasing by 1 in each round. 0 means the data of this round info is invalid or has been cleared.
round_start_timeint64The round start time. Unix time in second.
round_end_timeint64The round end time. Unix time in second.
round_lockedboolTrue if this round has been locked or end.

FPgosClientLeaderboardInfo

Information of leaderboard.

struct FPgosClientLeaderboardInfo
fieldtypedescription
leaderboard_nameFStringThe name of the leaderboard.
stat_nameFStringThe name of the stat bound to the leaderboard.
is_cycledboolIs this leaderboard a cycled leaderboard.
cycle_infoFPgosClientCycleInfoThe information of cycle bound to the leaderboard. This is only meaningful if is_cycled is true.
round_infoFPgosClientLeaderboardRoundInfoRound information for a specified time or current time. This is only meaningful if is_cycled is true.

FPgosClientLBRankingItem

Ranking item of leaderboard.

struct FPgosClientLBRankingItem
fieldtypedescription
rankint32The ranking number, start from 1.
keyFStringStat item key.
valuedoubleStat item value.
secondary_valuedoubleStat item secondary value.
custom_dataFStringStat item custom data, used to store additional information.

FPgosClientLBRankingListResult

Response for get ranking list.

struct FPgosClientLBRankingListResult
fieldtypedescription
itemsTArray<FPgosClientLBRankingItem>List of ranking items.
leaderboard_infoFPgosClientLeaderboardInfoLeaderboard information.
total_numint32The total number of ranking items.
next_offsetint32The next starting position of the list.

FPgosClientLBRankingItemPos

Current ranking list item with neighbor items.

struct FPgosClientLBRankingItemPos
fieldtypedescription
itemFPgosClientLBRankingItemCurrent ranking item.
preceding_itemsTArray<FPgosClientLBRankingItem>Preceding items.
subsequent_itemsTArray<FPgosClientLBRankingItem>Subsequent items.
leaderboard_infoFPgosClientLeaderboardInfoLeaderboard information.

FPgosClientGetRankingListParams

struct FPgosClientGetRankingListParams
fieldtypedescription
leaderboard_nameFStringThe name of the leaderboard to query.
offsetint32The starting position of the query.
countint32The query count.
leaderboard_round_seqint32[Option] Query the ranking list of the specified round in the cycled leaderboard. The default value 0 means querying the ranking of the current round.

FPgosClientGetFriendsRankingListParams

struct FPgosClientGetFriendsRankingListParams
fieldtypedescription
leaderboard_nameFStringThe name of the leaderboard to query.
leaderboard_round_seqint32[Option] Query the ranking list of the specified round in the cycled leaderboard. The default value 0 means querying the ranking of the current round.

FPgosClientLBFriendsRankingListResult

Response for get friends ranking list.

struct FPgosClientLBFriendsRankingListResult
fieldtypedescription
itemsTArray<FPgosClientLBRankingItem>List of friends ranking items. The stat item key was filled with player id.
friend_infosTMap<FString, FPgosClientPlayerFriendInfo>Friends' details. key: player id Note that this only contains the player information of friends, not my own. The 'items' contains my ranking.
leaderboard_infoFPgosClientLeaderboardInfoLeaderboard information.

FPgosClientGetRankingItemPosParams

struct FPgosClientGetRankingItemPosParams
fieldtypedescription
leaderboard_nameFStringThe name of the leaderboard to query.
keyFStringThe stat item key to query.
neighbor_cntint32Specify the desired number of preceding and subsequent neighbors, ranging from 0 to 10. For example: if neighbor_cnt is 3, then you will get 3 preceding neighbors and 3 subsequent neighbors.
leaderboard_round_seqint32[Option] Query the ranking list of the specified round in the cycled leaderboard. The default value 0 means querying the ranking of the current round.

FPgosClientSetGroupGlobalCustomDataParams

struct FPgosClientSetGroupGlobalCustomDataParams
fieldtypedescription
group_idFStringThe group id.
global_custom_dataTMap<FString, FString>Custom data to be modified or added.

FPgosClientSetGroupGlobalCustomDataResult

struct FPgosClientSetGroupGlobalCustomDataResult
fieldtypedescription
global_custom_dataTMap<FString, FString>Updated full global custom data.

FPgosClientDelGroupGlobalCustomDataParams

struct FPgosClientDelGroupGlobalCustomDataParams
fieldtypedescription
group_idFStringThe group id.
keysTArray<FString>Custom data keys to delete.

FPgosClientDelGroupGlobalCustomDataResult

struct FPgosClientDelGroupGlobalCustomDataResult
fieldtypedescription
global_custom_dataTMap<FString, FString>Updated full global custom data.
failsTMap<FString, FString>Keys failed to delete, and also with the reason.

FPgosClientClearGroupGlobalCustomDataParams

struct FPgosClientClearGroupGlobalCustomDataParams
fieldtypedescription
group_idFStringThe group id.

FPgosClientSetGroupMyPlayerCustomDataParams

struct FPgosClientSetGroupMyPlayerCustomDataParams
fieldtypedescription
group_idFStringThe group id.
player_custom_dataFStringCustom data for current player.

FPgosClientSetGroupMyPlayerCustomDataResult

struct FPgosClientSetGroupMyPlayerCustomDataResult
fieldtypedescription
player_custom_dataFStringUpdated custom data for current player.

FPgosClientBatchSetGroupPlayerCustomDataParams

struct FPgosClientBatchSetGroupPlayerCustomDataParams
fieldtypedescription
group_idFStringThe group id.
player_custom_dataTMap<FString, FString>Map from player id to player custom data.

FPgosClientBatchSetGroupPlayerCustomDataResult

struct FPgosClientBatchSetGroupPlayerCustomDataResult
fieldtypedescription
player_custom_dataTMap<FString, FString>Updated custom data for each player.
failsTMap<FString, FString>Keys failed to set, and also with the reason.

FPgosClientJoinWorldParams

struct FPgosClientJoinWorldParams
fieldtypedescription
world_configFStringWorld config name that request to join.
filter_attributesTMap<FString, FPgosKVDataValue>Attributes needed by world buckets filters, map key: attribute name, map value: attribute value.
team_nameFStringThe team name that the player will join in the world battle session. If empty, the player will be assigned to a [default] team.

FPgosClientJoinWorldResult

struct FPgosClientJoinWorldResult
fieldtypedescription
battle_sessionFPgosClientBattleSessionInfoThe battle session that the world assigned for the players.

FPgosClientInviteJoinWorldParams

struct FPgosClientInviteJoinWorldParams
fieldtypedescription
world_configFStringWorld config name that request to join.
filter_attributesTMap<FString, FPgosKVDataValue>Attributes needed by world buckets filters, map key: attribute name, map value: attribute value.
invited_player_idsTArray<FString>Player IDs who will be invited to join the same world. (Must include at least 1 player) These invited players will receive the 'OnJoinWorldInvitationUpdated' event on their game client. Players who accept (AcceptJoinWorldInvitation API) the invitation will be assigned to the same world battle session as the current player. Players who reject (RejectJoinWorldInvitation API) the invitation will skip the invitation and will not be affected. The inviter (current player) will also receive the 'OnJoinWorldInvitationUpdated' event to know the status of the invitation being accepted or rejected. The inviter will automatically accept the invitation.
team_nameFStringThe team name that the player will join in the world battle session. If empty, the player will be assigned to a [default] team.

FPgosClientInviteJoinWorldResult

struct FPgosClientInviteJoinWorldResult
fieldtypedescription
world_configFStringThe world configuration name associated with the invitation ticket.
invitation_ticketFStringThe ticket of the join world invitation.

FPgosClientInviteLeaveWorldParams

struct FPgosClientInviteLeaveWorldParams
fieldtypedescription
world_configFStringWorld config name that request to join.
invited_player_idsTArray<FString>Player IDs who will be invited to leave the same world. (Must include at least 1 player) These invited players will receive the 'OnLeaveWorldInvitationUpdated' event on their game client. Players who accept (AcceptLeaveWorldInvitation API) the invitation will be removed from the world. Players who reject (RejectLeaveWorldInvitation API) the invitation will skip the invitation and will not be affected. The inviter (current player) will also receive the 'OnLeaveWorldInvitationUpdated' event to know the status of the invitation being accepted or rejected. The inviter will automatically leave the world.

FPgosClientInviteLeaveWorldResult

struct FPgosClientInviteLeaveWorldResult
fieldtypedescription
world_configFStringThe world configuration name associated with the invitation ticket.
invitation_ticketFStringThe ticket of the leave world invitation.

FPgosClientLeaveWorldParams

struct FPgosClientLeaveWorldParams
fieldtypedescription
world_configFStringWorld config name that request to leave.

FPgosClientJoinWorldBattleSessionParams

struct FPgosClientJoinWorldBattleSessionParams
fieldtypedescription
world_configFStringWorld config name that request to join.
battle_session_idFStringThe world battle session id to join.
payloadFStringThe game custom data, which will be passed to the DS (dedicated server). It can be obtained by monitoring the 'OnBattleSessionUpdated' event of the Hosting module: FServerBattleSessionUpdatedEvt.new_player_battle_sessions.payload.
team_nameFStringThe team name that the player will join in the world battle session. If empty, the player will be assigned to a [default] team.

FPgosClientJoinWorldBattleSessionResult

struct FPgosClientJoinWorldBattleSessionResult
fieldtypedescription
battle_sessionFPgosClientBattleSessionInfoBattle session detail info.

FPgosClientInviteJoinWorldBattleSessionParams

struct FPgosClientInviteJoinWorldBattleSessionParams
fieldtypedescription
world_configFStringWorld config name that request to join.
battle_session_idFStringThe world battle session id to join.
payloadFStringThe game custom data, which will be passed to the DS (dedicated server). It can be obtained by monitoring the Hosting module event (OnBattleSessionUpdatedEvt): BattleSessionUpdatedEvt.new_player_battle_sessions.payload.
invited_player_idsTArray<FString>Player IDs who will be invited to join the same world battle session. (Must include at least 1 player) These invited players will receive the 'OnJoinWorldInvitationUpdated' event on their game client. Players who accept (AcceptJoinWorldInvitation API) the invitation will be assigned to the same world battle session as the current player. Players who reject (RejectJoinWorldInvitation API) the invitation will skip the invitation and will not be affected. The inviter (current player) will also receive the 'OnJoinWorldInvitationUpdated' event to know the status of the invitation being accepted or rejected. The inviter will automatically accept the invitation.
team_nameFStringThe team name that the player will join in the world battle session. If empty, the player will be assigned to a [default] team.

FPgosClientInviteJoinWorldBattleSessionResult

struct FPgosClientInviteJoinWorldBattleSessionResult
fieldtypedescription
world_configFStringThe world configuration name associated with the invitation ticket.
invitation_ticketFStringThe ticket of the join world invitation.

FPgosClientAcceptJoinWorldInvitationParams

struct FPgosClientAcceptJoinWorldInvitationParams
fieldtypedescription
invitation_ticketFStringThe ticket of the join world invitation.

FPgosClientRejectJoinWorldInvitationParams

struct FPgosClientRejectJoinWorldInvitationParams
fieldtypedescription
invitation_ticketFStringThe ticket of the join world invitation.

FPgosClientAcceptLeaveWorldInvitationParams

struct FPgosClientAcceptLeaveWorldInvitationParams
fieldtypedescription
invitation_ticketFStringThe ticket of the leave world invitation.

FPgosClientRejectLeaveWorldInvitationParams

struct FPgosClientRejectLeaveWorldInvitationParams
fieldtypedescription
invitation_ticketFStringThe ticket of the leave world invitation.

FPgosClientQueryMyWorldBattleSessionsParams

struct FPgosClientQueryMyWorldBattleSessionsParams
fieldtypedescription
world_configsTArray<FString>Worlds to query.

FPgosClientQueryMyWorldBattleSessionsResult

struct FPgosClientQueryMyWorldBattleSessionsResult
fieldtypedescription
world_battle_sessionsTMap<FString, FPgosClientBattleSessionInfo>A map from world config name to the battle session. Only contains the worlds that the player has joined.

FPgosClientQueryPlayerWorldBattleSessionsParams

struct FPgosClientQueryPlayerWorldBattleSessionsParams
fieldtypedescription
player_idFStringPlayer to query.
world_configsTArray<FString>Worlds to query.

FPgosClientQueryPlayerWorldBattleSessionsResult

struct FPgosClientQueryPlayerWorldBattleSessionsResult
fieldtypedescription
world_battle_sessionsTMap<FString, FPgosClientBattleSessionInfo>A map from world config name to the battle session. Only contains the worlds that the player has joined.

FPgosClientQueryJoinWorldInvitationParams

struct FPgosClientQueryJoinWorldInvitationParams
fieldtypedescription
invitation_ticketFStringThe invitation ticket to query.

FPgosClientJoinWorldInvitationInfo

The join world invitation detail information.

struct FPgosClientJoinWorldInvitationInfo
fieldtypedescription
world_configFStringThe world configuration name associated with the invitation ticket.
inviterFPgosPlayerInfoThe player who initiated the invitation.
invitation_ticketFStringThe ticket of the join world invitation.
statusEPgosClientJoinWorldInvitationStatusThe status of the Join World invitation. Typically, the player who accepts the invitation will receive the 'OnWorldBattleSessionUpdated' event after the invitation status is marked as 'Completed'. However, if the player is already in the assigned battle session before the invitation, and has obtained the battle session's IP&port (which means he has received the relevant event of the battle session status being Active), then he may not be pushed the 'OnWorldBattleSessionUpdated' event.
error_msgFStringThe error message when the status is 'Error'.
my_action_to_invitationEPgosClientJoinWorldInvitationActionThe current player's action to this join world invitation. Call 'AcceptJoinWorldInvitation' API to accept the invitation and will receive the 'OnJoinWorldInvitationUpdated' event until the status is 'Completed'. Alternatively, call the 'RejectJoinWorldInvitation' API to reject the invitation and stop receiving the 'OnJoinWorldInvitationUpdated' event for this 'invitation_ticket'. Note: Once you have made your choice, you cannot change your decision.
accepted_playersTArray<FPgosPlayerInfo>Players who have accepted the invitation. (including the inviter)
rejected_playersTArray<FPgosPlayerInfo>Players who have rejected the invitation.
undecided_playersTArray<FPgosPlayerInfo>Players who have not yet made a decision.
invitation_created_timeint64The Unix timestamp(in seconds) when the invitation was created.
invitation_timeoutint32The maximum time(in seconds) to wait for all invited players to accept/reject. After the time (invitation_created_time+invitation_timeout), the event status will be updated to 'Completed'.
battle_session_idFStringThe world battle session joined by the players who accepted the invitation. It will be empty until the 'status' changes to 'JoinWorldInvitationStatus::Completed'.

FPgosClientLeaveWorldInvitationInfo

The leave world invitation detail information.

struct FPgosClientLeaveWorldInvitationInfo
fieldtypedescription
world_configFStringThe world configuration name associated with the invitation ticket.
inviterFPgosPlayerInfoThe player who initiated the invitation.
invitation_ticketFStringThe ticket of the leave world invitation.
statusEPgosClientLeaveWorldInvitationStatusThe status of the leave World invitation.
error_msgFStringThe error message when the status is 'Error'.
my_action_to_invitationEPgosClientLeaveWorldInvitationActionThe current player's action to this leave world invitation. Call 'AcceptLeaveWorldInvitation' API to accept the invitation and will receive the 'OnLeaveWorldInvitationUpdated' event until the status is 'Completed'. Alternatively, call the 'RejectLeaveWorldInvitation' API to reject the invitation and stop receiving the 'OnLeaveWorldInvitationUpdated' event for this 'invitation_ticket'. Note: Once you have made your choice, you cannot change your decision.
accepted_playersTArray<FPgosPlayerInfo>Players who have accepted the invitation. (including the inviter)
rejected_playersTArray<FPgosPlayerInfo>Players who have rejected the invitation.
undecided_playersTArray<FPgosPlayerInfo>Players who have not yet made a decision.
invitation_created_timeint64The Unix timestamp(in seconds) when the invitation was created.
invitation_timeoutint32The maximum time(in seconds) to wait for all invited players to accept/reject. After the time (invitation_created_time+invitation_timeout), the event status will be updated to 'Completed'.

FPgosClientQueryJoinWorldInvitationResult

struct FPgosClientQueryJoinWorldInvitationResult
fieldtypedescription
infoFPgosClientJoinWorldInvitationInfoThe join world invitation detail information.

FPgosClientGetRecommendedPlayersParams

struct FPgosClientGetRecommendedPlayersParams
fieldtypedescription
countint32Specifies the (maximum) number of players to be returned, its value range is: [1~50]

FPgosClientGetPotentialFriendsParams

struct FPgosClientGetPotentialFriendsParams
fieldtypedescription
countint32Specifies the (maximum) number of players to be returned, its value range is: [1~50]
offsetint32Specifies the offset of the first player to be returned.

FPgosClientWorldBattleSessionUpdatedEvt

struct FPgosClientWorldBattleSessionUpdatedEvt
fieldtypedescription
world_configFStringThe world configuration name associated with this update.
battle_sessionFPgosClientBattleSessionInfoThe updated details of the battle session that the current player joined.

FPgosClientWorldBattlePropertiesUpdatedEvt

struct FPgosClientWorldBattlePropertiesUpdatedEvt
fieldtypedescription
source_typeEPgosBattleSourceTypeThe source type of the battle session.
configuration_nameFStringWorld config name.
battle_session_idFStringWorld battle session id.
battle_propertiesTArray<FPgosBattleProperty>

FPgosClientJoinWorldInvitationUpdatedEvt

struct FPgosClientJoinWorldInvitationUpdatedEvt
fieldtypedescription
infoFPgosClientJoinWorldInvitationInfoThe join world invitation detail information.

FPgosClientLeaveWorldInvitationUpdatedEvt

struct FPgosClientLeaveWorldInvitationUpdatedEvt
fieldtypedescription
infoFPgosClientLeaveWorldInvitationInfoThe leave world invitation detail information.

FPgosClientLobbyJoinRequestEvt

struct FPgosClientLobbyJoinRequestEvt
fieldtypedescription
lobby_idFStringLobby id.
player_idFStringPlayer id who request to join the lobby.
payloadFStringPayload data from the request player.
tokenFStringThe token required to process this join request, which should be used in ApproveJoinRequest/RejectJoinRequest interface.

FPgosClientLobbyJoinRequestApprovedEvt

struct FPgosClientLobbyJoinRequestApprovedEvt
fieldtypedescription
lobby_detailFPgosClientLobbyDetailInfoThe lobby details information.

FPgosClientLobbyJoinRequestRejectedEvt

struct FPgosClientLobbyJoinRequestRejectedEvt
fieldtypedescription
lobby_idFStringLobby id.

FPgosClientLobbyGlobalCustomDataUpdatedEvt

struct FPgosClientLobbyGlobalCustomDataUpdatedEvt
fieldtypedescription
kv_dataTMap<FString, FString>Global kv data of the lobby. Only owner has the permission to modify it.
lobby_idFStringLobby id.

FPgosClientLobbyPlayerCustomDataUpdatedEvt

struct FPgosClientLobbyPlayerCustomDataUpdatedEvt
fieldtypedescription
player_kv_dataTMap<FString, FString>Player custom data of each lobby member. The map key is lobby member's player ID, the map value is the lobby member's custom data. Each lobby member could modify it's player kv data.
lobby_idFStringLobby id.

FPgosClientApproveJoinLobbyRequestParams

struct FPgosClientApproveJoinLobbyRequestParams
fieldtypedescription
lobby_idFStringLobby id.
player_idFStringPlayer id who request to join the lobby.
tokenFStringThe token required to process this join request, which could be obtained from LobbyJoinRequestEvt.

FPgosClientRejectJoinLobbyRequestParams

struct FPgosClientRejectJoinLobbyRequestParams
fieldtypedescription
lobby_idFStringLobby id.
player_idFStringPlayer id who request to join the lobby.
tokenFStringThe token required to process this join request, which could be obtained from LobbyJoinRequestEvt.

FPgosClientIncrMyKVDataIdempotentParams

struct FPgosClientIncrMyKVDataIdempotentParams
fieldtypedescription
incrementsTMap<FString, FPgosKVDataValue>Increments to update, key: kvdata key, value: increment of the value.
idempotency_tokenFString[Optional] Used to ensure the idempotence of the function. An idempotent operation produces the same outcome regardless of how many times it's executed, without causing any side effects or altering the system's state. The scope of the idempotent token is for each player.

FPgosClientIncrMyKVDataIdempotentResult

struct FPgosClientIncrMyKVDataIdempotentResult
fieldtypedescription
kvdataTMap<FString, FPgosKVDataValue>KVData items, key: item key, value: item value.
replayedboolWhether the request is replayed. When it is True, it indicates that the result of the function is obtained by replaying with the same idempotency_token. This means that the result of the function has been generated in a previous call and is being reused in the current call.

FPgosClientGetMidasGlobalAddonInfoResult

struct FPgosClientGetMidasGlobalAddonInfoResult
fieldtypedescription
is_role_id_mappedboolThe management method for the Midas Role ID in the Midas Global addon. If the value is true, the role_id field will be populated by PGOS with the Role ID assigned to the current logged-in player based on the Midas Global addon configuration. If the value is false, the role_id field will not be populated. Please use the SetMidasGlobalMetaData interface to actively set the Midas Role ID.
role_idFString
partition_idFString
provider_app_idFString

FPgosClientSetMidasGlobalMetaDataParams

struct FPgosClientSetMidasGlobalMetaDataParams : public FPgosMidasGlobalMetaData

parent: FPgosMidasGlobalMetaData

FPgosClientSetMidasGlobalMetaDataResult

struct FPgosClientSetMidasGlobalMetaDataResult
fieldtypedescription
is_role_id_mappedboolEcho back the role ID management mode configured in the Midas Global addon.
role_idFStringEcho back the final adopted role ID. It will be the same as the calling parameter if is_role_id_mapped is false. If is_role_id_mapped is true, PGOS will populate it based on the current player's login information.

FPgosClientMidasGlobalTransaction

struct FPgosClientMidasGlobalTransaction
fieldtypedescription
payment_methodFStringPay method, enumeration values can be filled in: GOOGLE_PLAY, APPLE_STORE, STEAM, EPIC, MICROSOFT_STORE, SWITCH, PLAY_STATION
region_codeFStringRegion code in uppercase, refer to ISO 3166.
currency_codeFStringCurrency code, refer to ISO 4217.

FPgosClientMidasGlobalProductInfo

struct FPgosClientMidasGlobalProductInfo
fieldtypedescription
midas_unified_product_idFStringMidas unified product id.
store_item_idFStringPGOS store item that mapped to the Midas product and the Store where it will be listed for sale are need.
store_idFStringPGOS store item that mapped to the Midas product and the Store where it will be listed for sale are need.

FPgosClientCreateMidasGlobalOrderParams

struct FPgosClientCreateMidasGlobalOrderParams
fieldtypedescription
product_infoFPgosClientMidasGlobalProductInfoPurchase item information.
transactionFPgosClientMidasGlobalTransactionTransaction information.
payloadFStringTransparent field, with a maximum limit of 256 characters.
languageFStringRelated to multilingualism, refer to ISO 639-1.

FPgosClientCreateMidasGlobalOrderResult

struct FPgosClientCreateMidasGlobalOrderResult
fieldtypedescription
order_idFStringOrder ID.
pay_infoFStringPayment informatio, required by the Pay interface provided by the Midas Client SDK.

FPgosClientGetMidasGlobalBalanceDetailParams

struct FPgosClientGetMidasGlobalBalanceDetailParams
fieldtypedescription
currency_codesTArray<FString>Currency code of a PGOS virtual currency. Note: This interface is only used to query virtual currency with CurrencyType as MidasGlobalToken.

FPgosClientGetMidasGlobalBalanceDetailResult

struct FPgosClientGetMidasGlobalBalanceDetailResult
fieldtypedescription
balancesTArray<FPgosClientMidasGlobalBalance>

FPgosClientActivateP2PBattleSessionParams

struct FPgosClientActivateP2PBattleSessionParams
fieldtypedescription
battle_session_idFString

FPgosClientAcceptP2PPlayerBattleSessionParams

struct FPgosClientAcceptP2PPlayerBattleSessionParams
fieldtypedescription
battle_session_idFStringThe id of a P2P battle session
player_battle_session_idFStringThe id of player session in the battle, only a Reserved player session id could be accepted. !!! NOT BATTLE SESSION ID !!!
player_idFStringPlayer id.

FPgosClientDisconnectP2PPlayerBattleSessionParams

struct FPgosClientDisconnectP2PPlayerBattleSessionParams
fieldtypedescription
battle_session_idFStringThe id of a P2P battle session
player_battle_session_idFStringThe id of player session in the battle, !!! NOT BATTLE SESSION ID !!!
player_idFStringKeep it empty if do not need PGOS to validate it.

FPgosClientRemoveP2PPlayerBattleSessionParams

struct FPgosClientRemoveP2PPlayerBattleSessionParams
fieldtypedescription
battle_session_idFStringThe id of a P2P battle session
player_battle_session_idFStringThe id of player session in the battle, !!! NOT BATTLE SESSION ID !!!
player_idFStringKeep it empty if do not need PGOS to validate it.

FPgosClientDescribeP2PPlayerBattleSessionsParams

Request info to describe player battle sessions

struct FPgosClientDescribeP2PPlayerBattleSessionsParams
fieldtypedescription
battle_session_idFStringThe P2P battle session id.
player_battle_session_idFStringThe id of player session in the battle, !!! NOT BATTLE SESSION ID !!! Leave this parameter blank to iterate through all players in the battle session.
offsetint32The next token
countint32The limit of the player battle sessions request.

FPgosClientDescribeP2PPlayerBattleSessionsResult

Information about the players in the battle session.

struct FPgosClientDescribeP2PPlayerBattleSessionsResult
fieldtypedescription
next_offsetint32The next offset.
has_moreboolIf has more players.
total_numint32None-completed players count in the battle session.
player_battle_sessionsTArray<FPgosClientP2PPlayerBattleSession>A list of player battle sessions. Empty if there's no more sessions.

FPgosClientDescribeP2PBattleSessionsResult

struct FPgosClientDescribeP2PBattleSessionsResult
fieldtypedescription
battle_sessionsTArray<FPgosClientP2PBattleSession>The battle sesions that a player is participating in.

FPgosClientTerminateP2PPlayerBattleSessionParams

struct FPgosClientTerminateP2PPlayerBattleSessionParams
fieldtypedescription
battle_session_idFStringThe battle session id
player_battle_session_idFStringThe player battle session id, !!! NOT BATTLE SESSION ID !!!

FPgosClientReportHostHealthParams

struct FPgosClientReportHostHealthParams
fieldtypedescription
battle_session_idFStringThe battle session id
player_battle_session_idFStringThe player battle session id of reporter
host_player_idFStringHost player id
is_host_healthyboolIs the current client considering the host healthy or not

FPgosClientStartP2PBattleSessionEvt

struct FPgosClientStartP2PBattleSessionEvt
fieldtypedescription
battle_sessionFPgosClientP2PBattleSessionThe battle session.
battle_source_dataFPgosBattleSourceDataCreation source data of a battle session, contains information about the source type of the battle and player information filled in by the battle creator.

FPgosClientP2PBattleSessionTerminateEvt

struct FPgosClientP2PBattleSessionTerminateEvt
fieldtypedescription
battle_session_idFStringThe battle session id
termination_timeint64PGOS will forcefully terminate the session after waiting this time.

FPgosClientP2PPlayerBattleSessionsTerminatedEvt

This event is called periodically to notify game DS of those player battle sessions that have been terminated from client side.

struct FPgosClientP2PPlayerBattleSessionsTerminatedEvt
fieldtypedescription
battle_session_idFStringThe battle session id.
player_battle_session_idFStringThe player battle session id that have been terminated.

FPgosClientP2PBattleSessionUpdatedEvt

struct FPgosClientP2PBattleSessionUpdatedEvt
fieldtypedescription
battle_sessionFPgosClientP2PBattleSessionThe updated battle session details.

FPgosClientP2PConnectParams

struct FPgosClientP2PConnectParams
fieldtypedescription
peer_player_idFStringThe player id.
connection_typeEPgosClientP2PConnectionTypeThe connection type to used. If not specified, PGOS will try to connect via p2p and then via relay.
tokenFStringThe token to be used for authentication by the game client.
response_timeoutint32The number of milliseconds that the local player waits for a response from the remote player

FPgosClientP2PConnectResult

struct FPgosClientP2PConnectResult
fieldtypedescription
peer_player_idFStringThe player id.
connection_typeEPgosClientP2PConnectionTypeThe connection type to used.
connection_idFStringA unique id that represents a A->B connection.

FPgosClientP2PConnectRequestEvt

Event result of receiving a p2p connection request.

struct FPgosClientP2PConnectRequestEvt
fieldtypedescription
peer_player_idFStringThe player id of the player who sent the request.
connection_idFStringThe connection id of the connection.
tokenFStringThe token to be used for authentication by the game client.

FPgosClientP2PMessageEvt

Event result of receiving a p2p message.

struct FPgosClientP2PMessageEvt
fieldtypedescription
peer_player_idFStringThe player id of the player who sent the message.
connection_idFStringThe connection id of the connection.
messageTArray<uint8>The message.

FPgosClientP2PConnectionClosedEvt

Event result when the p2p connection has been closed.

struct FPgosClientP2PConnectionClosedEvt
fieldtypedescription
peer_player_idFStringThe player id of the player you connect to.
connection_idFStringThe connection id of the connection.
reasonFPgosResultThe reason of the connection close. Should be ok if the connection is closed by yourself.

FPgosClientDetectNatTypeResult

struct FPgosClientDetectNatTypeResult
fieldtypedescription
nat_typeEPgosClientNatTypeThe detected nat type.

FPgosClientP2PConnectionInfo

The information of P2P connection.

struct FPgosClientP2PConnectionInfo
fieldtypedescription
peer_player_idFStringThe player id of the player you connect to.
peer_nat_typeEPgosClientNatTypeThe nat type of the peer player.
connection_idFStringThe connection id of the connection.
connection_typeEPgosClientP2PConnectionTypeThe connection type to used.
is_connectedboolWhether the connection is connected.
is_initiatorboolWhether the connection is initiated by you.
rttint32The RTT of the connection. -1 if not connected.
srttint32The smoothed RTT of the connection. -1 if not connected.
loss_ratefloatThe packet loss rate of the connection. -1 if not connected.

FPgosClientSendP2PMessageParams

struct FPgosClientSendP2PMessageParams
fieldtypedescription
connection_idFStringThe connection id of the connection.
messageTArray<uint8>The message to be sent.

FPgosClientTerminateP2PBattleSessionParams

struct FPgosClientTerminateP2PBattleSessionParams
fieldtypedescription
battle_session_idFStringP2P battle session id.

FPgosClientIntoLoginQueueEvt

Event result when the player is placed into the login queue.

struct FPgosClientIntoLoginQueueEvt
fieldtypedescription
queue_positionint32The queue position of the player.
estimated_wait_timeint32The estimated wait time of the player in seconds.

FPgosClientLoginQueueUpdatedEvt

Event result when the login queue status is updated.

struct FPgosClientLoginQueueUpdatedEvt : public FPgosClientIntoLoginQueueEvt

parent: FPgosClientIntoLoginQueueEvt

FPgosClientGetInventoryWithFilterParams

Get inventory with filter params.

struct FPgosClientGetInventoryWithFilterParams
fieldtypedescription
item_typesTArray<EPgosInGameItemType>Item types to get
item_tagsTArray<FPgosTagDataFilter>Item tags to get
item_instance_tagsTArray<FPgosTagDataFilter>Item instance tags to get
uniqueEPgosBooleanFilterFilter by unique item
stackableEPgosBooleanFilterFilter by stackable item
consumableEPgosBooleanFilterFilter by consumable item

FPgosClientGetMutualFriendsCountParams

Get mutual friends count params.

struct FPgosClientGetMutualFriendsCountParams
fieldtypedescription
player_idsTArray<FString>The player ids to get mutual friends count with

FPgosClientGetMutualFriendsCountResult

Get mutual friends count result.

struct FPgosClientGetMutualFriendsCountResult
fieldtypedescription
mutual_friends_countTMap<FString, int32>The mutual friends count of each target player.

FPgosClientPotentialFriendInfo

Basic player information of a potential friend

struct FPgosClientPotentialFriendInfo : public FPgosClientPlayerSearchInfo

parent: FPgosClientPlayerSearchInfo

fieldtypedescription
mutual_friend_countint32The number of mutual friends between this player and the target player.

FPgosClientGetPotentialFriendsResult

The result of [GetPotentialFriends]

struct FPgosClientGetPotentialFriendsResult
fieldtypedescription
info_listTArray<FPgosClientPotentialFriendInfo>A list of potential friends information
has_moreboolWhether there is more friends or not
next_offsetint32The starting offset for the next query

FPgosClientLatencyTestRoundCompletedEvt

Event details when a latency test round is completed.]

struct FPgosClientLatencyTestRoundCompletedEvt
fieldtypedescription
round_idxint32The index of the test round, specifying which round this is (starting from 0).
dataFPgosClientDSHostingLatenciesThe latencies from the client to the DS hosting data centers.