Overview

Update or create key-value custom data entries for a player.

Client

Require permission rules gamePlayer.setCustomData.selfEnable. See PermissionRules

HTTP

POST /api/rJson/gamePlayer/client/setCustomData

Request Headers
NameRequiredDescription
Auth-TokentrueA token used to authenticate the user. It is issued after successful login from the client type authenticate (e.g., loginByAccount, loginWithCustomId, etc.) or when an admin logs in via the GearN Dashboard. This token identifies the request sender and determines their access level.
Secret-KeytrueThe SecretKey in SecretInfo with role must is Player.
Game-IdOptional if the gameId in the SecretInfo use in headers Secret-Key has assign a valid value, if not, let unique identifier of the game this request is targeting.
Content-Typetrueapplication/json
Request Body
CodeTypeRequiredDescription
userIdstringUnique identifier of the player who is the subject of the request. (10 characters)
customDatasCustomDataParam[]trueCustomDatas parameter. (1 - 32 elements) See CustomDataParam
Server

Require permission rules gamePlayer.setCustomData.serverSelfEnable. See PermissionRules

HTTP

POST /api/rJson/gamePlayer/server/setCustomData

Request Headers
NameRequiredDescription
Secret-KeytrueThe SecretKey in SecretInfo with role must is Server.
Game-IdOptional if the gameId in the SecretInfo use in headers Secret-Key has assign a valid value, if not, let unique identifier of the game this request is targeting.
Content-Typetrueapplication/json
Request Body
CodeTypeRequiredDescription
userIdstringtrueUnique identifier of the player who is the subject of the request. (10 characters)
customDatasCustomDataParam[]trueCustomDatas parameter. (1 - 32 elements) See CustomDataParam
Admin

Require permission rules gamePlayer.setCustomData.adminSelfEnable. See PermissionRules

HTTP

POST /api/rJson/gamePlayer/admin/setCustomData

Request Headers
NameRequiredDescription
Secret-KeytrueThe SecretKey in SecretInfo with role must is Admin.
Game-IdOptional if the gameId in the SecretInfo use in headers Secret-Key has assign a valid value, if not, let unique identifier of the game this request is targeting.
Content-Typetrueapplication/json
Request Body
CodeTypeRequiredDescription
userIdstringtrueUnique identifier of the player who is the subject of the request. (10 characters)
customDatasCustomDataParam[]trueCustomDatas parameter. (1 - 32 elements) See CustomDataParam
Response Body

200 Ok

CodeTypeRequiredDescription
returnCodeReturnCodetrueAdditional metadata that can be attached to any request. Especially useful when working with advanced features such as EventCallbackScript. See ReturnCode
debugMessagestringA developer-oriented message that provides additional context useful for debugging and internal logging. This field is not intended for end-users and may include stack traces, validation failures, or internal error diagnostics.
invalidRequestParametersInvalidMember[]Just had data when the returnCode is InvalidRequestParameters.A list of members that failed validation or could not be processed during the request. Each entry typically includes identifying information and an error reason. This is useful for partial success scenarios where some members are accepted and others are rejected. See InvalidMember
parametersResponseDataJust had data when the returnCode is Ok. A dynamic set of key-value pairs included in the response to provide additional context or metadata. These parameters may vary depending on the operation and typically contain optional fields such as timestamps, identifiers, or computed values relevant to the result. See ResponseData
ReturnCode
NameCodeDescription
SecretInvalid-10Secret token is invalid (removed, expired or does not contains).
MaxSizeRequestReject-9Request rejected due to exceeding maximum allowed size.
MaxRequestReject-8Request rejected because the number of requests has exceeded the allowed limit per user or IP or exceeds the total number of pending requests the server is waiting to process..
MaxCCUReject-7Connection rejected due to exceeding the allowed CCU (Concurrent Users).
OperationNotAuthorized-6You are not authorized to perform this operation. Possibly due to missing or invalid token, or insufficient permissions.
InvalidRequestParameters-5Request parameters are invalid or missing.
OperationInvalid-4The requested operation is invalid or not supported.
InternalServerError-3Internal server error. Could be due to an unhandled exception or logic failure.
OperationNotAllow-2This operation is not allowed in the current context.
OperationTimeout-1The operation timed out. No response received within the expected time.
UnknownError0An unknown error occurred. The cause could not be determined.
Ok1Success. The operation completed successfully and returned a valid result.
ResponseData
CodeTypeRequiredDescription
errorCodeErrorCodeA string that represents the status of the operation. It indicates whether the request was successful or failed due to a specific error condition. See ErrorCode
infoResponseParametersInfoResponseParameterstrueInfoResponseParameters field in model GamePlayerResponseData. See InfoResponseParameters
CustomDataParam

Represents a key-value pair for custom player data.

CodeTypeRequiredDescription
keystringtrueThe key used to identify a custom data entry. (2 - 32 characters)
valueanytrueThe value assigned to a custom or structured data key.
InfoResponseParameters

Contains optional metadata fields returned when requesting player info.

