diff --git a/PlayFabSDK/source/PlayFabAdminModels.cs b/PlayFabSDK/source/PlayFabAdminModels.cs index ad4086e0..d0df2b0f 100644 --- a/PlayFabSDK/source/PlayFabAdminModels.cs +++ b/PlayFabSDK/source/PlayFabAdminModels.cs @@ -457,6 +457,11 @@ public class BanInfo /// public DateTime? Expires ; + /// + /// Whether or not the Microsoft family members are included in the ban. + /// + public bool? IncludeMicrosoftFamily ; + /// /// The IP address on which the ban was applied. May affect multiple players. /// @@ -512,6 +517,11 @@ public class BanRequest : PlayFabRequestCommon /// public uint? DurationInHours ; + /// + /// Whether the Microsoft family members should be included in the ban. May affect multiple players. + /// + public bool? IncludeMicrosoftFamily ; + /// /// IP address to be banned. May affect multiple players. /// @@ -2780,6 +2790,8 @@ public enum GenericErrorCodes LeaderboardNameConflict, LinkedStatisticColumnMismatch, NoLinkedStatisticToLeaderboard, + StatDefinitionAlreadyLinkedToLeaderboard, + LinkingStatsNotAllowedForEntityType, MatchmakingEntityInvalid, MatchmakingPlayerAttributesInvalid, MatchmakingQueueNotFound, @@ -7176,6 +7188,11 @@ public class UpdateBanRequest : PlayFabRequestCommon /// public DateTime? Expires ; + /// + /// The updated decision to ban the Microsoft family members to be updated. Null for no change. + /// + public bool? IncludeMicrosoftFamily ; + /// /// The updated IP address for the ban. Null for no change. /// diff --git a/PlayFabSDK/source/PlayFabAuthenticationInstanceAPI.cs b/PlayFabSDK/source/PlayFabAuthenticationInstanceAPI.cs index 78317319..d7e59fa4 100644 --- a/PlayFabSDK/source/PlayFabAuthenticationInstanceAPI.cs +++ b/PlayFabSDK/source/PlayFabAuthenticationInstanceAPI.cs @@ -170,7 +170,7 @@ public async Task> ValidateEntityToke var requestContext = request?.AuthenticationContext ?? authenticationContext; var requestSettings = apiSettings ?? PlayFabSettings.staticSettings; - var entityToken = request?.AuthenticationContext?.EntityToken ?? PlayFabSettings.staticPlayer.EntityToken; + var entityToken = requestContext?.EntityToken ?? PlayFabSettings.staticPlayer.EntityToken; if ((entityToken) == null) throw new PlayFabException(PlayFabExceptionCode.EntityTokenNotSet, "Must call Client Login or GetEntityToken before calling this method"); var httpResult = await PlayFabHttp.DoPost("/Authentication/ValidateEntityToken", request, "X-EntityToken", entityToken, extraHeaders, requestSettings); diff --git a/PlayFabSDK/source/PlayFabEconomyAPI.cs b/PlayFabSDK/source/PlayFabEconomyAPI.cs index c7576d15..76a07eb7 100644 --- a/PlayFabSDK/source/PlayFabEconomyAPI.cs +++ b/PlayFabSDK/source/PlayFabEconomyAPI.cs @@ -1155,9 +1155,7 @@ public static async Task> TakedownIte /// /// Transfer inventory items. When transferring across collections, a 202 response indicates that the transfer did not /// complete within the timeframe of the request. You can identify the pending operations by looking for OperationStatus = - /// 'InProgress'. You can check on the operation status at anytime within 30 days of the request by passing the - /// TransactionToken to the GetInventoryOperationStatus API. More information about item transfer scenarios can be found - /// here: + /// 'InProgress'. More information about item transfer scenarios can be found here: /// https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/inventory/?tabs=inventory-game-manager#transfer-inventory-items /// public static async Task> TransferInventoryItemsAsync(TransferInventoryItemsRequest request, object customData = null, Dictionary extraHeaders = null) diff --git a/PlayFabSDK/source/PlayFabEconomyInstanceAPI.cs b/PlayFabSDK/source/PlayFabEconomyInstanceAPI.cs index 011a6cd6..26762753 100644 --- a/PlayFabSDK/source/PlayFabEconomyInstanceAPI.cs +++ b/PlayFabSDK/source/PlayFabEconomyInstanceAPI.cs @@ -1133,9 +1133,7 @@ public async Task> TakedownItemReview /// /// Transfer inventory items. When transferring across collections, a 202 response indicates that the transfer did not /// complete within the timeframe of the request. You can identify the pending operations by looking for OperationStatus = - /// 'InProgress'. You can check on the operation status at anytime within 30 days of the request by passing the - /// TransactionToken to the GetInventoryOperationStatus API. More information about item transfer scenarios can be found - /// here: + /// 'InProgress'. More information about item transfer scenarios can be found here: /// https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/inventory/?tabs=inventory-game-manager#transfer-inventory-items /// public async Task> TransferInventoryItemsAsync(TransferInventoryItemsRequest request, object customData = null, Dictionary extraHeaders = null) diff --git a/PlayFabSDK/source/PlayFabEconomyModels.cs b/PlayFabSDK/source/PlayFabEconomyModels.cs index a3f0b882..1160d135 100644 --- a/PlayFabSDK/source/PlayFabEconomyModels.cs +++ b/PlayFabSDK/source/PlayFabEconomyModels.cs @@ -1738,6 +1738,12 @@ public class GetTransactionHistoryRequest : PlayFabRequestCommon /// public string Filter ; + /// + /// An OData orderby to order TransactionHistory results. The only supported values are 'timestamp asc' or 'timestamp desc'. + /// Default orderby is 'timestamp asc' + /// + public string OrderBy ; + } public class GetTransactionHistoryResponse : PlayFabResultCommon @@ -1947,6 +1953,16 @@ public class PayoutDetails { } + public class Permissions + { + /// + /// The list of ids of Segments that the a player can be in to purchase from the store. When a value is provided, the player + /// must be in at least one of the segments listed for the purchase to be allowed. + /// + public List SegmentIds ; + + } + /// /// The call kicks off a workflow to publish the item to the public catalog. The Publish Status API should be used to /// monitor the publish job. @@ -2852,6 +2868,11 @@ public class StoreDetails /// public FilterOptions FilterOptions ; + /// + /// The permissions that control which players can purchase from the store. + /// + public Permissions Permissions ; + /// /// The global prices utilized in the store. These options are mutually exclusive with price options in item references. /// diff --git a/PlayFabSDK/source/PlayFabErrors.cs b/PlayFabSDK/source/PlayFabErrors.cs index 151167fd..d3fcd576 100644 --- a/PlayFabSDK/source/PlayFabErrors.cs +++ b/PlayFabSDK/source/PlayFabErrors.cs @@ -572,6 +572,8 @@ public enum PlayFabErrorCode LeaderboardNameConflict = 1569, LinkedStatisticColumnMismatch = 1570, NoLinkedStatisticToLeaderboard = 1571, + StatDefinitionAlreadyLinkedToLeaderboard = 1572, + LinkingStatsNotAllowedForEntityType = 1573, MatchmakingEntityInvalid = 2001, MatchmakingPlayerAttributesInvalid = 2002, MatchmakingQueueNotFound = 2016, diff --git a/PlayFabSDK/source/PlayFabSDK.csproj b/PlayFabSDK/source/PlayFabSDK.csproj index 51517568..9359f2fa 100644 --- a/PlayFabSDK/source/PlayFabSDK.csproj +++ b/PlayFabSDK/source/PlayFabSDK.csproj @@ -8,7 +8,7 @@ 512 PlayFabAllSDK - 1.176.240301 + 1.177.240315 PlayFab CSharp Sdk Microsoft Microsoft @@ -21,7 +21,7 @@ PlayFab PlayFabSDK PlayFab, Baas, Paas, JSON, REST, HTTP, SSL, API, cloud, liveops, game, gamedev, native - https://docs.microsoft.com/gaming/playfab/release-notes#240301 + https://docs.microsoft.com/gaming/playfab/release-notes#240315 en 1 1 diff --git a/PlayFabSDK/source/PlayFabServerModels.cs b/PlayFabSDK/source/PlayFabServerModels.cs index 8a3e21af..34e5346e 100644 --- a/PlayFabSDK/source/PlayFabServerModels.cs +++ b/PlayFabSDK/source/PlayFabServerModels.cs @@ -296,6 +296,11 @@ public class BanInfo /// public DateTime? Expires ; + /// + /// Whether or not the Microsoft family members are included in the ban. + /// + public bool? IncludeMicrosoftFamily ; + /// /// The IP address on which the ban was applied. May affect multiple players. /// @@ -323,6 +328,11 @@ public class BanRequest : PlayFabRequestCommon /// public uint? DurationInHours ; + /// + /// Whether the Microsoft family members should be included in the ban. May affect multiple players. + /// + public bool? IncludeMicrosoftFamily ; + /// /// IP address to be banned. May affect multiple players. /// @@ -2100,6 +2110,8 @@ public enum GenericErrorCodes LeaderboardNameConflict, LinkedStatisticColumnMismatch, NoLinkedStatisticToLeaderboard, + StatDefinitionAlreadyLinkedToLeaderboard, + LinkingStatsNotAllowedForEntityType, MatchmakingEntityInvalid, MatchmakingPlayerAttributesInvalid, MatchmakingQueueNotFound, @@ -6872,6 +6884,11 @@ public class UpdateBanRequest : PlayFabRequestCommon /// public DateTime? Expires ; + /// + /// The updated decision to ban the Microsoft family members to be updated. Null for no change. + /// + public bool? IncludeMicrosoftFamily ; + /// /// The updated IP address for the ban. Null for no change. /// diff --git a/PlayFabSDK/source/PlayFabSettings.cs b/PlayFabSDK/source/PlayFabSettings.cs index ee1dbeeb..70aeb903 100644 --- a/PlayFabSDK/source/PlayFabSettings.cs +++ b/PlayFabSDK/source/PlayFabSettings.cs @@ -6,9 +6,9 @@ namespace PlayFab { public class PlayFabSettings { - public const string SdkVersion = "1.176.240301"; + public const string SdkVersion = "1.177.240315"; public const string BuildIdentifier = "adobuild_csharpsdk_118"; - public const string SdkVersionString = "CSharpSDK-1.176.240301"; + public const string SdkVersionString = "CSharpSDK-1.177.240315"; /// This is only for customers running a private cluster. Generally you shouldn't touch this public static string DefaultProductionEnvironmentUrl = "playfabapi.com"; diff --git a/Plugins/CloudScript/source/PlayFabCloudScriptPlugin.csproj b/Plugins/CloudScript/source/PlayFabCloudScriptPlugin.csproj index a17e752f..91074522 100644 --- a/Plugins/CloudScript/source/PlayFabCloudScriptPlugin.csproj +++ b/Plugins/CloudScript/source/PlayFabCloudScriptPlugin.csproj @@ -8,7 +8,7 @@ 512 PlayFabCloudScriptPlugin - 1.176.240301-alpha + 1.177.240315-alpha PlayFab CSharp CloudScript Plugin Microsoft Microsoft @@ -21,7 +21,7 @@ PlayFabCloudScriptPlugin Copyright 2024 PlayFab, Baas, Paas, JSON, REST, HTTP, SSL, API, cloud, liveops, game, gamedev, native - https://docs.microsoft.com/gaming/playfab/release-notes#240301 + https://docs.microsoft.com/gaming/playfab/release-notes#240315 en 1 1 @@ -45,7 +45,7 @@ - + diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabAdminModels.cs b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabAdminModels.cs index ad4086e0..d0df2b0f 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabAdminModels.cs +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabAdminModels.cs @@ -457,6 +457,11 @@ public class BanInfo /// public DateTime? Expires ; + /// + /// Whether or not the Microsoft family members are included in the ban. + /// + public bool? IncludeMicrosoftFamily ; + /// /// The IP address on which the ban was applied. May affect multiple players. /// @@ -512,6 +517,11 @@ public class BanRequest : PlayFabRequestCommon /// public uint? DurationInHours ; + /// + /// Whether the Microsoft family members should be included in the ban. May affect multiple players. + /// + public bool? IncludeMicrosoftFamily ; + /// /// IP address to be banned. May affect multiple players. /// @@ -2780,6 +2790,8 @@ public enum GenericErrorCodes LeaderboardNameConflict, LinkedStatisticColumnMismatch, NoLinkedStatisticToLeaderboard, + StatDefinitionAlreadyLinkedToLeaderboard, + LinkingStatsNotAllowedForEntityType, MatchmakingEntityInvalid, MatchmakingPlayerAttributesInvalid, MatchmakingQueueNotFound, @@ -7176,6 +7188,11 @@ public class UpdateBanRequest : PlayFabRequestCommon /// public DateTime? Expires ; + /// + /// The updated decision to ban the Microsoft family members to be updated. Null for no change. + /// + public bool? IncludeMicrosoftFamily ; + /// /// The updated IP address for the ban. Null for no change. /// diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabAuthenticationInstanceAPI.cs b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabAuthenticationInstanceAPI.cs index 78317319..d7e59fa4 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabAuthenticationInstanceAPI.cs +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabAuthenticationInstanceAPI.cs @@ -170,7 +170,7 @@ public async Task> ValidateEntityToke var requestContext = request?.AuthenticationContext ?? authenticationContext; var requestSettings = apiSettings ?? PlayFabSettings.staticSettings; - var entityToken = request?.AuthenticationContext?.EntityToken ?? PlayFabSettings.staticPlayer.EntityToken; + var entityToken = requestContext?.EntityToken ?? PlayFabSettings.staticPlayer.EntityToken; if ((entityToken) == null) throw new PlayFabException(PlayFabExceptionCode.EntityTokenNotSet, "Must call Client Login or GetEntityToken before calling this method"); var httpResult = await PlayFabHttp.DoPost("/Authentication/ValidateEntityToken", request, "X-EntityToken", entityToken, extraHeaders, requestSettings); diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyAPI.cs b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyAPI.cs index c7576d15..76a07eb7 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyAPI.cs +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyAPI.cs @@ -1155,9 +1155,7 @@ public static async Task> TakedownIte /// /// Transfer inventory items. When transferring across collections, a 202 response indicates that the transfer did not /// complete within the timeframe of the request. You can identify the pending operations by looking for OperationStatus = - /// 'InProgress'. You can check on the operation status at anytime within 30 days of the request by passing the - /// TransactionToken to the GetInventoryOperationStatus API. More information about item transfer scenarios can be found - /// here: + /// 'InProgress'. More information about item transfer scenarios can be found here: /// https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/inventory/?tabs=inventory-game-manager#transfer-inventory-items /// public static async Task> TransferInventoryItemsAsync(TransferInventoryItemsRequest request, object customData = null, Dictionary extraHeaders = null) diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyInstanceAPI.cs b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyInstanceAPI.cs index 011a6cd6..26762753 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyInstanceAPI.cs +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyInstanceAPI.cs @@ -1133,9 +1133,7 @@ public async Task> TakedownItemReview /// /// Transfer inventory items. When transferring across collections, a 202 response indicates that the transfer did not /// complete within the timeframe of the request. You can identify the pending operations by looking for OperationStatus = - /// 'InProgress'. You can check on the operation status at anytime within 30 days of the request by passing the - /// TransactionToken to the GetInventoryOperationStatus API. More information about item transfer scenarios can be found - /// here: + /// 'InProgress'. More information about item transfer scenarios can be found here: /// https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/inventory/?tabs=inventory-game-manager#transfer-inventory-items /// public async Task> TransferInventoryItemsAsync(TransferInventoryItemsRequest request, object customData = null, Dictionary extraHeaders = null) diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyModels.cs b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyModels.cs index a3f0b882..1160d135 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyModels.cs +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabEconomyModels.cs @@ -1738,6 +1738,12 @@ public class GetTransactionHistoryRequest : PlayFabRequestCommon /// public string Filter ; + /// + /// An OData orderby to order TransactionHistory results. The only supported values are 'timestamp asc' or 'timestamp desc'. + /// Default orderby is 'timestamp asc' + /// + public string OrderBy ; + } public class GetTransactionHistoryResponse : PlayFabResultCommon @@ -1947,6 +1953,16 @@ public class PayoutDetails { } + public class Permissions + { + /// + /// The list of ids of Segments that the a player can be in to purchase from the store. When a value is provided, the player + /// must be in at least one of the segments listed for the purchase to be allowed. + /// + public List SegmentIds ; + + } + /// /// The call kicks off a workflow to publish the item to the public catalog. The Publish Status API should be used to /// monitor the publish job. @@ -2852,6 +2868,11 @@ public class StoreDetails /// public FilterOptions FilterOptions ; + /// + /// The permissions that control which players can purchase from the store. + /// + public Permissions Permissions ; + /// /// The global prices utilized in the store. These options are mutually exclusive with price options in item references. /// diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabErrors.cs b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabErrors.cs index 151167fd..d3fcd576 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabErrors.cs +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabErrors.cs @@ -572,6 +572,8 @@ public enum PlayFabErrorCode LeaderboardNameConflict = 1569, LinkedStatisticColumnMismatch = 1570, NoLinkedStatisticToLeaderboard = 1571, + StatDefinitionAlreadyLinkedToLeaderboard = 1572, + LinkingStatsNotAllowedForEntityType = 1573, MatchmakingEntityInvalid = 2001, MatchmakingPlayerAttributesInvalid = 2002, MatchmakingQueueNotFound = 2016, diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabSDK.csproj b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabSDK.csproj index 51517568..9359f2fa 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabSDK.csproj +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabSDK.csproj @@ -8,7 +8,7 @@ 512 PlayFabAllSDK - 1.176.240301 + 1.177.240315 PlayFab CSharp Sdk Microsoft Microsoft @@ -21,7 +21,7 @@ PlayFab PlayFabSDK PlayFab, Baas, Paas, JSON, REST, HTTP, SSL, API, cloud, liveops, game, gamedev, native - https://docs.microsoft.com/gaming/playfab/release-notes#240301 + https://docs.microsoft.com/gaming/playfab/release-notes#240315 en 1 1 diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabServerModels.cs b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabServerModels.cs index 8a3e21af..34e5346e 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabServerModels.cs +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabServerModels.cs @@ -296,6 +296,11 @@ public class BanInfo /// public DateTime? Expires ; + /// + /// Whether or not the Microsoft family members are included in the ban. + /// + public bool? IncludeMicrosoftFamily ; + /// /// The IP address on which the ban was applied. May affect multiple players. /// @@ -323,6 +328,11 @@ public class BanRequest : PlayFabRequestCommon /// public uint? DurationInHours ; + /// + /// Whether the Microsoft family members should be included in the ban. May affect multiple players. + /// + public bool? IncludeMicrosoftFamily ; + /// /// IP address to be banned. May affect multiple players. /// @@ -2100,6 +2110,8 @@ public enum GenericErrorCodes LeaderboardNameConflict, LinkedStatisticColumnMismatch, NoLinkedStatisticToLeaderboard, + StatDefinitionAlreadyLinkedToLeaderboard, + LinkingStatsNotAllowedForEntityType, MatchmakingEntityInvalid, MatchmakingPlayerAttributesInvalid, MatchmakingQueueNotFound, @@ -6872,6 +6884,11 @@ public class UpdateBanRequest : PlayFabRequestCommon /// public DateTime? Expires ; + /// + /// The updated decision to ban the Microsoft family members to be updated. Null for no change. + /// + public bool? IncludeMicrosoftFamily ; + /// /// The updated IP address for the ban. Null for no change. /// diff --git a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabSettings.cs b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabSettings.cs index ee1dbeeb..70aeb903 100644 --- a/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabSettings.cs +++ b/XamarinTestRunner/XamarinTestRunner/PlayFabSDK/PlayFabSettings.cs @@ -6,9 +6,9 @@ namespace PlayFab { public class PlayFabSettings { - public const string SdkVersion = "1.176.240301"; + public const string SdkVersion = "1.177.240315"; public const string BuildIdentifier = "adobuild_csharpsdk_118"; - public const string SdkVersionString = "CSharpSDK-1.176.240301"; + public const string SdkVersionString = "CSharpSDK-1.177.240315"; /// This is only for customers running a private cluster. Generally you shouldn't touch this public static string DefaultProductionEnvironmentUrl = "playfabapi.com";