CodeTypeRequiredDescription
segmentsstring[]Include player segment information in the response.
customDatasGenericModels.DataItem[]Include key-value custom data fields in the response. See GenericModels.DataItem
displayNamestringInclude the player's display name in the response.
avatarGenericModels.AvatarItemInclude the player's avatar URL or image reference. See GenericModels.AvatarItem
tsCreatenumberInclude the timestamp when the player account was created.
tagsGenericModels.TagItem[]Include tags assigned to the player. See GenericModels.TagItem
playerBanGenericModels.BanItemInclude any ban status information in the response. See GenericModels.BanItem
playerDatasGenericModels.DataItem[]PlayerDatas field in model InfoResponseParameters. See GenericModels.DataItem
playerCurrenciesGenericModels.CurrencyItem[]Include the player's virtual currency balances. See GenericModels.CurrencyItem
playerStatisticsGenericModels.StatisticsItem[]Include the player's statistics. See GenericModels.StatisticsItem
playerCharactersGenericModels.CharacterItem[]PlayerCharacters field in model InfoResponseParameters. See GenericModels.CharacterItem
playerInventoriesGenericModels.InventoryItem[]PlayerInventories field in model InfoResponseParameters. See GenericModels.InventoryItem
playerGroupsGenericModels.GroupItem[]PlayerGroups field in model InfoResponseParameters. See GenericModels.GroupItem
playerFriendsGenericModels.FriendItem[]PlayerFriends field in model InfoResponseParameters. See GenericModels.FriendItem
tsLastLoginnumberTsLastLogin field in model InfoResponseParameters.
ipAddressCreatestringIpAddressCreate field in model InfoResponseParameters.
countryCodestringCountryCode field in model InfoResponseParameters.
Generic.DataItem

Represents a structured key-value data pair stored in a player or group profile.

CodeTypeRequiredDescription
keystringtrueKey used in a structured data pair.
valueanytrueValue assigned to the specified key.
Generic.AvatarItem

Represents avatar-related metadata such as image, icon, and background colors.

CodeTypeRequiredDescription
typenumbertrueType field in AvatarItem.
valuestringtrueValue assigned to the specified key.
Generic.TagItem

Represents a tag or category label used for filtering or grouping entities.

CodeTypeRequiredDescription
keystringtrueKey used in a structured data pair.
valuestringtrueValue assigned to the specified key.
Generic.BanItem

Details information about a ban applied to a player or entity.

CodeTypeRequiredDescription
tsExpirenumbertrueTsExpire field in BanItem.
reasonstringtrueText explaining why the ban or action was applied.
Generic.CurrencyItem

Defines a virtual currency identifier and its current amount.

CodeTypeRequiredDescription
keystringtrueKey used in a structured data pair.
valuenumbertrueValue assigned to the specified key.
Generic.StatisticsItem

Represents a named statistic and its numeric value.

CodeTypeRequiredDescription
keystringtrueKey used in a structured data pair.
valuenumbertrueValue assigned to the specified key.
Generic.CharacterItem

Describes a character entity associated with a player.

CodeTypeRequiredDescription
characterIdstringtrueUnique identifier of the character.
catalogIdstringtrueCatalogId field in CharacterItem.
Generic.InventoryItem

Summarizes the inventory contents and counts for a player or group.

CodeTypeRequiredDescription
itemIdstringtrueItemId field in InventoryItem.
catalogIdstringtrueCatalogId field in InventoryItem.
classIdstringtrueClassId field in InventoryItem.
Generic.GroupItem

Basic reference information about a group entity.

CodeTypeRequiredDescription
groupIdstringtrueUnique identifier of the group.
catalogIdstringtrueCatalogId field in GroupItem.
statusnumbertrueCurrent state or flag representing the object’s availability.
tsLastStatusUpdatenumbertrueTsLastStatusUpdate field in GroupItem.
Generic.FriendItem

Represents a friendship relationship between players.

CodeTypeRequiredDescription
friendIdstringtrueFriendId field in FriendItem.
catalogIdstringtrueCatalogId field in FriendItem.
statusnumbertrueCurrent state or flag representing the object’s availability.
tsLastStatusUpdatenumbertrueTsLastStatusUpdate field in FriendItem.
ErrorCode
NameCode
Ok1
GamePlayerNotFound17
InvalidMember
CodeTypeDescription
codestringThe parameterCode invalid.
invalidMemberTypeInvalidMemberTypeThe invalid member type of this parameterCode. See InvalidMemberType
InvalidMemberType
NameCodeDescription
UnknownError1An unspecified or unexpected error has occurred.
DataRequired2A required data field is missing or not provided.
TypeInvalid3The data type provided does not match the expected type.
StringNull4A string value is null or has not been assigned.
StringMinLength5The string value is shorter than the minimum required length.
StringMaxLength6The string value exceeds the maximum allowed length.
NumberMinValue7The numeric value is less than the minimum allowed value.
NumberMaxValue8The numeric value exceeds the maximum allowed value.
NumberMustInt9The numeric value must be an integer but is not.
GNHashtableNull10The hashtable object is null or not provided.
GNHashtableMinLength11The hashtable contains fewer entries than the minimum required.
GNHashtableMaxLength12The hashtable contains more entries than the maximum allowed.
GNArrayNull13The array object is null or not provided.
GNArrayMinLength14The array contains fewer elements than the minimum required.
GNArrayMaxLength15The array contains more elements than the maximum allowed.